@expressivecss/expressive 0.15.0 → 0.16.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 +1502 -1
- package/README.md +9 -8
- package/dist/css/expressive.css +19247 -11923
- 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-2CS6TITK.mjs +219 -0
- package/dist/js/chunks/chunk-2CS6TITK.mjs.map +7 -0
- package/dist/js/chunks/chunk-2RLBDFH4.mjs +108 -0
- package/dist/js/chunks/chunk-2RLBDFH4.mjs.map +7 -0
- package/dist/js/chunks/chunk-3L3QIYLC.mjs +85 -0
- package/dist/js/chunks/chunk-3L3QIYLC.mjs.map +7 -0
- package/dist/js/chunks/chunk-4EWGD4V2.mjs +75 -0
- package/dist/js/chunks/chunk-4EWGD4V2.mjs.map +7 -0
- package/dist/js/chunks/chunk-4IKVPCSU.mjs +7 -0
- package/dist/js/chunks/chunk-4IKVPCSU.mjs.map +7 -0
- package/dist/js/chunks/chunk-4PIXLDNJ.mjs +127 -0
- package/dist/js/chunks/chunk-4PIXLDNJ.mjs.map +7 -0
- package/dist/js/chunks/{chunk-KVJAVDBC.mjs → chunk-4QUCNFSD.mjs} +64 -113
- package/dist/js/chunks/chunk-4QUCNFSD.mjs.map +7 -0
- package/dist/js/chunks/{chunk-UETTGDLI.mjs → chunk-4TRZ2AER.mjs} +35 -41
- package/dist/js/chunks/chunk-4TRZ2AER.mjs.map +7 -0
- package/dist/js/chunks/{chunk-C6CHEWYP.mjs → chunk-5KIHWJI2.mjs} +40 -26
- package/dist/js/chunks/chunk-5KIHWJI2.mjs.map +7 -0
- package/dist/js/chunks/{chunk-L27Q6ZMI.mjs → chunk-67ZPPKXS.mjs} +20 -33
- package/dist/js/chunks/chunk-67ZPPKXS.mjs.map +7 -0
- package/dist/js/chunks/{chunk-XAEAEHIX.mjs → chunk-6FSEUFVW.mjs} +39 -26
- package/dist/js/chunks/chunk-6FSEUFVW.mjs.map +7 -0
- package/dist/js/chunks/chunk-752ADW4M.mjs +225 -0
- package/dist/js/chunks/chunk-752ADW4M.mjs.map +7 -0
- package/dist/js/chunks/{chunk-CK2XCICY.mjs → chunk-75E5EDJF.mjs} +3 -11
- package/dist/js/chunks/chunk-75E5EDJF.mjs.map +7 -0
- package/dist/js/chunks/{chunk-KHXZ2A4K.mjs → chunk-7NLUI3RR.mjs} +139 -66
- package/dist/js/chunks/chunk-7NLUI3RR.mjs.map +7 -0
- package/dist/js/chunks/chunk-7W7TV6NY.mjs +108 -0
- package/dist/js/chunks/chunk-7W7TV6NY.mjs.map +7 -0
- package/dist/js/chunks/chunk-7YQBHTK3.mjs +225 -0
- package/dist/js/chunks/chunk-7YQBHTK3.mjs.map +7 -0
- package/dist/js/chunks/chunk-7YZ5CN3V.mjs +33 -0
- package/dist/js/chunks/chunk-7YZ5CN3V.mjs.map +7 -0
- package/dist/js/chunks/chunk-AI73GJKG.mjs +28 -0
- package/dist/js/chunks/chunk-AI73GJKG.mjs.map +7 -0
- package/dist/js/chunks/{chunk-LQWUDNHZ.mjs → chunk-ANKFWNWT.mjs} +21 -45
- package/dist/js/chunks/chunk-ANKFWNWT.mjs.map +7 -0
- package/dist/js/chunks/{chunk-5CEAOLUA.mjs → chunk-B7DQFHA5.mjs} +30 -47
- package/dist/js/chunks/chunk-B7DQFHA5.mjs.map +7 -0
- package/dist/js/chunks/chunk-BIGU5RCJ.mjs +153 -0
- package/dist/js/chunks/chunk-BIGU5RCJ.mjs.map +7 -0
- package/dist/js/chunks/{chunk-VGNYF6FB.mjs → chunk-BPF3I2MN.mjs} +109 -24
- package/dist/js/chunks/chunk-BPF3I2MN.mjs.map +7 -0
- package/dist/js/chunks/chunk-CMGXGYUC.mjs +74 -0
- package/dist/js/chunks/chunk-CMGXGYUC.mjs.map +7 -0
- package/dist/js/chunks/{chunk-NUHMOAOY.mjs → chunk-CSYWKEK3.mjs} +310 -196
- package/dist/js/chunks/chunk-CSYWKEK3.mjs.map +7 -0
- package/dist/js/chunks/chunk-CZSQHXEV.mjs +227 -0
- package/dist/js/chunks/chunk-CZSQHXEV.mjs.map +7 -0
- package/dist/js/chunks/chunk-DZYVU75J.mjs +121 -0
- package/dist/js/chunks/chunk-DZYVU75J.mjs.map +7 -0
- package/dist/js/chunks/{chunk-74MXKKLN.mjs → chunk-EC26RU2D.mjs} +11 -29
- package/dist/js/chunks/chunk-EC26RU2D.mjs.map +7 -0
- package/dist/js/chunks/{chunk-WDK4T63U.mjs → chunk-EVCVFEV3.mjs} +235 -146
- package/dist/js/chunks/chunk-EVCVFEV3.mjs.map +7 -0
- package/dist/js/chunks/chunk-FCNF4GRJ.mjs +445 -0
- package/dist/js/chunks/chunk-FCNF4GRJ.mjs.map +7 -0
- package/dist/js/chunks/chunk-GCWWEZKO.mjs +342 -0
- package/dist/js/chunks/chunk-GCWWEZKO.mjs.map +7 -0
- package/dist/js/chunks/chunk-GNRSYMVH.mjs +1 -0
- package/dist/js/chunks/chunk-GVZQH2H5.mjs +54 -0
- package/dist/js/chunks/chunk-GVZQH2H5.mjs.map +7 -0
- package/dist/js/chunks/chunk-GWZ76SR4.mjs +435 -0
- package/dist/js/chunks/chunk-GWZ76SR4.mjs.map +7 -0
- package/dist/js/chunks/{chunk-PDG64UHF.mjs → chunk-ILDRRG7T.mjs} +21 -23
- package/dist/js/chunks/chunk-ILDRRG7T.mjs.map +7 -0
- package/dist/js/chunks/chunk-INLZWHLY.mjs +80 -0
- package/dist/js/chunks/chunk-INLZWHLY.mjs.map +7 -0
- package/dist/js/chunks/chunk-JUKBBN6P.mjs +175 -0
- package/dist/js/chunks/chunk-JUKBBN6P.mjs.map +7 -0
- package/dist/js/chunks/chunk-KYIEG4U3.mjs +730 -0
- package/dist/js/chunks/chunk-KYIEG4U3.mjs.map +7 -0
- package/dist/js/chunks/{chunk-BGZLF6JZ.mjs → chunk-KZPSAXIU.mjs} +142 -32
- package/dist/js/chunks/chunk-KZPSAXIU.mjs.map +7 -0
- package/dist/js/chunks/chunk-LDXCC2L3.mjs +438 -0
- package/dist/js/chunks/chunk-LDXCC2L3.mjs.map +7 -0
- package/dist/js/chunks/chunk-NAC72P7R.mjs +137 -0
- package/dist/js/chunks/chunk-NAC72P7R.mjs.map +7 -0
- package/dist/js/chunks/chunk-NBJAUGPP.mjs +244 -0
- package/dist/js/chunks/chunk-NBJAUGPP.mjs.map +7 -0
- package/dist/js/chunks/chunk-NNHVANQA.mjs +113 -0
- package/dist/js/chunks/chunk-NNHVANQA.mjs.map +7 -0
- package/dist/js/chunks/chunk-NVQ5EHCU.mjs +376 -0
- package/dist/js/chunks/chunk-NVQ5EHCU.mjs.map +7 -0
- package/dist/js/chunks/{chunk-DXGRXYYL.mjs → chunk-OP43LLIC.mjs} +28 -45
- package/dist/js/chunks/chunk-OP43LLIC.mjs.map +7 -0
- package/dist/js/chunks/chunk-OUCHKSAW.mjs +63 -0
- package/dist/js/chunks/chunk-OUCHKSAW.mjs.map +7 -0
- package/dist/js/chunks/{chunk-TSZYSW7F.mjs → chunk-OYNUDOHR.mjs} +19 -47
- package/dist/js/chunks/chunk-OYNUDOHR.mjs.map +7 -0
- package/dist/js/chunks/{chunk-UAZSDUVP.mjs → chunk-P6DRQ6KS.mjs} +36 -30
- package/dist/js/chunks/chunk-P6DRQ6KS.mjs.map +7 -0
- package/dist/js/chunks/chunk-PA7NU5AK.mjs +99 -0
- package/dist/js/chunks/chunk-PA7NU5AK.mjs.map +7 -0
- package/dist/js/chunks/chunk-QACZ6TUP.mjs +224 -0
- package/dist/js/chunks/chunk-QACZ6TUP.mjs.map +7 -0
- package/dist/js/chunks/{chunk-GJL6GCIU.mjs → chunk-QXKWVHBD.mjs} +265 -161
- package/dist/js/chunks/chunk-QXKWVHBD.mjs.map +7 -0
- package/dist/js/chunks/{chunk-X4ISMKE2.mjs → chunk-ROH2HDB4.mjs} +7 -6
- package/dist/js/chunks/chunk-ROH2HDB4.mjs.map +7 -0
- package/dist/js/chunks/chunk-S23RJ3XY.mjs +86 -0
- package/dist/js/chunks/chunk-S23RJ3XY.mjs.map +7 -0
- package/dist/js/chunks/{chunk-SMY7GJSS.mjs → chunk-SPPHF7YZ.mjs} +36 -29
- package/dist/js/chunks/chunk-SPPHF7YZ.mjs.map +7 -0
- package/dist/js/chunks/chunk-T3BNSRP3.mjs +152 -0
- package/dist/js/chunks/chunk-T3BNSRP3.mjs.map +7 -0
- package/dist/js/chunks/chunk-TFABTUAZ.mjs +108 -0
- package/dist/js/chunks/chunk-TFABTUAZ.mjs.map +7 -0
- package/dist/js/chunks/chunk-U4B3VHFS.mjs +507 -0
- package/dist/js/chunks/chunk-U4B3VHFS.mjs.map +7 -0
- package/dist/js/chunks/chunk-UGJHCHXG.mjs +341 -0
- package/dist/js/chunks/chunk-UGJHCHXG.mjs.map +7 -0
- package/dist/js/chunks/chunk-VFV75DHF.mjs +70 -0
- package/dist/js/chunks/chunk-VFV75DHF.mjs.map +7 -0
- package/dist/js/chunks/{chunk-ZX6M7SWO.mjs → chunk-VGY4M57S.mjs} +266 -120
- package/dist/js/chunks/chunk-VGY4M57S.mjs.map +7 -0
- package/dist/js/chunks/chunk-VH4BMAZS.mjs +167 -0
- package/dist/js/chunks/chunk-VH4BMAZS.mjs.map +7 -0
- package/dist/js/chunks/chunk-VJVQIXHC.mjs +123 -0
- package/dist/js/chunks/chunk-VJVQIXHC.mjs.map +7 -0
- package/dist/js/chunks/{chunk-SFI2U4YW.mjs → chunk-VMY55K2X.mjs} +76 -109
- package/dist/js/chunks/chunk-VMY55K2X.mjs.map +7 -0
- package/dist/js/chunks/{chunk-KUFHW3DS.mjs → chunk-VR3L2WN5.mjs} +11 -17
- package/dist/js/chunks/chunk-VR3L2WN5.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-WU7XJ4RR.mjs +450 -0
- package/dist/js/chunks/chunk-WU7XJ4RR.mjs.map +7 -0
- package/dist/js/chunks/chunk-X7SDA2J5.mjs +116 -0
- package/dist/js/chunks/chunk-X7SDA2J5.mjs.map +7 -0
- package/dist/js/chunks/chunk-Y6H2X7ZC.mjs +209 -0
- package/dist/js/chunks/chunk-Y6H2X7ZC.mjs.map +7 -0
- package/dist/js/chunks/chunk-Y6TLRA3U.mjs +129 -0
- package/dist/js/chunks/chunk-Y6TLRA3U.mjs.map +7 -0
- package/dist/js/chunks/chunk-Z4GICXR2.mjs +190 -0
- package/dist/js/chunks/chunk-Z4GICXR2.mjs.map +7 -0
- package/dist/js/chunks/chunk-Z4OARDZ7.mjs +442 -0
- package/dist/js/chunks/chunk-Z4OARDZ7.mjs.map +7 -0
- package/dist/js/chunks/{chunk-FM5CZOUB.mjs → chunk-ZJNLAGY5.mjs} +19 -30
- package/dist/js/chunks/chunk-ZJNLAGY5.mjs.map +7 -0
- package/dist/js/chunks/chunk-ZKWUWBUB.mjs +81 -0
- package/dist/js/chunks/chunk-ZKWUWBUB.mjs.map +7 -0
- package/dist/js/chunks/chunk-ZM3XBHWV.mjs +746 -0
- package/dist/js/chunks/chunk-ZM3XBHWV.mjs.map +7 -0
- package/dist/js/chunks/chunk-ZO6ZLHFF.mjs +48 -0
- package/dist/js/chunks/chunk-ZO6ZLHFF.mjs.map +7 -0
- package/dist/js/chunks/chunk-ZVLOUDIJ.mjs +251 -0
- package/dist/js/chunks/chunk-ZVLOUDIJ.mjs.map +7 -0
- package/dist/js/expressive.cjs +10613 -4327
- package/dist/js/expressive.cjs.map +4 -4
- package/dist/js/expressive.js +10613 -4327
- 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 +182 -71
- 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 +10 -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 +4 -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 +6 -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 +11 -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 -66
- 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 +25 -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 +59 -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 +4 -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 +13 -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 +2 -1
- package/dist/js/internal/core/formControl.mjs +12 -0
- package/dist/js/internal/core/formControl.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 +11 -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 +173 -71
- package/dist/types/behaviors/bottomSheets.d.ts +19 -3
- package/dist/types/behaviors/copy.d.ts +18 -0
- package/dist/types/behaviors/dataTables.d.ts +129 -0
- package/dist/types/behaviors/dialogs.d.ts +27 -1
- package/dist/types/behaviors/forms.d.ts +68 -2
- package/dist/types/behaviors/imageCompare.d.ts +12 -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 +51 -0
- package/dist/types/components/appBar.d.ts +5 -6
- package/dist/types/components/autocomplete.d.ts +91 -17
- 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 +9 -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 +65 -19
- package/dist/types/components/colorPicker.d.ts +42 -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 +59 -0
- package/dist/types/components/datepicker.d.ts +56 -32
- package/dist/types/components/expandingCard.d.ts +4 -6
- package/dist/types/components/funnelChart.d.ts +38 -0
- package/dist/types/components/heatmapChart.d.ts +39 -8
- package/dist/types/components/hoverCard.d.ts +58 -0
- package/dist/types/components/index.d.ts +16 -1
- package/dist/types/components/inputMask.d.ts +30 -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 +172 -10
- package/dist/types/components/loadingOverlay.d.ts +42 -0
- package/dist/types/components/mapView.d.ts +26 -17
- package/dist/types/components/menu.d.ts +60 -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 +8 -4
- package/dist/types/components/pieChart.d.ts +32 -7
- 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 +6 -14
- 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 +43 -30
- package/dist/types/components/showMore.d.ts +51 -0
- package/dist/types/components/slider.d.ts +3 -15
- package/dist/types/components/snackbar.d.ts +61 -0
- package/dist/types/components/swipeActions.d.ts +81 -0
- package/dist/types/components/tabs.d.ts +89 -27
- package/dist/types/components/timepicker.d.ts +113 -21
- package/dist/types/components/tooltip.d.ts +56 -20
- 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 +43 -25
- package/dist/types/core/formControl.d.ts +21 -0
- package/dist/types/core/spring.d.ts +20 -0
- package/dist/types/core/utils.d.ts +85 -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 +32 -0
- package/package.json +10 -8
- 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 +422 -36
- package/src/sass/abstracts/_spring.scss +63 -0
- package/src/sass/abstracts/_variables.scss +39 -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 +9 -16
- package/src/sass/components/_alert.scss +102 -0
- package/src/sass/components/_aura.scss +8 -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 +41 -19
- package/src/sass/components/_bottom-sheet.scss +44 -16
- package/src/sass/components/_breadcrumb.scss +8 -1
- package/src/sass/components/_button-groups.scss +15 -25
- package/src/sass/components/_buttons.scss +156 -63
- package/src/sass/components/_calendar.scss +246 -0
- package/src/sass/components/_cards.scss +36 -44
- package/src/sass/components/_carousel.scss +27 -103
- package/src/sass/components/_cascader.scss +142 -0
- package/src/sass/components/_chips.scss +36 -46
- package/src/sass/components/_column-chart.scss +19 -12
- package/src/sass/components/_command-palette.scss +4 -7
- package/src/sass/components/_confetti.scss +0 -2
- package/src/sass/components/_countdown.scss +1 -1
- package/src/sass/components/_data-table.scss +162 -25
- package/src/sass/components/_datepicker.scss +54 -40
- package/src/sass/components/_description-list.scss +85 -0
- package/src/sass/components/_dialog.scss +42 -41
- 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 +20 -9
- package/src/sass/components/_fab-menu.scss +44 -32
- package/src/sass/components/_funnel-chart.scss +124 -0
- package/src/sass/components/_heatmap-chart.scss +111 -22
- package/src/sass/components/_icon-buttons.scss +7 -7
- 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 +16 -2
- 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 +33 -11
- package/src/sass/components/_marquee.scss +3 -2
- package/src/sass/components/_mega-menu.scss +137 -0
- package/src/sass/components/_menu.scss +143 -123
- package/src/sass/components/_menubar.scss +59 -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 +37 -9
- package/src/sass/components/_modal-display.scss +21 -0
- package/src/sass/components/_navbar.scss +34 -20
- package/src/sass/components/_navigation-bar.scss +15 -77
- package/src/sass/components/_navigation-rail.scss +151 -92
- package/src/sass/components/_org-chart.scss +192 -0
- package/src/sass/components/_page-footer.scss +1 -1
- package/src/sass/components/_pagination.scss +6 -13
- package/src/sass/components/_panes.scss +32 -26
- package/src/sass/components/_particles.scss +0 -2
- package/src/sass/components/_pie-chart.scss +91 -11
- package/src/sass/components/_popover.scss +18 -5
- package/src/sass/components/_progress.scss +152 -31
- 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 +38 -10
- package/src/sass/components/_radial-chart.scss +113 -5
- package/src/sass/components/_rich-text-editor.scss +2 -2
- package/src/sass/components/_sankey-chart.scss +114 -0
- package/src/sass/components/_scatter-chart.scss +153 -0
- package/src/sass/components/_scrim.scss +0 -2
- package/src/sass/components/_scrollspy.scss +0 -2
- package/src/sass/components/_search.scss +26 -22
- package/src/sass/components/_show-more.scss +8 -0
- package/src/sass/components/_side-sheet.scss +23 -37
- package/src/sass/components/_skeleton.scss +2 -4
- package/src/sass/components/_snackbar.scss +27 -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/_tabs.scss +51 -32
- package/src/sass/components/_timeline.scss +12 -12
- package/src/sass/components/_timepicker.scss +109 -78
- package/src/sass/components/_toolbar.scss +35 -43
- package/src/sass/components/_tooltip.scss +21 -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 +3 -16
- package/src/sass/components/_treemap-chart.scss +122 -0
- package/src/sass/components/forms/_checkboxes.scss +106 -24
- 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 +15 -9
- package/src/sass/components/forms/_fieldset.scss +7 -7
- package/src/sass/components/forms/_file-input.scss +6 -8
- package/src/sass/components/forms/_index.scss +3 -1
- package/src/sass/components/forms/_input-fields.scss +254 -90
- package/src/sass/components/forms/_radio-buttons.scss +33 -94
- package/src/sass/components/forms/_rating.scss +2 -32
- package/src/sass/components/forms/_select.scss +199 -20
- package/src/sass/components/forms/_slider.scss +91 -94
- package/src/sass/components/forms/_switches.scss +53 -164
- 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 +183 -26
- 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 +47 -76
- 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.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
|
@@ -11,8 +11,15 @@
|
|
|
11
11
|
// circle, from the --radial-chart-dash RadialChart sets, so it can grow in;
|
|
12
12
|
// --radial-chart-offset moves a round-capped dash in by half the width.
|
|
13
13
|
//
|
|
14
|
-
//
|
|
15
|
-
//
|
|
14
|
+
// data-segments on the figure splits each ring into that many segments,
|
|
15
|
+
// filled whole, with the ring gap between them.
|
|
16
|
+
//
|
|
17
|
+
// Modifiers: .gauge draws half circles over the middle, .gradient shades
|
|
18
|
+
// each fill along its ring, from a light tint at the start to the full
|
|
19
|
+
// color at the end, .labels draws
|
|
20
|
+
// three-quarter rings and names each one in the empty top left quarter,
|
|
21
|
+
// or under the base line of a gauge, .sparkline is a small chart with no legend, tooltip or names. A <tfoot>
|
|
22
|
+
// row shows in the middle.
|
|
16
23
|
//
|
|
17
24
|
// Tokens:
|
|
18
25
|
// --md-comp-radial-chart-height 240px, the rings' diameter (sparkline 48px)
|
|
@@ -71,8 +78,9 @@
|
|
|
71
78
|
stroke: var(--md-comp-radial-chart-track-color);
|
|
72
79
|
}
|
|
73
80
|
|
|
74
|
-
// A
|
|
75
|
-
|
|
81
|
+
// A track short of a whole circle ends where its fill would, so it ends
|
|
82
|
+
// round too.
|
|
83
|
+
.radial-chart-track.capped {
|
|
76
84
|
stroke-linecap: round;
|
|
77
85
|
}
|
|
78
86
|
|
|
@@ -90,7 +98,7 @@
|
|
|
90
98
|
}
|
|
91
99
|
|
|
92
100
|
@media (prefers-reduced-motion: no-preference) {
|
|
93
|
-
transition: stroke-dasharray
|
|
101
|
+
transition: stroke-dasharray var(--md-sys-motion-duration-long4) var(--md-sys-motion-easing-standard), opacity var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-standard);
|
|
94
102
|
|
|
95
103
|
@starting-style {
|
|
96
104
|
stroke-dasharray: 0 1000;
|
|
@@ -98,6 +106,106 @@
|
|
|
98
106
|
}
|
|
99
107
|
}
|
|
100
108
|
|
|
109
|
+
// .gradient draws each fill again in HTML: a conic gradient round the
|
|
110
|
+
// ring's middle, masked by RadialChart to the fill's own dash, from a tint
|
|
111
|
+
// of the ring's color to the color itself where the fill ends. The SVG fill
|
|
112
|
+
// under it keeps its shape for the cap and the hover, and drops its color.
|
|
113
|
+
// A second mask, a conic reveal, grows the fill in as the SVG dash does. A
|
|
114
|
+
// shadow root ignores @property, so the reveal falls back to the whole turn
|
|
115
|
+
// there and the fill appears without growing.
|
|
116
|
+
@property --radial-chart-reveal {
|
|
117
|
+
syntax: "<angle>";
|
|
118
|
+
inherits: false;
|
|
119
|
+
initial-value: 360deg;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.radial-chart.gradient .radial-chart-ring {
|
|
123
|
+
stroke: transparent;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.radial-chart-sweep {
|
|
127
|
+
// The rings' middle: the box's, or for a gauge the middle of its base line.
|
|
128
|
+
--radial-chart-at: 50% 50%;
|
|
129
|
+
|
|
130
|
+
position: absolute;
|
|
131
|
+
inset: 0;
|
|
132
|
+
background: conic-gradient(
|
|
133
|
+
from var(--radial-chart-from, 0turn) at var(--radial-chart-at),
|
|
134
|
+
color-mix(in oklab, var(--radial-chart-color) 35%, var(--md-sys-color-surface)),
|
|
135
|
+
var(--radial-chart-color) var(--radial-chart-to, 1turn)
|
|
136
|
+
);
|
|
137
|
+
mask-image:
|
|
138
|
+
var(--radial-chart-shape, none),
|
|
139
|
+
conic-gradient(from var(--radial-chart-from, 0turn) at var(--radial-chart-at), #000 var(--radial-chart-reveal, 360deg), transparent 0);
|
|
140
|
+
mask-size: 100% 100%;
|
|
141
|
+
mask-repeat: no-repeat;
|
|
142
|
+
mask-composite: intersect;
|
|
143
|
+
pointer-events: none;
|
|
144
|
+
|
|
145
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
146
|
+
transition:
|
|
147
|
+
--radial-chart-reveal var(--md-sys-motion-duration-long4) var(--md-sys-motion-easing-standard),
|
|
148
|
+
opacity var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-standard);
|
|
149
|
+
|
|
150
|
+
@starting-style {
|
|
151
|
+
--radial-chart-reveal: 0deg;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.radial-chart.gauge & {
|
|
156
|
+
--radial-chart-at: 50% 100%;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.radial-chart-rings:has(.active) &:not(.active) {
|
|
160
|
+
opacity: 0.38;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// The names' font shrinks with the plot, so they need its size.
|
|
165
|
+
.radial-chart.labels .radial-chart-rings {
|
|
166
|
+
container-type: size;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// RadialChart sets each name's --radial-chart-at to its ring's top. Names
|
|
170
|
+
// end at the middle line, beside the start of their ring, and shrink to fit
|
|
171
|
+
// between crowded rings: one unit of the SVG's 100-unit box is 1cqw. They
|
|
172
|
+
// stay in a text color, since a ring color token may be too light to read.
|
|
173
|
+
.radial-chart-names > span {
|
|
174
|
+
position: absolute;
|
|
175
|
+
top: var(--radial-chart-at, 50%);
|
|
176
|
+
right: calc(50% + 4px);
|
|
177
|
+
max-width: calc(50% - 8px);
|
|
178
|
+
overflow: hidden;
|
|
179
|
+
translate: 0 -50%;
|
|
180
|
+
color: var(--md-sys-color-on-surface-variant);
|
|
181
|
+
@include typescale("label-medium");
|
|
182
|
+
font-size: min(var(--md-sys-typescale-label-medium-font-size), var(--radial-chart-step, 10) * 0.6cqw);
|
|
183
|
+
line-height: 1.2;
|
|
184
|
+
text-overflow: ellipsis;
|
|
185
|
+
white-space: nowrap;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
// A gauge's names hang under its base line, a row each with the innermost
|
|
189
|
+
// ring's on top. Each starts at its ring's start, after a line down from
|
|
190
|
+
// it, and every line passes left of the names above it.
|
|
191
|
+
.radial-chart.gauge.labels:not(.sparkline) .radial-chart-plot {
|
|
192
|
+
margin-block-end: calc(var(--radial-chart-rows, 0) * var(--md-sys-typescale-label-medium-line-height) + 4px);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.radial-chart.gauge .radial-chart-names > span {
|
|
196
|
+
top: calc(100% + 4px);
|
|
197
|
+
right: 0;
|
|
198
|
+
left: var(--radial-chart-at, 0);
|
|
199
|
+
max-width: none;
|
|
200
|
+
padding: calc(var(--radial-chart-row, 0) * var(--md-sys-typescale-label-medium-line-height)) 0 0 4px;
|
|
201
|
+
border-left: 1px solid var(--md-sys-color-outline-variant);
|
|
202
|
+
translate: none;
|
|
203
|
+
// The rings do not mirror in RTL, so each name stays beside its line.
|
|
204
|
+
text-align: left;
|
|
205
|
+
font-size: var(--md-sys-typescale-label-medium-font-size);
|
|
206
|
+
line-height: var(--md-sys-typescale-label-medium-line-height);
|
|
207
|
+
}
|
|
208
|
+
|
|
101
209
|
.radial-chart-tooltip {
|
|
102
210
|
translate: 12px -50%;
|
|
103
211
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
.rich-text-editor {
|
|
14
14
|
--md-comp-rich-text-editor-min-height: 160px;
|
|
15
|
-
--md-comp-rich-text-editor-shape:
|
|
15
|
+
--md-comp-rich-text-editor-shape: var(--md-sys-shape-corner-large);
|
|
16
16
|
|
|
17
17
|
display: flex;
|
|
18
18
|
flex-direction: column;
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
|
|
77
77
|
:not(pre) > code,
|
|
78
78
|
pre {
|
|
79
|
-
border-radius:
|
|
79
|
+
border-radius: var(--md-sys-shape-corner-small);
|
|
80
80
|
background-color: var(--md-sys-color-surface-container-highest);
|
|
81
81
|
font-family: ui-monospace, monospace;
|
|
82
82
|
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
@use "../abstracts" as *;
|
|
2
|
+
|
|
3
|
+
// Sankey chart. A <figure class="sankey-chart"> holds a <figcaption> and a
|
|
4
|
+
// <table> of flows: the first column names each row's source node, the
|
|
5
|
+
// second its target node, and the third holds the value. Without JavaScript
|
|
6
|
+
// the table shows. SankeyChart draws the nodes in columns and each row as a
|
|
7
|
+
// link between two of them, and hides the table visually, so a screen
|
|
8
|
+
// reader still reads the flows as a table. The plot and tooltip come from
|
|
9
|
+
// chart().
|
|
10
|
+
//
|
|
11
|
+
// The SVG stretches to the plot (preserveAspectRatio="none"). Nodes and
|
|
12
|
+
// links are filled shapes with no stroke, so stretching keeps every link
|
|
13
|
+
// as thick as its value and every node as tall as its total.
|
|
14
|
+
//
|
|
15
|
+
// Each node takes a color in node order through data-series, and each link
|
|
16
|
+
// its source node's color, lighter. The names sit over the drawing, level
|
|
17
|
+
// with their nodes, from --sankey-chart-x and --sankey-chart-y, the
|
|
18
|
+
// script's percentages of the plot from its inline start and top.
|
|
19
|
+
//
|
|
20
|
+
// Tokens:
|
|
21
|
+
// --md-comp-sankey-chart-height 240px
|
|
22
|
+
// --md-comp-sankey-chart-link-opacity 0.4
|
|
23
|
+
// --md-comp-sankey-chart-color-1..6 primary, tertiary, secondary,
|
|
24
|
+
// on-surface-variant, then primary-
|
|
25
|
+
// and tertiary-container deepened
|
|
26
|
+
// toward on-surface, as the pie chart's
|
|
27
|
+
|
|
28
|
+
@include chart("sankey-chart");
|
|
29
|
+
|
|
30
|
+
.sankey-chart {
|
|
31
|
+
--md-comp-sankey-chart-link-opacity: 0.4;
|
|
32
|
+
--md-comp-sankey-chart-color-5: color-mix(in oklab, var(--md-sys-color-primary-container) 45%, var(--md-sys-color-on-surface));
|
|
33
|
+
--md-comp-sankey-chart-color-6: color-mix(in oklab, var(--md-sys-color-tertiary-container) 45%, var(--md-sys-color-on-surface));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// chart() sets colors 1 to 4.
|
|
37
|
+
@for $i from 5 through 6 {
|
|
38
|
+
.sankey-chart [data-series="#{$i}"] {
|
|
39
|
+
--sankey-chart-color: var(--md-comp-sankey-chart-color-#{$i});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// No grid lines or baseline: the nodes and links have no value axis.
|
|
44
|
+
.sankey-chart-plot {
|
|
45
|
+
border: 0;
|
|
46
|
+
background: none;
|
|
47
|
+
|
|
48
|
+
> svg {
|
|
49
|
+
position: absolute;
|
|
50
|
+
inset: 0;
|
|
51
|
+
width: 100%;
|
|
52
|
+
height: 100%;
|
|
53
|
+
overflow: visible;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.sankey-chart-node {
|
|
58
|
+
fill: var(--sankey-chart-color);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.sankey-chart-link {
|
|
62
|
+
fill: var(--sankey-chart-color);
|
|
63
|
+
fill-opacity: var(--md-comp-sankey-chart-link-opacity);
|
|
64
|
+
|
|
65
|
+
// The link the keys or pointer picked.
|
|
66
|
+
&.active {
|
|
67
|
+
fill-opacity: 0.8;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Level with the link's middle.
|
|
72
|
+
.sankey-chart-tooltip {
|
|
73
|
+
translate: 12px -50%;
|
|
74
|
+
|
|
75
|
+
&.end {
|
|
76
|
+
translate: calc(-100% - 12px) -50%;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// The value header names a column, not a node, so it has no swatch.
|
|
80
|
+
> span.value::before {
|
|
81
|
+
content: none;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// Over the drawing, and out of the pointer's way, so a link under a name
|
|
86
|
+
// still takes it.
|
|
87
|
+
.sankey-chart-names {
|
|
88
|
+
position: absolute;
|
|
89
|
+
inset: 0;
|
|
90
|
+
z-index: 1;
|
|
91
|
+
pointer-events: none;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.sankey-chart-name {
|
|
95
|
+
position: absolute;
|
|
96
|
+
top: var(--sankey-chart-y, 0%);
|
|
97
|
+
inset-inline-start: var(--sankey-chart-x, 0%);
|
|
98
|
+
padding-inline: 4px;
|
|
99
|
+
color: var(--md-sys-color-on-surface);
|
|
100
|
+
@include typescale("body-small");
|
|
101
|
+
white-space: nowrap;
|
|
102
|
+
translate: 0 -50%;
|
|
103
|
+
|
|
104
|
+
&.end {
|
|
105
|
+
inset-inline: auto calc(100% - var(--sankey-chart-x, 0%));
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// The colors tell the nodes apart, so they keep them.
|
|
110
|
+
@media (forced-colors: active) {
|
|
111
|
+
.sankey-chart-plot > svg {
|
|
112
|
+
forced-color-adjust: none;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
@use "../abstracts" as *;
|
|
2
|
+
|
|
3
|
+
// Scatter chart. A <figure class="scatter-chart"> holds a <figcaption> and a
|
|
4
|
+
// <table> of data: the first column labels each row, the second is the x
|
|
5
|
+
// axis, and each further column is a series named by its header cell.
|
|
6
|
+
// Without JavaScript the table shows. ScatterChart draws each row as one
|
|
7
|
+
// point per series and hides the table visually, so a screen reader still
|
|
8
|
+
// reads the data as a table. The plot, tooltip and legend come from chart().
|
|
9
|
+
//
|
|
10
|
+
// The SVG stretches to the plot (preserveAspectRatio="none"), and points are
|
|
11
|
+
// round caps on zero-length lines with a non-scaling stroke, so they stay
|
|
12
|
+
// round at any size.
|
|
13
|
+
//
|
|
14
|
+
// Modifiers: .axis labels both axes at round values with grid lines,
|
|
15
|
+
// .toggle makes each legend item a button that shows or hides its series,
|
|
16
|
+
// and .bubble makes the last column each row's size, drawing every point as
|
|
17
|
+
// a bubble whose area follows it. The script sets each bubble's
|
|
18
|
+
// --scatter-chart-size, its diameter as a share of the largest, and animates
|
|
19
|
+
// it on update(), so it is registered as a number.
|
|
20
|
+
//
|
|
21
|
+
// Tokens:
|
|
22
|
+
// --md-comp-scatter-chart-height 240px
|
|
23
|
+
// --md-comp-scatter-chart-point-size 8px
|
|
24
|
+
// --md-comp-scatter-chart-bubble-size 48px, the largest bubble's diameter
|
|
25
|
+
// --md-comp-scatter-chart-grid-color outline-variant
|
|
26
|
+
// --md-comp-scatter-chart-color-1..4 primary, tertiary, secondary,
|
|
27
|
+
// on-surface-variant
|
|
28
|
+
|
|
29
|
+
@property --scatter-chart-size {
|
|
30
|
+
syntax: "<number>";
|
|
31
|
+
inherits: false;
|
|
32
|
+
initial-value: 1;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
@include chart("scatter-chart");
|
|
36
|
+
@include chart-axis("scatter-chart");
|
|
37
|
+
|
|
38
|
+
.scatter-chart {
|
|
39
|
+
--md-comp-scatter-chart-point-size: 8px;
|
|
40
|
+
--md-comp-scatter-chart-bubble-size: 48px;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.scatter-chart-plot > svg {
|
|
44
|
+
position: absolute;
|
|
45
|
+
inset: 0;
|
|
46
|
+
width: 100%;
|
|
47
|
+
height: 100%;
|
|
48
|
+
overflow: visible;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.scatter-chart-points {
|
|
52
|
+
fill: none;
|
|
53
|
+
stroke: var(--scatter-chart-color);
|
|
54
|
+
stroke-width: var(--md-comp-scatter-chart-point-size);
|
|
55
|
+
stroke-linecap: round;
|
|
56
|
+
vector-effect: non-scaling-stroke;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Partly transparent, so overlapping bubbles still show through.
|
|
60
|
+
.scatter-chart.bubble .scatter-chart-points {
|
|
61
|
+
stroke-width: calc(var(--md-comp-scatter-chart-bubble-size) * var(--scatter-chart-size));
|
|
62
|
+
stroke-opacity: 0.7;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// With .bubble, room the largest bubble's radius wide around the plot, and
|
|
66
|
+
// the axis labels moved out by as much, so a bubble at the end of a scale
|
|
67
|
+
// spills into empty space instead of over the labels, caption or legend.
|
|
68
|
+
.scatter-chart.bubble {
|
|
69
|
+
--scatter-chart-room: calc(var(--md-comp-scatter-chart-bubble-size) / 2);
|
|
70
|
+
|
|
71
|
+
> .scatter-chart-plot {
|
|
72
|
+
margin: var(--scatter-chart-room);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
&.axis > .scatter-chart-plot {
|
|
76
|
+
margin-block: calc(8px + var(--scatter-chart-room)) calc(#{rem(20px)} + var(--scatter-chart-room));
|
|
77
|
+
margin-inline-start: calc(var(--md-comp-scatter-chart-axis-width) + var(--scatter-chart-room));
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.scatter-chart-axis:not(.x) > li > span {
|
|
81
|
+
inset-inline-end: calc(100% + var(--scatter-chart-room));
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.scatter-chart-axis.x > li > span {
|
|
85
|
+
top: calc(100% + var(--scatter-chart-room));
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// The x scale's labels, below the plot, each with a grid line up through it
|
|
90
|
+
// at --at from the left. The script mirrors --at in a right-to-left chart.
|
|
91
|
+
.scatter-chart.axis > .scatter-chart-plot {
|
|
92
|
+
margin-block-end: rem(20px);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.scatter-chart-axis.x {
|
|
96
|
+
> li {
|
|
97
|
+
inset-inline: auto;
|
|
98
|
+
inset-block: 0;
|
|
99
|
+
left: var(--at, 0%);
|
|
100
|
+
border-block-start: 0;
|
|
101
|
+
border-inline-start: 1px solid var(--md-comp-scatter-chart-grid-color);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
> li > span {
|
|
105
|
+
inset-inline: auto;
|
|
106
|
+
top: 100%;
|
|
107
|
+
left: 0;
|
|
108
|
+
width: auto;
|
|
109
|
+
padding: 4px 0 0;
|
|
110
|
+
translate: -50% 0;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// The highlighted point's marker, and the tooltip level with it.
|
|
115
|
+
.scatter-chart-cursor {
|
|
116
|
+
inset-block: auto;
|
|
117
|
+
width: 14px;
|
|
118
|
+
height: 14px;
|
|
119
|
+
border: 2px solid var(--md-sys-color-surface);
|
|
120
|
+
border-radius: 50%;
|
|
121
|
+
box-sizing: border-box;
|
|
122
|
+
background-color: var(--scatter-chart-color);
|
|
123
|
+
translate: -50% -50%;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
// Around a bubble, the marker is the bubble's size plus its border.
|
|
127
|
+
.scatter-chart.bubble .scatter-chart-cursor {
|
|
128
|
+
width: max(14px, calc(var(--md-comp-scatter-chart-bubble-size) * var(--scatter-chart-size) + 4px));
|
|
129
|
+
height: max(14px, calc(var(--md-comp-scatter-chart-bubble-size) * var(--scatter-chart-size) + 4px));
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.scatter-chart-tooltip {
|
|
133
|
+
translate: 12px -50%;
|
|
134
|
+
|
|
135
|
+
&.end {
|
|
136
|
+
translate: calc(-100% - 12px) -50%;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// The x header names the axis, not a series, so it has no swatch.
|
|
140
|
+
> span.x::before {
|
|
141
|
+
content: none;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
@media (forced-colors: active) {
|
|
146
|
+
.scatter-chart-cursor {
|
|
147
|
+
forced-color-adjust: none;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.scatter-chart.bubble .scatter-chart-points {
|
|
151
|
+
stroke-opacity: 1;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
//
|
|
5
5
|
// Anatomy is the HTML. A `<search class="search-bar">` is the bar - an
|
|
6
6
|
// optional leading icon or icon button, an `<input type="search">`, and
|
|
7
|
-
// optional trailing actions.
|
|
7
|
+
// optional trailing actions.
|
|
8
8
|
//
|
|
9
9
|
// `.search-view` is the surface the bar expands into, and it is two different
|
|
10
10
|
// native elements because the two variants want two different behaviours:
|
|
@@ -46,17 +46,17 @@
|
|
|
46
46
|
// a bare list interpolated into `.search-view > #{$_bar}` breaks out of its
|
|
47
47
|
// context and emits a top-level rule.
|
|
48
48
|
|
|
49
|
-
$_bar: "
|
|
49
|
+
$_bar: ".search-bar";
|
|
50
50
|
|
|
51
51
|
#{$_bar} {
|
|
52
52
|
--md-comp-search-bar-container-color: var(--md-sys-color-surface-container-high);
|
|
53
|
-
--md-comp-search-bar-container-height: 56px;
|
|
54
|
-
--md-comp-search-bar-container-shape:
|
|
53
|
+
--md-comp-search-bar-container-height: #{rem(56px)};
|
|
54
|
+
--md-comp-search-bar-container-shape: var(--md-sys-shape-corner-full);
|
|
55
55
|
--md-comp-search-bar-leading-space: 16px;
|
|
56
56
|
--md-comp-search-bar-trailing-space: 16px;
|
|
57
57
|
--md-comp-search-bar-icon-label-space: 16px;
|
|
58
|
-
--md-comp-search-bar-icon-size: 24px;
|
|
59
|
-
--md-comp-search-bar-avatar-size: 30px;
|
|
58
|
+
--md-comp-search-bar-icon-size: #{rem(24px)};
|
|
59
|
+
--md-comp-search-bar-avatar-size: #{rem(30px)};
|
|
60
60
|
|
|
61
61
|
position: relative;
|
|
62
62
|
box-sizing: border-box;
|
|
@@ -151,26 +151,11 @@ $_bar: ":is(.search-bar, .searchbar)";
|
|
|
151
151
|
appearance: none;
|
|
152
152
|
}
|
|
153
153
|
}
|
|
154
|
-
|
|
155
|
-
// Pre-1.0 `.searchbar` sat in a navbar beside a fixed drawer.
|
|
156
|
-
&.has-sidebar {
|
|
157
|
-
margin-inline-start: 0;
|
|
158
|
-
|
|
159
|
-
@include bp-up("expanded") {
|
|
160
|
-
// `width: auto`, because the margin sits *outside* the base bar's
|
|
161
|
-
// `width: 100%`: the two together make the bar 100% + 300px wide and
|
|
162
|
-
// push its trailing edge past the viewport, on exactly the fixed-drawer
|
|
163
|
-
// layout this rule exists to preserve. The legacy bar had no width of
|
|
164
|
-
// its own, so the margin shrank it.
|
|
165
|
-
width: auto;
|
|
166
|
-
margin-inline-start: 300px;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
154
|
}
|
|
170
155
|
|
|
171
156
|
.search-view {
|
|
172
157
|
--md-comp-search-view-container-color: var(--md-sys-color-surface-container-high);
|
|
173
|
-
--md-comp-search-view-container-shape:
|
|
158
|
+
--md-comp-search-view-container-shape: var(--md-sys-shape-corner-medium);
|
|
174
159
|
--md-comp-search-view-header-height: 56px;
|
|
175
160
|
--md-comp-search-view-divider-color: var(--md-sys-color-outline);
|
|
176
161
|
--md-comp-search-view-bar-results-gap: 2px;
|
|
@@ -258,3 +243,22 @@ $_bar: ":is(.search-bar, .searchbar)";
|
|
|
258
243
|
backdrop-filter: none;
|
|
259
244
|
}
|
|
260
245
|
}
|
|
246
|
+
|
|
247
|
+
// The input inside clears its own focus ring, so the bar shows it.
|
|
248
|
+
:is(#{$_bar}):not(.search-view *):has(input:focus-visible) {
|
|
249
|
+
@include focus-ring;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
// Both surfaces are fills and shadows, which forced colors paint as Canvas and
|
|
253
|
+
// drop. A bar inside the view is part of the view's surface.
|
|
254
|
+
@media (forced-colors: active) {
|
|
255
|
+
:is(#{$_bar}):not(.search-view *),
|
|
256
|
+
.search-view {
|
|
257
|
+
outline: 1px solid CanvasText;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
// The input inside clears its own focus ring.
|
|
261
|
+
:is(#{$_bar}):not(.search-view *):has(input:focus-visible) {
|
|
262
|
+
outline: 2px solid Highlight;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
@use "../abstracts" as *;
|
|
2
|
+
|
|
3
|
+
// Show more. Clamped text and the <button> that shows all of it; the ShowMore
|
|
4
|
+
// component hides the button with the hidden attribute while the text fits,
|
|
5
|
+
// which the button's own display rule would otherwise beat.
|
|
6
|
+
.show-more > button[hidden] {
|
|
7
|
+
display: none;
|
|
8
|
+
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
// Side sheets.
|
|
4
4
|
//
|
|
5
|
-
// Anatomy is the HTML. A dialog.side-sheet
|
|
5
|
+
// Anatomy is the HTML. A dialog.side-sheet is the
|
|
6
6
|
// surface, docked to the trailing edge by default. showModal() is the
|
|
7
7
|
// modal variant (scrim, rounded inner corners). show() is the standard
|
|
8
8
|
// variant (no scrim, a divider on the inner edge, page stays interactive).
|
|
@@ -21,38 +21,45 @@
|
|
|
21
21
|
// Standard is for large windows next to the main pane. Modal is for
|
|
22
22
|
// compact/medium, or whenever the sheet should interrupt.
|
|
23
23
|
|
|
24
|
-
$_sheet: "dialog.side-sheet
|
|
24
|
+
$_sheet: "dialog.side-sheet";
|
|
25
25
|
|
|
26
26
|
#{$_sheet} {
|
|
27
27
|
--md-comp-side-sheet-container-color: var(--md-sys-color-surface-container-low);
|
|
28
|
-
--md-comp-side-sheet-container-shape:
|
|
28
|
+
--md-comp-side-sheet-container-shape: var(--md-sys-shape-corner-extra-large);
|
|
29
29
|
--md-comp-side-sheet-container-width: 400px;
|
|
30
30
|
--md-comp-side-sheet-shift: 0px;
|
|
31
|
+
// Entry and drag snap-back run on the default spatial spring, which follows
|
|
32
|
+
// the motion="expressive" switch.
|
|
33
|
+
--md-comp-side-sheet-motion: var(--md-sys-motion-spring-default-spatial);
|
|
34
|
+
--md-comp-side-sheet-motion-duration: var(--md-sys-motion-spring-default-spatial-duration);
|
|
35
|
+
// A spatial spring overshoots, so the sheet runs on past its docked edge by
|
|
36
|
+
// this much, padded, and the overshoot never uncovers the page there.
|
|
37
|
+
--_bleed: 24px;
|
|
31
38
|
|
|
32
39
|
box-sizing: border-box;
|
|
33
40
|
position: fixed;
|
|
34
|
-
float: none !important;
|
|
35
41
|
inset-block: 0;
|
|
36
42
|
inset-inline-start: auto;
|
|
37
|
-
inset-inline-end:
|
|
38
|
-
width: min(var(--md-comp-side-sheet-container-width), 85%);
|
|
39
|
-
max-width: var(--md-comp-side-sheet-container-width);
|
|
43
|
+
inset-inline-end: calc(-1 * var(--_bleed));
|
|
44
|
+
width: calc(min(var(--md-comp-side-sheet-container-width), 85%) + var(--_bleed));
|
|
45
|
+
max-width: calc(var(--md-comp-side-sheet-container-width) + var(--_bleed));
|
|
40
46
|
height: auto;
|
|
41
47
|
max-height: none;
|
|
42
48
|
min-width: 0;
|
|
43
49
|
min-height: 0;
|
|
44
50
|
margin: 0;
|
|
45
51
|
padding: 0;
|
|
52
|
+
padding-inline-end: var(--_bleed);
|
|
46
53
|
border: none;
|
|
47
54
|
background-color: var(--md-comp-side-sheet-container-color);
|
|
48
55
|
color: var(--md-sys-color-on-surface);
|
|
49
56
|
outline: none;
|
|
50
57
|
translate: var(--md-comp-side-sheet-shift) 0;
|
|
51
|
-
transition: translate
|
|
58
|
+
transition: translate var(--md-comp-side-sheet-motion-duration) var(--md-comp-side-sheet-motion), border-radius var(--md-sys-motion-duration-short4) ease;
|
|
52
59
|
@include glass(var(--md-comp-side-sheet-container-color));
|
|
53
60
|
|
|
54
61
|
&:not(:modal) {
|
|
55
|
-
z-index:
|
|
62
|
+
z-index: var(--expressive-z-sheet);
|
|
56
63
|
border-radius: 0;
|
|
57
64
|
box-shadow: none;
|
|
58
65
|
// Standard: attached to the page, inner edge is a divider.
|
|
@@ -72,11 +79,10 @@ $_sheet: "dialog.side-sheet, dialog.right, dialog.right-sheet, dialog.left, dial
|
|
|
72
79
|
}
|
|
73
80
|
|
|
74
81
|
// Leading-edge dock.
|
|
75
|
-
&.left,
|
|
76
|
-
&.left-sheet,
|
|
77
82
|
&.start {
|
|
78
|
-
inset-inline-start:
|
|
83
|
+
inset-inline-start: calc(-1 * var(--_bleed));
|
|
79
84
|
inset-inline-end: auto;
|
|
85
|
+
padding-inline: var(--_bleed) 0;
|
|
80
86
|
|
|
81
87
|
&:not(:modal) {
|
|
82
88
|
border-inline-start: 0;
|
|
@@ -103,6 +109,9 @@ $_sheet: "dialog.side-sheet, dialog.right, dialog.right-sheet, dialog.left, dial
|
|
|
103
109
|
padding-inline: 24px 12px;
|
|
104
110
|
background: none;
|
|
105
111
|
box-shadow: none;
|
|
112
|
+
// A horizontal touch drag here dismisses the sheet; the browser would
|
|
113
|
+
// otherwise take it as a pan and cancel the pointer.
|
|
114
|
+
touch-action: pan-y;
|
|
106
115
|
}
|
|
107
116
|
|
|
108
117
|
> header:has(> :is(button, a):first-child) {
|
|
@@ -130,30 +139,7 @@ $_sheet: "dialog.side-sheet, dialog.right, dialog.right-sheet, dialog.left, dial
|
|
|
130
139
|
}
|
|
131
140
|
|
|
132
141
|
> header :is(button, a.button) {
|
|
133
|
-
|
|
134
|
-
box-sizing: border-box;
|
|
135
|
-
width: 48px;
|
|
136
|
-
height: 48px;
|
|
137
|
-
min-width: 48px;
|
|
138
|
-
padding: 0;
|
|
139
|
-
border: none;
|
|
140
|
-
border-radius: 50%;
|
|
141
|
-
background-color: transparent;
|
|
142
|
-
color: var(--md-sys-color-on-surface-variant);
|
|
143
|
-
box-shadow: none;
|
|
144
|
-
|
|
145
|
-
> #{$icon} {
|
|
146
|
-
font-size: 24px;
|
|
147
|
-
width: 24px;
|
|
148
|
-
height: 24px;
|
|
149
|
-
line-height: 24px;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
&:hover {
|
|
153
|
-
background-color: color-mix(in oklab, var(--md-sys-color-on-surface) state-opacity("hover"), transparent);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
@include focus-visible;
|
|
142
|
+
@include header-icon-action;
|
|
157
143
|
}
|
|
158
144
|
|
|
159
145
|
> :is(form, nav):last-child {
|
|
@@ -184,7 +170,7 @@ $_sheet: "dialog.side-sheet, dialog.right, dialog.right-sheet, dialog.left, dial
|
|
|
184
170
|
translate: -100% 0;
|
|
185
171
|
}
|
|
186
172
|
|
|
187
|
-
|
|
173
|
+
&.start {
|
|
188
174
|
translate: -100% 0;
|
|
189
175
|
|
|
190
176
|
&:dir(rtl) {
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
@use "../abstracts" as *;
|
|
2
|
-
|
|
3
1
|
// Skeleton. An empty block that holds the place of content still loading,
|
|
4
2
|
// with a shimmer passing across it. The block has no text and nothing to
|
|
5
3
|
// announce: mark the region being filled with aria-busy="true", and report
|
|
@@ -25,7 +23,7 @@
|
|
|
25
23
|
var(--md-sys-color-surface) 50%,
|
|
26
24
|
transparent
|
|
27
25
|
);
|
|
28
|
-
--md-comp-skeleton-shape:
|
|
26
|
+
--md-comp-skeleton-shape: var(--md-sys-shape-corner-small);
|
|
29
27
|
--md-comp-skeleton-circle-size: 40px;
|
|
30
28
|
|
|
31
29
|
display: block;
|
|
@@ -47,7 +45,7 @@
|
|
|
47
45
|
}
|
|
48
46
|
|
|
49
47
|
&.text {
|
|
50
|
-
--md-comp-skeleton-shape:
|
|
48
|
+
--md-comp-skeleton-shape: var(--md-sys-shape-corner-extra-small);
|
|
51
49
|
|
|
52
50
|
width: 100%;
|
|
53
51
|
height: 1em;
|