@ryuzaki13/react-foundation-ui 2.0.1 → 2.2.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/COLOR_TOKENS_MIGRATION.md +224 -0
- package/README.md +14 -18
- package/dist/advanced-search/index.js +8 -8
- package/dist/badge/index.js +1 -1
- package/dist/barcode-scanner/index.js +2 -2
- package/dist/base-table/index.js +1 -1
- package/dist/button/index.js +1 -1
- package/dist/check-box/index.js +1 -1
- package/dist/chunks/{CalendarView-Bhaov_XE.js → CalendarView-Dm55k0bN.js} +2 -2
- package/dist/chunks/CalendarView-Dm55k0bN.js.map +1 -0
- package/dist/chunks/ImageViewerRuntime-HGBWp9NM.js.map +1 -1
- package/dist/chunks/{TextEditorLexicalClient-CSXZQOYo.js → TextEditorLexicalClient-D46Zed55.js} +6 -6
- package/dist/chunks/TextEditorLexicalClient-D46Zed55.js.map +1 -0
- package/dist/chunks/{badge-DUI2ET6q.js → badge-6mXO9BWP.js} +2 -2
- package/dist/chunks/badge-6mXO9BWP.js.map +1 -0
- package/dist/chunks/{base-table-BqW1n7tv.js → base-table-BWvKfI2W.js} +2 -2
- package/dist/chunks/{base-table-BqW1n7tv.js.map → base-table-BWvKfI2W.js.map} +1 -1
- package/dist/chunks/{button-BaUlN-nt.js → button-DF21yxVp.js} +3 -3
- package/dist/chunks/{button-BaUlN-nt.js.map → button-DF21yxVp.js.map} +1 -1
- package/dist/chunks/{check-box-CC8CDnSR.js → check-box-CZyhzmR0.js} +3 -3
- package/dist/chunks/{check-box-CC8CDnSR.js.map → check-box-CZyhzmR0.js.map} +1 -1
- package/dist/chunks/{context-menu-Dj6MXgv6.js → context-menu-DgvXGCuI.js} +3 -3
- package/dist/chunks/context-menu-DgvXGCuI.js.map +1 -0
- package/dist/chunks/{date-input-DkLfO3Ng.js → date-input-BwLOiGXp.js} +5 -5
- package/dist/chunks/{date-input-DkLfO3Ng.js.map → date-input-BwLOiGXp.js.map} +1 -1
- package/dist/chunks/{input-D1jOxm0t.js → input-DSPKgiCK.js} +2 -2
- package/dist/chunks/input-DSPKgiCK.js.map +1 -0
- package/dist/chunks/{input-files-CDGpJaUm.js → input-files-tIS17-zX.js} +3 -3
- package/dist/chunks/input-files-tIS17-zX.js.map +1 -0
- package/dist/chunks/{input-search-Ci1ubGox.js → input-search-Cat4c7SM.js} +2 -2
- package/dist/chunks/{input-search-Ci1ubGox.js.map → input-search-Cat4c7SM.js.map} +1 -1
- package/dist/chunks/misc-DeGboAt-.js.map +1 -1
- package/dist/chunks/{modal-CbAwLHlM.js → modal-dplfAaER.js} +2 -2
- package/dist/chunks/{modal-CbAwLHlM.js.map → modal-dplfAaER.js.map} +1 -1
- package/dist/chunks/{multi-select-V7SLAduU.js → multi-select-BZ9N6Dal.js} +4 -4
- package/dist/chunks/{multi-select-V7SLAduU.js.map → multi-select-BZ9N6Dal.js.map} +1 -1
- package/dist/chunks/{picker-DZ4-1BvK.js → picker-lvm82d0A.js} +3 -3
- package/dist/chunks/picker-lvm82d0A.js.map +1 -0
- package/dist/chunks/popover-Bne-Ljbs.js.map +1 -1
- package/dist/chunks/{radio-group-DhpP7JSJ.js → radio-group-CRk_1ODZ.js} +2 -2
- package/dist/chunks/radio-group-CRk_1ODZ.js.map +1 -0
- package/dist/chunks/{select-B7cWlJxL.js → select-aTGupQan.js} +4 -4
- package/dist/chunks/{select-B7cWlJxL.js.map → select-aTGupQan.js.map} +1 -1
- package/dist/chunks/{table-DMLFUBlb.js → table-DxoSOvQK.js} +2 -2
- package/dist/chunks/table-DxoSOvQK.js.map +1 -0
- package/dist/chunks/{ui.module-BsDio9A3.js → ui.module-oRwY3Zli.js} +2 -1
- package/dist/chunks/ui.module-oRwY3Zli.js.map +1 -0
- package/dist/chunks/{uiClasses-BVwFzzsr.js → uiClasses-CQj47jkF.js} +11 -2
- package/dist/chunks/uiClasses-CQj47jkF.js.map +1 -0
- package/dist/chunks/wheel-picker-FS58cRsQ.js.map +1 -1
- package/dist/context-menu/index.js +1 -1
- package/dist/date-input/index.js +2 -2
- package/dist/date-time-input/index.js +3 -3
- package/dist/disclosure/index.js +2 -2
- package/dist/disclosure/index.js.map +1 -1
- package/dist/drop-zone/index.js +1 -1
- package/dist/drop-zone/index.js.map +1 -1
- package/dist/errors/index.js +4 -4
- package/dist/errors/index.js.map +1 -1
- package/dist/expandable-action-panel/index.js +1 -1
- package/dist/image/index.js +5 -5
- package/dist/image/index.js.map +1 -1
- package/dist/input/index.js +1 -1
- package/dist/input-date-time/index.js +2 -2
- package/dist/input-file/index.js +2 -2
- package/dist/input-files/index.js +1 -1
- package/dist/input-image/index.js +2 -2
- package/dist/input-search/index.js +1 -1
- package/dist/layout-picker/index.js +1 -1
- package/dist/layout-picker/index.js.map +1 -1
- package/dist/listbox/index.js +1 -1
- package/dist/modal/index.js +1 -1
- package/dist/multi-select/index.js +1 -1
- package/dist/notifications/index.js +1 -1
- package/dist/notifications/index.js.map +1 -1
- package/dist/option/index.js +1 -1
- package/dist/picker/index.js +1 -1
- package/dist/preset-range-date-input/index.js +1 -1
- package/dist/preset-select/index.js +1 -1
- package/dist/radio-button/index.js +2 -2
- package/dist/radio-group/index.js +1 -1
- package/dist/select/index.js +1 -1
- package/dist/simple-table/index.js +1 -1
- package/dist/slider/index.js +3 -3
- package/dist/slider/index.js.map +1 -1
- package/dist/state-select/index.js +1 -1
- package/dist/status-indicator/StatusIndicator.d.ts +14 -0
- package/dist/status-indicator/StatusIndicator.d.ts.map +1 -0
- package/dist/status-indicator/index.d.ts +2 -0
- package/dist/status-indicator/index.d.ts.map +1 -0
- package/dist/status-indicator/index.js +40 -0
- package/dist/status-indicator/index.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/switch/index.js +1 -1
- package/dist/table/index.js +1 -1
- package/dist/table-sorting/index.js +1 -1
- package/dist/tabs/index.js +2 -2
- package/dist/tabs/index.js.map +1 -1
- package/dist/tag-input/index.js +2 -2
- package/dist/tag-input/index.js.map +1 -1
- package/dist/text-editor/index.js +1 -1
- package/dist/textarea/index.js +2 -2
- package/dist/toggle/index.js +1 -1
- package/dist/toggle/index.js.map +1 -1
- package/dist/tree-select/index.js +3 -3
- package/dist/tree-select/index.js.map +1 -1
- package/dist/tree-table/index.js +1 -1
- package/dist/tree-table/index.js.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/uiClasses.d.ts.map +1 -1
- package/package.json +6 -1
- package/src/styles/_border.scss +2 -2
- package/src/styles/_color.scss +8 -8
- package/src/styles/_components.scss +2 -2
- package/src/styles/_normalize.scss +4 -4
- package/src/styles/config/_index.scss +95 -182
- package/src/styles/mixins/_controls.scss +43 -26
- package/src/styles/mixins/_mixin.scss +0 -187
- package/src/styles/mixins/controls.test.ts +28 -6
- package/src/styles/themes/_interactive-surface.scss +12 -12
- package/src/styles/themes/_theme.scss +21 -157
- package/src/styles/themes/theme.test.ts +66 -48
- package/storybook-static/assets/{Badge-DTV2OL5k.js → Badge-S6BbyfeX.js} +8 -2
- package/storybook-static/assets/{Badge.stories-D4zH_nK5.js → Badge.stories-mio0RhpX.js} +7 -1
- package/storybook-static/assets/{BadgeList-CD5894x5.css → BadgeList-DbjeNuw0.css} +1 -1
- package/storybook-static/assets/{BadgeList-CnmQ4zmg.js → BadgeList-rtyargPY.js} +2 -2
- package/storybook-static/assets/{BarcodeScannerDialog.stories-Cm7ouwg8.js → BarcodeScannerDialog.stories-DRdXaVuW.js} +1 -1
- package/storybook-static/assets/{Button-6JuiM3Sj.js → Button-CNH5M6QU.js} +12 -2
- package/storybook-static/assets/{Button-HheQm8vu.js → Button-EVzvXVPh.js} +4 -2
- package/storybook-static/assets/Button.stories-VUvnWRnm.js +106 -0
- package/storybook-static/assets/{CalendarView-CEfB4HLd.js → CalendarView-CfSvCqCr.js} +1 -1
- package/storybook-static/assets/CalendarView-dgpVDRJR.css +1 -0
- package/storybook-static/assets/{CheckBox-CWGCGHUS.js → CheckBox-Bynxp5UW.js} +1 -1
- package/storybook-static/assets/{CheckBox-CzvA4ttT.js → CheckBox-C3n5T66c.js} +2 -2
- package/storybook-static/assets/{CheckBox.stories-D2lA5F8B.js → CheckBox.stories-BoF97wxK.js} +1 -1
- package/storybook-static/assets/{Color-6AOWCN3U-RvvVvZ9f.js → Color-6AOWCN3U-D-Jlgqzt.js} +1 -1
- package/storybook-static/assets/{ContextMenu-BJnj7lO4.js → ContextMenu-Dg65Ha7g.js} +1 -1
- package/storybook-static/assets/{ContextMenu-DCpglNe4.js → ContextMenu-DwwW3EyB.js} +1 -1
- package/storybook-static/assets/ContextMenu-yhWq2uJ3.css +1 -0
- package/storybook-static/assets/{ContextMenu.stories-CZabvzR6.js → ContextMenu.stories-D-jRdIZD.js} +1 -1
- package/storybook-static/assets/{CustomOptionButton-B9bzr3ba.js → CustomOptionButton-vfj1vLJM.js} +1 -1
- package/storybook-static/assets/{DateInput-DoMGeEvO.js → DateInput-BpuC_NWD.js} +1 -1
- package/storybook-static/assets/{DateInput-Cud2arem.js → DateInput-DJdh5B2X.js} +1 -1
- package/storybook-static/assets/{DateInput.stories-DFd5wyMy.js → DateInput.stories-C9hB_vFy.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-DfGcFHV8.js → DateRangePresetSelect-CDgQfOdZ.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect-C8jA3mur.js → DateRangePresetSelect-DYPoeqC2.js} +1 -1
- package/storybook-static/assets/{DateRangePresetSelect.stories-DtR83uwx.js → DateRangePresetSelect.stories-Bx40H_O0.js} +1 -1
- package/storybook-static/assets/{Detail-CMcVxOrr.js → Detail-DWFfdNJH.js} +1 -1
- package/storybook-static/assets/{Detail.stories-DGT8An8z.js → Detail.stories-C9y_rsbc.js} +1 -1
- package/storybook-static/assets/{Dialog-DBh-yDZW.js → Dialog-D8GPZi6H.js} +1 -1
- package/storybook-static/assets/{Dialog-BPzpu7Iw.js → Dialog-XbR8HVsJ.js} +1 -1
- package/storybook-static/assets/{Dialog.stories-DU3SgOkL.js → Dialog.stories-CoU_PusF.js} +1 -1
- package/storybook-static/assets/{Disclosure-BGsPaAxH.js → Disclosure-DrGfFwQt.js} +1 -1
- package/storybook-static/assets/{Disclosure.stories-DpwyYh7T.js → Disclosure.stories-CsR1_XK7.js} +1 -1
- package/storybook-static/assets/DisclosureGroup-D_ldcGgp.css +1 -0
- package/storybook-static/assets/{DisclosureGroup-CJI8B2x_.js → DisclosureGroup-DvB5K7gZ.js} +1 -1
- package/storybook-static/assets/{DocsRenderer-JROSPFPF-Cf85Uxwt.js → DocsRenderer-JROSPFPF-B7AkTp2I.js} +1 -1
- package/storybook-static/assets/{DropZone-C7HIN5ml.css → DropZone-C4gPTIz0.css} +1 -1
- package/storybook-static/assets/{DropZone-C7qTrvkq.js → DropZone-DZi2WVu9.js} +1 -1
- package/storybook-static/assets/{DropZone-cYl1w3wQ.js → DropZone-DesGY4BW.js} +1 -1
- package/storybook-static/assets/{DropZone.stories-o02bE6DI.js → DropZone.stories-KVDb6pHQ.js} +1 -1
- package/storybook-static/assets/{DropdownMenu-DqqPU9RU.js → DropdownMenu-CRoQARS5.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel-B_pjHQ5m.js → ExpandableActionPanel-CWKJIcbQ.js} +1 -1
- package/storybook-static/assets/{ExpandableActionPanel.stories-C7dJ5dht.js → ExpandableActionPanel.stories-D-MYdCJ4.js} +1 -1
- package/storybook-static/assets/{Flex-CIHkkwFK.js → Flex-CMPSlVVy.js} +1 -1
- package/storybook-static/assets/{Flex.stories-DteEPY0y.js → Flex.stories-DQH0Q5EF.js} +1 -1
- package/storybook-static/assets/{FloatingPopover-yB9tTk9G.js → FloatingPopover-CBWu6Gxj.js} +1 -1
- package/storybook-static/assets/FloatingPopover-Di16BZj-.css +1 -0
- package/storybook-static/assets/{FormattedTableCell-QVYQepjk.js → FormattedTableCell-CIp2ULPe.js} +1 -1
- package/storybook-static/assets/FormattedTableCell-CTIL_ueu.css +1 -0
- package/storybook-static/assets/{Grid-BUVtGaZY.js → Grid-BlQE5E_9.js} +1 -1
- package/storybook-static/assets/{Grid.stories-CWGqCVB2.js → Grid.stories-CwUCPClP.js} +1 -1
- package/storybook-static/assets/{ImageCropper.stories-D8l7iHQA.js → ImageCropper.stories-DjaRavSL.js} +1 -1
- package/storybook-static/assets/{ImageRenderer-BcPmp9P9.js → ImageRenderer-JGxgpvv2.js} +1 -1
- package/storybook-static/assets/{ImageRenderer.stories-CcLUz8Ml.js → ImageRenderer.stories-DwH6FgEc.js} +1 -1
- package/storybook-static/assets/{ImageView.stories-BwvjVmuF.js → ImageView.stories-DgYPiNil.js} +1 -1
- package/storybook-static/assets/{ImageViewer.stories-BjT782dr.js → ImageViewer.stories-_y7d3coa.js} +2 -2
- package/storybook-static/assets/{ImageViewerRuntime-DnQ-rQ_M.js → ImageViewerRuntime-CA6JhQ31.js} +1 -1
- package/storybook-static/assets/ImageViewerRuntime-MxAd4mC-.css +1 -0
- package/storybook-static/assets/{Input-DebpyMJg.js → Input-95LKm7aK.js} +1 -1
- package/storybook-static/assets/{Input-CmEkIaR0.js → Input-CET6HfZH.js} +1 -1
- package/storybook-static/assets/{Input-CYgnggvb.css → Input-CIA3PkB4.css} +1 -1
- package/storybook-static/assets/{Input.stories-y2LCVkT2.js → Input.stories-BDTI2nIV.js} +1 -1
- package/storybook-static/assets/{InputDateTime-B5oKuCea.js → InputDateTime-DsRJZVCO.js} +1 -1
- package/storybook-static/assets/{InputDateTime.stories-Cwi0acf9.js → InputDateTime.stories-Dah3F9Fq.js} +1 -1
- package/storybook-static/assets/{InputFile-B2dVbDrE.js → InputFile-CF3DRyTX.js} +1 -1
- package/storybook-static/assets/{InputFile-DbRU7crz.js → InputFile-_65sKWXa.js} +1 -1
- package/storybook-static/assets/{InputFile.stories-DrXG5hWA.js → InputFile.stories-B1PFNFPf.js} +1 -1
- package/storybook-static/assets/{InputFiles-DEBKMzlt.js → InputFiles-CUYGDig8.js} +1 -1
- package/storybook-static/assets/{InputFiles-CsgKJXOD.js → InputFiles-RV6K6GmT.js} +1 -1
- package/storybook-static/assets/{InputFiles.stories-EZDcefG0.js → InputFiles.stories-ZCzYnboY.js} +1 -1
- package/storybook-static/assets/{InputFilesList-ByK52qUe.css → InputFilesList-BbwB0oHE.css} +1 -1
- package/storybook-static/assets/{InputFilesList-GjMJ14Ln.js → InputFilesList-Co__UO8B.js} +1 -1
- package/storybook-static/assets/{InputImage-qjJ7xrKX.js → InputImage-900lIdui.js} +1 -1
- package/storybook-static/assets/{InputImage-CFFK9MbG.js → InputImage-De56Jwx9.js} +1 -1
- package/storybook-static/assets/{InputImage.stories-B32AtBda.js → InputImage.stories-B_R_kcCD.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents-DustBT4l.js → InteractiveComponents-DGTx8enm.js} +1 -1
- package/storybook-static/assets/{InteractiveComponents.stories-J-7t7y-v.js → InteractiveComponents.stories-CDZsFUga.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-DwNtjoeb.js → LayoutPicker-BMO8qfbL.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-DlzXd6kS.js → LayoutPicker-CllhDO8J.js} +1 -1
- package/storybook-static/assets/{LayoutPicker-BY4-fUQa.css → LayoutPicker-DaPDA0_s.css} +1 -1
- package/storybook-static/assets/{LayoutPicker.stories-2bG0TvXm.js → LayoutPicker.stories-F7K4tSxT.js} +1 -1
- package/storybook-static/assets/{Listbox-BAhrUu_I.js → Listbox-0kjmvCe-.js} +1 -1
- package/storybook-static/assets/{Listbox-C9qCMY31.js → Listbox-D_2t3NpM.js} +1 -1
- package/storybook-static/assets/{Listbox.stories-BfakOrPT.js → Listbox.stories-Cp1Eq7Bz.js} +1 -1
- package/storybook-static/assets/{Modal-wGyoEzau.js → Modal-vdSwQ6xw.js} +1 -1
- package/storybook-static/assets/{Modal-D5znEvBs.js → Modal-zf0JQ124.js} +1 -1
- package/storybook-static/assets/{Modal.stories-DotZ88Ut.js → Modal.stories-Cz47rY2B.js} +1 -1
- package/storybook-static/assets/{ModalManagerProvider-DXPaYU4j.js → ModalManagerProvider-C_zd0fqC.js} +1 -1
- package/storybook-static/assets/{MultiSelect-BxKmL7sF.js → MultiSelect-Bl3q6kCP.js} +1 -1
- package/storybook-static/assets/{MultiSelect-DN1NhXH9.js → MultiSelect-DE13Ak4N.js} +1 -1
- package/storybook-static/assets/{MultiSelect.stories-Cdrx9hhT.js → MultiSelect.stories-DG6LGTC9.js} +1 -1
- package/storybook-static/assets/{NoData-mAjM6Vuy.js → NoData-B4AGZs5Q.js} +1 -1
- package/storybook-static/assets/NotificationsHost-BIyd1XQ0.css +1 -0
- package/storybook-static/assets/{NotificationsHost-gBWuk9v-.js → NotificationsHost-CFD2_BpZ.js} +1 -1
- package/storybook-static/assets/{NotificationsHost.stories-DONKtSKb.js → NotificationsHost.stories-CiSu7Vly.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect-Daq3ksSA.js → ODataMultiSelect-PcZYhXlN.js} +1 -1
- package/storybook-static/assets/{ODataMultiSelect.stories-De0WwTKp.js → ODataMultiSelect.stories-xodpVftn.js} +1 -1
- package/storybook-static/assets/{ODataSelect-BUO-vyqK.js → ODataSelect-BuuZhINP.js} +1 -1
- package/storybook-static/assets/{ODataSelect.stories-CJ2RCZGP.js → ODataSelect.stories-nr7GqOTz.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect-Ctyo-uib.js → ODataTreeMultiSelect-BRNITq-6.js} +1 -1
- package/storybook-static/assets/{ODataTreeMultiSelect.stories-BX4wjGkG.js → ODataTreeMultiSelect.stories-Baxtdxte.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect-BZzwG_Ve.js → ODataTreeSelect-BKcyKJr8.js} +1 -1
- package/storybook-static/assets/{ODataTreeSelect.stories-B0jQNyMj.js → ODataTreeSelect.stories-n6LATF6z.js} +1 -1
- package/storybook-static/assets/{OneStepScroller-BL3gxJh1.js → OneStepScroller-DXykOSPw.js} +1 -1
- package/storybook-static/assets/{Option-JgQ-duDq.js → Option-Cr3vYgCL.js} +1 -1
- package/storybook-static/assets/Option-DD2t6DLq.css +1 -0
- package/storybook-static/assets/{OptionButton-CATaxLh0.js → OptionButton-v-MO3VgJ.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-BIsC_Ew6.js → PeriodSelect-BQ9_EM63.js} +1 -1
- package/storybook-static/assets/{PeriodSelect-4LpRQDP5.js → PeriodSelect-DQXZWIBX.js} +1 -1
- package/storybook-static/assets/{PeriodSelect.stories-D5fKpF2P.js → PeriodSelect.stories-S2ndHVEQ.js} +1 -1
- package/storybook-static/assets/{PickerField-BkqWIWZw.js → PickerField-BeAXSQmp.js} +1 -1
- package/storybook-static/assets/{PickerTriggerActions-BVrXKKJ9.js → PickerTriggerActions-D6BjZkrN.js} +1 -1
- package/storybook-static/assets/{Popover-BTrxASXR.js → Popover-BAp50b4b.js} +1 -1
- package/storybook-static/assets/{Popover-DZlEnjse.js → Popover-CTCfa72M.js} +1 -1
- package/storybook-static/assets/{Popover.stories-BdyB4Q7K.js → Popover.stories-CZIBppwE.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-DUES355B.js → PresetRangeDateInput-BLAAcq8Y.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput-Cp66aUGT.js → PresetRangeDateInput-EIlQEGr0.js} +1 -1
- package/storybook-static/assets/{PresetRangeDateInput.stories-D4jLrF6o.js → PresetRangeDateInput.stories-CShR-Eub.js} +1 -1
- package/storybook-static/assets/{PresetSelect-CmRrk7FZ.js → PresetSelect-BcD8EsSb.js} +1 -1
- package/storybook-static/assets/{README-CU_f1CMq.js → README-5i5ZfRuh.js} +1 -1
- package/storybook-static/assets/{README-B7BK3gkk.js → README-6iRo8dKK.js} +1 -1
- package/storybook-static/assets/{README-BCNsNQNj.js → README-6vpPfmdC.js} +1 -1
- package/storybook-static/assets/{README-DNUrBjgg.js → README-B2J2ATaW.js} +1 -1
- package/storybook-static/assets/{README-BUknkyU6.js → README-B8qFKwiq.js} +1 -1
- package/storybook-static/assets/{README-BmKEL3jy.js → README-BBS739kV.js} +1 -1
- package/storybook-static/assets/{README-B00ewV67.js → README-BDMWo0qS.js} +1 -1
- package/storybook-static/assets/{README-DgudM-2t.js → README-BIpHKVKI.js} +1 -1
- package/storybook-static/assets/{README-CmK6hELS.js → README-BQHgBs-J.js} +1 -1
- package/storybook-static/assets/{README-D7jyja4l.js → README-BUlc8wGR.js} +1 -1
- package/storybook-static/assets/{README-CHw6-PVx.js → README-BW1oyMu_.js} +1 -1
- package/storybook-static/assets/{README-C28SDMRx.js → README-BdBeQtXQ.js} +1 -1
- package/storybook-static/assets/{README-LqD1V5ru.js → README-BkX7iDLJ.js} +1 -1
- package/storybook-static/assets/{README-D-TgbUSA.js → README-BnTk0DyO.js} +1 -1
- package/storybook-static/assets/{README-CnRKlFuJ.js → README-Bwv6SU5o.js} +1 -1
- package/storybook-static/assets/{README-Ds6OSOC0.js → README-CLiuh-fF.js} +1 -1
- package/storybook-static/assets/{README-BGA2Ek3H.js → README-CLv4OeWw.js} +1 -1
- package/storybook-static/assets/{README-BrJaVHU_.js → README-CMBk39py.js} +1 -1
- package/storybook-static/assets/{README-DPuLgYuK.js → README-CQUlYRLa.js} +1 -1
- package/storybook-static/assets/{README-BhRGrTHx.js → README-CVX-4uJ_.js} +1 -1
- package/storybook-static/assets/{README-Bq8FLza7.js → README-CWeupyTO.js} +1 -1
- package/storybook-static/assets/{README-E5QziGK8.js → README-CZJvbdGv.js} +1 -1
- package/storybook-static/assets/{README-B4CJVRtX.js → README-CaECsCl2.js} +1 -1
- package/storybook-static/assets/{README-52AHLz83.js → README-Cntj7my4.js} +1 -1
- package/storybook-static/assets/{README-D6pLFtqL.js → README-CuGPdc3G.js} +1 -1
- package/storybook-static/assets/{README-D8YPmvQw.js → README-D7pP2Sxx.js} +1 -1
- package/storybook-static/assets/{README-Cs-dnvtW.js → README-D9Og-Y7l.js} +1 -1
- package/storybook-static/assets/{README-Duppk6f6.js → README-DDtdZa9N.js} +1 -1
- package/storybook-static/assets/{README-B20cH-BV.js → README-DLQvRDdd.js} +1 -1
- package/storybook-static/assets/{README-BfGp1q9n.js → README-DQpji8GH.js} +1 -1
- package/storybook-static/assets/{README-Bh_zrJ_j.js → README-DUfqdm0p.js} +1 -1
- package/storybook-static/assets/{README-55mkSTZb.js → README-Dd3MCsf2.js} +1 -1
- package/storybook-static/assets/{README-CPYFZwZE.js → README-DehKWpx2.js} +1 -1
- package/storybook-static/assets/{README-lgRhlVsq.js → README-DgFtCu8B.js} +1 -1
- package/storybook-static/assets/{README-C8Xo5jEX.js → README-DhZbllv1.js} +1 -1
- package/storybook-static/assets/{README-DvZ8ZhlH.js → README-Dj9EXnja.js} +1 -1
- package/storybook-static/assets/{README-CzKPWsNs.js → README-DkCWpyid.js} +1 -1
- package/storybook-static/assets/{README-C_SQjJtW.js → README-Dn2AIjeS.js} +1 -1
- package/storybook-static/assets/{README-DG5knhc9.js → README-DoZCaKAx.js} +1 -1
- package/storybook-static/assets/{README-DK-Bw1l1.js → README-DsLoV4ax.js} +1 -1
- package/storybook-static/assets/{README-BlWMNqE5.js → README-DwvyizD7.js} +1 -1
- package/storybook-static/assets/{README--fYBobJK.js → README-DwyqrR4I.js} +1 -1
- package/storybook-static/assets/{README-DyLt9P77.js → README-N-Gy0UYM.js} +1 -1
- package/storybook-static/assets/{README-DzVNZdfo.js → README-Wd5wEw-J.js} +1 -1
- package/storybook-static/assets/{README-CoD7FHU_.js → README-Y4OGhQbo.js} +1 -1
- package/storybook-static/assets/{README-EIhMMZ0t.js → README-ZZiicHm9.js} +1 -1
- package/storybook-static/assets/{README-BsUvf6lk.js → README-bAu0Uk5O.js} +1 -1
- package/storybook-static/assets/{README-B9foBRQ-.js → README-cuvbXAuG.js} +1 -1
- package/storybook-static/assets/{README-DsfBjN9N.js → README-jHuA2mq2.js} +1 -1
- package/storybook-static/assets/{README-C_WyDQDz.js → README-pvA4fK1E.js} +1 -1
- package/storybook-static/assets/{README-4AGJG--w.js → README-sEbspuLw.js} +1 -1
- package/storybook-static/assets/{README-DK-US_zR.js → README-v3TOC_aE.js} +1 -1
- package/storybook-static/assets/{README-BoGNjKgW.js → README-wizqrRgs.js} +1 -1
- package/storybook-static/assets/{RadioButton-CmcExRQs.js → RadioButton-BUPEsqwH.js} +1 -1
- package/storybook-static/assets/{RadioButton-BLHXpf6L.js → RadioButton-Ca0kZdMV.js} +1 -1
- package/storybook-static/assets/{RadioButton.stories-P1SEMdJ1.js → RadioButton.stories-aBnizEak.js} +1 -1
- package/storybook-static/assets/{RadioGroup-DkCSA8me.js → RadioGroup-34jH28Sk.js} +1 -1
- package/storybook-static/assets/{RadioGroup-BU95Hbl0.css → RadioGroup-DHnDIEgi.css} +1 -1
- package/storybook-static/assets/{RadioGroup-BBv2Na1n.js → RadioGroup-dq6CbxB6.js} +1 -1
- package/storybook-static/assets/{RadioGroup.stories-5-uFHs1b.js → RadioGroup.stories--lDrmS8V.js} +1 -1
- package/storybook-static/assets/{Scrollable-XhGz9dwJ.js → Scrollable-BJRiyp9q.js} +1 -1
- package/storybook-static/assets/{Select-BEMtNq5M.js → Select-CwNDJSmq.js} +1 -1
- package/storybook-static/assets/{Select-CyA-PHrU.js → Select-DmwCwS8a.js} +1 -1
- package/storybook-static/assets/{Select.stories-B_GbDG58.js → Select.stories-BXj7A2gM.js} +1 -1
- package/storybook-static/assets/{SerializableSelect-CJ74e_Vc.js → SerializableSelect-IAtBSK9P.js} +1 -1
- package/storybook-static/assets/{SerializableSelect.stories-PUXPFPFx.js → SerializableSelect.stories-D8F5WGtk.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-wqb75Yrz.js → SingleDateTimeInput-CbyyGlmi.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput-BlpQ8t9f.js → SingleDateTimeInput-oN2P3eYx.js} +1 -1
- package/storybook-static/assets/{SingleDateTimeInput.stories-CdogRh5M.js → SingleDateTimeInput.stories-BU_wyTmo.js} +1 -1
- package/storybook-static/assets/{Slider-CZa1f0vP.js → Slider-CDJhhSWj.js} +1 -1
- package/storybook-static/assets/{Slider-r8Be9wJ4.js → Slider-ClZTrtRk.js} +1 -1
- package/storybook-static/assets/Slider-DxdPx1Pb.css +1 -0
- package/storybook-static/assets/{Slider.stories-BUwg0h15.js → Slider.stories-PfQf9es7.js} +1 -1
- package/storybook-static/assets/{SliderInput-BWFbcA5R.js → SliderInput-BxFUjetO.js} +1 -1
- package/storybook-static/assets/{SliderInput-BaZBNhhF.js → SliderInput-C7TRql6-.js} +1 -1
- package/storybook-static/assets/{SliderInput.stories-Cbxo0ku_.js → SliderInput.stories-yX8DU5pZ.js} +1 -1
- package/storybook-static/assets/{Sortable-JfLmQUdm.js → Sortable-D8cVwatT.js} +1 -1
- package/storybook-static/assets/{Sortable.stories-Cz9xM3Tw.js → Sortable.stories-BI6_E5k7.js} +1 -1
- package/storybook-static/assets/{Splitter-BkQcPRYJ.js → Splitter-B958Wj4G.js} +1 -1
- package/storybook-static/assets/{Splitter.stories-zQf1fK4D.js → Splitter.stories-Dl2YOk9H.js} +1 -1
- package/storybook-static/assets/{StateSelect-DxH1oWnK.js → StateSelect-Cs9-kDRC.js} +1 -1
- package/storybook-static/assets/{StateSelect-TLRMUmko.js → StateSelect-DbV1mGhQ.js} +1 -1
- package/storybook-static/assets/{StateSelect.stories-CReLNG_6.js → StateSelect.stories-D6atguQ6.js} +1 -1
- package/storybook-static/assets/StatusIndicator--Y-QdjQI.js +37 -0
- package/storybook-static/assets/StatusIndicator-CpCGmnO7.css +1 -0
- package/storybook-static/assets/StatusIndicator.stories-DxkpP6C1.js +31 -0
- package/storybook-static/assets/{StringToggle.stories-BYqTdRbD.js → StringToggle.stories-C3mdK5Wx.js} +1 -1
- package/storybook-static/assets/{Switch-ChsLVAse.js → Switch-BTFpnXV9.js} +1 -1
- package/storybook-static/assets/{Switch-DE9rqHmp.js → Switch-OPzpWcJw.js} +1 -1
- package/storybook-static/assets/{Switch.stories-BaVgLi3_.js → Switch.stories-C0rVHcRq.js} +1 -1
- package/storybook-static/assets/{Table-qoMvYV1q.js → Table-bWKgagHH.js} +1 -1
- package/storybook-static/assets/Table-j_3ID7Xq.css +1 -0
- package/storybook-static/assets/{Table.stories-BdLScKfS.js → Table.stories-DOuV4G3p.js} +1 -1
- package/storybook-static/assets/{Tabs-CuALrdgt.js → Tabs-ae4daDEA.js} +1 -1
- package/storybook-static/assets/{Tabs.stories-BrLtxZ_a.js → Tabs.stories-Br4RCZKR.js} +1 -1
- package/storybook-static/assets/{TabsBox-D-bkJX9j.css → TabsBox-B3REnb6D.css} +1 -1
- package/storybook-static/assets/{TabsBox-DzfWhIHb.js → TabsBox-X_7yoTw3.js} +1 -1
- package/storybook-static/assets/{TagInput-Tyn5Jgus.js → TagInput-B2w5W05Z.js} +1 -1
- package/storybook-static/assets/{TagInput-ChmW4s9O.css → TagInput-RJbbcfoR.css} +1 -1
- package/storybook-static/assets/{TagInput.stories-Bbs3olyB.js → TagInput.stories-Db9DaNpW.js} +1 -1
- package/storybook-static/assets/{Text-B4GUKigV.js → Text-BT0cn3Bk.js} +1 -1
- package/storybook-static/assets/{Textarea-CNu-scX8.js → Textarea-B9MNOgmF.js} +1 -1
- package/storybook-static/assets/{Textarea-D3iwzB-S.js → Textarea-C_6iOQ3k.js} +1 -1
- package/storybook-static/assets/{Textarea.stories-CE2gt74x.js → Textarea.stories-Ctjb3d47.js} +1 -1
- package/storybook-static/assets/{TimePanel-BESMLCVl.js → TimePanel-C5AucKln.js} +1 -1
- package/storybook-static/assets/{TimePanel-Bh98qsCo.css → TimePanel-D9_hb7w4.css} +1 -1
- package/storybook-static/assets/{TimePanel.stories-BYhTpaoS.js → TimePanel.stories-CiQAJcB_.js} +1 -1
- package/storybook-static/assets/Toggle-ClE8Zovo.css +1 -0
- package/storybook-static/assets/{Toggle-0-SlfDXC.js → Toggle-DxA-Q1KZ.js} +1 -1
- package/storybook-static/assets/{Toggle-BexBc-UO.js → Toggle-q8hxq-LP.js} +1 -1
- package/storybook-static/assets/{Toggle.stories-CG4rBYOZ.js → Toggle.stories-C6Jf_KTc.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-Cne9qXjN.js → TreeMultiSelect-BKF7COzn.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect-QId1DJUn.js → TreeMultiSelect-BfduPrgB.js} +1 -1
- package/storybook-static/assets/{TreeMultiSelect.stories-D6ElJY8Y.js → TreeMultiSelect.stories-C-uztFex.js} +1 -1
- package/storybook-static/assets/{TreePickerBase-B6DED6Hz.css → TreePickerBase-CmFF9pWE.css} +1 -1
- package/storybook-static/assets/{TreePickerBase-Dq3HMrua.js → TreePickerBase-SVDNn9QY.js} +1 -1
- package/storybook-static/assets/{TreeSelect-q4gdFfBH.js → TreeSelect-Bu9HRTvX.js} +1 -1
- package/storybook-static/assets/{TreeSelect-BJKtAh4x.js → TreeSelect-ClJGLBA8.js} +1 -1
- package/storybook-static/assets/{TreeSelect.stories-DfCxZuVy.js → TreeSelect.stories-C0TeLbpZ.js} +1 -1
- package/storybook-static/assets/{TreeTable-5fAWCnhQ.js → TreeTable-BXia_Imm.js} +1 -1
- package/storybook-static/assets/TreeTable-BvB3kj4h.css +1 -0
- package/storybook-static/assets/{TreeTable.stories-B1fSfYHg.js → TreeTable.stories-Cwo8yjNI.js} +1 -1
- package/storybook-static/assets/{blocks-B_u8Yt1Z.js → blocks-BmNU_R5E.js} +3 -3
- package/storybook-static/assets/{check-r01NGn4c.js → check-HCQdrq3c.js} +1 -1
- package/storybook-static/assets/{chevron-down-DxMviYn3.js → chevron-down-DHrZ_6vS.js} +1 -1
- package/storybook-static/assets/{chevron-left-mKnQH53V.js → chevron-left-CaIBhYcr.js} +1 -1
- package/storybook-static/assets/{chevron-right-CeJNqWTb.js → chevron-right-BpmEWiwv.js} +1 -1
- package/storybook-static/assets/{chunk-W22LQPXL-DorleiwX.js → chunk-W22LQPXL-DSMfJqhe.js} +1 -1
- package/storybook-static/assets/{circle-alert-H7OZyDmF.js → circle-alert-DuupFIr9.js} +1 -1
- package/storybook-static/assets/{circle-check-my8Ev6ar.js → circle-check-LYBfAR-E.js} +1 -1
- package/storybook-static/assets/{components-CDMhSXUo.js → components-CBnjb8pL.js} +3 -3
- package/storybook-static/assets/{contextMenu-fMt3iyZv.js → contextMenu-BZ-iSJtD.js} +1 -1
- package/storybook-static/assets/{download-BCwj5k1S.js → download-CsLGqkEl.js} +1 -1
- package/storybook-static/assets/{floating-ui.react-Cy32mouo.js → floating-ui.react-VNDOEKPt.js} +1 -1
- package/storybook-static/assets/{foundationApi-BtZYXGDY.js → foundationApi-BMy7_pDS.js} +1 -1
- package/storybook-static/assets/{foundationLib-CHOUG7NK.js → foundationLib-o95OqhXl.js} +1 -1
- package/storybook-static/assets/{hooks-CEvNG7IN.js → hooks-DMFMD13m.js} +1 -1
- package/storybook-static/assets/iframe-BT_jngkf.css +1 -0
- package/storybook-static/assets/{iframe-DWvPB8Sk.js → iframe-BaXmcmyl.js} +4 -4
- package/storybook-static/assets/iframe-D5qmKm51.js +1 -0
- package/storybook-static/assets/{info-CA6M6l6h.js → info-ZuWgcD4m.js} +1 -1
- package/storybook-static/assets/{odata-CHl7sWAn.js → odata-Brls3R5b.js} +1 -1
- package/storybook-static/assets/{odataStoryFixtures-BvjpoqqT.js → odataStoryFixtures-BmQo4rAJ.js} +2 -2
- package/storybook-static/assets/{react-B37E__uI.js → react-BnjGKE7V.js} +1 -1
- package/storybook-static/assets/{refresh-cw-Bt4yd-lG.js → refresh-cw-vj55o5c3.js} +1 -1
- package/storybook-static/assets/{settings-2-B7Uyk4j8.js → settings-2-PPom9XND.js} +1 -1
- package/storybook-static/assets/{sortable-B8UMQCaH.js → sortable-CztGPJOI.js} +1 -1
- package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-QGUDFNNj.js → syntaxhighlighter-QEQV7K2Y-uXmnHQP7.js} +1 -1
- package/storybook-static/assets/{trash-2-Bhjh1o0B.js → trash-2-DEnKoJjZ.js} +1 -1
- package/storybook-static/assets/{triangle-alert-D1c-iB00.js → triangle-alert-D-oyPLJL.js} +1 -1
- package/storybook-static/assets/ui-DSS1yTEO.css +1 -0
- package/storybook-static/assets/ui.module-SH8ehXul.js +1 -0
- package/storybook-static/assets/uiClasses-e9OQfdw2.js +1 -0
- package/storybook-static/assets/{useODataSelectBase-CYnvX8wM.js → useODataSelectBase-DxsvigTC.js} +1 -1
- package/storybook-static/assets/{useODataTreeData-C2risfo7.js → useODataTreeData-Dzxb75-h.js} +1 -1
- package/storybook-static/assets/{usePickerQuery-CjSFlUmn.js → usePickerQuery-SCKPS_0f.js} +1 -1
- package/storybook-static/assets/{usePickerTriggerController-Bqo5fhOa.js → usePickerTriggerController-DMA4hla_.js} +1 -1
- package/storybook-static/assets/{x-B3GmOByS.js → x-C5QCK6Ts.js} +1 -1
- package/storybook-static/iframe.html +3 -3
- package/storybook-static/index.json +1 -1
- package/storybook-static/project.json +1 -1
- package/dist/chunks/CalendarView-Bhaov_XE.js.map +0 -1
- package/dist/chunks/TextEditorLexicalClient-CSXZQOYo.js.map +0 -1
- package/dist/chunks/badge-DUI2ET6q.js.map +0 -1
- package/dist/chunks/context-menu-Dj6MXgv6.js.map +0 -1
- package/dist/chunks/input-D1jOxm0t.js.map +0 -1
- package/dist/chunks/input-files-CDGpJaUm.js.map +0 -1
- package/dist/chunks/picker-DZ4-1BvK.js.map +0 -1
- package/dist/chunks/radio-group-DhpP7JSJ.js.map +0 -1
- package/dist/chunks/table-DMLFUBlb.js.map +0 -1
- package/dist/chunks/ui.module-BsDio9A3.js.map +0 -1
- package/dist/chunks/uiClasses-BVwFzzsr.js.map +0 -1
- package/storybook-static/assets/Button.stories-B3Q5B_2w.js +0 -93
- package/storybook-static/assets/CalendarView-DKvrkS40.css +0 -1
- package/storybook-static/assets/ContextMenu-CFPrlO2u.css +0 -1
- package/storybook-static/assets/DisclosureGroup-CVFMwx22.css +0 -1
- package/storybook-static/assets/FloatingPopover-jwILx9b0.css +0 -1
- package/storybook-static/assets/FormattedTableCell-AZc2IHfK.css +0 -1
- package/storybook-static/assets/ImageViewerRuntime-CRmlrtpL.css +0 -1
- package/storybook-static/assets/NotificationsHost-D5Pvn4eu.css +0 -1
- package/storybook-static/assets/Option-DXh7BISz.css +0 -1
- package/storybook-static/assets/Slider-CK-W2ZTO.css +0 -1
- package/storybook-static/assets/Table-BGvRn9y0.css +0 -1
- package/storybook-static/assets/Toggle-fKG2dFY0.css +0 -1
- package/storybook-static/assets/TreeTable--ZoksUiw.css +0 -1
- package/storybook-static/assets/iframe-CDVsimPQ.js +0 -1
- package/storybook-static/assets/iframe-IhWQT6NX.css +0 -1
- package/storybook-static/assets/ui-C3BskXT9.css +0 -1
- package/storybook-static/assets/ui.module-31LPbZGK.js +0 -1
- package/storybook-static/assets/uiClasses-Bz6cvlDQ.js +0 -1
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
@use "./mixin" as *;
|
|
2
2
|
|
|
3
3
|
@mixin ui-tone($tone) {
|
|
4
|
-
--ui-tone-text: var(
|
|
5
|
-
--ui-tone-text-hover: var(
|
|
6
|
-
--ui-tone-text-active: var(
|
|
7
|
-
--ui-tone-fill: var(
|
|
8
|
-
--ui-tone-fill-hover: var(
|
|
9
|
-
--ui-tone-fill-active: var(
|
|
10
|
-
--ui-tone-on-fill: var(
|
|
11
|
-
--ui-tone-soft: var(
|
|
12
|
-
--ui-tone-border: var(
|
|
13
|
-
--ui-tone-border-hover: var(
|
|
14
|
-
--ui-tone-border-active: var(
|
|
15
|
-
--ui-tone-border-focus: var(--
|
|
16
|
-
--ui-tone-ghost-hover: color-mix(in srgb, var(
|
|
17
|
-
--ui-tone-ghost-active: color-mix(in srgb, var(
|
|
4
|
+
--ui-tone-text: var(--#{$tone}-text);
|
|
5
|
+
--ui-tone-text-hover: color-mix(in srgb, var(--#{$tone}-text) 88%, var(--content-0));
|
|
6
|
+
--ui-tone-text-active: color-mix(in srgb, var(--#{$tone}-text) 76%, var(--content-0));
|
|
7
|
+
--ui-tone-fill: var(--#{$tone}-fill);
|
|
8
|
+
--ui-tone-fill-hover: color-mix(in srgb, var(--#{$tone}-fill) 88%, var(--content-0));
|
|
9
|
+
--ui-tone-fill-active: color-mix(in srgb, var(--#{$tone}-fill) 76%, var(--content-0));
|
|
10
|
+
--ui-tone-on-fill: var(--#{$tone}-on-fill);
|
|
11
|
+
--ui-tone-soft: color-mix(in srgb, var(--#{$tone}-fill) 12%, var(--surface-0));
|
|
12
|
+
--ui-tone-border: var(--#{$tone}-border);
|
|
13
|
+
--ui-tone-border-hover: color-mix(in srgb, var(--#{$tone}-border) 88%, var(--content-0));
|
|
14
|
+
--ui-tone-border-active: color-mix(in srgb, var(--#{$tone}-border) 76%, var(--content-0));
|
|
15
|
+
--ui-tone-border-focus: var(--focus-ring);
|
|
16
|
+
--ui-tone-ghost-hover: color-mix(in srgb, var(--#{$tone}-fill) 10%, var(--surface-0));
|
|
17
|
+
--ui-tone-ghost-active: color-mix(in srgb, var(--#{$tone}-fill) 20%, var(--surface-0));
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
@mixin ui-appearance-solid {
|
|
@@ -28,6 +28,9 @@
|
|
|
28
28
|
--ui-border-hover: transparent;
|
|
29
29
|
--ui-border-active: transparent;
|
|
30
30
|
--ui-border-focus: transparent;
|
|
31
|
+
--ui-disabled-color: var(--content-1);
|
|
32
|
+
--ui-disabled-background: color-mix(in srgb, var(--ui-tone-fill) 14%, var(--surface-2));
|
|
33
|
+
--ui-disabled-border: transparent;
|
|
31
34
|
}
|
|
32
35
|
|
|
33
36
|
@mixin ui-appearance-outline {
|
|
@@ -41,6 +44,9 @@
|
|
|
41
44
|
--ui-border-hover: var(--ui-tone-border-hover);
|
|
42
45
|
--ui-border-active: var(--ui-tone-border-active);
|
|
43
46
|
--ui-border-focus: var(--ui-tone-border-focus);
|
|
47
|
+
--ui-disabled-color: color-mix(in srgb, var(--ui-tone-text) 32%, var(--content-2));
|
|
48
|
+
--ui-disabled-background: var(--surface-0);
|
|
49
|
+
--ui-disabled-border: color-mix(in srgb, var(--ui-tone-border) 28%, var(--border-0));
|
|
44
50
|
}
|
|
45
51
|
|
|
46
52
|
@mixin ui-appearance-ghost {
|
|
@@ -54,6 +60,9 @@
|
|
|
54
60
|
--ui-border-hover: transparent;
|
|
55
61
|
--ui-border-active: transparent;
|
|
56
62
|
--ui-border-focus: transparent;
|
|
63
|
+
--ui-disabled-color: color-mix(in srgb, var(--ui-tone-text) 32%, var(--content-2));
|
|
64
|
+
--ui-disabled-background: transparent;
|
|
65
|
+
--ui-disabled-border: transparent;
|
|
57
66
|
}
|
|
58
67
|
|
|
59
68
|
@mixin ui-appearance-transparent {
|
|
@@ -67,6 +76,9 @@
|
|
|
67
76
|
--ui-border-hover: transparent;
|
|
68
77
|
--ui-border-active: transparent;
|
|
69
78
|
--ui-border-focus: transparent;
|
|
79
|
+
--ui-disabled-color: color-mix(in srgb, var(--ui-tone-text) 32%, var(--content-2));
|
|
80
|
+
--ui-disabled-background: transparent;
|
|
81
|
+
--ui-disabled-border: transparent;
|
|
70
82
|
}
|
|
71
83
|
|
|
72
84
|
@mixin ui-control-base {
|
|
@@ -94,27 +106,32 @@
|
|
|
94
106
|
background-color: var(--ui-background-active);
|
|
95
107
|
}
|
|
96
108
|
|
|
97
|
-
&:focus,
|
|
98
|
-
&:focus-within {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
border-color: var(--ui-border-focus);
|
|
102
|
-
}
|
|
109
|
+
// &:focus,
|
|
110
|
+
// &:focus-within {
|
|
111
|
+
// border-color: var(--ui-border-focus);
|
|
112
|
+
// }
|
|
103
113
|
|
|
104
114
|
&:focus-visible {
|
|
105
115
|
@include focusVisible;
|
|
106
116
|
}
|
|
107
117
|
|
|
108
|
-
//
|
|
118
|
+
// Disabled-состояние берёт структуру из appearance: solid остаётся без рамки,
|
|
119
|
+
// а ghost/transparent — без фона. Цвета задаются явно, чтобы не накапливать opacity родителей.
|
|
109
120
|
&:disabled,
|
|
110
|
-
|
|
121
|
+
&[data-disabled] {
|
|
122
|
+
color: var(--ui-disabled-color, var(--content-2));
|
|
123
|
+
background-color: var(--ui-disabled-background, var(--surface-2));
|
|
124
|
+
border-color: var(--ui-disabled-border, var(--overlay-backdrop));
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
&:disabled {
|
|
128
|
+
cursor: not-allowed;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
// Ненативные контролы не блокируют события сами, поэтому их отключаем явно.
|
|
111
132
|
&[data-disabled] {
|
|
112
133
|
cursor: default;
|
|
113
134
|
pointer-events: none;
|
|
114
|
-
// opacity: var(--disabled-opacity);
|
|
115
|
-
color: var(--content-2);
|
|
116
|
-
background-color: var(--surface-2);
|
|
117
|
-
border-color: var(--overlay-backdrop);
|
|
118
135
|
}
|
|
119
136
|
}
|
|
120
137
|
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
@use "sass:math";
|
|
2
|
-
@use "sass:map";
|
|
3
2
|
@use "media" as *;
|
|
4
3
|
|
|
5
4
|
// @function fluid($max: 100, $min: 10) {
|
|
@@ -111,189 +110,3 @@
|
|
|
111
110
|
@include focusVisible;
|
|
112
111
|
}
|
|
113
112
|
}
|
|
114
|
-
|
|
115
|
-
@function status-scale($L, $C, $H, $mode) {
|
|
116
|
-
@if $mode == light {
|
|
117
|
-
@return (
|
|
118
|
-
outline: (
|
|
119
|
-
base: oklch($L $C $H),
|
|
120
|
-
hover: oklch($L - 0.05 $C - 0.01 $H),
|
|
121
|
-
active: oklch($L - 0.1 $C - 0.03 $H),
|
|
122
|
-
focus: oklch($L - 0.06 $C + 0.03 $H)
|
|
123
|
-
),
|
|
124
|
-
border: (
|
|
125
|
-
base: oklch($L $C $H),
|
|
126
|
-
hover: oklch($L - 0.05 $C + 0.01 $H + 5),
|
|
127
|
-
active: oklch($L - 0.1 $C + 0.01 $H - 5),
|
|
128
|
-
focus: oklch($L $C + 0.1 $H - 5)
|
|
129
|
-
),
|
|
130
|
-
fill: (
|
|
131
|
-
base: oklch($L + 0.06 $C * 1.125 $H + 3),
|
|
132
|
-
hover: oklch($L + 0.03 $C * 1.125 $H + 3),
|
|
133
|
-
active: oklch($L + 0.06 $C * 1.25 $H + 6),
|
|
134
|
-
on-fill: oklch(1 0 0)
|
|
135
|
-
),
|
|
136
|
-
soft: oklch(0.94 ($C * 0.35) $H)
|
|
137
|
-
);
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
@if $mode == dark {
|
|
141
|
-
@return (
|
|
142
|
-
outline: (
|
|
143
|
-
base: oklch($L $C $H),
|
|
144
|
-
hover: oklch($L + 0.06 $C + 0.01 $H),
|
|
145
|
-
active: oklch($L - 0.04 $C $H),
|
|
146
|
-
focus: oklch($L + 0.06 $C + 0.02 $H)
|
|
147
|
-
),
|
|
148
|
-
border: (
|
|
149
|
-
base: oklch($L $C $H),
|
|
150
|
-
hover: oklch($L + 0.06 $C + 0.01 $H),
|
|
151
|
-
active: oklch($L - 0.04 $C $H),
|
|
152
|
-
focus: oklch($L + 0.02 $C + 0.1 $H)
|
|
153
|
-
),
|
|
154
|
-
fill: (
|
|
155
|
-
base: oklch($L + 0.06 $C * 0.95 $H),
|
|
156
|
-
hover: oklch($L + 0.1 $C * 0.95 $H),
|
|
157
|
-
active: oklch($L + 0.1 $C * 0.8 $H),
|
|
158
|
-
on-fill: oklch(0.26 ($C * 0.35) $H)
|
|
159
|
-
),
|
|
160
|
-
soft: oklch(0.3 ($C * 0.45) $H)
|
|
161
|
-
);
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
// Для нейтральной схемы никак общую логику не применить, поэтому отдельная обработка
|
|
166
|
-
@function status-border-neutral($L, $C, $H, $mode) {
|
|
167
|
-
@if $mode == light {
|
|
168
|
-
@return (
|
|
169
|
-
base: oklch($L $C $H),
|
|
170
|
-
hover: oklch($L - 0.1 $C + 0.01 $H + 5),
|
|
171
|
-
active: oklch($L - 0.2 $C + 0.01 $H - 5),
|
|
172
|
-
focus: oklch($L - 0.3 $C $H)
|
|
173
|
-
);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
@if $mode == dark {
|
|
177
|
-
@return (
|
|
178
|
-
base: oklch($L $C $H),
|
|
179
|
-
hover: oklch($L + 0.1 $C + 0.01 $H),
|
|
180
|
-
active: oklch($L + 0.2 $C + 0.01 $H),
|
|
181
|
-
focus: oklch($L + 0.2 $C + 0.02 $H)
|
|
182
|
-
);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
@mixin generate-status-fill($name, $L, $C, $H, $mode) {
|
|
187
|
-
$s: status-scale($L, $C, $H, $mode);
|
|
188
|
-
|
|
189
|
-
--status-#{$name}-text: var(--hc-status-#{$name}-text, #{map.get(map.get($s, outline), base)});
|
|
190
|
-
--status-#{$name}-text-hover: var(--hc-status-#{$name}-text, #{map.get(map.get($s, outline), hover)});
|
|
191
|
-
--status-#{$name}-text-active: var(--hc-status-#{$name}-text, #{map.get(map.get($s, outline), active)});
|
|
192
|
-
|
|
193
|
-
--status-#{$name}-fill: var(--hc-status-#{$name}-fill, #{map.get(map.get($s, fill), base)});
|
|
194
|
-
--status-#{$name}-fill-hover: var(--hc-status-#{$name}-fill, #{map.get(map.get($s, fill), hover)});
|
|
195
|
-
--status-#{$name}-fill-active: var(--hc-status-#{$name}-fill, #{map.get(map.get($s, fill), active)});
|
|
196
|
-
--status-#{$name}-on-fill: var(--hc-status-#{$name}-on-fill, #{map.get(map.get($s, fill), on-fill)});
|
|
197
|
-
|
|
198
|
-
--status-#{$name}-soft: var(--hc-status-#{$name}-soft, #{map.get($s, soft)});
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
@mixin generate-status-border($name, $L, $C, $H, $mode) {
|
|
202
|
-
@if $name == neutral {
|
|
203
|
-
$s: status-border-neutral($L, $C, $H, $mode);
|
|
204
|
-
|
|
205
|
-
--border-0: var(--hc-border, #{map.get($s, base)});
|
|
206
|
-
--border-1: var(--hc-border, #{map.get($s, hover)});
|
|
207
|
-
--border-2: var(--hc-border, #{map.get($s, active)});
|
|
208
|
-
--border-focus: var(--hc-border-focus, #{map.get($s, focus)});
|
|
209
|
-
|
|
210
|
-
--status-#{$name}-border: var(--border-0);
|
|
211
|
-
--status-#{$name}-border-hover: var(--border-1);
|
|
212
|
-
--status-#{$name}-border-active: var(--border-2);
|
|
213
|
-
--status-#{$name}-border-focus: var(--border-focus);
|
|
214
|
-
} @else {
|
|
215
|
-
$s: status-scale($L, $C, $H, $mode);
|
|
216
|
-
|
|
217
|
-
--status-#{$name}-border: var(--hc-status-#{$name}-border, #{map.get(map.get($s, border), base)});
|
|
218
|
-
--status-#{$name}-border-hover: var(--hc-status-#{$name}-border, #{map.get(map.get($s, border), hover)});
|
|
219
|
-
--status-#{$name}-border-active: var(--hc-status-#{$name}-border, #{map.get(map.get($s, border), active)});
|
|
220
|
-
--status-#{$name}-border-focus: var(--hc-status-#{$name}-border, #{map.get(map.get($s, border), focus)});
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
@function status-border-neutral2($L, $C, $H, $mode) {
|
|
225
|
-
@if $mode == light {
|
|
226
|
-
@return (
|
|
227
|
-
base: oklch($L $C $H),
|
|
228
|
-
hover: oklch($L + 0.13 $C + 0.15 $H - 89),
|
|
229
|
-
active: oklch($L - 0.2 $C + 0.15 $H + 19),
|
|
230
|
-
focus: oklch($L + 0.15 $C + 0.2 $H - 89)
|
|
231
|
-
);
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
@if $mode == dark {
|
|
235
|
-
@return (
|
|
236
|
-
base: oklch($L $C $H),
|
|
237
|
-
hover: oklch($L + 0.1 $C + 0.01 $H),
|
|
238
|
-
active: oklch($L + 0.2 $C + 0.01 $H),
|
|
239
|
-
focus: oklch($L + 0.2 $C + 0.02 $H)
|
|
240
|
-
);
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
@mixin generate-neutral-border2() {
|
|
245
|
-
--status-neutral-border: var(--border-0);
|
|
246
|
-
--status-neutral-border-hover: var(--border-1);
|
|
247
|
-
--status-neutral-border-active: var(--border-2);
|
|
248
|
-
--status-neutral-border-focus: var(--border-focus);
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
@function status-border-neutral3($L, $C, $H, $mode) {
|
|
252
|
-
@if $mode == light {
|
|
253
|
-
@return (
|
|
254
|
-
base: oklch($L $C $H),
|
|
255
|
-
hover: oklch($L - 0.13 $C + 0.15 $H + 59),
|
|
256
|
-
active: oklch($L - 0.25 $C + 0.2 $H + 9),
|
|
257
|
-
focus: oklch($L - 0.15 $C + 0.2 $H + 59)
|
|
258
|
-
);
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
@if $mode == dark {
|
|
262
|
-
@return (
|
|
263
|
-
base: oklch($L $C $H),
|
|
264
|
-
hover: oklch($L + 0.1 $C + 0.01 $H),
|
|
265
|
-
active: oklch($L + 0.2 $C + 0.01 $H),
|
|
266
|
-
focus: oklch($L + 0.2 $C + 0.02 $H)
|
|
267
|
-
);
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
@mixin generate-neutral-border3($L, $C, $H, $mode) {
|
|
272
|
-
$s: status-border-neutral3($L, $C, $H, $mode);
|
|
273
|
-
|
|
274
|
-
--border-0: var(--hc-border, #{map.get($s, base)});
|
|
275
|
-
--border-1: var(--hc-border, #{map.get($s, hover)});
|
|
276
|
-
--border-2: var(--hc-border, #{map.get($s, active)});
|
|
277
|
-
--border-focus: var(--hc-border-focus, #{map.get($s, focus)});
|
|
278
|
-
|
|
279
|
-
--status-neutral-border: var(--border-0);
|
|
280
|
-
--status-neutral-border-hover: var(--border-1);
|
|
281
|
-
--status-neutral-border-active: var(--border-2);
|
|
282
|
-
--status-neutral-border-focus: var(--border-focus);
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
@mixin generate-accent($L, $C, $H, $mode) {
|
|
286
|
-
@if $mode == light {
|
|
287
|
-
--content-accent: var(--hc-content-accent, oklch(#{$L} #{$C} #{$H}));
|
|
288
|
-
--surface-accent: var(--hc-surface-accent, oklch(#{$L + 0.4} #{math.max(0, $C - 0.2)} #{$H - 15}));
|
|
289
|
-
--border-accent: var(--hc-border-accent, oklch(#{$L - 0.03} #{math.max(0, $C - 0.08)} #{$H}));
|
|
290
|
-
// --focus-accent: var(--hc-focus-accent, oklch(#{$L + 0.04} #{$C + 0.05} #{$H}));
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
@if $mode == dark {
|
|
294
|
-
--content-accent: var(--hc-content-accent, oklch(#{$L} #{$C} #{$H}));
|
|
295
|
-
--surface-accent: var(--hc-surface-accent, oklch(#{$L - 0.4} #{math.max(0, $C - 0.15)} #{$H - 10}));
|
|
296
|
-
--border-accent: var(--hc-border-accent, oklch(#{$L - 0.08} #{math.max(0, $C - 0.1)} #{$H}));
|
|
297
|
-
// --focus-accent: var(--hc-focus-accent, oklch(#{$L + 0.06} #{$C + 0.03} #{$H}));
|
|
298
|
-
}
|
|
299
|
-
}
|
|
@@ -14,6 +14,24 @@ function compileUiControlBase(): string {
|
|
|
14
14
|
}).css;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
/**
|
|
18
|
+
* Компилирует четыре appearance вместе с базовым контролом, чтобы проверять итоговый
|
|
19
|
+
* disabled-контракт, который реально получают Button и другие scheme-компоненты.
|
|
20
|
+
*/
|
|
21
|
+
function compileUiAppearances(): string {
|
|
22
|
+
return compileString(
|
|
23
|
+
`@use "controls" as *;
|
|
24
|
+
.solid { @include ui-tone("brand"); @include ui-appearance-solid; @include ui-control-base; }
|
|
25
|
+
.outline { @include ui-tone("brand"); @include ui-appearance-outline; @include ui-control-base; }
|
|
26
|
+
.ghost { @include ui-tone("brand"); @include ui-appearance-ghost; @include ui-control-base; }
|
|
27
|
+
.transparent { @include ui-tone("brand"); @include ui-appearance-transparent; @include ui-control-base; }`,
|
|
28
|
+
{
|
|
29
|
+
loadPaths: [resolve("src/styles/mixins")],
|
|
30
|
+
style: "expanded"
|
|
31
|
+
}
|
|
32
|
+
).css;
|
|
33
|
+
}
|
|
34
|
+
|
|
17
35
|
describe("ui-control-base", () => {
|
|
18
36
|
it("ограничивает hover устройствами с поддержкой наведения", () => {
|
|
19
37
|
const css = compileUiControlBase();
|
|
@@ -31,14 +49,18 @@ describe("ui-control-base", () => {
|
|
|
31
49
|
);
|
|
32
50
|
});
|
|
33
51
|
|
|
34
|
-
it("
|
|
35
|
-
const css =
|
|
36
|
-
const focusRule = css.match(/\.control:focus,\s*\.control:focus-within \{[^}]*\}/)?.[0];
|
|
52
|
+
it("сохраняет структуру appearance в disabled-состоянии без opacity", () => {
|
|
53
|
+
const css = compileUiAppearances();
|
|
37
54
|
|
|
38
|
-
expect(
|
|
39
|
-
expect(focusRule).not.toContain("background-color");
|
|
55
|
+
expect(css).toMatch(/\.solid \{[^}]*--ui-disabled-background: color-mix\([^;]+\);[^}]*--ui-disabled-border: transparent;/s);
|
|
40
56
|
expect(css).toMatch(
|
|
41
|
-
/\.
|
|
57
|
+
/\.outline \{[^}]*--ui-disabled-background: var\(--surface-0\);[^}]*--ui-disabled-border: color-mix\([^;]+\);/s
|
|
42
58
|
);
|
|
59
|
+
expect(css).toMatch(/\.ghost \{[^}]*--ui-disabled-background: transparent;[^}]*--ui-disabled-border: transparent;/s);
|
|
60
|
+
expect(css).toMatch(/\.transparent \{[^}]*--ui-disabled-background: transparent;[^}]*--ui-disabled-border: transparent;/s);
|
|
61
|
+
|
|
62
|
+
const disabledRules = css.match(/\.(?:solid|outline|ghost|transparent):disabled[^}]*\}/g)?.join("\n") ?? "";
|
|
63
|
+
expect(disabledRules).not.toContain("opacity");
|
|
64
|
+
expect(disabledRules).toContain("cursor: not-allowed");
|
|
43
65
|
});
|
|
44
66
|
});
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
.interactiveSurface {
|
|
2
|
-
--c:
|
|
3
|
-
--s:
|
|
4
|
-
--b:
|
|
2
|
+
--c: inherit;
|
|
3
|
+
--s: transparent;
|
|
4
|
+
--b: transparent;
|
|
5
5
|
|
|
6
|
-
--ch: var(--
|
|
7
|
-
--sh: var(--
|
|
8
|
-
--bh: var(--
|
|
6
|
+
--ch: var(--accent-on-fill);
|
|
7
|
+
--sh: var(--accent-fill);
|
|
8
|
+
--bh: var(--accent-border);
|
|
9
9
|
|
|
10
|
-
--ca: var(--
|
|
11
|
-
--sa: var(--
|
|
12
|
-
--ba: var(--
|
|
10
|
+
--ca: var(--accent-on-fill);
|
|
11
|
+
--sa: var(--accent-fill);
|
|
12
|
+
--ba: var(--accent-border);
|
|
13
13
|
|
|
14
|
-
--cs: var(--
|
|
15
|
-
--ss: var(--
|
|
16
|
-
--bs: var(--
|
|
14
|
+
--cs: var(--accent-on-fill);
|
|
15
|
+
--ss: var(--accent-fill);
|
|
16
|
+
--bs: var(--accent-border);
|
|
17
17
|
|
|
18
18
|
// color: var(--c);
|
|
19
19
|
// background-color: var(--s);
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
@use "sass:map";
|
|
2
|
-
@use "sass:meta";
|
|
3
2
|
|
|
4
3
|
@use "../config" as stylesConfig;
|
|
5
|
-
@use "../mixins/" as *;
|
|
6
4
|
|
|
7
5
|
@function _theme-base($mode) {
|
|
8
6
|
@if $mode == light {
|
|
@@ -16,169 +14,35 @@
|
|
|
16
14
|
@error "Цветовая схема темы должна иметь значение light или dark, получено: #{$mode}.";
|
|
17
15
|
}
|
|
18
16
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
@mixin _exact-accent-palette($accent) {
|
|
28
|
-
--content-accent: var(--hc-content-accent, #{map.get($accent, content)});
|
|
29
|
-
--surface-accent: var(--hc-surface-accent, #{map.get($accent, surface)});
|
|
30
|
-
--border-accent: var(--hc-border-accent, #{map.get($accent, border)});
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
@mixin _exact-status-palette($name, $status) {
|
|
34
|
-
$text: map.get($status, text);
|
|
35
|
-
$fill: map.get($status, fill);
|
|
36
|
-
$border: map.get($status, border);
|
|
37
|
-
$text-base: map.get($text, base);
|
|
38
|
-
$text-hover: _scale-value($text, hover, $text-base);
|
|
39
|
-
$text-active: _scale-value($text, active, $text-hover);
|
|
40
|
-
$fill-base: _scale-value($fill, base, $text-base);
|
|
41
|
-
$fill-hover: _scale-value($fill, hover, $fill-base);
|
|
42
|
-
$fill-active: _scale-value($fill, active, $fill-hover);
|
|
43
|
-
$fill-on: _scale-value($fill, on-fill, var(--surface-0));
|
|
44
|
-
$border-base: _scale-value($border, base, $text-base);
|
|
45
|
-
$border-hover: _scale-value($border, hover, $text-hover);
|
|
46
|
-
$border-active: _scale-value($border, active, $text-active);
|
|
47
|
-
$border-focus: _scale-value($border, focus, $border-active);
|
|
48
|
-
|
|
49
|
-
--status-#{$name}-text: var(--hc-status-#{$name}-text, #{$text-base});
|
|
50
|
-
--status-#{$name}-text-hover: var(--hc-status-#{$name}-text, #{$text-hover});
|
|
51
|
-
--status-#{$name}-text-active: var(--hc-status-#{$name}-text, #{$text-active});
|
|
52
|
-
|
|
53
|
-
--status-#{$name}-fill: var(--hc-status-#{$name}-fill, #{$fill-base});
|
|
54
|
-
--status-#{$name}-fill-hover: var(--hc-status-#{$name}-fill, #{$fill-hover});
|
|
55
|
-
--status-#{$name}-fill-active: var(--hc-status-#{$name}-fill, #{$fill-active});
|
|
56
|
-
--status-#{$name}-on-fill: var(--hc-status-#{$name}-on-fill, #{$fill-on});
|
|
57
|
-
|
|
58
|
-
@if map.has-key($fill, soft) {
|
|
59
|
-
--status-#{$name}-soft: var(--hc-status-#{$name}-soft, #{map.get($fill, soft)});
|
|
60
|
-
} @else {
|
|
61
|
-
--status-#{$name}-soft: var(--hc-status-#{$name}-soft, color-mix(in srgb, var(--status-#{$name}-fill) 12%, var(--surface-0)));
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
--status-#{$name}-border: var(--hc-status-#{$name}-border, #{$border-base});
|
|
65
|
-
--status-#{$name}-border-hover: var(--hc-status-#{$name}-border, #{$border-hover});
|
|
66
|
-
--status-#{$name}-border-active: var(--hc-status-#{$name}-border, #{$border-active});
|
|
67
|
-
--status-#{$name}-border-focus: var(--hc-status-#{$name}-border, #{$border-focus});
|
|
68
|
-
|
|
69
|
-
@if $name == neutral {
|
|
70
|
-
--border-0: var(--hc-border, #{$border-base});
|
|
71
|
-
--border-1: var(--hc-border, #{$border-hover});
|
|
72
|
-
--border-2: var(--hc-border, #{$border-active});
|
|
73
|
-
--border-focus: var(--hc-border-focus, #{$border-focus});
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
@function _status-overridden($status-overrides, $name) {
|
|
78
|
-
@return meta.type-of($status-overrides) == map and map.has-key($status-overrides, $name);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
@mixin _adaptive-custom-statuses($mode, $status-overrides) {
|
|
82
|
-
@if not _status-overridden($status-overrides, brand) {
|
|
83
|
-
$brand-on-fill: var(--surface-0);
|
|
84
|
-
|
|
85
|
-
@if $mode == light {
|
|
86
|
-
$brand-on-fill: var(--content-0);
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
@include _exact-status-palette(
|
|
90
|
-
brand,
|
|
91
|
-
(
|
|
92
|
-
text: (
|
|
93
|
-
base: var(--content-accent)
|
|
94
|
-
),
|
|
95
|
-
fill: (
|
|
96
|
-
base: var(--content-accent),
|
|
97
|
-
hover: var(--border-accent),
|
|
98
|
-
active: var(--border-accent),
|
|
99
|
-
on-fill: $brand-on-fill,
|
|
100
|
-
soft: var(--surface-accent)
|
|
101
|
-
),
|
|
102
|
-
border: (
|
|
103
|
-
base: var(--border-accent)
|
|
104
|
-
)
|
|
105
|
-
)
|
|
106
|
-
);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
@if not _status-overridden($status-overrides, neutral) {
|
|
110
|
-
@include _exact-status-palette(
|
|
111
|
-
neutral,
|
|
112
|
-
(
|
|
113
|
-
text: (
|
|
114
|
-
base: var(--content-0),
|
|
115
|
-
hover: var(--content-1),
|
|
116
|
-
active: var(--content-0)
|
|
117
|
-
),
|
|
118
|
-
fill: (
|
|
119
|
-
base: var(--content-0),
|
|
120
|
-
hover: var(--content-1),
|
|
121
|
-
active: var(--content-0),
|
|
122
|
-
on-fill: var(--surface-0),
|
|
123
|
-
soft: var(--surface-1)
|
|
124
|
-
),
|
|
125
|
-
border: (
|
|
126
|
-
base: var(--border-0),
|
|
127
|
-
hover: var(--border-1),
|
|
128
|
-
active: var(--border-2),
|
|
129
|
-
focus: var(--focus-ring)
|
|
130
|
-
)
|
|
131
|
-
)
|
|
132
|
-
);
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
@each $name in error, warning, success, info {
|
|
136
|
-
@if not _status-overridden($status-overrides, $name) {
|
|
137
|
-
// Плоские exact-token overrides меняют text/fill ниже по каскаду,
|
|
138
|
-
// поэтому производные значения связываются через CSS variables, а не копируют baseline.
|
|
139
|
-
--status-#{$name}-soft: var(--hc-status-#{$name}-soft, color-mix(in srgb, var(--status-#{$name}-fill) 12%, var(--surface-0)));
|
|
140
|
-
--status-#{$name}-border: var(--hc-status-#{$name}-border, var(--status-#{$name}-text));
|
|
141
|
-
--status-#{$name}-border-hover: var(--hc-status-#{$name}-border, var(--status-#{$name}-text-hover));
|
|
142
|
-
--status-#{$name}-border-active: var(--hc-status-#{$name}-border, var(--status-#{$name}-text-active));
|
|
143
|
-
--status-#{$name}-border-focus: var(--hc-status-#{$name}-border, var(--status-#{$name}-text-active));
|
|
144
|
-
}
|
|
145
|
-
}
|
|
17
|
+
/// Выводит четыре публичные роли цветовой схемы.
|
|
18
|
+
/// Состояния hover/active и мягкая заливка вычисляются внутри UI-компонентов,
|
|
19
|
+
/// поэтому host настраивает только устойчивый минимальный контракт.
|
|
20
|
+
@mixin _status-palette($name, $status) {
|
|
21
|
+
--#{$name}-text: var(--hc-#{$name}-text, #{map.get($status, text)});
|
|
22
|
+
--#{$name}-border: var(--hc-#{$name}-border, #{map.get($status, border)});
|
|
23
|
+
--#{$name}-fill: var(--hc-#{$name}-fill, #{map.get($status, fill)});
|
|
24
|
+
--#{$name}-on-fill: var(--hc-#{$name}-on-fill, #{map.get($status, on-fill)});
|
|
146
25
|
}
|
|
147
26
|
|
|
148
|
-
@mixin _theme-palette($theme
|
|
149
|
-
$accent: map.get($theme, accent);
|
|
150
|
-
|
|
151
|
-
@if map.has-key($accent, content) {
|
|
152
|
-
@include _exact-accent-palette($accent);
|
|
153
|
-
} @else {
|
|
154
|
-
@include generate-accent(map.get($accent, l), map.get($accent, c), map.get($accent, h), $mode);
|
|
155
|
-
}
|
|
156
|
-
|
|
27
|
+
@mixin _theme-palette($theme) {
|
|
157
28
|
@each $name, $status in map.get($theme, status) {
|
|
158
|
-
@
|
|
159
|
-
@include _exact-status-palette($name, $status);
|
|
160
|
-
} @else {
|
|
161
|
-
$fill: map.get($status, fill);
|
|
162
|
-
$border: map.get($status, border);
|
|
163
|
-
|
|
164
|
-
@include generate-status-fill($name, map.get($fill, l), map.get($fill, c), map.get($fill, h), $mode);
|
|
165
|
-
@include generate-status-border($name, map.get($border, l), map.get($border, c), map.get($border, h), $mode);
|
|
166
|
-
}
|
|
29
|
+
@include _status-palette($name, $status);
|
|
167
30
|
}
|
|
31
|
+
|
|
32
|
+
// Базовые границы остаются общими layout-токенами, но получают цвет из neutral-схемы.
|
|
33
|
+
--border-0: var(--hc-border-0, var(--neutral-border));
|
|
34
|
+
--border-1: var(--hc-border-1, color-mix(in srgb, var(--neutral-border) 82%, var(--content-0)));
|
|
35
|
+
--border-2: var(--hc-border-2, color-mix(in srgb, var(--neutral-border) 64%, var(--content-0)));
|
|
36
|
+
--border-focus: var(--hc-border-focus, var(--focus-ring));
|
|
168
37
|
}
|
|
169
38
|
|
|
170
|
-
/// Формирует полную тему из
|
|
171
|
-
///
|
|
172
|
-
///
|
|
39
|
+
/// Формирует полную тему из baseline выбранной схемы и точечных переопределений.
|
|
40
|
+
/// Карта `status` содержит `accent`, `brand`, `neutral`, `error`, `warning`,
|
|
41
|
+
/// `success` и `info`; у каждой схемы ровно четыре роли: `text`, `border`,
|
|
42
|
+
/// `fill` и `on-fill`. Карта `tokens` выводится последней как escape hatch.
|
|
173
43
|
@mixin theme($mode, $overrides: ()) {
|
|
174
44
|
$resolved-theme: map.deep-merge(_theme-base($mode), $overrides);
|
|
175
|
-
$status-overrides: map.get($overrides, status);
|
|
176
|
-
|
|
177
|
-
@include _theme-palette($resolved-theme, $mode);
|
|
178
|
-
|
|
179
|
-
@if $overrides != () {
|
|
180
|
-
@include _adaptive-custom-statuses($mode, $status-overrides);
|
|
181
|
-
}
|
|
182
45
|
|
|
46
|
+
@include _theme-palette($resolved-theme);
|
|
183
47
|
@include stylesConfig.emit-declarations(stylesConfig.theme-tokens($resolved-theme));
|
|
184
48
|
}
|