@expressivecss/expressive 0.15.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1807 -1
- package/README.md +9 -8
- package/dist/css/expressive.css +19176 -11958
- package/dist/css/expressive.css.map +1 -1
- package/dist/css/expressive.min.css +1 -1
- package/dist/css/expressive.min.css.map +1 -1
- package/dist/fonts/LICENSE-noto-sans-arabic +93 -0
- package/dist/fonts/LICENSE-noto-sans-hebrew +93 -0
- package/dist/fonts/LICENSE-noto-sans-thai +93 -0
- package/dist/fonts/material-symbols-outlined.woff2 +0 -0
- package/dist/fonts/material-symbols-rounded.woff2 +0 -0
- package/dist/fonts/material-symbols-sharp.woff2 +0 -0
- package/dist/fonts/noto-sans-arabic-arabic-400.woff2 +0 -0
- package/dist/fonts/noto-sans-arabic-arabic-500.woff2 +0 -0
- package/dist/fonts/noto-sans-arabic-arabic-700.woff2 +0 -0
- package/dist/fonts/noto-sans-cyrillic-400.woff2 +0 -0
- package/dist/fonts/noto-sans-cyrillic-500.woff2 +0 -0
- package/dist/fonts/noto-sans-cyrillic-700.woff2 +0 -0
- package/dist/fonts/noto-sans-cyrillic-ext-400.woff2 +0 -0
- package/dist/fonts/noto-sans-cyrillic-ext-500.woff2 +0 -0
- package/dist/fonts/noto-sans-cyrillic-ext-700.woff2 +0 -0
- package/dist/fonts/noto-sans-devanagari-400.woff2 +0 -0
- package/dist/fonts/noto-sans-devanagari-500.woff2 +0 -0
- package/dist/fonts/noto-sans-devanagari-700.woff2 +0 -0
- package/dist/fonts/noto-sans-greek-400.woff2 +0 -0
- package/dist/fonts/noto-sans-greek-500.woff2 +0 -0
- package/dist/fonts/noto-sans-greek-700.woff2 +0 -0
- package/dist/fonts/noto-sans-greek-ext-400.woff2 +0 -0
- package/dist/fonts/noto-sans-greek-ext-500.woff2 +0 -0
- package/dist/fonts/noto-sans-greek-ext-700.woff2 +0 -0
- package/dist/fonts/noto-sans-hebrew-hebrew-400.woff2 +0 -0
- package/dist/fonts/noto-sans-hebrew-hebrew-500.woff2 +0 -0
- package/dist/fonts/noto-sans-hebrew-hebrew-700.woff2 +0 -0
- package/dist/fonts/noto-sans-latin-700.woff2 +0 -0
- package/dist/fonts/noto-sans-latin-ext-400.woff2 +0 -0
- package/dist/fonts/noto-sans-latin-ext-500.woff2 +0 -0
- package/dist/fonts/noto-sans-latin-ext-700.woff2 +0 -0
- package/dist/fonts/noto-sans-thai-thai-400.woff2 +0 -0
- package/dist/fonts/noto-sans-thai-thai-500.woff2 +0 -0
- package/dist/fonts/noto-sans-thai-thai-700.woff2 +0 -0
- package/dist/fonts/noto-sans-vietnamese-400.woff2 +0 -0
- package/dist/fonts/noto-sans-vietnamese-500.woff2 +0 -0
- package/dist/fonts/noto-sans-vietnamese-700.woff2 +0 -0
- package/dist/fonts/roboto-cyrillic-400.woff2 +0 -0
- package/dist/fonts/roboto-cyrillic-500.woff2 +0 -0
- package/dist/fonts/roboto-cyrillic-700.woff2 +0 -0
- package/dist/fonts/roboto-cyrillic-ext-400.woff2 +0 -0
- package/dist/fonts/roboto-cyrillic-ext-500.woff2 +0 -0
- package/dist/fonts/roboto-cyrillic-ext-700.woff2 +0 -0
- package/dist/fonts/roboto-greek-400.woff2 +0 -0
- package/dist/fonts/roboto-greek-500.woff2 +0 -0
- package/dist/fonts/roboto-greek-700.woff2 +0 -0
- package/dist/fonts/roboto-greek-ext-400.woff2 +0 -0
- package/dist/fonts/roboto-greek-ext-500.woff2 +0 -0
- package/dist/fonts/roboto-greek-ext-700.woff2 +0 -0
- package/dist/fonts/roboto-latin-700.woff2 +0 -0
- package/dist/fonts/roboto-latin-ext-400.woff2 +0 -0
- package/dist/fonts/roboto-latin-ext-500.woff2 +0 -0
- package/dist/fonts/roboto-latin-ext-700.woff2 +0 -0
- package/dist/fonts/roboto-vietnamese-400.woff2 +0 -0
- package/dist/fonts/roboto-vietnamese-500.woff2 +0 -0
- package/dist/fonts/roboto-vietnamese-700.woff2 +0 -0
- package/dist/js/chunks/chunk-26VUH75M.mjs +102 -0
- package/dist/js/chunks/chunk-26VUH75M.mjs.map +7 -0
- package/dist/js/chunks/chunk-2LFCOGC3.mjs +233 -0
- package/dist/js/chunks/chunk-2LFCOGC3.mjs.map +7 -0
- package/dist/js/chunks/{chunk-DXGRXYYL.mjs → chunk-36GELQGX.mjs} +29 -46
- package/dist/js/chunks/chunk-36GELQGX.mjs.map +7 -0
- package/dist/js/chunks/{chunk-74MXKKLN.mjs → chunk-3FKWIRHW.mjs} +15 -29
- package/dist/js/chunks/chunk-3FKWIRHW.mjs.map +7 -0
- package/dist/js/chunks/chunk-3KF65KGL.mjs +209 -0
- package/dist/js/chunks/chunk-3KF65KGL.mjs.map +7 -0
- package/dist/js/chunks/{chunk-KVJAVDBC.mjs → chunk-3KLZRQZI.mjs} +88 -116
- package/dist/js/chunks/chunk-3KLZRQZI.mjs.map +7 -0
- package/dist/js/chunks/{chunk-CK2XCICY.mjs → chunk-3XORNED5.mjs} +3 -11
- package/dist/js/chunks/chunk-3XORNED5.mjs.map +7 -0
- package/dist/js/chunks/chunk-4WBGAQN3.mjs +113 -0
- package/dist/js/chunks/chunk-4WBGAQN3.mjs.map +7 -0
- package/dist/js/chunks/{chunk-FM5CZOUB.mjs → chunk-5F4URJHL.mjs} +19 -30
- package/dist/js/chunks/chunk-5F4URJHL.mjs.map +7 -0
- package/dist/js/chunks/chunk-67UNY7RH.mjs +299 -0
- package/dist/js/chunks/chunk-67UNY7RH.mjs.map +7 -0
- package/dist/js/chunks/chunk-7CXNATJS.mjs +97 -0
- package/dist/js/chunks/chunk-7CXNATJS.mjs.map +7 -0
- package/dist/js/chunks/{chunk-UETTGDLI.mjs → chunk-7X44MKEQ.mjs} +43 -48
- package/dist/js/chunks/chunk-7X44MKEQ.mjs.map +7 -0
- package/dist/js/chunks/chunk-7ZAMOMGY.mjs +440 -0
- package/dist/js/chunks/chunk-7ZAMOMGY.mjs.map +7 -0
- package/dist/js/chunks/chunk-AEG6LOAJ.mjs +54 -0
- package/dist/js/chunks/chunk-AEG6LOAJ.mjs.map +7 -0
- package/dist/js/chunks/chunk-AQNFCJJ5.mjs +135 -0
- package/dist/js/chunks/chunk-AQNFCJJ5.mjs.map +7 -0
- package/dist/js/chunks/chunk-B55LWKBM.mjs +75 -0
- package/dist/js/chunks/chunk-B55LWKBM.mjs.map +7 -0
- package/dist/js/chunks/chunk-BB5VXYXT.mjs +28 -0
- package/dist/js/chunks/chunk-BB5VXYXT.mjs.map +7 -0
- package/dist/js/chunks/chunk-BDATLH3H.mjs +108 -0
- package/dist/js/chunks/chunk-BDATLH3H.mjs.map +7 -0
- package/dist/js/chunks/chunk-CWMQOT4O.mjs +232 -0
- package/dist/js/chunks/chunk-CWMQOT4O.mjs.map +7 -0
- package/dist/js/chunks/chunk-CY2CTOVM.mjs +81 -0
- package/dist/js/chunks/chunk-CY2CTOVM.mjs.map +7 -0
- package/dist/js/chunks/{chunk-NUHMOAOY.mjs → chunk-DWA5UYLJ.mjs} +363 -218
- package/dist/js/chunks/chunk-DWA5UYLJ.mjs.map +7 -0
- package/dist/js/chunks/chunk-EB2V4OKL.mjs +79 -0
- package/dist/js/chunks/chunk-EB2V4OKL.mjs.map +7 -0
- package/dist/js/chunks/chunk-EWO662ZC.mjs +188 -0
- package/dist/js/chunks/chunk-EWO662ZC.mjs.map +7 -0
- package/dist/js/chunks/{chunk-ZX6M7SWO.mjs → chunk-F7LAKFMX.mjs} +320 -141
- package/dist/js/chunks/chunk-F7LAKFMX.mjs.map +7 -0
- package/dist/js/chunks/{chunk-L27Q6ZMI.mjs → chunk-FNIIH2LU.mjs} +20 -33
- package/dist/js/chunks/chunk-FNIIH2LU.mjs.map +7 -0
- package/dist/js/chunks/chunk-GE3YMFS6.mjs +15 -0
- package/dist/js/chunks/chunk-GE3YMFS6.mjs.map +7 -0
- package/dist/js/chunks/chunk-GFWYMWYN.mjs +125 -0
- package/dist/js/chunks/chunk-GFWYMWYN.mjs.map +7 -0
- package/dist/js/chunks/chunk-GNRSYMVH.mjs +1 -0
- package/dist/js/chunks/chunk-H5ISU45X.mjs +87 -0
- package/dist/js/chunks/chunk-H5ISU45X.mjs.map +7 -0
- package/dist/js/chunks/{chunk-GJL6GCIU.mjs → chunk-H6YIKFAQ.mjs} +311 -186
- package/dist/js/chunks/chunk-H6YIKFAQ.mjs.map +7 -0
- package/dist/js/chunks/{chunk-BGZLF6JZ.mjs → chunk-HEH7E3KO.mjs} +155 -35
- package/dist/js/chunks/chunk-HEH7E3KO.mjs.map +7 -0
- package/dist/js/chunks/chunk-HQRLBTNM.mjs +152 -0
- package/dist/js/chunks/chunk-HQRLBTNM.mjs.map +7 -0
- package/dist/js/chunks/chunk-I2F7MLUU.mjs +137 -0
- package/dist/js/chunks/chunk-I2F7MLUU.mjs.map +7 -0
- package/dist/js/chunks/chunk-IQOTGGHX.mjs +797 -0
- package/dist/js/chunks/chunk-IQOTGGHX.mjs.map +7 -0
- package/dist/js/chunks/chunk-JH3YWKA6.mjs +225 -0
- package/dist/js/chunks/chunk-JH3YWKA6.mjs.map +7 -0
- package/dist/js/chunks/chunk-JOLJAYIJ.mjs +7 -0
- package/dist/js/chunks/chunk-JOLJAYIJ.mjs.map +7 -0
- package/dist/js/chunks/{chunk-VGNYF6FB.mjs → chunk-KOTGMCMI.mjs} +116 -24
- package/dist/js/chunks/chunk-KOTGMCMI.mjs.map +7 -0
- package/dist/js/chunks/{chunk-LQWUDNHZ.mjs → chunk-LC4O5LFS.mjs} +21 -45
- package/dist/js/chunks/chunk-LC4O5LFS.mjs.map +7 -0
- package/dist/js/chunks/chunk-LEF33SCP.mjs +127 -0
- package/dist/js/chunks/chunk-LEF33SCP.mjs.map +7 -0
- package/dist/js/chunks/{chunk-PDG64UHF.mjs → chunk-LFORZRPH.mjs} +21 -23
- package/dist/js/chunks/chunk-LFORZRPH.mjs.map +7 -0
- package/dist/js/chunks/chunk-LWLNV5EC.mjs +451 -0
- package/dist/js/chunks/chunk-LWLNV5EC.mjs.map +7 -0
- package/dist/js/chunks/chunk-LXRHUQAX.mjs +491 -0
- package/dist/js/chunks/chunk-LXRHUQAX.mjs.map +7 -0
- package/dist/js/chunks/{chunk-SFI2U4YW.mjs → chunk-MA2SZZFB.mjs} +82 -111
- package/dist/js/chunks/chunk-MA2SZZFB.mjs.map +7 -0
- package/dist/js/chunks/chunk-MDBZAMIV.mjs +121 -0
- package/dist/js/chunks/chunk-MDBZAMIV.mjs.map +7 -0
- package/dist/js/chunks/chunk-NODZ5VAD.mjs +75 -0
- package/dist/js/chunks/chunk-NODZ5VAD.mjs.map +7 -0
- package/dist/js/chunks/chunk-O2WJB6TH.mjs +365 -0
- package/dist/js/chunks/chunk-O2WJB6TH.mjs.map +7 -0
- package/dist/js/chunks/chunk-PCABY5BN.mjs +35 -0
- package/dist/js/chunks/chunk-PCABY5BN.mjs.map +7 -0
- package/dist/js/chunks/chunk-PWKYVMND.mjs +120 -0
- package/dist/js/chunks/chunk-PWKYVMND.mjs.map +7 -0
- package/dist/js/chunks/{chunk-SMY7GJSS.mjs → chunk-QHZZT7YO.mjs} +66 -38
- package/dist/js/chunks/chunk-QHZZT7YO.mjs.map +7 -0
- package/dist/js/chunks/chunk-QND56EW2.mjs +439 -0
- package/dist/js/chunks/chunk-QND56EW2.mjs.map +7 -0
- package/dist/js/chunks/chunk-QNODAANY.mjs +376 -0
- package/dist/js/chunks/chunk-QNODAANY.mjs.map +7 -0
- package/dist/js/chunks/{chunk-KHXZ2A4K.mjs → chunk-QRO5FV3I.mjs} +156 -73
- package/dist/js/chunks/chunk-QRO5FV3I.mjs.map +7 -0
- package/dist/js/chunks/chunk-R7A7JRC5.mjs +440 -0
- package/dist/js/chunks/chunk-R7A7JRC5.mjs.map +7 -0
- package/dist/js/chunks/chunk-RKG2CBFE.mjs +74 -0
- package/dist/js/chunks/chunk-RKG2CBFE.mjs.map +7 -0
- package/dist/js/chunks/{chunk-XAEAEHIX.mjs → chunk-RSNS5OYS.mjs} +38 -25
- package/dist/js/chunks/chunk-RSNS5OYS.mjs.map +7 -0
- package/dist/js/chunks/{chunk-X4ISMKE2.mjs → chunk-RUDYMEJ3.mjs} +7 -6
- package/dist/js/chunks/chunk-RUDYMEJ3.mjs.map +7 -0
- package/dist/js/chunks/chunk-STJR62SU.mjs +161 -0
- package/dist/js/chunks/chunk-STJR62SU.mjs.map +7 -0
- package/dist/js/chunks/chunk-SUSD4UTN.mjs +220 -0
- package/dist/js/chunks/chunk-SUSD4UTN.mjs.map +7 -0
- package/dist/js/chunks/{chunk-5CEAOLUA.mjs → chunk-SYBOA5HC.mjs} +26 -48
- package/dist/js/chunks/chunk-SYBOA5HC.mjs.map +7 -0
- package/dist/js/chunks/chunk-T4MOBP3J.mjs +108 -0
- package/dist/js/chunks/chunk-T4MOBP3J.mjs.map +7 -0
- package/dist/js/chunks/chunk-TM7HPGTV.mjs +342 -0
- package/dist/js/chunks/chunk-TM7HPGTV.mjs.map +7 -0
- package/dist/js/chunks/{chunk-C6CHEWYP.mjs → chunk-TMQDZSDC.mjs} +71 -35
- package/dist/js/chunks/chunk-TMQDZSDC.mjs.map +7 -0
- package/dist/js/chunks/chunk-TVSX5YA2.mjs +48 -0
- package/dist/js/chunks/chunk-TVSX5YA2.mjs.map +7 -0
- package/dist/js/chunks/chunk-UHO5CV6K.mjs +80 -0
- package/dist/js/chunks/chunk-UHO5CV6K.mjs.map +7 -0
- package/dist/js/chunks/chunk-UKCNELUN.mjs +223 -0
- package/dist/js/chunks/chunk-UKCNELUN.mjs.map +7 -0
- package/dist/js/chunks/chunk-UKQK5GWR.mjs +167 -0
- package/dist/js/chunks/chunk-UKQK5GWR.mjs.map +7 -0
- package/dist/js/chunks/{chunk-TSZYSW7F.mjs → chunk-UTSLYQ65.mjs} +21 -48
- package/dist/js/chunks/chunk-UTSLYQ65.mjs.map +7 -0
- package/dist/js/chunks/chunk-VS5OJBOD.mjs +108 -0
- package/dist/js/chunks/chunk-VS5OJBOD.mjs.map +7 -0
- package/dist/js/chunks/chunk-VZMROW5A.mjs +759 -0
- package/dist/js/chunks/chunk-VZMROW5A.mjs.map +7 -0
- package/dist/js/chunks/chunk-W6FAL3TI.mjs +38 -0
- package/dist/js/chunks/chunk-W6FAL3TI.mjs.map +7 -0
- package/dist/js/chunks/chunk-XB6Y7P5W.mjs +69 -0
- package/dist/js/chunks/chunk-XB6Y7P5W.mjs.map +7 -0
- package/dist/js/chunks/chunk-XDAMOMVD.mjs +226 -0
- package/dist/js/chunks/chunk-XDAMOMVD.mjs.map +7 -0
- package/dist/js/chunks/{chunk-WDK4T63U.mjs → chunk-XJPMW5SP.mjs} +247 -172
- package/dist/js/chunks/chunk-XJPMW5SP.mjs.map +7 -0
- package/dist/js/chunks/{chunk-KUFHW3DS.mjs → chunk-YKANQILZ.mjs} +16 -21
- package/dist/js/chunks/chunk-YKANQILZ.mjs.map +7 -0
- package/dist/js/chunks/chunk-YLZOJLDI.mjs +175 -0
- package/dist/js/chunks/chunk-YLZOJLDI.mjs.map +7 -0
- package/dist/js/chunks/chunk-ZK7YY322.mjs +514 -0
- package/dist/js/chunks/chunk-ZK7YY322.mjs.map +7 -0
- package/dist/js/expressive.cjs +10266 -3628
- package/dist/js/expressive.cjs.map +4 -4
- package/dist/js/expressive.js +10266 -3628
- package/dist/js/expressive.js.map +4 -4
- package/dist/js/expressive.min.js +23 -22
- package/dist/js/expressive.min.js.map +4 -4
- package/dist/js/expressive.mjs +181 -69
- package/dist/js/expressive.mjs.map +2 -2
- package/dist/js/internal/behaviors/bottomSheets.mjs +4 -3
- package/dist/js/internal/behaviors/copy.mjs +9 -0
- package/dist/js/internal/behaviors/copy.mjs.map +7 -0
- package/dist/js/internal/behaviors/dataTables.mjs +8 -0
- package/dist/js/internal/behaviors/dataTables.mjs.map +7 -0
- package/dist/js/internal/behaviors/dialogs.mjs +2 -2
- package/dist/js/internal/behaviors/forms.mjs +2 -2
- package/dist/js/internal/behaviors/imageCompare.mjs +8 -0
- package/dist/js/internal/behaviors/imageCompare.mjs.map +7 -0
- package/dist/js/internal/behaviors/lists.mjs +8 -0
- package/dist/js/internal/behaviors/lists.mjs.map +7 -0
- package/dist/js/internal/behaviors/paneResize.mjs +8 -0
- package/dist/js/internal/behaviors/paneResize.mjs.map +7 -0
- package/dist/js/internal/behaviors/sheetDrag.mjs +7 -2
- package/dist/js/internal/behaviors/sideSheets.mjs +4 -3
- package/dist/js/internal/behaviors/sortable.mjs +8 -0
- package/dist/js/internal/behaviors/sortable.mjs.map +7 -0
- package/dist/js/internal/behaviors/theme.mjs +8 -0
- package/dist/js/internal/behaviors/theme.mjs.map +7 -0
- package/dist/js/internal/behaviors/tour.mjs +8 -0
- package/dist/js/internal/behaviors/tour.mjs.map +7 -0
- package/dist/js/internal/behaviors/transferList.mjs +8 -0
- package/dist/js/internal/behaviors/transferList.mjs.map +7 -0
- package/dist/js/internal/components/appBar.mjs +3 -2
- package/dist/js/internal/components/autocomplete.mjs +5 -4
- package/dist/js/internal/components/backToTop.mjs +9 -0
- package/dist/js/internal/components/backToTop.mjs.map +7 -0
- package/dist/js/internal/components/barChart.mjs +5 -4
- package/dist/js/internal/components/buttonGroup.mjs +3 -2
- package/dist/js/internal/components/buttons.mjs +3 -3
- package/dist/js/internal/components/cards.mjs +3 -3
- package/dist/js/internal/components/carousel.mjs +3 -3
- package/dist/js/internal/components/cascader.mjs +10 -0
- package/dist/js/internal/components/cascader.mjs.map +7 -0
- package/dist/js/internal/components/characterCounter.mjs +3 -2
- package/dist/js/internal/components/chips.mjs +7 -5
- package/dist/js/internal/components/colorPicker.mjs +9 -0
- package/dist/js/internal/components/colorPicker.mjs.map +7 -0
- package/dist/js/internal/components/columnChart.mjs +4 -3
- package/dist/js/internal/components/commandPalette.mjs +3 -3
- package/dist/js/internal/components/confetti.mjs +3 -2
- package/dist/js/internal/components/currencyInput.mjs +9 -0
- package/dist/js/internal/components/currencyInput.mjs.map +7 -0
- package/dist/js/internal/components/datepicker.mjs +12 -8
- package/dist/js/internal/components/expandingCard.mjs +3 -3
- package/dist/js/internal/components/funnelChart.mjs +10 -0
- package/dist/js/internal/components/funnelChart.mjs.map +7 -0
- package/dist/js/internal/components/heatmapChart.mjs +4 -3
- package/dist/js/internal/components/hoverCard.mjs +9 -0
- package/dist/js/internal/components/hoverCard.mjs.map +7 -0
- package/dist/js/internal/components/index.mjs +131 -65
- package/dist/js/internal/components/inputMask.mjs +9 -0
- package/dist/js/internal/components/inputMask.mjs.map +7 -0
- package/dist/js/internal/components/keypad.mjs +3 -3
- package/dist/js/internal/components/lightbox.mjs +3 -3
- package/dist/js/internal/components/lineChart.mjs +41 -4
- package/dist/js/internal/components/loadingOverlay.mjs +9 -0
- package/dist/js/internal/components/loadingOverlay.mjs.map +7 -0
- package/dist/js/internal/components/mapView.mjs +3 -3
- package/dist/js/internal/components/menu.mjs +3 -3
- package/dist/js/internal/components/menubar.mjs +10 -0
- package/dist/js/internal/components/menubar.mjs.map +7 -0
- package/dist/js/internal/components/messageScroller.mjs +3 -3
- package/dist/js/internal/components/mixedChart.mjs +5 -4
- package/dist/js/internal/components/navigationRail.mjs +3 -2
- package/dist/js/internal/components/particles.mjs +3 -2
- package/dist/js/internal/components/pieChart.mjs +4 -3
- package/dist/js/internal/components/pullToRefresh.mjs +9 -0
- package/dist/js/internal/components/pullToRefresh.mjs.map +7 -0
- package/dist/js/internal/components/questionnaire.mjs +3 -3
- package/dist/js/internal/components/radarChart.mjs +4 -3
- package/dist/js/internal/components/radialChart.mjs +4 -3
- package/dist/js/internal/components/registry.mjs +60 -41
- package/dist/js/internal/components/richTextEditor.mjs +3 -3
- package/dist/js/internal/components/sankeyChart.mjs +10 -0
- package/dist/js/internal/components/sankeyChart.mjs.map +7 -0
- package/dist/js/internal/components/scatterChart.mjs +10 -0
- package/dist/js/internal/components/scatterChart.mjs.map +7 -0
- package/dist/js/internal/components/scrollspy.mjs +3 -2
- package/dist/js/internal/components/select.mjs +5 -4
- package/dist/js/internal/components/showMore.mjs +9 -0
- package/dist/js/internal/components/showMore.mjs.map +7 -0
- package/dist/js/internal/components/slider.mjs +3 -3
- package/dist/js/internal/components/snackbar.mjs +2 -2
- package/dist/js/internal/components/swipeActions.mjs +9 -0
- package/dist/js/internal/components/swipeActions.mjs.map +7 -0
- package/dist/js/internal/components/tabs.mjs +3 -4
- package/dist/js/internal/components/timepicker.mjs +5 -4
- package/dist/js/internal/components/tooltip.mjs +3 -3
- package/dist/js/internal/components/treeSelect.mjs +14 -0
- package/dist/js/internal/components/treeSelect.mjs.map +7 -0
- package/dist/js/internal/components/treemapChart.mjs +10 -0
- package/dist/js/internal/components/treemapChart.mjs.map +7 -0
- package/dist/js/internal/core/component.mjs +6 -3
- package/dist/js/internal/core/formControl.mjs +12 -0
- package/dist/js/internal/core/formControl.mjs.map +7 -0
- package/dist/js/internal/core/imageURL.mjs +7 -0
- package/dist/js/internal/core/imageURL.mjs.map +7 -0
- package/dist/js/internal/core/spring.mjs +11 -0
- package/dist/js/internal/core/spring.mjs.map +7 -0
- package/dist/js/internal/core/utils.mjs +21 -3
- package/dist/js/internal/plugins/dockedDisplayPlugin.mjs +2 -2
- package/dist/js/internal/plugins/modalDisplayPlugin.mjs +13 -0
- package/dist/js/internal/plugins/modalDisplayPlugin.mjs.map +7 -0
- package/dist/js/modular.mjs +172 -69
- package/dist/types/behaviors/bottomSheets.d.ts +23 -5
- package/dist/types/behaviors/copy.d.ts +18 -0
- package/dist/types/behaviors/dataTables.d.ts +125 -0
- package/dist/types/behaviors/dialogs.d.ts +27 -1
- package/dist/types/behaviors/forms.d.ts +70 -4
- package/dist/types/behaviors/imageCompare.d.ts +13 -0
- package/dist/types/behaviors/lists.d.ts +12 -0
- package/dist/types/behaviors/paneResize.d.ts +29 -0
- package/dist/types/behaviors/sheetDrag.d.ts +18 -0
- package/dist/types/behaviors/sideSheets.d.ts +1 -1
- package/dist/types/behaviors/sortable.d.ts +28 -0
- package/dist/types/behaviors/theme.d.ts +22 -0
- package/dist/types/behaviors/tour.d.ts +36 -0
- package/dist/types/behaviors/transferList.d.ts +53 -0
- package/dist/types/components/appBar.d.ts +5 -6
- package/dist/types/components/autocomplete.d.ts +105 -20
- package/dist/types/components/backToTop.d.ts +36 -0
- package/dist/types/components/barChart.d.ts +3 -6
- package/dist/types/components/buttonGroup.d.ts +2 -4
- package/dist/types/components/buttons.d.ts +5 -5
- package/dist/types/components/cards.d.ts +3 -16
- package/dist/types/components/carousel.d.ts +16 -15
- package/dist/types/components/cascader.d.ts +130 -0
- package/dist/types/components/characterCounter.d.ts +2 -15
- package/dist/types/components/chips.d.ts +80 -19
- package/dist/types/components/colorPicker.d.ts +56 -0
- package/dist/types/components/columnChart.d.ts +23 -10
- package/dist/types/components/commandPalette.d.ts +11 -16
- package/dist/types/components/confetti.d.ts +2 -4
- package/dist/types/components/currencyInput.d.ts +60 -0
- package/dist/types/components/datepicker.d.ts +107 -56
- package/dist/types/components/expandingCard.d.ts +4 -6
- package/dist/types/components/funnelChart.d.ts +35 -0
- package/dist/types/components/heatmapChart.d.ts +42 -8
- package/dist/types/components/hoverCard.d.ts +59 -0
- package/dist/types/components/index.d.ts +16 -1
- package/dist/types/components/inputMask.d.ts +28 -0
- package/dist/types/components/keypad.d.ts +38 -6
- package/dist/types/components/lightbox.d.ts +14 -20
- package/dist/types/components/lineChart.d.ts +212 -12
- package/dist/types/components/loadingOverlay.d.ts +42 -0
- package/dist/types/components/mapView.d.ts +138 -27
- package/dist/types/components/menu.d.ts +74 -22
- package/dist/types/components/menubar.d.ts +37 -0
- package/dist/types/components/messageScroller.d.ts +2 -14
- package/dist/types/components/mixedChart.d.ts +15 -6
- package/dist/types/components/navigationRail.d.ts +16 -5
- package/dist/types/components/particles.d.ts +22 -5
- package/dist/types/components/pieChart.d.ts +33 -9
- package/dist/types/components/pullToRefresh.d.ts +80 -0
- package/dist/types/components/questionnaire.d.ts +58 -16
- package/dist/types/components/radarChart.d.ts +10 -6
- package/dist/types/components/radialChart.d.ts +58 -7
- package/dist/types/components/registry.d.ts +73 -3
- package/dist/types/components/richTextEditor.d.ts +45 -22
- package/dist/types/components/sankeyChart.d.ts +72 -0
- package/dist/types/components/scatterChart.d.ts +102 -0
- package/dist/types/components/scrollspy.d.ts +3 -5
- package/dist/types/components/select.d.ts +44 -33
- package/dist/types/components/showMore.d.ts +53 -0
- package/dist/types/components/slider.d.ts +2 -15
- package/dist/types/components/snackbar.d.ts +68 -1
- package/dist/types/components/swipeActions.d.ts +81 -0
- package/dist/types/components/tabs.d.ts +92 -30
- package/dist/types/components/timepicker.d.ts +128 -27
- package/dist/types/components/tooltip.d.ts +57 -21
- package/dist/types/components/treeSelect.d.ts +106 -0
- package/dist/types/components/treemapChart.d.ts +56 -0
- package/dist/types/core/component.d.ts +49 -25
- package/dist/types/core/formControl.d.ts +21 -0
- package/dist/types/core/imageURL.d.ts +2 -0
- package/dist/types/core/spring.d.ts +20 -0
- package/dist/types/core/utils.d.ts +123 -72
- package/dist/types/modular.d.ts +33 -1
- package/dist/types/plugins/dockedDisplayPlugin.d.ts +10 -8
- package/dist/types/plugins/modalDisplayPlugin.d.ts +39 -0
- package/package.json +17 -13
- package/src/sass/README.md +27 -18
- package/src/sass/abstracts/_elevation.scss +13 -7
- package/src/sass/abstracts/_index.scss +1 -0
- package/src/sass/abstracts/_mixins.scss +864 -78
- package/src/sass/abstracts/_spring.scss +63 -0
- package/src/sass/abstracts/_variables.scss +64 -21
- package/src/sass/base/_fonts.scss +61 -48
- package/src/sass/base/_global.scss +104 -24
- package/src/sass/base/_index.scss +2 -0
- package/src/sass/base/_normalize.scss +59 -114
- package/src/sass/base/_print.scss +21 -0
- package/src/sass/base/_prose.scss +68 -0
- package/src/sass/base/_typography.scss +9 -5
- package/src/sass/components/_accordion.scss +10 -19
- package/src/sass/components/_alert.scss +102 -0
- package/src/sass/components/_aura.scss +9 -3
- package/src/sass/components/_avatar.scss +3 -3
- package/src/sass/components/_back-to-top.scss +38 -0
- package/src/sass/components/_badges.scss +6 -5
- package/src/sass/components/_bar-chart.scss +31 -90
- package/src/sass/components/_bottom-sheet.scss +51 -16
- package/src/sass/components/_breadcrumb.scss +8 -7
- package/src/sass/components/_button-groups.scss +30 -63
- package/src/sass/components/_buttons.scss +137 -94
- package/src/sass/components/_calendar.scss +244 -0
- package/src/sass/components/_cards.scss +36 -44
- package/src/sass/components/_carousel.scss +37 -113
- package/src/sass/components/_cascader.scss +131 -0
- package/src/sass/components/_chips.scss +36 -46
- package/src/sass/components/_column-chart.scss +15 -26
- package/src/sass/components/_command-palette.scss +4 -7
- package/src/sass/components/_confetti.scss +1 -4
- package/src/sass/components/_countdown.scss +1 -1
- package/src/sass/components/_data-table.scss +172 -25
- package/src/sass/components/_datepicker.scss +54 -40
- package/src/sass/components/_description-list.scss +85 -0
- package/src/sass/components/_dialog.scss +48 -55
- package/src/sass/components/_docked-display.scss +1 -3
- package/src/sass/components/_drag-handle.scss +16 -20
- package/src/sass/components/_expanding-card.scss +21 -14
- package/src/sass/components/_fab-menu.scss +43 -39
- package/src/sass/components/_funnel-chart.scss +63 -0
- package/src/sass/components/_heatmap-chart.scss +114 -29
- package/src/sass/components/_icon-buttons.scss +8 -11
- package/src/sass/components/_icons-material-design.scss +2 -2
- package/src/sass/components/_image-compare.scss +108 -0
- package/src/sass/components/_index.scss +20 -0
- package/src/sass/components/_keypad.scss +39 -19
- package/src/sass/components/_kpi.scss +6 -11
- package/src/sass/components/_lightbox.scss +24 -13
- package/src/sass/components/_line-chart.scss +9 -63
- package/src/sass/components/_list.scss +59 -14
- package/src/sass/components/_loading-indicator.scss +1 -0
- package/src/sass/components/_loading-overlay.scss +105 -0
- package/src/sass/components/_map.scss +37 -11
- package/src/sass/components/_marquee.scss +4 -3
- package/src/sass/components/_mega-menu.scss +128 -0
- package/src/sass/components/_menu.scss +146 -127
- package/src/sass/components/_menubar.scss +47 -0
- package/src/sass/components/_message-scroller.scss +2 -2
- package/src/sass/components/_message.scss +3 -3
- package/src/sass/components/_mixed-chart.scss +27 -35
- package/src/sass/components/_modal-display.scss +21 -0
- package/src/sass/components/_navbar.scss +45 -36
- package/src/sass/components/_navigation-bar.scss +12 -77
- package/src/sass/components/_navigation-rail.scss +161 -92
- package/src/sass/components/_org-chart.scss +192 -0
- package/src/sass/components/_page-footer.scss +2 -4
- package/src/sass/components/_pagination.scss +9 -27
- package/src/sass/components/_panes.scss +35 -42
- package/src/sass/components/_particles.scss +1 -4
- package/src/sass/components/_pie-chart.scss +86 -68
- package/src/sass/components/_popover.scss +18 -5
- package/src/sass/components/_progress.scss +183 -44
- package/src/sass/components/_pull-to-refresh.scss +90 -0
- package/src/sass/components/_questionnaire.scss +74 -3
- package/src/sass/components/_radar-chart.scss +40 -42
- package/src/sass/components/_radial-chart.scss +108 -46
- package/src/sass/components/_rich-text-editor.scss +2 -2
- package/src/sass/components/_sankey-chart.scss +91 -0
- package/src/sass/components/_scatter-chart.scss +144 -0
- package/src/sass/components/_scrim.scss +0 -2
- package/src/sass/components/_scrollspy.scss +0 -2
- package/src/sass/components/_search.scss +27 -26
- package/src/sass/components/_show-more.scss +8 -0
- package/src/sass/components/_side-sheet.scss +32 -51
- package/src/sass/components/_skeleton.scss +26 -19
- package/src/sass/components/_snackbar.scss +25 -21
- package/src/sass/components/_split-button.scss +5 -5
- package/src/sass/components/_stat.scss +3 -8
- package/src/sass/components/_stepper.scss +1 -1
- package/src/sass/components/_swipe-actions.scss +71 -0
- package/src/sass/components/_table_of_contents.scss +1 -3
- package/src/sass/components/_tabs.scss +49 -46
- package/src/sass/components/_timeline.scss +12 -12
- package/src/sass/components/_timepicker.scss +111 -79
- package/src/sass/components/_toolbar.scss +36 -47
- package/src/sass/components/_tooltip.scss +25 -12
- package/src/sass/components/_tour.scss +89 -0
- package/src/sass/components/_transfer-list.scss +73 -0
- package/src/sass/components/_transitions.scss +4 -4
- package/src/sass/components/_tree.scss +7 -32
- package/src/sass/components/_treemap-chart.scss +98 -0
- package/src/sass/components/forms/_checkboxes.scss +107 -44
- package/src/sass/components/forms/_color-picker.scss +135 -0
- package/src/sass/components/forms/_color-swatches.scss +85 -0
- package/src/sass/components/forms/_drop-zone.scss +16 -13
- package/src/sass/components/forms/_fieldset.scss +4 -7
- package/src/sass/components/forms/_file-input.scss +12 -8
- package/src/sass/components/forms/_index.scss +3 -1
- package/src/sass/components/forms/_input-fields.scss +271 -90
- package/src/sass/components/forms/_radio-buttons.scss +34 -117
- package/src/sass/components/forms/_rating.scss +2 -32
- package/src/sass/components/forms/_select.scss +198 -20
- package/src/sass/components/forms/_slider.scss +92 -98
- package/src/sass/components/forms/_switches.scss +62 -180
- package/src/sass/custom.scss +10 -1
- package/src/sass/expressive.scss +3 -63
- package/src/sass/tokens/_contrast.scss +94 -0
- package/src/sass/tokens/_elevation.scss +16 -0
- package/src/sass/tokens/_index.scss +5 -0
- package/src/sass/tokens/_motion.scss +109 -0
- package/src/sass/tokens/_reference.scss +72 -141
- package/src/sass/tokens/_shape.scss +38 -0
- package/src/sass/tokens/_stacking.scss +27 -0
- package/src/sass/tokens/_state.scss +0 -2
- package/src/sass/tokens/_theme.scss +10 -1
- package/src/sass/tokens/_vibrant.scss +2 -5
- package/src/sass/utilities/_defer-render.scss +17 -0
- package/src/sass/utilities/_helpers.scss +184 -27
- package/src/sass/utilities/_index.scss +1 -0
- package/src/sass/utilities/_scroll-area.scss +0 -2
- package/src/sass/utilities/_spacing.scss +52 -34
- package/src/sass/utilities/_typescale.scss +8 -1
- package/src/sass/utilities/_visibility.scss +46 -77
- package/src/sass/utilities/_z-depth.scss +7 -4
- package/dist/js/chunks/chunk-33QVDDGR.mjs +0 -270
- package/dist/js/chunks/chunk-33QVDDGR.mjs.map +0 -7
- package/dist/js/chunks/chunk-45FER6RI.mjs +0 -59
- package/dist/js/chunks/chunk-45FER6RI.mjs.map +0 -7
- package/dist/js/chunks/chunk-5CEAOLUA.mjs.map +0 -7
- package/dist/js/chunks/chunk-6VATUZC6.mjs +0 -295
- package/dist/js/chunks/chunk-6VATUZC6.mjs.map +0 -7
- package/dist/js/chunks/chunk-74MXKKLN.mjs.map +0 -7
- package/dist/js/chunks/chunk-AIURVCG6.mjs +0 -55
- package/dist/js/chunks/chunk-AIURVCG6.mjs.map +0 -7
- package/dist/js/chunks/chunk-BGZLF6JZ.mjs.map +0 -7
- package/dist/js/chunks/chunk-C6CHEWYP.mjs.map +0 -7
- package/dist/js/chunks/chunk-CK2XCICY.mjs.map +0 -7
- package/dist/js/chunks/chunk-CXXM2L4F.mjs +0 -344
- package/dist/js/chunks/chunk-CXXM2L4F.mjs.map +0 -7
- package/dist/js/chunks/chunk-DXGRXYYL.mjs.map +0 -7
- package/dist/js/chunks/chunk-FM5CZOUB.mjs.map +0 -7
- package/dist/js/chunks/chunk-GJL6GCIU.mjs.map +0 -7
- package/dist/js/chunks/chunk-K3HZMFMD.mjs +0 -135
- package/dist/js/chunks/chunk-K3HZMFMD.mjs.map +0 -7
- package/dist/js/chunks/chunk-KHXZ2A4K.mjs.map +0 -7
- package/dist/js/chunks/chunk-KQACNQ22.mjs +0 -7
- package/dist/js/chunks/chunk-KQACNQ22.mjs.map +0 -7
- package/dist/js/chunks/chunk-KUFHW3DS.mjs.map +0 -7
- package/dist/js/chunks/chunk-KVJAVDBC.mjs.map +0 -7
- package/dist/js/chunks/chunk-L27Q6ZMI.mjs.map +0 -7
- package/dist/js/chunks/chunk-LQWUDNHZ.mjs.map +0 -7
- package/dist/js/chunks/chunk-M372EDXD.mjs +0 -322
- package/dist/js/chunks/chunk-M372EDXD.mjs.map +0 -7
- package/dist/js/chunks/chunk-M3MURWMB.mjs +0 -82
- package/dist/js/chunks/chunk-M3MURWMB.mjs.map +0 -7
- package/dist/js/chunks/chunk-NUHMOAOY.mjs.map +0 -7
- package/dist/js/chunks/chunk-OWG3LMUL.mjs +0 -169
- package/dist/js/chunks/chunk-OWG3LMUL.mjs.map +0 -7
- package/dist/js/chunks/chunk-PD6HYHAE.mjs +0 -48
- package/dist/js/chunks/chunk-PD6HYHAE.mjs.map +0 -7
- package/dist/js/chunks/chunk-PDG64UHF.mjs.map +0 -7
- package/dist/js/chunks/chunk-PO3AXVR3.mjs +0 -546
- package/dist/js/chunks/chunk-PO3AXVR3.mjs.map +0 -7
- package/dist/js/chunks/chunk-QYGK36OG.mjs +0 -181
- package/dist/js/chunks/chunk-QYGK36OG.mjs.map +0 -7
- package/dist/js/chunks/chunk-SFI2U4YW.mjs.map +0 -7
- package/dist/js/chunks/chunk-SMY7GJSS.mjs.map +0 -7
- package/dist/js/chunks/chunk-TCCA2HDG.mjs +0 -414
- package/dist/js/chunks/chunk-TCCA2HDG.mjs.map +0 -7
- package/dist/js/chunks/chunk-TSZYSW7F.mjs.map +0 -7
- package/dist/js/chunks/chunk-UAZSDUVP.mjs +0 -90
- package/dist/js/chunks/chunk-UAZSDUVP.mjs.map +0 -7
- package/dist/js/chunks/chunk-UBRZZWRA.mjs +0 -127
- package/dist/js/chunks/chunk-UBRZZWRA.mjs.map +0 -7
- package/dist/js/chunks/chunk-UCOE7ZDL.mjs +0 -287
- package/dist/js/chunks/chunk-UCOE7ZDL.mjs.map +0 -7
- package/dist/js/chunks/chunk-UETTGDLI.mjs.map +0 -7
- package/dist/js/chunks/chunk-UNCRDLP6.mjs +0 -136
- package/dist/js/chunks/chunk-UNCRDLP6.mjs.map +0 -7
- package/dist/js/chunks/chunk-VGNYF6FB.mjs.map +0 -7
- package/dist/js/chunks/chunk-VGPGBNGL.mjs +0 -68
- package/dist/js/chunks/chunk-VGPGBNGL.mjs.map +0 -7
- package/dist/js/chunks/chunk-VKAUVTQY.mjs +0 -1
- package/dist/js/chunks/chunk-VM4FTS7L.mjs +0 -48
- package/dist/js/chunks/chunk-VM4FTS7L.mjs.map +0 -7
- package/dist/js/chunks/chunk-WDK4T63U.mjs.map +0 -7
- package/dist/js/chunks/chunk-WOCCTVUF.mjs +0 -185
- package/dist/js/chunks/chunk-WOCCTVUF.mjs.map +0 -7
- package/dist/js/chunks/chunk-WQYN5L4E.mjs +0 -107
- package/dist/js/chunks/chunk-WQYN5L4E.mjs.map +0 -7
- package/dist/js/chunks/chunk-X4ISMKE2.mjs.map +0 -7
- package/dist/js/chunks/chunk-XAEAEHIX.mjs.map +0 -7
- package/dist/js/chunks/chunk-ZX6M7SWO.mjs.map +0 -7
- /package/dist/js/chunks/{chunk-VKAUVTQY.mjs.map → chunk-GNRSYMVH.mjs.map} +0 -0
|
@@ -3,15 +3,14 @@
|
|
|
3
3
|
// Text fields.
|
|
4
4
|
//
|
|
5
5
|
// Anatomy is the HTML. .field is the container. The <label> after the
|
|
6
|
-
// control is the floating label. A
|
|
7
|
-
//
|
|
8
|
-
// icon. Icons come before the control in the documented markup, so
|
|
6
|
+
// control is the floating label. A .prefix icon is the leading icon and a
|
|
7
|
+
// .suffix icon the trailing one. Icons come before the control in the documented markup, so
|
|
9
8
|
// trailing cannot be selected with :last-child — that left .suffix
|
|
10
9
|
// in flow above the well. <small> is supporting text. .outlined is
|
|
11
10
|
// the outlined variant; the default is filled.
|
|
12
11
|
//
|
|
13
12
|
// Tokens follow https://m3.material.io/components/text-fields/specs
|
|
14
|
-
// filled surface-
|
|
13
|
+
// filled surface-container-highest well, 1rem corners, 1dp/2dp bottom indicator
|
|
15
14
|
// outlined 1dp/2dp outline, 1rem corners
|
|
16
15
|
// height 56dp
|
|
17
16
|
// label body-large rest, body-small floated
|
|
@@ -25,20 +24,21 @@
|
|
|
25
24
|
color: var(--md-sys-color-on-surface-variant);
|
|
26
25
|
}
|
|
27
26
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
// :is() takes its most specific argument, (0,1,0) for each one here, so every
|
|
28
|
+
// input keeps the (0,2,1) a per-type :not(.browser-default) list gave it.
|
|
29
|
+
input:is(:not([type]), [type=text], [type=password], [type=email], [type=url], [type=time], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=tel], [type=number], [type=search]):not(.browser-default),
|
|
30
|
+
textarea.expressive-textarea {
|
|
31
31
|
outline: none;
|
|
32
32
|
color: var(--md-sys-color-on-surface);
|
|
33
33
|
width: 100%;
|
|
34
|
-
height: 56px;
|
|
34
|
+
height: rem(56px);
|
|
35
35
|
background-color: transparent;
|
|
36
36
|
@include typescale("body-large");
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
// A .field is full of spans that are not the floating label: supporting text,
|
|
40
|
-
// the character counter, the file path, the select caret, and
|
|
41
|
-
//
|
|
40
|
+
// the character counter, the file path, the select caret, and the leading and
|
|
41
|
+
// trailing icons. Every rule that
|
|
42
42
|
// styles "the label, or the span standing in for it" has to exclude all of
|
|
43
43
|
// them, and there are five such rules. They were five hand-copied lists that
|
|
44
44
|
// had already drifted (.file-path was in two of them), and adding .prefix /
|
|
@@ -47,31 +47,55 @@ $_text-inputs: "input:not([type]):not(.browser-default), input[type=text]:not(.b
|
|
|
47
47
|
// pointer-events: none.
|
|
48
48
|
$_not-label: ".supporting-text, .character-counter, .file-path, .caret, .prefix, .suffix, .chip";
|
|
49
49
|
|
|
50
|
+
// The label, or the span standing in for it, floats while the control is
|
|
51
|
+
// focused or holds a value. Nested under the control, so & is the control.
|
|
52
|
+
$_floated: '&:focus + label, &:not([placeholder=" "]) + label, &:not(:placeholder-shown) + label, &:focus + span:not(#{$_not-label}), &:not([placeholder=" "]) + span:not(#{$_not-label}), &:not(:placeholder-shown) + span:not(#{$_not-label})';
|
|
53
|
+
|
|
50
54
|
.field {
|
|
51
55
|
--md-comp-filled-text-field-container-color: var(--md-sys-color-surface-container-highest);
|
|
52
56
|
--md-comp-filled-text-field-container-shape: 1rem;
|
|
53
57
|
--md-comp-filled-text-field-caret-color: var(--md-sys-color-primary);
|
|
54
58
|
--input-color: var(--md-comp-filled-text-field-caret-color);
|
|
55
59
|
|
|
60
|
+
// Start and end clearance of the field's own input, label and icons, in
|
|
61
|
+
// physical terms keyed to the field's dir through :dir(). An input can carry
|
|
62
|
+
// its own dir ("auto" for mixed-language text, "ltr" for an email address on
|
|
63
|
+
// an RTL page), and logical properties would follow that, or a CSS-only
|
|
64
|
+
// `direction`, instead. A page that sets only `direction` renders as LTR.
|
|
65
|
+
--_field-start: 16px;
|
|
66
|
+
--_field-end: 16px;
|
|
67
|
+
// Clearance for a 24dp icon at a 12dp inset with 16dp after it: 52px at
|
|
68
|
+
// the default size. The icon is rem, so the clearance grows with it.
|
|
69
|
+
--_field-icon-clearance: calc(28px + #{rem(24px)});
|
|
70
|
+
// A small icon button, 8dp either side of its rem icon: 40px by default.
|
|
71
|
+
--_field-icon-button: calc(16px + #{rem(24px)});
|
|
72
|
+
--_field-left: var(--_field-start);
|
|
73
|
+
--_field-right: var(--_field-end);
|
|
74
|
+
|
|
75
|
+
&:dir(rtl) {
|
|
76
|
+
--_field-left: var(--_field-end);
|
|
77
|
+
--_field-right: var(--_field-start);
|
|
78
|
+
}
|
|
79
|
+
|
|
56
80
|
position: relative;
|
|
57
81
|
clear: both;
|
|
58
82
|
|
|
59
83
|
// Checkboxes / radios inside a field (multi-select menu) are not text
|
|
60
84
|
// fields — do not give them the 56dp well.
|
|
61
|
-
input:not([type="range"], [type="checkbox"], [type="radio"], [type="file"]),
|
|
85
|
+
input:not([type="range"], [type="checkbox"], [type="radio"], [type="file"], [type="color"]),
|
|
62
86
|
textarea {
|
|
63
87
|
box-sizing: border-box;
|
|
64
|
-
padding: 20px 16px 8px;
|
|
88
|
+
padding: rem(20px) 16px rem(8px);
|
|
65
89
|
border: none;
|
|
66
90
|
border-radius: var(--md-comp-filled-text-field-container-shape);
|
|
67
91
|
border-bottom: 1px solid var(--md-sys-color-on-surface-variant);
|
|
68
92
|
background-color: var(--md-comp-filled-text-field-container-color);
|
|
69
93
|
caret-color: var(--input-color);
|
|
70
94
|
|
|
71
|
-
&:focus
|
|
95
|
+
&:focus {
|
|
72
96
|
border-bottom-width: 2px;
|
|
73
97
|
border-bottom-color: var(--input-color);
|
|
74
|
-
padding-bottom:
|
|
98
|
+
padding-bottom: calc(#{rem(8px)} - 1px);
|
|
75
99
|
}
|
|
76
100
|
|
|
77
101
|
&:disabled,
|
|
@@ -81,19 +105,14 @@ $_not-label: ".supporting-text, .character-counter, .file-path, .caret, .prefix,
|
|
|
81
105
|
background-color: color-mix(in oklab, var(--md-sys-color-on-surface) 4%, transparent);
|
|
82
106
|
}
|
|
83
107
|
|
|
84
|
-
&:focus
|
|
85
|
-
&:focus
|
|
108
|
+
&:focus + label,
|
|
109
|
+
&:focus + span:not(#{$_not-label}) {
|
|
86
110
|
color: var(--input-color);
|
|
87
111
|
}
|
|
88
112
|
|
|
89
|
-
|
|
90
|
-
&:not([placeholder=" "]) + label,
|
|
91
|
-
&:not(:placeholder-shown) + label,
|
|
92
|
-
&:focus:not([readonly]) + span:not(#{$_not-label}),
|
|
93
|
-
&:not([placeholder=" "]) + span:not(#{$_not-label}),
|
|
94
|
-
&:not(:placeholder-shown) + span:not(#{$_not-label}) {
|
|
113
|
+
#{$_floated} {
|
|
95
114
|
transform: scale(calc(12 / 16));
|
|
96
|
-
top: 8px;
|
|
115
|
+
top: rem(8px);
|
|
97
116
|
}
|
|
98
117
|
|
|
99
118
|
&:disabled + label,
|
|
@@ -133,6 +152,15 @@ $_not-label: ".supporting-text, .character-counter, .file-path, .caret, .prefix,
|
|
|
133
152
|
user-select: none;
|
|
134
153
|
}
|
|
135
154
|
|
|
155
|
+
// After the base rule, which ties it on specificity. Only the field's own
|
|
156
|
+
// control: an input nested deeper keeps 16px. Longhands, so a bad custom
|
|
157
|
+
// property costs one side rather than all four.
|
|
158
|
+
> :is(input:not([type="range"], [type="checkbox"], [type="radio"], [type="file"], [type="color"]), textarea) {
|
|
159
|
+
padding-left: var(--_field-left);
|
|
160
|
+
padding-right: var(--_field-right);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
|
|
136
164
|
// :not(.button, .icon-button) - the file input's trigger is a <label> and is
|
|
137
165
|
// a button, not this field's floating label.
|
|
138
166
|
> label:not(.button, .icon-button),
|
|
@@ -140,13 +168,24 @@ $_not-label: ".supporting-text, .character-counter, .file-path, .caret, .prefix,
|
|
|
140
168
|
color: var(--md-sys-color-on-surface-variant);
|
|
141
169
|
user-select: none;
|
|
142
170
|
position: absolute;
|
|
143
|
-
left:
|
|
144
|
-
top: 16px;
|
|
171
|
+
left: var(--_field-start);
|
|
172
|
+
top: rem(16px);
|
|
145
173
|
cursor: text;
|
|
146
174
|
transform-origin: top left;
|
|
147
175
|
pointer-events: none;
|
|
148
176
|
@include typescale("body-large");
|
|
149
|
-
|
|
177
|
+
// left and right: the logical inset moves on `right` in a right-to-left field.
|
|
178
|
+
transition: left var(--md-sys-motion-duration-short4) ease-out, right var(--md-sys-motion-duration-short4) ease-out, top var(--md-sys-motion-duration-short4) ease-out, transform var(--md-sys-motion-duration-short4) ease-out, color var(--md-sys-motion-duration-short4) ease-out;
|
|
179
|
+
|
|
180
|
+
&:dir(rtl) {
|
|
181
|
+
left: auto;
|
|
182
|
+
right: var(--_field-start);
|
|
183
|
+
transform-origin: top right;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
@media (prefers-reduced-motion: reduce) {
|
|
187
|
+
transition: none;
|
|
188
|
+
}
|
|
150
189
|
}
|
|
151
190
|
|
|
152
191
|
> small,
|
|
@@ -159,114 +198,131 @@ $_not-label: ".supporting-text, .character-counter, .file-path, .caret, .prefix,
|
|
|
159
198
|
}
|
|
160
199
|
|
|
161
200
|
> .character-counter {
|
|
162
|
-
float: right;
|
|
163
201
|
margin-top: 4px;
|
|
164
202
|
padding: 0 16px;
|
|
165
203
|
color: var(--md-sys-color-on-surface-variant);
|
|
166
204
|
@include typescale("body-small");
|
|
167
205
|
}
|
|
168
206
|
|
|
169
|
-
// Shared icon box. Position is set on the leading / trailing rules
|
|
170
|
-
//
|
|
171
|
-
// a
|
|
172
|
-
//
|
|
173
|
-
// The `i` rules are the legacy path and still work. They cannot be widened
|
|
174
|
-
// to the canonical <span class="material-symbols"> form, because they lean
|
|
175
|
-
// on :first-of-type / :last-of-type - which count elements of the same
|
|
176
|
-
// *type*, and a field is full of other spans (.supporting-text, .caret,
|
|
177
|
-
// .character-counter, .file-path). So the documented markup names the side
|
|
178
|
-
// explicitly with .prefix / .suffix, and those rules key on nothing else.
|
|
179
|
-
> i:is(.prefix, .suffix, :first-of-type, :last-of-type, :last-child),
|
|
207
|
+
// Shared icon box. Position is set on the leading / trailing rules. The
|
|
208
|
+
// side is named with .prefix / .suffix rather than taken from position:
|
|
209
|
+
// :first-of-type counts elements of the same *type*, and a field is full
|
|
210
|
+
// of other spans (.supporting-text, .caret, .character-counter, .file-path).
|
|
180
211
|
> :is(.prefix, .suffix):not(.icon-button) {
|
|
181
212
|
position: absolute;
|
|
182
|
-
top: 16px;
|
|
213
|
+
top: rem(16px);
|
|
183
214
|
display: flex;
|
|
184
215
|
align-items: center;
|
|
185
|
-
|
|
186
|
-
width: 24px;
|
|
187
|
-
height: 24px;
|
|
188
|
-
line-height: 24px;
|
|
216
|
+
@include icon-size(rem(24px));
|
|
189
217
|
color: var(--md-sys-color-on-surface-variant);
|
|
190
218
|
user-select: none;
|
|
191
219
|
}
|
|
192
220
|
|
|
193
|
-
|
|
194
|
-
|
|
221
|
+
// Physical sides, swapped by :dir(). The icon font sets direction: ltr on
|
|
222
|
+
// the icon itself, and Chromium maps an icon's own inset-inline-* through
|
|
223
|
+
// that, so a logical inset would stay on the left in a right-to-left page.
|
|
195
224
|
> .prefix {
|
|
196
225
|
left: 12px;
|
|
197
226
|
pointer-events: none;
|
|
227
|
+
|
|
228
|
+
&:dir(rtl) {
|
|
229
|
+
left: auto;
|
|
230
|
+
right: 12px;
|
|
231
|
+
}
|
|
198
232
|
}
|
|
199
233
|
|
|
200
|
-
> i.suffix,
|
|
201
|
-
> i:last-of-type:not(:first-of-type),
|
|
202
|
-
> i:last-child:not(:first-child):not(.prefix),
|
|
203
234
|
> .suffix:not(.icon-button) {
|
|
204
235
|
right: 12px;
|
|
205
236
|
// Both icons inherited this from the floating-label rule until they were
|
|
206
237
|
// excluded from it. .prefix restates it below; .suffix has to as well, or
|
|
207
238
|
// the trailing icon swallows the click that should focus the input.
|
|
208
239
|
pointer-events: none;
|
|
240
|
+
|
|
241
|
+
&:dir(rtl) {
|
|
242
|
+
right: auto;
|
|
243
|
+
left: 12px;
|
|
244
|
+
}
|
|
209
245
|
}
|
|
210
246
|
|
|
211
247
|
// A trailing icon button is a control, so it keeps its 40dp target and its
|
|
212
248
|
// clicks. It centres on the same point as a 24dp trailing icon.
|
|
213
249
|
> .icon-button.suffix {
|
|
214
250
|
position: absolute;
|
|
215
|
-
top: 8px;
|
|
251
|
+
top: rem(8px);
|
|
216
252
|
right: 4px;
|
|
217
253
|
z-index: 1;
|
|
218
|
-
}
|
|
219
254
|
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
255
|
+
&:dir(rtl) {
|
|
256
|
+
right: auto;
|
|
257
|
+
left: 4px;
|
|
223
258
|
}
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
// Number stepper: data-step="down" sits one button in from the end, before
|
|
262
|
+
// data-step="up". The Forms behavior does the stepping.
|
|
263
|
+
> .icon-button.suffix[data-step="down"] {
|
|
264
|
+
right: calc(8px + var(--_field-icon-button));
|
|
224
265
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
// to 52px, i.e. indented past its own padding.
|
|
229
|
-
> :is(
|
|
230
|
-
label,
|
|
231
|
-
span:not(#{$_not-label})
|
|
232
|
-
) {
|
|
233
|
-
left: 52px;
|
|
266
|
+
&:dir(rtl) {
|
|
267
|
+
right: auto;
|
|
268
|
+
left: calc(8px + var(--_field-icon-button));
|
|
234
269
|
}
|
|
235
270
|
}
|
|
236
271
|
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
272
|
+
// The browser's spin buttons go when the field draws its own.
|
|
273
|
+
&:has(> [data-step]) > input[type="number"] {
|
|
274
|
+
appearance: textfield;
|
|
275
|
+
|
|
276
|
+
&::-webkit-inner-spin-button,
|
|
277
|
+
&::-webkit-outer-spin-button {
|
|
278
|
+
appearance: none;
|
|
279
|
+
margin: 0;
|
|
240
280
|
}
|
|
241
281
|
}
|
|
242
282
|
|
|
283
|
+
// The label reads --_field-start too, so it indents with the input.
|
|
284
|
+
&:has(> .prefix) {
|
|
285
|
+
--_field-start: var(--_field-icon-clearance);
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
&:has(> .suffix) {
|
|
289
|
+
--_field-end: var(--_field-icon-clearance);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// Two buttons, 4dp from the end and 4dp apart, then 8dp before the text.
|
|
293
|
+
&:has(> [data-step]) {
|
|
294
|
+
--_field-end: calc(16px + 2 * var(--_field-icon-button));
|
|
295
|
+
}
|
|
296
|
+
|
|
243
297
|
&.outlined {
|
|
244
298
|
> input,
|
|
245
299
|
> textarea {
|
|
246
|
-
padding-top: 8px;
|
|
247
|
-
padding-bottom: 8px;
|
|
300
|
+
padding-top: rem(8px);
|
|
301
|
+
padding-bottom: rem(8px);
|
|
248
302
|
background-color: transparent;
|
|
249
303
|
border: 1px solid var(--md-sys-color-outline);
|
|
250
304
|
border-radius: var(--md-comp-filled-text-field-container-shape);
|
|
251
305
|
|
|
252
|
-
&:focus
|
|
306
|
+
&:focus {
|
|
253
307
|
border-width: 2px;
|
|
254
308
|
border-color: var(--input-color);
|
|
255
|
-
padding-top:
|
|
256
|
-
padding-bottom:
|
|
309
|
+
padding-top: calc(#{rem(8px)} - 1px);
|
|
310
|
+
padding-bottom: calc(#{rem(8px)} - 1px);
|
|
257
311
|
}
|
|
258
312
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
&:not(:placeholder-shown) + label,
|
|
262
|
-
&:focus:not([readonly]) + span:not(#{$_not-label}),
|
|
263
|
-
&:not([placeholder=" "]) + span:not(#{$_not-label}),
|
|
264
|
-
&:not(:placeholder-shown) + span:not(#{$_not-label}) {
|
|
265
|
-
top: -8px;
|
|
313
|
+
#{$_floated} {
|
|
314
|
+
top: rem(-8px);
|
|
266
315
|
left: 16px;
|
|
267
316
|
margin-left: -4px;
|
|
268
317
|
padding: 0 4px;
|
|
269
|
-
background-color: var(--md-sys-color-
|
|
318
|
+
background-color: var(--md-sys-color-surface);
|
|
319
|
+
|
|
320
|
+
&:dir(rtl) {
|
|
321
|
+
left: auto;
|
|
322
|
+
right: 16px;
|
|
323
|
+
margin-left: 0;
|
|
324
|
+
margin-right: -4px;
|
|
325
|
+
}
|
|
270
326
|
}
|
|
271
327
|
|
|
272
328
|
&:disabled,
|
|
@@ -281,6 +337,16 @@ $_not-label: ".supporting-text, .character-counter, .file-path, .caret, .prefix,
|
|
|
281
337
|
box-shadow: none;
|
|
282
338
|
}
|
|
283
339
|
}
|
|
340
|
+
|
|
341
|
+
// A textarea's text starts at the top instead of centering, so pad its
|
|
342
|
+
// first line to the input's 28px midline: border + padding + half of 24px.
|
|
343
|
+
> textarea.expressive-textarea {
|
|
344
|
+
padding-block: calc(#{rem(16px)} - 1px);
|
|
345
|
+
|
|
346
|
+
&:focus {
|
|
347
|
+
padding-block: calc(#{rem(16px)} - 2px);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
284
350
|
}
|
|
285
351
|
}
|
|
286
352
|
|
|
@@ -294,12 +360,14 @@ textarea {
|
|
|
294
360
|
background-color: transparent;
|
|
295
361
|
|
|
296
362
|
&.expressive-textarea {
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
363
|
+
// No !important: source order beats `.field textarea`, and the outlined
|
|
364
|
+
// and :focus rules outrank this one, as they must.
|
|
365
|
+
padding-top: rem(24px);
|
|
366
|
+
padding-bottom: rem(8px);
|
|
367
|
+
line-height: rem(24px);
|
|
300
368
|
overflow-y: hidden;
|
|
301
369
|
resize: none;
|
|
302
|
-
min-height: 56px;
|
|
370
|
+
min-height: rem(56px);
|
|
303
371
|
box-sizing: border-box;
|
|
304
372
|
}
|
|
305
373
|
}
|
|
@@ -317,6 +385,45 @@ textarea {
|
|
|
317
385
|
margin: 5px 15px;
|
|
318
386
|
}
|
|
319
387
|
}
|
|
388
|
+
|
|
389
|
+
// Not an option: role="none" keeps Menu's hover layer off it. The text sits
|
|
390
|
+
// in the <li> itself, since Menu gives a bare span a pointer cursor.
|
|
391
|
+
> li.autocomplete-no-results {
|
|
392
|
+
display: flex;
|
|
393
|
+
align-items: center;
|
|
394
|
+
min-height: var(--md-comp-menu-item-container-height);
|
|
395
|
+
padding-inline: var(--md-comp-menu-item-leading-space)
|
|
396
|
+
var(--md-comp-menu-item-trailing-space);
|
|
397
|
+
color: var(--md-comp-menu-supporting-text-color);
|
|
398
|
+
cursor: default;
|
|
399
|
+
@include typescale("label-large");
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
// Menu lets a press on a disabled row fall through to the list, which takes
|
|
403
|
+
// focus from the field. The row takes the press so Autocomplete can cancel it.
|
|
404
|
+
> li[role="option"][aria-disabled="true"] {
|
|
405
|
+
pointer-events: auto;
|
|
406
|
+
cursor: default;
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
// FormSelect's listbox rule makes a group's wrapper flex, which would
|
|
410
|
+
// shrink the group to its widest row.
|
|
411
|
+
> li[role="none"] > ul[role="group"] {
|
|
412
|
+
flex: 1 1 auto;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
// Menu's .label heading reaches direct rows only. The heading takes the
|
|
416
|
+
// press, as a disabled row does, so Autocomplete can cancel it.
|
|
417
|
+
> li > ul[role="group"] > li.autocomplete-group-label {
|
|
418
|
+
display: flex;
|
|
419
|
+
align-items: center;
|
|
420
|
+
min-height: rem(32px);
|
|
421
|
+
padding: 0 8px;
|
|
422
|
+
pointer-events: auto;
|
|
423
|
+
cursor: default;
|
|
424
|
+
color: var(--md-comp-menu-supporting-text-color);
|
|
425
|
+
@include typescale("label-large");
|
|
426
|
+
}
|
|
320
427
|
}
|
|
321
428
|
|
|
322
429
|
// Datepicker paints its formatted date over the native value with ::after.
|
|
@@ -328,17 +435,17 @@ textarea {
|
|
|
328
435
|
// icons, which come before it. Raise them inside the field's own stacking
|
|
329
436
|
// context, so they do not also rise over the docked search view or a
|
|
330
437
|
// sticky header. A docked calendar in the field has to escape it.
|
|
331
|
-
.field:has(>
|
|
438
|
+
.field:has(> .datepicker-date-input) {
|
|
332
439
|
&:not(:has(> .display-docked)) {
|
|
333
440
|
isolation: isolate;
|
|
334
441
|
}
|
|
335
442
|
|
|
336
|
-
> :is(
|
|
443
|
+
> :is(.prefix, .suffix) {
|
|
337
444
|
z-index: 1;
|
|
338
445
|
}
|
|
339
446
|
}
|
|
340
447
|
|
|
341
|
-
|
|
448
|
+
.datepicker-date-input {
|
|
342
449
|
position: relative;
|
|
343
450
|
text-indent: -9999px;
|
|
344
451
|
|
|
@@ -351,11 +458,14 @@ textarea {
|
|
|
351
458
|
text-indent: 0;
|
|
352
459
|
}
|
|
353
460
|
|
|
354
|
-
|
|
461
|
+
// A focused date input edits its native fields, so show them. WebKit 27
|
|
462
|
+
// stopped matching :focus-visible on a date input, even after Tab, and
|
|
463
|
+
// Chromium already matches it on every focus, mouse included.
|
|
464
|
+
&:focus {
|
|
355
465
|
text-indent: 0;
|
|
356
466
|
}
|
|
357
467
|
|
|
358
|
-
&:focus
|
|
468
|
+
&:focus:after {
|
|
359
469
|
text-indent: -9999px;
|
|
360
470
|
}
|
|
361
471
|
}
|
|
@@ -397,8 +507,8 @@ textarea {
|
|
|
397
507
|
// above, which would otherwise win on width, height and letter-spacing.
|
|
398
508
|
input.otp:not(.browser-default) {
|
|
399
509
|
--md-comp-otp-length: 6;
|
|
400
|
-
--md-comp-otp-cell-width: 48px;
|
|
401
|
-
--md-comp-otp-cell-height: 56px;
|
|
510
|
+
--md-comp-otp-cell-width: #{rem(48px)};
|
|
511
|
+
--md-comp-otp-cell-height: #{rem(56px)};
|
|
402
512
|
--md-comp-otp-gap: 8px;
|
|
403
513
|
--md-comp-otp-cell-color: var(--md-sys-color-surface-container-highest);
|
|
404
514
|
--md-comp-otp-indicator-color: var(--md-sys-color-on-surface-variant);
|
|
@@ -425,7 +535,7 @@ input.otp:not(.browser-default) {
|
|
|
425
535
|
// Digits read left to right in every script.
|
|
426
536
|
direction: ltr;
|
|
427
537
|
font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;
|
|
428
|
-
font-size: 24px;
|
|
538
|
+
font-size: rem(24px);
|
|
429
539
|
font-variant-numeric: tabular-nums;
|
|
430
540
|
letter-spacing: calc(var(--md-comp-otp-pitch) - 1ch);
|
|
431
541
|
color: var(--md-sys-color-on-surface);
|
|
@@ -474,11 +584,82 @@ input.otp:not(.browser-default) {
|
|
|
474
584
|
opacity: 0.38;
|
|
475
585
|
}
|
|
476
586
|
|
|
587
|
+
// Forced colors drop gradients, which are the cells and the focus ring, so
|
|
588
|
+
// the code keeps them in system colors: a CanvasText line under each cell,
|
|
589
|
+
// Highlight while focused and GrayText when disabled.
|
|
477
590
|
@media (forced-colors: active) {
|
|
591
|
+
--md-comp-otp-cell-color: Canvas;
|
|
478
592
|
--md-comp-otp-indicator-color: CanvasText;
|
|
479
593
|
|
|
594
|
+
forced-color-adjust: none;
|
|
595
|
+
color: CanvasText;
|
|
596
|
+
caret-color: CanvasText;
|
|
597
|
+
background-color: Canvas;
|
|
598
|
+
|
|
599
|
+
&::placeholder {
|
|
600
|
+
color: GrayText;
|
|
601
|
+
}
|
|
602
|
+
|
|
480
603
|
&:focus {
|
|
481
604
|
--md-comp-otp-indicator-color: Highlight;
|
|
482
605
|
}
|
|
606
|
+
|
|
607
|
+
&:disabled {
|
|
608
|
+
--md-comp-otp-indicator-color: GrayText;
|
|
609
|
+
|
|
610
|
+
color: GrayText;
|
|
611
|
+
opacity: 1;
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
}
|
|
615
|
+
|
|
616
|
+
// Color input. The native picker stays; the control is drawn as a 40px round
|
|
617
|
+
// swatch of the chosen color with an outline, a 48px target and the shared
|
|
618
|
+
// focus ring. Each engine's swatch is a private pseudo-element in its own rule.
|
|
619
|
+
input[type="color"] {
|
|
620
|
+
--md-comp-color-input-size: #{rem(40px)};
|
|
621
|
+
--md-comp-color-input-outline-color: var(--md-sys-color-outline);
|
|
622
|
+
|
|
623
|
+
box-sizing: content-box;
|
|
624
|
+
inline-size: var(--md-comp-color-input-size);
|
|
625
|
+
block-size: var(--md-comp-color-input-size);
|
|
626
|
+
margin: 0;
|
|
627
|
+
padding: 4px;
|
|
628
|
+
border: 0;
|
|
629
|
+
border-radius: 50%;
|
|
630
|
+
background: transparent;
|
|
631
|
+
cursor: pointer;
|
|
632
|
+
vertical-align: middle;
|
|
633
|
+
appearance: none;
|
|
634
|
+
@include focus-visible;
|
|
635
|
+
|
|
636
|
+
&::-webkit-color-swatch-wrapper {
|
|
637
|
+
padding: 0;
|
|
638
|
+
}
|
|
639
|
+
|
|
640
|
+
&::-webkit-color-swatch {
|
|
641
|
+
border: 1px solid var(--md-comp-color-input-outline-color);
|
|
642
|
+
border-radius: 50%;
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
&::-moz-color-swatch {
|
|
646
|
+
border: 1px solid var(--md-comp-color-input-outline-color);
|
|
647
|
+
border-radius: 50%;
|
|
648
|
+
}
|
|
649
|
+
|
|
650
|
+
&:disabled {
|
|
651
|
+
cursor: default;
|
|
652
|
+
opacity: 0.38;
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
// CharacterCounter appends the counter to the input's parent, which need not
|
|
657
|
+
// be a .field, so this is not nested. Physical and swapped by :dir() like the
|
|
658
|
+
// field's icons, so a page that sets only CSS `direction` keeps it on the right.
|
|
659
|
+
.character-counter {
|
|
660
|
+
float: right;
|
|
661
|
+
|
|
662
|
+
&:dir(rtl) {
|
|
663
|
+
float: left;
|
|
483
664
|
}
|
|
484
665
|
}
|