Comments (9)
@anthumchris if I understand correctly the whole idea behind the hash in variables names is to restrict usage of variables that are not "officially" exposed.
Which is questionable approach.
Maybe owners can share why exactly it was done like that?
from components.
Hello Chris,
We currently donโt allow the SASS dependency to be removed neither the randomising of hashes.
Weโve done this in order to guarantee backward compatibility.
To accept this as a feature request, we need to gather feedback about possible use cases to help us better understand and prioritise it.
from components.
Closing due to inactivity. Feel free to reopen if there are additional comments
from components.
If removing the SASS dependency isn't possible, can we simply remove the randomized hash strings from the generated CSS?
from components.
Hello Chris,
thank you for reaching out!
To better understand your use case, could you please share why you'd want to directly access the CSS variables?
If it is for theming reasons, please refer to the Theming documentation.
However, if your goal is to use our design tokens, these are available from a separate package called design-tokens and are intended to be used together with Cloudscape components. All of our tokens are available as SASS variables (e.g. $color-text-body-secondary) but also as JavaScript variables (e.g. colorTextBodySecondary).
Thanks!
RC
from components.
@rubencarvalho Thanks for your fast response. Could we kindly keep this thread focused on the technicality of the 2 aforementioned questions shown below? Let's avoid discussing or focusing on use cases for now, if you don't mind.
- Can we remove the SASS dependency to provide developers with direct, native usage of modern CSS variables?
- If removing the SASS dependency isn't possible, can we simply remove the randomized hash strings from the generated CSS?
from components.
Is it reasonable to ask for a config setting which lets us turn on or off hashed variables? If we strictly do not want to follow the Cloudscape Design guidelines but still would like to use the component library?
A very trivial usecase-
#408
from components.
What you are asking (changing a color of a button) is exactly the reason why there are hashes. Internal styles is not our public API, and we change them pretty often. Changing a color this way is not future proof and may lead to unexpected issues when doing a patch version upgrade
For the best development experience, it is better not to override our styles.
from components.
Understood, thanks for the clarification ๐ @just-boris
from components.
Related Issues (20)
- [Feature Request]: Expose Popover Dismiss Trigger HOT 3
- [Feature Request]: Fix side navigation button positioning on iPad HOT 1
- [Feature Request]: Add Event Parameter to Distinguish Adding / Removing Files from File Upload component HOT 1
- [Feature Request]: support for framework/client routing HOT 2
- [Feature Request]: Allow customization if DismissButton in TokenGroup HOT 4
- [Feature Request]: Top navigation similar to aws console HOT 2
- Component "App Layout" code typo on website HOT 2
- [Feature Request]: Space between - add wrap props HOT 6
- [Feature Request]: Add a disabled property to the FileUpload HOT 2
- [Bug]: findDrawersTriggers returns empty array if more than one drawer is in AppLayout HOT 2
- [Feature Request]: make a Supabase demo app HOT 1
- [Bug]: Input component shows executed escape characters in DOM inspect HOT 2
- [Bug]: jest presets HOT 1
- [Bug]: SyntaxError: \8 and \9 are not allowed in strict mode HOT 2
- [Bug]: Autosuggest's `focus` function does not always work HOT 3
- [Feature Request]: Expose more configurable option in relative range value HOT 4
- [Feature Request]: Create a page Footer component HOT 1
- [Feature Request]: Date range picker date format customization HOT 1
- [Bug]: loadingText does not display when button is in a loading state HOT 4
- [Bug]: Slider component doesn't work with decimal HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from components.