-
Notifications
You must be signed in to change notification settings - Fork 601
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
feat: fast-provider #4010
Closed
Closed
feat: fast-provider #4010
Conversation
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
nicholasrice
requested review from
chrisdholt,
EisenbergEffect and
janechu
as code owners
October 6, 2020 22:33
nicholasrice
force-pushed
the
features/provider
branch
from
October 7, 2020 21:41
db47b74
to
4dc35ff
Compare
nicholasrice
force-pushed
the
features/provider
branch
from
October 27, 2020 22:28
eb21ba4
to
e75e743
Compare
nicholasrice
force-pushed
the
features/provider
branch
4 times, most recently
from
November 13, 2020 20:01
392c4df
to
4305901
Compare
…when DI values change
nicholasrice
force-pushed
the
features/provider
branch
from
November 17, 2020 01:43
0f308ce
to
e64c6c9
Compare
nicholasrice
force-pushed
the
features/provider
branch
from
November 18, 2020 00:24
9e17916
to
bd5d036
Compare
nicholasrice
force-pushed
the
features/provider
branch
from
November 18, 2020 00:28
bd5d036
to
cd9c82e
Compare
nicholasrice
force-pushed
the
features/provider
branch
3 times, most recently
from
November 18, 2020 19:09
424ddee
to
7b00305
Compare
nicholasrice
force-pushed
the
features/provider
branch
from
November 18, 2020 19:39
7b00305
to
539da1d
Compare
Closing because this PR is no longer relevant. Some of this has been merged in a different form and the other work will be adapted or dropped as necessary. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
This PR tracks the work to implement the new Provider system outlined in #3361.
This is a work in progress, so check back frequently to see progress, but please don't feel compelled to leave do a detailed review at this point.
Updates:
Provider
concept has been replaced with a general-purpose dependency injection systemFeature checklist
FoundationElement
Mechanism to resolves nearest provider duringconnectedCallback()
AddProvider
Tracks parent provider, if any, otherwise null.Can resolve templates for an element instanceCan resolve styles for an element instanceArbitrary custom elements can be Provider instanceCan register design tokens that reflect to CSS custom propertiesCan register CSS custom property resolvers that write CSS custom properties that are a product of the provider instanceHow can this all hook into a general purpose provider mechanism that can be extensible?Resolution of DI containers not through DOM hierarchyevaluate
fn. Can establish design token dependencies for a derived property. If a derived property depends on itself (setting a bg color to a product of bg color + others) then the upstream property will always be used during evaluationCan hook up attributes and properties to Design Tokens, as configured by the ConfigurationThis can be done per-provider pretty easily, and in ways that make sense for that provider. I'm not sure global configuration for this is necessary anymoreConfiguration
prefix
option to be the custom element name prefixcustomElements.define()
Can define aProvider
withdefineProvider()
Issue type checklist
Is this a breaking change?
Adding or modifying component(s) in
@microsoft/fast-components
checklistProcess & policy checklist