@stihl-design-system/components 1.0.0-RC.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/LICENSE.md +42 -0
- package/README.md +56 -0
- package/apple-icon.png +0 -0
- package/assets/Asterisk.582f2067.css +1 -0
- package/assets/Button.684e8bda.css +1 -0
- package/assets/ButtonRound.ca8748cf.css +1 -0
- package/assets/Checkbox.84cf6398.css +1 -0
- package/assets/CustomReactSelect.d89ccccb.css +1 -0
- package/assets/Fieldset.5297efb8.css +1 -0
- package/assets/FloatingActionButton.de295f5d.css +1 -0
- package/assets/Heading.32278621.css +1 -0
- package/assets/Icon.8890ee9a.css +1 -0
- package/assets/Input.2c508b2f.css +1 -0
- package/assets/InputPassword.a534f047.css +1 -0
- package/assets/InputSearch.8f986307.css +1 -0
- package/assets/InputStepper.52fb45ca.css +1 -0
- package/assets/Link.03deeca0.css +1 -0
- package/assets/LinkStandalone.7e23a8ac.css +1 -0
- package/assets/Logo.09e48e82.css +1 -0
- package/assets/OptionCheckbox.9c20f6f1.css +1 -0
- package/assets/Radio.be8f06f5.css +1 -0
- package/assets/RadioGroup.8b55ee38.css +1 -0
- package/assets/Select.b2423b5f.css +1 -0
- package/assets/Spinner.af45d460.css +1 -0
- package/assets/Switch.f3ab20de.css +1 -0
- package/assets/SystemFeedback.f4421d60.css +1 -0
- package/assets/Text.4756effe.css +1 -0
- package/assets/Textarea.eecf04b3.css +1 -0
- package/assets/Title.60d50d3e.css +1 -0
- package/asterisk.91abccec.js +8 -0
- package/asterisk.d.ts +1 -0
- package/button.89b2675b.js +135 -0
- package/button.d.ts +1 -0
- package/buttonround.c60c8034.js +118 -0
- package/buttonround.d.ts +1 -0
- package/checkbox.7d414047.js +112 -0
- package/checkbox.d.ts +1 -0
- package/checkboxgroup.d.ts +1 -0
- package/checkboxgroup.e9e25471.js +78 -0
- package/chunks/360.3f3132d9.js +11 -0
- package/chunks/CustomReactSelect.9d0a378a.js +5011 -0
- package/chunks/Input.utils.f8f3286f.js +106 -0
- package/chunks/Link.module.b8230547.js +37 -0
- package/chunks/RadioGroup.module.59ca486a.js +11 -0
- package/chunks/academic-cap.a6849ffc.js +11 -0
- package/chunks/alarm-clock.542230f3.js +11 -0
- package/chunks/arrow-clockwise.0496f663.js +11 -0
- package/chunks/arrow-counterclockwise.635a0130.js +11 -0
- package/chunks/arrow-down-line.0976611e.js +11 -0
- package/chunks/arrow-down.9780d975.js +11 -0
- package/chunks/arrow-edge.3288acdd.js +11 -0
- package/chunks/arrow-left.ace9c808.js +11 -0
- package/chunks/arrow-out.0499f39e.js +11 -0
- package/chunks/arrow-outline-left.efc33275.js +11 -0
- package/chunks/arrow-right.133feef2.js +11 -0
- package/chunks/arrow-up-arrow-down.b612e9b1.js +11 -0
- package/chunks/arrow-up.3be6430a.js +11 -0
- package/chunks/at.6279d12b.js +11 -0
- package/chunks/barcode-scanner.0a4a314d.js +11 -0
- package/chunks/battery.e1249ee1.js +11 -0
- package/chunks/bell.87fe4f0b.js +11 -0
- package/chunks/bin-open.be4290d8.js +11 -0
- package/chunks/bin.b36466f3.js +11 -0
- package/chunks/bluetooth.54b89b90.js +11 -0
- package/chunks/bookmark.4d5ce4c3.js +11 -0
- package/chunks/burger.1301d91e.js +11 -0
- package/chunks/calendar.ba39a664.js +11 -0
- package/chunks/camera.3bed4f3b.js +11 -0
- package/chunks/cart-check.9fb6abdb.js +11 -0
- package/chunks/cart-plus.fd5c4674.js +11 -0
- package/chunks/cart.7516d35c.js +11 -0
- package/chunks/catalog.bd0c7830.js +11 -0
- package/chunks/certificate.1639c28e.js +11 -0
- package/chunks/chain-link.45025ed0.js +11 -0
- package/chunks/chainsaw.56d43a9f.js +11 -0
- package/chunks/check.a08beeae.js +11 -0
- package/chunks/chevron-down.80b0dc85.js +11 -0
- package/chunks/chevron-left.f5feade0.js +11 -0
- package/chunks/chevron-line-left.17b172d1.js +11 -0
- package/chunks/chevron-line-right.7cd234b7.js +11 -0
- package/chunks/chevron-right.259bc1a3.js +11 -0
- package/chunks/chevron-up.d1335850.js +11 -0
- package/chunks/circle-check-colored.98e13ab9.js +11 -0
- package/chunks/circle-check-inverted.db29ab06.js +11 -0
- package/chunks/circle-info-colored.8da47e36.js +11 -0
- package/chunks/circle-info-inverted.0ed118fb.js +11 -0
- package/chunks/circle-pause.55300d1b.js +11 -0
- package/chunks/circle-stroke.203dd7aa.js +11 -0
- package/chunks/circle.33ec82eb.js +11 -0
- package/chunks/clock.3014a102.js +11 -0
- package/chunks/coffee-cup.98d6531f.js +11 -0
- package/chunks/compare.c76b221b.js +11 -0
- package/chunks/connected-box-mobile.9cd742dd.js +11 -0
- package/chunks/connected-box-stationary.191a3ed0.js +11 -0
- package/chunks/connected-box.fe21c39b.js +11 -0
- package/chunks/cross.fe709ee7.js +11 -0
- package/chunks/diamond-exclamationmark-colored.bf3ffccf.js +11 -0
- package/chunks/diamond-exclamationmark-inverted.b5648587.js +11 -0
- package/chunks/diamond.e962c289.js +11 -0
- package/chunks/diskette.04733444.js +11 -0
- package/chunks/distance.9e6b56ff.js +11 -0
- package/chunks/dots-connected.9869fae1.js +11 -0
- package/chunks/download-complete.0b84a7cc.js +11 -0
- package/chunks/envelope-open.3c3fd714.js +11 -0
- package/chunks/envelope.5c9ff834.js +11 -0
- package/chunks/exclamationmark.92afe58f.js +11 -0
- package/chunks/exit.bde46887.js +11 -0
- package/chunks/eye-closed.0b517bb7.js +11 -0
- package/chunks/eye.8f4b311b.js +11 -0
- package/chunks/facebook.4a040606.js +11 -0
- package/chunks/filter.dee66683.js +11 -0
- package/chunks/finger-double-arrow.9cd4c623.js +11 -0
- package/chunks/flash.15646b5e.js +11 -0
- package/chunks/fullscreen.fdd976fe.js +11 -0
- package/chunks/gear.1f5f6fe9.js +11 -0
- package/chunks/globe.7f419498.js +11 -0
- package/chunks/grid.2c1cdc21.js +11 -0
- package/chunks/guidance.63bebf3e.js +11 -0
- package/chunks/haircross.0ac15319.js +11 -0
- package/chunks/hanger.edc848f4.js +11 -0
- package/chunks/headphones.a023699e.js +11 -0
- package/chunks/heart.d4440641.js +11 -0
- package/chunks/helpers.ea3ca41a.js +7 -0
- package/chunks/hexagon-arrow-clockwise.98e9b555.js +11 -0
- package/chunks/horizontal-ellipsis.84419429.js +11 -0
- package/chunks/house.70059642.js +11 -0
- package/chunks/imow.3374e620.js +11 -0
- package/chunks/index.8021d3e0.js +45 -0
- package/chunks/info.1787448e.js +11 -0
- package/chunks/instagram.e12dd682.js +11 -0
- package/chunks/jsx-runtime.5c071667.js +632 -0
- package/chunks/leave-fullscreen.def46043.js +11 -0
- package/chunks/lightbulb.b73d3ebf.js +11 -0
- package/chunks/linkedin.ce0c68cb.js +11 -0
- package/chunks/list-three-rows.ef44c7ef.js +11 -0
- package/chunks/list-two-rows.5ed8f1af.js +11 -0
- package/chunks/loading-spinner.8293421e.js +11 -0
- package/chunks/lock.3cbc8ced.js +11 -0
- package/chunks/magnifying-glass-minus.b0f906e5.js +11 -0
- package/chunks/magnifying-glass-plus.6ffc69c5.js +11 -0
- package/chunks/magnifying-glass.c297e41f.js +11 -0
- package/chunks/map.c96b1dcd.js +11 -0
- package/chunks/minus.7f6676e8.js +11 -0
- package/chunks/mobile.416ee5b0.js +11 -0
- package/chunks/nine-squares.34eeb0d4.js +11 -0
- package/chunks/note-check.aaf92ef9.js +11 -0
- package/chunks/note-plus.e7ab1b93.js +11 -0
- package/chunks/note.cc96375c.js +11 -0
- package/chunks/number-input.076fcf63.js +11 -0
- package/chunks/paperclip.e8831256.js +11 -0
- package/chunks/parcel.75534dbd.js +11 -0
- package/chunks/pause.901567cf.js +11 -0
- package/chunks/pdf.92c1781a.js +11 -0
- package/chunks/pen.ecbcb50d.js +11 -0
- package/chunks/percent.4b7fa587.js +11 -0
- package/chunks/petrol.41999bec.js +11 -0
- package/chunks/phone.3c23c041.js +11 -0
- package/chunks/pin-s.a5519070.js +11 -0
- package/chunks/pin.1137362d.js +11 -0
- package/chunks/pinterest.88763b51.js +11 -0
- package/chunks/placeholder.d6fdaf8f.js +11 -0
- package/chunks/play.dd0f1d8c.js +11 -0
- package/chunks/plug.00f114c4.js +11 -0
- package/chunks/plus.42721ebf.js +11 -0
- package/chunks/printer.5bb7ee0d.js +11 -0
- package/chunks/prohibition-sign.af5616b3.js +11 -0
- package/chunks/questionmark.db94a06d.js +11 -0
- package/chunks/security.2be491e3.js +11 -0
- package/chunks/share.ddae7aef.js +11 -0
- package/chunks/shirt.135d58c1.js +11 -0
- package/chunks/shop.f120426b.js +11 -0
- package/chunks/sound-off.c6f5ed43.js +11 -0
- package/chunks/sound-on.212c36bc.js +11 -0
- package/chunks/speechbubble.9428546e.js +11 -0
- package/chunks/speechbubbles.65cb946e.js +11 -0
- package/chunks/square.452f505f.js +11 -0
- package/chunks/star-half.1458bc5b.js +11 -0
- package/chunks/star.fab17456.js +11 -0
- package/chunks/tag.4d730d72.js +11 -0
- package/chunks/thumbs-down.cbf6e4ec.js +11 -0
- package/chunks/thumbs-up.435754e1.js +11 -0
- package/chunks/triangle-exclamationmark-colored.94025893.js +11 -0
- package/chunks/triangle-exclamationmark-inverted.bc4eed15.js +11 -0
- package/chunks/triangle.bff84ddf.js +11 -0
- package/chunks/truck.a904d6d3.js +11 -0
- package/chunks/two-people-screen.3e509922.js +11 -0
- package/chunks/two-sheets.d1cfef0f.js +11 -0
- package/chunks/upload.7f1850a3.js +11 -0
- package/chunks/useBreakpoint.6c1b06c2.js +48 -0
- package/chunks/user.bf5b30a5.js +11 -0
- package/chunks/vertical-ellipsis.1cac00e5.js +11 -0
- package/chunks/wc.9d108bd0.js +11 -0
- package/chunks/wifi-1bar.b6fc33aa.js +11 -0
- package/chunks/wifi-2bars.27e9da59.js +11 -0
- package/chunks/wifi-off.e5daf3a9.js +11 -0
- package/chunks/wifi.40bb915d.js +11 -0
- package/chunks/wind-rose.27fa658a.js +11 -0
- package/chunks/wrench.69493ef3.js +11 -0
- package/chunks/x.d9da4202.js +11 -0
- package/chunks/xing.e17c1a24.js +11 -0
- package/chunks/youtube.dbf50787.js +11 -0
- package/combobox.d.ts +1 -0
- package/combobox.f98a4472.js +45 -0
- package/components/Asterisk/Asterisk.d.ts +2 -0
- package/components/Button/Button.d.ts +45 -0
- package/components/Button/Button.test.d.ts +1 -0
- package/components/Button/Button.utils.d.ts +6 -0
- package/components/ButtonRound/ButtonRound.d.ts +11 -0
- package/components/ButtonRound/ButtonRound.test.d.ts +1 -0
- package/components/ButtonRound/ButtonRound.utils.d.ts +2 -0
- package/components/Checkbox/Checkbox.d.ts +26 -0
- package/components/Checkbox/Checkbox.test.d.ts +1 -0
- package/components/CheckboxGroup/CheckboxGroup.d.ts +41 -0
- package/components/CheckboxGroup/CheckboxGroup.test.d.ts +1 -0
- package/components/CheckboxGroup/CheckboxGroup.utils.d.ts +4 -0
- package/components/Combobox/Combobox.d.ts +18 -0
- package/components/Combobox/Combobox.test.d.ts +1 -0
- package/components/Combobox/Combobox.utils.d.ts +57 -0
- package/components/Combobox/Combobox.utils.test.d.ts +1 -0
- package/components/CustomReactSelect/CustomReactSelect.d.ts +60 -0
- package/components/CustomReactSelect/CustomReactSelect.utils.d.ts +15 -0
- package/components/CustomReactSelect/CustomReactSelect.utils.test.d.ts +1 -0
- package/components/CustomReactSelect/OptionCheckbox.d.ts +13 -0
- package/components/Fieldset/Fieldset.d.ts +35 -0
- package/components/Fieldset/Fieldset.test.d.ts +1 -0
- package/components/Fieldset/Fieldset.utils.d.ts +10 -0
- package/components/FloatingActionButton/FloatingActionButton.d.ts +13 -0
- package/components/FloatingActionButton/FloatingActionButton.test.d.ts +1 -0
- package/components/Heading/Heading.d.ts +18 -0
- package/components/Heading/Heading.test.d.ts +1 -0
- package/components/Heading/Heading.utils.d.ts +4 -0
- package/components/Icon/Icon.d.ts +23 -0
- package/components/Icon/Icon.test.d.ts +1 -0
- package/components/Icon/Icon.utils.d.ts +12 -0
- package/components/Input/Input.d.ts +54 -0
- package/components/Input/Input.test.d.ts +1 -0
- package/components/Input/Input.utils.d.ts +59 -0
- package/components/Input/Input.utils.test.d.ts +1 -0
- package/components/InputPassword/InputPassword.d.ts +41 -0
- package/components/InputPassword/InputPassword.test.d.ts +1 -0
- package/components/InputPassword/InputPassword.utils.d.ts +12 -0
- package/components/InputPassword/InputPassword.utils.test.d.ts +1 -0
- package/components/InputSearch/InputSearch.d.ts +44 -0
- package/components/InputSearch/InputSearch.test.d.ts +1 -0
- package/components/InputSearch/InputSearch.utils.d.ts +23 -0
- package/components/InputSearch/InputSearch.utils.test.d.ts +1 -0
- package/components/InputStepper/InputStepper.d.ts +52 -0
- package/components/InputStepper/InputStepper.test.d.ts +1 -0
- package/components/InputStepper/InputStepper.utils.d.ts +12 -0
- package/components/InputStepper/InputStepper.utils.test.d.ts +1 -0
- package/components/Link/Link.d.ts +50 -0
- package/components/Link/Link.test.d.ts +1 -0
- package/components/Link/Link.utils.d.ts +8 -0
- package/components/LinkStandalone/LinkStandalone.d.ts +15 -0
- package/components/LinkStandalone/LinkStandalone.test.d.ts +1 -0
- package/components/LinkStandalone/LinkStandalone.utils.d.ts +2 -0
- package/components/Logo/Logo.d.ts +21 -0
- package/components/Logo/Logo.utils.d.ts +3 -0
- package/components/Radio/Radio.d.ts +27 -0
- package/components/Radio/Radio.test.d.ts +1 -0
- package/components/RadioGroup/RadioGroup.d.ts +56 -0
- package/components/RadioGroup/RadioGroup.test.d.ts +1 -0
- package/components/RadioGroup/RadioGroup.utils.d.ts +6 -0
- package/components/Select/Select.d.ts +43 -0
- package/components/Select/Select.test.d.ts +1 -0
- package/components/Select/Select.utils.d.ts +35 -0
- package/components/Select/Select.utils.test.d.ts +1 -0
- package/components/Spinner/Spinner.d.ts +14 -0
- package/components/Spinner/Spinner.test.d.ts +1 -0
- package/components/Spinner/Spinner.utils.d.ts +3 -0
- package/components/Switch/Switch.d.ts +29 -0
- package/components/Switch/Switch.test.d.ts +1 -0
- package/components/Switch/Switch.utils.d.ts +2 -0
- package/components/SystemFeedback/SystemFeedback.d.ts +9 -0
- package/components/SystemFeedback/SystemFeedback.test.d.ts +1 -0
- package/components/SystemFeedback/SystemFeedback.utils.d.ts +8 -0
- package/components/Text/Text.d.ts +21 -0
- package/components/Text/Text.test.d.ts +1 -0
- package/components/Text/Text.utils.d.ts +6 -0
- package/components/Textarea/Textarea.d.ts +42 -0
- package/components/Textarea/Textarea.test.d.ts +1 -0
- package/components/Textarea/Textarea.utils.d.ts +13 -0
- package/components/Textarea/Textarea.utils.test.d.ts +1 -0
- package/components/Title/Title.d.ts +20 -0
- package/components/Title/Title.test.d.ts +1 -0
- package/components/Title/Title.utils.d.ts +3 -0
- package/customreactselect.a53f9932.js +13 -0
- package/customreactselect.d.ts +1 -0
- package/favicon.ico +0 -0
- package/fieldset.d.ts +1 -0
- package/fieldset.fb7b7e49.js +98 -0
- package/floatingactionbutton.281b5465.js +87 -0
- package/floatingactionbutton.d.ts +1 -0
- package/heading.cb7698f4.js +44 -0
- package/heading.d.ts +1 -0
- package/icon-192.png +0 -0
- package/icon-512.png +0 -0
- package/icon.b4211784.js +215 -0
- package/icon.d.ts +1 -0
- package/icon.svg +1 -0
- package/index.d.ts +23 -0
- package/index.es.js +49 -0
- package/input.abb902e3.js +228 -0
- package/input.d.ts +1 -0
- package/inputpassword.11c12c66.js +139 -0
- package/inputpassword.d.ts +1 -0
- package/inputsearch.0c88e71a.js +188 -0
- package/inputsearch.d.ts +1 -0
- package/inputstepper.b74dac4d.js +284 -0
- package/inputstepper.d.ts +1 -0
- package/link.cd3720d1.js +84 -0
- package/link.d.ts +1 -0
- package/linkstandalone.26b52de0.js +80 -0
- package/linkstandalone.d.ts +1 -0
- package/logo.d.ts +1 -0
- package/logo.e6576fe3.js +68 -0
- package/manifest.json +6 -0
- package/manifest.webmanifest +6 -0
- package/optioncheckbox.7195f001.js +43 -0
- package/optioncheckbox.d.ts +1 -0
- package/package.json +125 -0
- package/partials/apple-icon.png +0 -0
- package/partials/copyAssets.js +84 -0
- package/partials/favicon.ico +0 -0
- package/partials/icon-192.png +0 -0
- package/partials/icon-512.png +0 -0
- package/partials/icon.svg +1 -0
- package/partials/index.d.ts +2 -0
- package/partials/index.js +2167 -0
- package/partials/lib/partials.d.ts +17 -0
- package/partials/manifest.json +6 -0
- package/partials/manifest.webmanifest +6 -0
- package/partials/shared.d.ts +2 -0
- package/radio.1b205d64.js +79 -0
- package/radio.d.ts +1 -0
- package/radiogroup.6a22fe96.js +100 -0
- package/radiogroup.d.ts +1 -0
- package/react.svg +1 -0
- package/select.2ff31eab.js +188 -0
- package/select.d.ts +1 -0
- package/spinner.d.ts +1 -0
- package/spinner.ee015469.js +58 -0
- package/styles/fonts/STIHLContrafaceDisplayTitling.woff +0 -0
- package/styles/fonts/STIHLContrafaceDisplayTitling.woff2 +0 -0
- package/styles/fonts/STIHLContrafaceText-Bold.woff +0 -0
- package/styles/fonts/STIHLContrafaceText-Bold.woff2 +0 -0
- package/styles/fonts/STIHLContrafaceText.woff +0 -0
- package/styles/fonts/STIHLContrafaceText.woff2 +0 -0
- package/styles/fonts/font-face.min.css +1 -0
- package/styles/fonts/index.es.js +1 -0
- package/styles/scss/_index.scss +21 -0
- package/styles/scss/lib/_a11y.scss +15 -0
- package/styles/scss/lib/_animation.scss +6 -0
- package/styles/scss/lib/_breakpoints.scss +16 -0
- package/styles/scss/lib/_container-query.scss +58 -0
- package/styles/scss/lib/_focus.scss +61 -0
- package/styles/scss/lib/_grid-extended.scss +11 -0
- package/styles/scss/lib/_grid-full.scss +6 -0
- package/styles/scss/lib/_grid-main.scss +117 -0
- package/styles/scss/lib/_grid-narrow.scss +14 -0
- package/styles/scss/lib/_grid-sidebar-sidebar.scss +48 -0
- package/styles/scss/lib/_grid-sidebar.scss +174 -0
- package/styles/scss/lib/_grid.scss +86 -0
- package/styles/scss/lib/_heading.scss +45 -0
- package/styles/scss/lib/_helpers.scss +3 -0
- package/styles/scss/lib/_hover.scss +10 -0
- package/styles/scss/lib/_link.scss +155 -0
- package/styles/scss/lib/_media-query.scss +32 -0
- package/styles/scss/lib/_spacing.scss +18 -0
- package/styles/scss/lib/_text.scss +63 -0
- package/styles/scss/lib/_theme.scss +160 -0
- package/styles/scss/lib/_transition.scss +26 -0
- package/switch.2f011fcc.js +65 -0
- package/switch.d.ts +1 -0
- package/systemfeedback.6bbd1505.js +25 -0
- package/systemfeedback.d.ts +1 -0
- package/text.8d80704f.js +57 -0
- package/text.d.ts +1 -0
- package/textarea.d.ts +1 -0
- package/textarea.e156b0ce.js +189 -0
- package/title.d.ts +1 -0
- package/title.d855a8e4.js +36 -0
- package/types/aria-types.d.ts +330 -0
- package/types/common-types.d.ts +13 -0
- package/types/icon-types.d.ts +2 -0
- package/types/index.d.ts +3 -0
- package/utils/breakpoint-customizable.d.ts +12 -0
- package/utils/has-document.d.ts +1 -0
- package/utils/has-window.d.ts +1 -0
- package/utils/helpers.d.ts +27 -0
- package/utils/helpers.test.d.ts +1 -0
- package/utils/index.d.ts +4 -0
- package/utils/link-target.d.ts +2 -0
- package/utils/render-documentation.d.ts +26 -0
- package/utils/theme.d.ts +2 -0
- package/utils/useBreakpoint.d.ts +12 -0
- package/utils/useBreakpoint.test.d.ts +1 -0
- package/utils/vitest.setup.d.ts +0 -0
- package/utils/wait-for-icon.d.ts +25 -0
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
@import '_hover';
|
|
2
|
+
@import '_spacing';
|
|
3
|
+
|
|
4
|
+
// Encode a color to be used in a data url.
|
|
5
|
+
@function urlEncodeHexColor($string) {
|
|
6
|
+
@if type-of($string) == 'color' and str-index(#{$string}, '#') == 1 {
|
|
7
|
+
$hex: str-slice(ie-hex-str($string), 4);
|
|
8
|
+
$string: unquote('#{$hex}');
|
|
9
|
+
|
|
10
|
+
@return '%23' + $string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@return $string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// Set the link variant colors
|
|
17
|
+
@mixin link-variant(
|
|
18
|
+
$content-color,
|
|
19
|
+
$background-color-hover,
|
|
20
|
+
$content-color-hover
|
|
21
|
+
) {
|
|
22
|
+
color: $content-color;
|
|
23
|
+
|
|
24
|
+
&:link,
|
|
25
|
+
&:visited {
|
|
26
|
+
color: $content-color;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@include hover-media-query {
|
|
30
|
+
&:hover {
|
|
31
|
+
background-color: $background-color-hover;
|
|
32
|
+
color: $content-color-hover;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
&:active {
|
|
37
|
+
background-color: $background-color-hover;
|
|
38
|
+
color: $content-color-hover;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// Mixin for underlined links (inline link or active standalone link)
|
|
43
|
+
@mixin link-underline {
|
|
44
|
+
text-decoration-line: underline;
|
|
45
|
+
text-underline-offset: 2px;
|
|
46
|
+
text-decoration-thickness: 1px;
|
|
47
|
+
text-decoration-color: currentColor;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Public Link mixin that can be used to style links.
|
|
51
|
+
// Is also used to style the LinkStandalone component.
|
|
52
|
+
// The $type variable is used to determine if the link is inline or standalone,
|
|
53
|
+
// since there a few design differences between the two.
|
|
54
|
+
@mixin ds-link($variant: 'neutral', $theme: 'light', $type: 'inline') {
|
|
55
|
+
// Default link color (neutral/light)
|
|
56
|
+
$link-color: $ds-theme-light-content-color-interaction-neutral;
|
|
57
|
+
|
|
58
|
+
// The offset is set to 0 since LinkStandalone does not have a 2px
|
|
59
|
+
// outline offset like the Button component. See designs for reference.
|
|
60
|
+
@include ds-focus($theme, $offset: 0);
|
|
61
|
+
|
|
62
|
+
// Variants & themes
|
|
63
|
+
@if ($variant == 'neutral' and $theme == 'light') {
|
|
64
|
+
@include link-variant(
|
|
65
|
+
$link-color,
|
|
66
|
+
$ds-theme-light-background-color-transparent-hover,
|
|
67
|
+
$link-color
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@if ($variant == 'highlight' and $theme == 'light') {
|
|
72
|
+
$link-color: $ds-theme-light-content-color-interaction-accent;
|
|
73
|
+
@include link-variant(
|
|
74
|
+
$link-color,
|
|
75
|
+
$ds-theme-light-background-color-transparent-hover,
|
|
76
|
+
$ds-theme-light-content-color-interaction-accent-hover
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@if ($variant == 'neutral' and $theme == 'dark') {
|
|
81
|
+
$link-color: $ds-theme-dark-content-color-interaction-neutral;
|
|
82
|
+
@include link-variant(
|
|
83
|
+
$link-color,
|
|
84
|
+
$ds-theme-dark-background-color-transparent-hover,
|
|
85
|
+
$link-color
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
@if ($variant == 'highlight' and $theme == 'dark') {
|
|
90
|
+
$link-color: $ds-theme-dark-content-color-interaction-accent;
|
|
91
|
+
@include link-variant(
|
|
92
|
+
$link-color,
|
|
93
|
+
$ds-theme-dark-background-color-transparent-hover,
|
|
94
|
+
$link-color
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Type
|
|
99
|
+
@if ($type == 'inline') {
|
|
100
|
+
// Inline link
|
|
101
|
+
@include link-underline;
|
|
102
|
+
|
|
103
|
+
display: inline;
|
|
104
|
+
padding-right: $ds-spacing-2;
|
|
105
|
+
padding-left: $ds-spacing-2;
|
|
106
|
+
padding-top: 0;
|
|
107
|
+
padding-bottom: 0;
|
|
108
|
+
line-height: inherit;
|
|
109
|
+
font-size: inherit;
|
|
110
|
+
|
|
111
|
+
// Inline links do have two predefined icons for external links and anchors.
|
|
112
|
+
// The icons are added via the ::after pseudo element as svg data urls to
|
|
113
|
+
// enable the change of the icon color via the fill property.
|
|
114
|
+
:where(&)[href^="http://"]::after,
|
|
115
|
+
:where(&)[href^="https://"]::after,
|
|
116
|
+
:where(&)[href^='#']::after {
|
|
117
|
+
display: inline-block;
|
|
118
|
+
margin-left: 0.375em;
|
|
119
|
+
width: 0.75em;
|
|
120
|
+
height: 0.75em;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
&[href^="http://"]::after,
|
|
124
|
+
&[href^="https://"]::after
|
|
125
|
+
{
|
|
126
|
+
content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{urlEncodeHexColor($link-color)}' viewBox='0 0 16 16' focusable='false' width='100%25' height='100%25'%3E%3Cpath fill-rule='evenodd' d='M9 2V0h7v7h-2V3.4L8.1 9.3 6.7 7.9 12.6 2H9Zm5 8h-2v4H2V4h4V2H0v14h14v-6Z' clip-rule='evenodd'/%3E%3C/svg%3E");
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
&[href^='#']::after {
|
|
130
|
+
content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{urlEncodeHexColor($link-color)}' viewBox='0 0 16 16' focusable='false' width='100%25' height='100%25'%3E%3Cpath d='M14.4 9.6 8 16 1.6 9.6 3 8.2l4 4V0h2v12.2l4-4 1.4 1.4Z'/%3E%3C/svg%3E");
|
|
131
|
+
}
|
|
132
|
+
} @else {
|
|
133
|
+
// Standalone link
|
|
134
|
+
@include ds-utility-medium;
|
|
135
|
+
|
|
136
|
+
display: inline-flex;
|
|
137
|
+
align-items: center;
|
|
138
|
+
gap: $ds-spacing-6;
|
|
139
|
+
padding-right: $ds-spacing-4;
|
|
140
|
+
padding-left: $ds-spacing-4;
|
|
141
|
+
padding-top: $ds-spacing-2;
|
|
142
|
+
padding-bottom: $ds-spacing-2;
|
|
143
|
+
// Set color to transparent instead of text-decoration: none to support forced colors link decoration
|
|
144
|
+
text-decoration-color: transparent;
|
|
145
|
+
|
|
146
|
+
// The DSLinkStandalone component uses the DSIcon component to render a
|
|
147
|
+
// selectable icon. The icon is colored with the current text color.
|
|
148
|
+
svg {
|
|
149
|
+
fill: currentColor;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// Transition
|
|
154
|
+
@include transition(background-color, border-color, color);
|
|
155
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
@import '_breakpoints.scss';
|
|
2
|
+
|
|
3
|
+
@mixin ds-media-query-min($min: null) {
|
|
4
|
+
@if map-has-key($ds-breakpoints, $min) {
|
|
5
|
+
@media (min-width: #{map-get($ds-breakpoints, $min)}px) {
|
|
6
|
+
@content;
|
|
7
|
+
}
|
|
8
|
+
} @else {
|
|
9
|
+
@error "Passed #{$min} breakpoint is not available for used ds-media-query-min() mixin.";
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@mixin ds-media-query-max($max: null) {
|
|
14
|
+
@if map-has-key($ds-breakpoints, $max) {
|
|
15
|
+
@media (max-width: #{map-get($ds-breakpoints, $max) - 1}px) {
|
|
16
|
+
@content;
|
|
17
|
+
}
|
|
18
|
+
} @else {
|
|
19
|
+
@error "Passed #{$max} breakpoint is not available for used ds-media-query-max() mixin.";
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@mixin ds-media-query-min-max($min: null, $max: null) {
|
|
24
|
+
@if map-has-key($ds-breakpoints, $min) and map-has-key($ds-breakpoints, $max)
|
|
25
|
+
{
|
|
26
|
+
@media (min-width: #{map-get($ds-breakpoints, $min)}px) and (max-width: #{map-get($ds-breakpoints, $max) - 1}px) {
|
|
27
|
+
@content;
|
|
28
|
+
}
|
|
29
|
+
} @else {
|
|
30
|
+
@error "Passed #{$min} and/or #{$max} breakpoint is not available for used ds-media-query-min-max() mixin.";
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
$ds-spacing-1: 1px;
|
|
2
|
+
$ds-spacing-2: 2px;
|
|
3
|
+
$ds-spacing-4: 4px;
|
|
4
|
+
$ds-spacing-6: 6px;
|
|
5
|
+
$ds-spacing-8: 8px;
|
|
6
|
+
$ds-spacing-12: 12px;
|
|
7
|
+
$ds-spacing-16: 16px;
|
|
8
|
+
$ds-spacing-20: 20px;
|
|
9
|
+
$ds-spacing-24: 24px;
|
|
10
|
+
$ds-spacing-32: 32px;
|
|
11
|
+
$ds-spacing-40: 40px;
|
|
12
|
+
$ds-spacing-48: 48px;
|
|
13
|
+
$ds-spacing-56: 56px;
|
|
14
|
+
$ds-spacing-64: 64px;
|
|
15
|
+
$ds-spacing-80: 80px;
|
|
16
|
+
$ds-spacing-96: 96px;
|
|
17
|
+
$ds-spacing-128: 128px;
|
|
18
|
+
$ds-spacing-160: 160px;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// Base mixin for text styles
|
|
2
|
+
@mixin base-text($fontFamily, $fontSize, $lineHeight) {
|
|
3
|
+
font-family: #{unquote(
|
|
4
|
+
$fontFamily + ', Arial Narrow, Arial, Heiti SC, sans-serif'
|
|
5
|
+
)};
|
|
6
|
+
font-style: normal;
|
|
7
|
+
font-variant: normal;
|
|
8
|
+
hyphens: manual;
|
|
9
|
+
overflow-wrap: break-word;
|
|
10
|
+
font-weight: normal;
|
|
11
|
+
font-size: $fontSize;
|
|
12
|
+
line-height: $lineHeight;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// Mixins for specific text sizes
|
|
16
|
+
@mixin ds-text-large {
|
|
17
|
+
@include base-text('STIHL Contraface Text Regular', 1.25rem, 1.6);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@mixin ds-text-large-bold {
|
|
21
|
+
@include base-text('STIHL Contraface Text Bold', 1.25rem, 1.6);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@mixin ds-text-medium {
|
|
25
|
+
@include base-text('STIHL Contraface Text Regular', 1rem, 1.5);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
@mixin ds-text-medium-bold {
|
|
29
|
+
@include base-text('STIHL Contraface Text Bold', 1rem, 1.5);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
@mixin ds-text-small {
|
|
33
|
+
@include base-text('STIHL Contraface Text Regular', 0.875rem, 1.14);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@mixin ds-text-small-bold {
|
|
37
|
+
@include base-text('STIHL Contraface Text Bold', 0.875rem, 1.14);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@mixin ds-text-x-small {
|
|
41
|
+
@include base-text('STIHL Contraface Text Regular', 0.75rem, 1.33);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
@mixin ds-text-x-small-bold {
|
|
45
|
+
@include base-text('STIHL Contraface Text Bold', 0.75rem, 1.33);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@mixin ds-text-xx-small {
|
|
49
|
+
@include base-text('STIHL Contraface Text Regular', 0.625rem, 1.6);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// Utility text styles
|
|
53
|
+
@mixin ds-utility-medium {
|
|
54
|
+
@include base-text('STIHL Contraface Text Regular', 1rem, 1.25);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@mixin ds-utility-medium-bold {
|
|
58
|
+
@include base-text('STIHL Contraface Text Bold', 1rem, 1.25);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@mixin ds-utility-small {
|
|
62
|
+
@include base-text('STIHL Contraface Text Regular', 0.875rem, 1.14);
|
|
63
|
+
}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
// AUTO GENERATED BELOW
|
|
2
|
+
|
|
3
|
+
// Color: Core Tokens
|
|
4
|
+
$ds-color-core-black-base: #050505;
|
|
5
|
+
$ds-color-core-black-opacity-10: #0000001A;
|
|
6
|
+
$ds-color-core-black-opacity-50: #00000080;
|
|
7
|
+
$ds-color-core-blue-base: #249ABE;
|
|
8
|
+
$ds-color-core-blue-dark: #1E71A1;
|
|
9
|
+
$ds-color-core-blue-deep: #19618B;
|
|
10
|
+
$ds-color-core-blue-light: #D4ECF7;
|
|
11
|
+
$ds-color-core-blue-mid: #8DCFE8;
|
|
12
|
+
$ds-color-core-forest-base: #4A9E5F;
|
|
13
|
+
$ds-color-core-forest-dark: #3C8653;
|
|
14
|
+
$ds-color-core-forest-deep: #2D7644;
|
|
15
|
+
$ds-color-core-forest-light: #DBF0E1;
|
|
16
|
+
$ds-color-core-forest-mid: #77C089;
|
|
17
|
+
$ds-color-core-green-base: #749F4A;
|
|
18
|
+
$ds-color-core-green-dark: #5B863C;
|
|
19
|
+
$ds-color-core-green-deep: #46762D;
|
|
20
|
+
$ds-color-core-green-light: #E5F0DB;
|
|
21
|
+
$ds-color-core-green-mid: #9BC077;
|
|
22
|
+
$ds-color-core-grey-base: #B1B1B1;
|
|
23
|
+
$ds-color-core-grey-dark: #666666;
|
|
24
|
+
$ds-color-core-grey-deep: #444444;
|
|
25
|
+
$ds-color-core-grey-light: #EDEDED;
|
|
26
|
+
$ds-color-core-grey-mid: #DADADA;
|
|
27
|
+
$ds-color-core-grey-ultra-deep: #252525;
|
|
28
|
+
$ds-color-core-grey-ultra-light: #F8F8F8;
|
|
29
|
+
$ds-color-core-orange-base: #F37A1F;
|
|
30
|
+
$ds-color-core-orange-dark: #E9640C;
|
|
31
|
+
$ds-color-core-orange-deep: #D9480F;
|
|
32
|
+
$ds-color-core-orange-light: #FEE2CD;
|
|
33
|
+
$ds-color-core-orange-mid: #F7A669;
|
|
34
|
+
$ds-color-core-red-base: #D43B3B;
|
|
35
|
+
$ds-color-core-red-dark: #B72427;
|
|
36
|
+
$ds-color-core-red-deep: #A5181D;
|
|
37
|
+
$ds-color-core-red-light: #EEBCBD;
|
|
38
|
+
$ds-color-core-red-mid: #DA6B6D;
|
|
39
|
+
$ds-color-core-white-base: #FFFFFF;
|
|
40
|
+
$ds-color-core-white-opacity-15: #FFFFFF26;
|
|
41
|
+
$ds-color-core-white-opacity-50: #FFFFFF80;
|
|
42
|
+
$ds-color-core-yellow-base: #FDC543;
|
|
43
|
+
$ds-color-core-yellow-dark: #F9A521;
|
|
44
|
+
$ds-color-core-yellow-deep: #EE8F00;
|
|
45
|
+
$ds-color-core-yellow-light: #FDECC3;
|
|
46
|
+
$ds-color-core-yellow-mid: #FED277;
|
|
47
|
+
|
|
48
|
+
// Color: Semantic Tokens - Light
|
|
49
|
+
$ds-theme-light-background-color-brand-disabled: $ds-color-core-grey-mid;
|
|
50
|
+
$ds-theme-light-background-color-brand-hover: $ds-color-core-orange-dark;
|
|
51
|
+
$ds-theme-light-background-color-brand-pressed: $ds-color-core-orange-dark;
|
|
52
|
+
$ds-theme-light-background-color-brand: $ds-color-core-orange-base;
|
|
53
|
+
$ds-theme-light-background-color-feedback-error: $ds-color-core-red-light;
|
|
54
|
+
$ds-theme-light-background-color-feedback-info: $ds-color-core-grey-light;
|
|
55
|
+
$ds-theme-light-background-color-feedback-success: $ds-color-core-green-light;
|
|
56
|
+
$ds-theme-light-background-color-feedback-warning: $ds-color-core-yellow-light;
|
|
57
|
+
$ds-theme-light-background-color-primary-disabled: $ds-color-core-white-base;
|
|
58
|
+
$ds-theme-light-background-color-primary-hover: $ds-color-core-grey-light;
|
|
59
|
+
$ds-theme-light-background-color-primary-inverse-disabled: $ds-color-core-grey-mid;
|
|
60
|
+
$ds-theme-light-background-color-primary-inverse-hover: $ds-color-core-grey-deep;
|
|
61
|
+
$ds-theme-light-background-color-primary-inverse-pressed: $ds-color-core-grey-deep;
|
|
62
|
+
$ds-theme-light-background-color-primary-inverse: $ds-color-core-grey-ultra-deep;
|
|
63
|
+
$ds-theme-light-background-color-primary-pressed: $ds-color-core-grey-light;
|
|
64
|
+
$ds-theme-light-background-color-primary: $ds-color-core-white-base;
|
|
65
|
+
$ds-theme-light-background-color-secondary-disabled: $ds-color-core-grey-ultra-light;
|
|
66
|
+
$ds-theme-light-background-color-secondary-inverse: $ds-color-core-grey-deep;
|
|
67
|
+
$ds-theme-light-background-color-secondary: $ds-color-core-grey-ultra-light;
|
|
68
|
+
$ds-theme-light-background-color-sustainability: $ds-color-core-forest-light;
|
|
69
|
+
$ds-theme-light-background-color-tertiary: $ds-color-core-grey-light;
|
|
70
|
+
$ds-theme-light-background-color-transparent-hover: $ds-color-core-black-opacity-10;
|
|
71
|
+
$ds-theme-light-background-color-transparent-pressed: $ds-color-core-black-opacity-10;
|
|
72
|
+
$ds-theme-light-border-color-feedback-error: $ds-color-core-red-base;
|
|
73
|
+
$ds-theme-light-border-color-feedback-success: $ds-color-core-green-base;
|
|
74
|
+
$ds-theme-light-border-color-feedback-warning: $ds-color-core-yellow-base;
|
|
75
|
+
$ds-theme-light-border-color-focus: $ds-color-core-grey-ultra-deep;
|
|
76
|
+
$ds-theme-light-border-color-primary-disabled: $ds-color-core-black-opacity-50;
|
|
77
|
+
$ds-theme-light-border-color-primary-inverse: $ds-color-core-white-base;
|
|
78
|
+
$ds-theme-light-border-color-primary: $ds-color-core-grey-ultra-deep;
|
|
79
|
+
$ds-theme-light-border-color-secondary-disabled: $ds-color-core-black-opacity-50;
|
|
80
|
+
$ds-theme-light-border-color-secondary: $ds-color-core-grey-base;
|
|
81
|
+
$ds-theme-light-border-color-tertiary: $ds-color-core-grey-mid;
|
|
82
|
+
$ds-theme-light-content-color-brand-disabled: $ds-color-core-black-opacity-50;
|
|
83
|
+
$ds-theme-light-content-color-brand-hover: $ds-color-core-orange-deep;
|
|
84
|
+
$ds-theme-light-content-color-brand-pressed: $ds-color-core-orange-deep;
|
|
85
|
+
$ds-theme-light-content-color-brand: $ds-color-core-orange-dark;
|
|
86
|
+
$ds-theme-light-content-color-feedback-error: $ds-color-core-red-base;
|
|
87
|
+
$ds-theme-light-content-color-feedback-info: $ds-color-core-grey-base;
|
|
88
|
+
$ds-theme-light-content-color-feedback-success: $ds-color-core-green-base;
|
|
89
|
+
$ds-theme-light-content-color-feedback-warning: $ds-color-core-yellow-base;
|
|
90
|
+
$ds-theme-light-content-color-interaction-accent-hover: $ds-color-core-blue-deep;
|
|
91
|
+
$ds-theme-light-content-color-interaction-accent-pressed: $ds-color-core-blue-deep;
|
|
92
|
+
$ds-theme-light-content-color-interaction-accent: $ds-color-core-blue-dark;
|
|
93
|
+
$ds-theme-light-content-color-interaction-neutral: $ds-color-core-grey-ultra-deep;
|
|
94
|
+
$ds-theme-light-content-color-primary-disabled: $ds-color-core-black-opacity-50;
|
|
95
|
+
$ds-theme-light-content-color-primary-inverse-disabled: $ds-color-core-black-opacity-50;
|
|
96
|
+
$ds-theme-light-content-color-primary-inverse: $ds-color-core-white-base;
|
|
97
|
+
$ds-theme-light-content-color-primary-on-brand-disabled: $ds-color-core-black-opacity-50;
|
|
98
|
+
$ds-theme-light-content-color-primary-on-brand: $ds-color-core-grey-ultra-deep;
|
|
99
|
+
$ds-theme-light-content-color-primary: $ds-color-core-grey-ultra-deep;
|
|
100
|
+
$ds-theme-light-content-color-secondary-disabled: $ds-color-core-black-opacity-50;
|
|
101
|
+
$ds-theme-light-content-color-secondary: $ds-color-core-grey-dark;
|
|
102
|
+
$ds-theme-light-content-color-sustainability: $ds-color-core-forest-base;
|
|
103
|
+
$ds-theme-light-content-color-tertiary: $ds-color-core-grey-base;
|
|
104
|
+
|
|
105
|
+
// Color: Semantic Tokens - Dark
|
|
106
|
+
$ds-theme-dark-background-color-brand-disabled: $ds-color-core-grey-mid;
|
|
107
|
+
$ds-theme-dark-background-color-brand-hover: $ds-color-core-orange-dark;
|
|
108
|
+
$ds-theme-dark-background-color-brand-pressed: $ds-color-core-orange-dark;
|
|
109
|
+
$ds-theme-dark-background-color-brand: $ds-color-core-orange-base;
|
|
110
|
+
$ds-theme-dark-background-color-feedback-error: $ds-color-core-grey-ultra-deep;
|
|
111
|
+
$ds-theme-dark-background-color-feedback-info: $ds-color-core-grey-ultra-deep;
|
|
112
|
+
$ds-theme-dark-background-color-feedback-success: $ds-color-core-grey-ultra-deep;
|
|
113
|
+
$ds-theme-dark-background-color-feedback-warning: $ds-color-core-grey-ultra-deep;
|
|
114
|
+
$ds-theme-dark-background-color-primary-disabled: $ds-color-core-black-base;
|
|
115
|
+
$ds-theme-dark-background-color-primary-hover: $ds-color-core-grey-deep;
|
|
116
|
+
$ds-theme-dark-background-color-primary-inverse-disabled: $ds-color-core-grey-mid;
|
|
117
|
+
$ds-theme-dark-background-color-primary-inverse-hover: $ds-color-core-grey-mid;
|
|
118
|
+
$ds-theme-dark-background-color-primary-inverse-pressed: $ds-color-core-grey-mid;
|
|
119
|
+
$ds-theme-dark-background-color-primary-inverse: $ds-color-core-grey-ultra-light;
|
|
120
|
+
$ds-theme-dark-background-color-primary-pressed: $ds-color-core-grey-deep;
|
|
121
|
+
$ds-theme-dark-background-color-primary: $ds-color-core-black-base;
|
|
122
|
+
$ds-theme-dark-background-color-secondary-disabled: $ds-color-core-grey-ultra-deep;
|
|
123
|
+
$ds-theme-dark-background-color-secondary-inverse: $ds-color-core-grey-light;
|
|
124
|
+
$ds-theme-dark-background-color-secondary: $ds-color-core-grey-ultra-deep;
|
|
125
|
+
$ds-theme-dark-background-color-sustainability: $ds-color-core-grey-ultra-deep;
|
|
126
|
+
$ds-theme-dark-background-color-tertiary: $ds-color-core-grey-ultra-deep;
|
|
127
|
+
$ds-theme-dark-background-color-transparent-hover: $ds-color-core-white-opacity-15;
|
|
128
|
+
$ds-theme-dark-background-color-transparent-pressed: $ds-color-core-white-opacity-15;
|
|
129
|
+
$ds-theme-dark-border-color-feedback-error: $ds-color-core-red-base;
|
|
130
|
+
$ds-theme-dark-border-color-feedback-success: $ds-color-core-green-base;
|
|
131
|
+
$ds-theme-dark-border-color-feedback-warning: $ds-color-core-yellow-base;
|
|
132
|
+
$ds-theme-dark-border-color-focus: $ds-color-core-white-base;
|
|
133
|
+
$ds-theme-dark-border-color-primary-disabled: $ds-color-core-white-opacity-50;
|
|
134
|
+
$ds-theme-dark-border-color-primary-inverse: $ds-color-core-grey-ultra-deep;
|
|
135
|
+
$ds-theme-dark-border-color-primary: $ds-color-core-grey-ultra-light;
|
|
136
|
+
$ds-theme-dark-border-color-secondary-disabled: $ds-color-core-white-opacity-50;
|
|
137
|
+
$ds-theme-dark-border-color-secondary: $ds-color-core-grey-dark;
|
|
138
|
+
$ds-theme-dark-border-color-tertiary: $ds-color-core-grey-deep;
|
|
139
|
+
$ds-theme-dark-content-color-brand-disabled: $ds-color-core-white-opacity-50;
|
|
140
|
+
$ds-theme-dark-content-color-brand-hover: $ds-color-core-orange-mid;
|
|
141
|
+
$ds-theme-dark-content-color-brand-pressed: $ds-color-core-orange-mid;
|
|
142
|
+
$ds-theme-dark-content-color-brand: $ds-color-core-orange-base;
|
|
143
|
+
$ds-theme-dark-content-color-feedback-error: $ds-color-core-red-mid;
|
|
144
|
+
$ds-theme-dark-content-color-feedback-info: $ds-color-core-grey-base;
|
|
145
|
+
$ds-theme-dark-content-color-feedback-success: $ds-color-core-green-mid;
|
|
146
|
+
$ds-theme-dark-content-color-feedback-warning: $ds-color-core-yellow-mid;
|
|
147
|
+
$ds-theme-dark-content-color-interaction-accent-hover: $ds-color-core-blue-mid;
|
|
148
|
+
$ds-theme-dark-content-color-interaction-accent-pressed: $ds-color-core-blue-mid;
|
|
149
|
+
$ds-theme-dark-content-color-interaction-accent: $ds-color-core-blue-mid;
|
|
150
|
+
$ds-theme-dark-content-color-interaction-neutral: $ds-color-core-white-base;
|
|
151
|
+
$ds-theme-dark-content-color-primary-disabled: $ds-color-core-white-opacity-50;
|
|
152
|
+
$ds-theme-dark-content-color-primary-inverse-disabled: $ds-color-core-black-opacity-50;
|
|
153
|
+
$ds-theme-dark-content-color-primary-inverse: $ds-color-core-grey-ultra-deep;
|
|
154
|
+
$ds-theme-dark-content-color-primary-on-brand-disabled: $ds-color-core-black-opacity-50;
|
|
155
|
+
$ds-theme-dark-content-color-primary-on-brand: $ds-color-core-grey-ultra-deep;
|
|
156
|
+
$ds-theme-dark-content-color-primary: $ds-color-core-white-base;
|
|
157
|
+
$ds-theme-dark-content-color-secondary-disabled: $ds-color-core-white-opacity-50;
|
|
158
|
+
$ds-theme-dark-content-color-secondary: $ds-color-core-grey-base;
|
|
159
|
+
$ds-theme-dark-content-color-sustainability: $ds-color-core-forest-mid;
|
|
160
|
+
$ds-theme-dark-content-color-tertiary: $ds-color-core-grey-dark;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
*
|
|
3
|
+
* This mixin provides a concise way to set transitions with a default
|
|
4
|
+
* duration of 0.3s and easing of `ease` for one or multiple properties.
|
|
5
|
+
*
|
|
6
|
+
* In addition, the mixin respects the user's system preference for reduced
|
|
7
|
+
* motion and adjusts the transition duration accordingly.
|
|
8
|
+
*
|
|
9
|
+
* Example Usage:
|
|
10
|
+
* @include transition(opacity, transform);
|
|
11
|
+
*/
|
|
12
|
+
@mixin transition($properties...) {
|
|
13
|
+
@if length($properties) == 0 or $properties == null {
|
|
14
|
+
@error "No properties provided for transition mixin.";
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
$transition-values: ();
|
|
18
|
+
@each $prop in $properties {
|
|
19
|
+
$transition-values: append($transition-values, #{$prop} 0.3s ease, comma);
|
|
20
|
+
}
|
|
21
|
+
transition: $transition-values;
|
|
22
|
+
|
|
23
|
+
@media (prefers-reduced-motion: reduce) {
|
|
24
|
+
transition-duration: 0ms;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import "./assets/Switch.f3ab20de.css";
|
|
2
|
+
import { j as t } from "./chunks/jsx-runtime.5c071667.js";
|
|
3
|
+
import { c as b } from "./chunks/index.8021d3e0.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { DSIcon as f } from "./icon.b4211784.js";
|
|
6
|
+
import { DSSpinner as x } from "./spinner.ee015469.js";
|
|
7
|
+
const j = "_root_1u3dn_25", k = "_root--label-right_1u3dn_53", S = "_root--stretched_1u3dn_56", g = "_loader_1u3dn_66", w = "_thumb_1u3dn_119", C = "_root--checked_1u3dn_134", o = {
|
|
8
|
+
root: j,
|
|
9
|
+
"root--label-right": "_root--label-right_1u3dn_53",
|
|
10
|
+
rootLabelRight: k,
|
|
11
|
+
"root--stretched": "_root--stretched_1u3dn_56",
|
|
12
|
+
rootStretched: S,
|
|
13
|
+
switch: "_switch_1u3dn_61",
|
|
14
|
+
loader: g,
|
|
15
|
+
thumb: w,
|
|
16
|
+
"root--checked": "_root--checked_1u3dn_134",
|
|
17
|
+
rootChecked: C
|
|
18
|
+
}, I = ({
|
|
19
|
+
children: n,
|
|
20
|
+
aria: h,
|
|
21
|
+
alignLabel: i = "left",
|
|
22
|
+
checked: e = !1,
|
|
23
|
+
className: d,
|
|
24
|
+
dataTrackingid: l,
|
|
25
|
+
disabled: s = !1,
|
|
26
|
+
loading: r = !1,
|
|
27
|
+
stretched: _ = !1,
|
|
28
|
+
onClick: a,
|
|
29
|
+
...u
|
|
30
|
+
}) => {
|
|
31
|
+
const m = b(o.root, d, {
|
|
32
|
+
[o.rootChecked]: e === !0,
|
|
33
|
+
[o.rootStretched]: _ === !0,
|
|
34
|
+
[o.rootLabelRight]: i === "right"
|
|
35
|
+
}), p = (c) => {
|
|
36
|
+
if (s || r) {
|
|
37
|
+
c.preventDefault();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
a && a(c);
|
|
41
|
+
};
|
|
42
|
+
return /* @__PURE__ */ t.jsxs(
|
|
43
|
+
"button",
|
|
44
|
+
{
|
|
45
|
+
className: m,
|
|
46
|
+
"data-trackingid": l,
|
|
47
|
+
onClick: p,
|
|
48
|
+
...h,
|
|
49
|
+
...u,
|
|
50
|
+
type: "button",
|
|
51
|
+
role: "switch",
|
|
52
|
+
"aria-checked": e,
|
|
53
|
+
"aria-disabled": s || r,
|
|
54
|
+
"aria-busy": r,
|
|
55
|
+
children: [
|
|
56
|
+
/* @__PURE__ */ t.jsx("span", { children: n }),
|
|
57
|
+
!r && /* @__PURE__ */ t.jsx("span", { className: o.switch, children: /* @__PURE__ */ t.jsx("span", { className: o.thumb, children: /* @__PURE__ */ t.jsx(f, { name: "check", "aria-hidden": "true" }) }) }),
|
|
58
|
+
r && /* @__PURE__ */ t.jsx("span", { className: o.loader, children: /* @__PURE__ */ t.jsx(x, { aria: { "aria-label": "Loading state" } }) })
|
|
59
|
+
]
|
|
60
|
+
}
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
export {
|
|
64
|
+
I as DSSwitch
|
|
65
|
+
};
|
package/switch.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components/Switch/Switch'
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import "./assets/SystemFeedback.f4421d60.css";
|
|
2
|
+
import { j as o } from "./chunks/jsx-runtime.5c071667.js";
|
|
3
|
+
import { c } from "./chunks/index.8021d3e0.js";
|
|
4
|
+
import { DSIcon as n } from "./icon.b4211784.js";
|
|
5
|
+
const i = "_root_1f2l9_25", l = {
|
|
6
|
+
root: i
|
|
7
|
+
}, m = {
|
|
8
|
+
valid: "circle-check-colored",
|
|
9
|
+
invalid: "diamond-exclamationmark-colored",
|
|
10
|
+
warning: "triangle-exclamationmark-colored"
|
|
11
|
+
}, f = ({
|
|
12
|
+
className: r,
|
|
13
|
+
message: e,
|
|
14
|
+
type: t,
|
|
15
|
+
...s
|
|
16
|
+
}) => {
|
|
17
|
+
const a = c(l.root, r);
|
|
18
|
+
return /* @__PURE__ */ o.jsxs("div", { className: a, ...s, role: "alert", children: [
|
|
19
|
+
/* @__PURE__ */ o.jsx(n, { name: m[t], "aria-hidden": "true" }),
|
|
20
|
+
e
|
|
21
|
+
] });
|
|
22
|
+
};
|
|
23
|
+
export {
|
|
24
|
+
f as DSSystemFeedback
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components/SystemFeedback/SystemFeedback'
|
package/text.8d80704f.js
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import "./assets/Text.4756effe.css";
|
|
2
|
+
import { j as x } from "./chunks/jsx-runtime.5c071667.js";
|
|
3
|
+
import { c as y } from "./chunks/index.8021d3e0.js";
|
|
4
|
+
const c = "_root_143yo_25", n = "_root--large_143yo_31", u = "_root--large-bold_143yo_41", b = "_root--medium_143yo_51", S = "_root--medium-bold_143yo_61", g = "_root--small_143yo_71", B = "_root--small-bold_143yo_81", i = "_root--x-small_143yo_91", X = "_root--x-small-bold_143yo_101", k = "_root--xx-small_143yo_111", p = "_root--theme-dark_143yo_121", o = {
|
|
5
|
+
root: c,
|
|
6
|
+
"root--large": "_root--large_143yo_31",
|
|
7
|
+
rootLarge: n,
|
|
8
|
+
"root--large-bold": "_root--large-bold_143yo_41",
|
|
9
|
+
rootLargeBold: u,
|
|
10
|
+
"root--medium": "_root--medium_143yo_51",
|
|
11
|
+
rootMedium: b,
|
|
12
|
+
"root--medium-bold": "_root--medium-bold_143yo_61",
|
|
13
|
+
rootMediumBold: S,
|
|
14
|
+
"root--small": "_root--small_143yo_71",
|
|
15
|
+
rootSmall: g,
|
|
16
|
+
"root--small-bold": "_root--small-bold_143yo_81",
|
|
17
|
+
rootSmallBold: B,
|
|
18
|
+
"root--x-small": "_root--x-small_143yo_91",
|
|
19
|
+
rootXSmall: i,
|
|
20
|
+
"root--x-small-bold": "_root--x-small-bold_143yo_101",
|
|
21
|
+
rootXSmallBold: X,
|
|
22
|
+
"root--xx-small": "_root--xx-small_143yo_111",
|
|
23
|
+
rootXxSmall: k,
|
|
24
|
+
"root--theme-dark": "_root--theme-dark_143yo_121",
|
|
25
|
+
rootThemeDark: p
|
|
26
|
+
}, h = ({
|
|
27
|
+
children: t,
|
|
28
|
+
className: m,
|
|
29
|
+
size: l = "medium",
|
|
30
|
+
tag: a = "p",
|
|
31
|
+
theme: _ = "light",
|
|
32
|
+
weight: r = "normal",
|
|
33
|
+
...d
|
|
34
|
+
}) => {
|
|
35
|
+
const s = a, e = y(o.root, m, {
|
|
36
|
+
// large
|
|
37
|
+
[o.rootLarge]: l === "large",
|
|
38
|
+
[o.rootLargeBold]: l === "large" && r === "bold",
|
|
39
|
+
// medium
|
|
40
|
+
[o.rootMedium]: l == "medium",
|
|
41
|
+
[o.rootMediumBold]: l === "medium" && r === "bold",
|
|
42
|
+
// small
|
|
43
|
+
[o.rootSmall]: l == "small",
|
|
44
|
+
[o.rootSmallBold]: l == "small" && r === "bold",
|
|
45
|
+
// x-small
|
|
46
|
+
[o.rootXSmall]: l == "x-small",
|
|
47
|
+
[o.rootXSmallBold]: l == "x-small" && r === "bold",
|
|
48
|
+
// xx-small
|
|
49
|
+
[o.rootXxSmall]: l == "xx-small",
|
|
50
|
+
// dark theme
|
|
51
|
+
[o.rootThemeDark]: _ === "dark"
|
|
52
|
+
});
|
|
53
|
+
return /* @__PURE__ */ x.jsx(s, { className: e, ...d, children: t });
|
|
54
|
+
};
|
|
55
|
+
export {
|
|
56
|
+
h as DSText
|
|
57
|
+
};
|
package/text.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components/Text/Text'
|
package/textarea.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components/Textarea/Textarea'
|