-
Notifications
You must be signed in to change notification settings - Fork 130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
@Import Google Charts api Styles #38
Closed
Closed
Changes from all commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should check that the stylesheet is from the correct url, when one/they are found, the MO should disconnect.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@philipwalton wdyt about this approach instead of your own PR that ads the styles internal to the shadow dom. What I like about this (despite being a bit hacky) is that the styles will always be up to date from the server.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the idea of keeping them up-to-date. I almost find this to be less hacky than the other approach. However, it could use some more organization.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't this just append any dynamically added stylesheet to the element's shadow DOM? I don't think this is a viable option unless we can reliably identify gviz stylesheets only.
Also, I think gviz only adds the stylesheets once, for the first chart. This means the mutation observer for
<google-charts>
added after the gviz style are added to the<head>
won't pick up these styles.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hence my comment about better checking that the stylesheet that was added is actually from the origin you care about.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ahh, yes, didn't see that comment...
If a known path that only applies to gviz stylesheets can work, I think the best approach would be to create a single style manager object that keeps track of what gviz styles exists in the DOM, and then the individual charts instances could query that info from the style manager on
attached
and subscribe to changes.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another option would be to work the the gviz team to have them expose the stylesheet URLs associated with each individual chart type. This is probably the best long-term strategy, as it guarantees we'd always been in sync.
There could also be a load configuration option that tells gviz libraries not to load their own styles, and to let consumer take care of it. This would prevent unnecessary styles from existing on the page.