-
Notifications
You must be signed in to change notification settings - Fork 33
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: Angular SDK #997
feat: Angular SDK #997
Conversation
70c452a
to
456358d
Compare
I've reviewed the flagged licenses and added exceptions in FOSSA. |
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've left some quick feedback, but I would like to play around with your demo app before approving it.
This all looks really, good, but I'm wondering what you think about this: https://github.com/open-feature/js-sdk/pull/997/files#r1746120679 |
ae18c8b
to
278e48b
Compare
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Co-authored-by: Todd Baert <todd.baert@dynatrace.com> Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
278e48b
to
1ee67cb
Compare
I think this looks like enough for an initial release!
I think, additionally, if you want to use a client or something you will inject one as a dependency using a factory injector or something like that... Because Angular has such strong DI patterns, I don't think anything more than the directives is needed; the rest can be easily done with DI. We could perhaps document that, but I think most people would get it. |
Co-authored-by: Todd Baert <todd.baert@dynatrace.com> Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
I'm comfortable with releasing this, but we could also wait until after this weeks meeting - and maybe get a demo there, though I don't want to volunteer you for anything @lukas-reining |
This sounds good, I will do a quick demo in the meeting @toddbaert :) Building a nice demo is the hard part actually :D |
Signed-off-by: Lukas Reining <lukas.reining@codecentric.de>
8e523a1
to
37a2a32
Compare
I would merge it this afternoon if noting comes up until then @toddbaert @beeme1mr @juanparadox :) |
🤖 I have created a release *beep* *boop* --- ## 0.0.1-experimental (2024-09-13) ### ✨ New Features * Angular SDK ([#997](#997)) ([105fd95](105fd95)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Signed-off-by: OpenFeature Bot <109696520+openfeaturebot@users.noreply.github.com> Signed-off-by: Lukas Reining <lukas.reining@codecentric.de> Co-authored-by: Lukas Reining <lukas.reining@codecentric.de>
🤖 I have created a release *beep* *boop* --- ## [0.0.1-experimental](angular-sdk-v0.0.2-experimental...angular-sdk-v0.0.1-experimental) (2024-09-14) ### ✨ New Features * Angular SDK ([#997](#997)) ([105fd95](105fd95)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Signed-off-by: OpenFeature Bot <109696520+openfeaturebot@users.noreply.github.com> Signed-off-by: Lukas Reining <lukas.reining@codecentric.de> Co-authored-by: Lukas Reining <lukas.reining@codecentric.de>
🤖 I have created a release *beep* *boop* --- ## [0.0.8-experimental](angular-sdk-v0.0.7-experimental...angular-sdk-v0.0.8-experimental) (2024-11-21) ### ✨ New Features * Angular SDK ([#997](#997)) ([105fd95](105fd95)) * **angular:** add Angular 18 support ([#1063](#1063)) ([e62d6d4](e62d6d4)) * **angular:** add angular 19 to peerDependencies ([4893d6f](4893d6f)) ### 🐛 Bug Fixes * **angular:** add package description ([#1026](#1026)) ([dc63ca8](dc63ca8)) * **angular:** fix race condition on initialization ([#1052](#1052)) ([12eaa97](12eaa97)) * copy license to package correctly ([#1011](#1011)) ([458d278](458d278)) * fix release of angular sdk ([4a370cc](4a370cc)) ### 🧹 Chore * add npm keywords for angular ([#1015](#1015)) ([6b11165](6b11165)) * **main:** release angular-sdk 0.0.1-experimental ([#1003](#1003)) ([ed3aaa4](ed3aaa4)) * **main:** release angular-sdk 0.0.1-experimental ([#1010](#1010)) ([eb42c4c](eb42c4c)) * **main:** release angular-sdk 0.0.2-experimental ([#1008](#1008)) ([f74056c](f74056c)) * **main:** release angular-sdk 0.0.2-experimental ([#1012](#1012)) ([8bdc164](8bdc164)) * **main:** release angular-sdk 0.0.3-experimental ([#1014](#1014)) ([baec2fb](baec2fb)) * **main:** release angular-sdk 0.0.4-experimental ([#1027](#1027)) ([c1374bb](c1374bb)) * **main:** release angular-sdk 0.0.5-experimental ([#1053](#1053)) ([5636983](5636983)) * **main:** release angular-sdk 0.0.6-experimental ([#1064](#1064)) ([7f9001e](7f9001e)) * **main:** release angular-sdk 0.0.7-experimental ([#1088](#1088)) ([6016465](6016465)) * **main:** release angular-sdk 0.0.7-experimental ([#1091](#1091)) ([2a21f4f](2a21f4f)) ### 📚 Documentation * **angular:** improve angular readme layout ([#1013](#1013)) ([ee52da9](ee52da9)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Signed-off-by: OpenFeature Bot <109696520+openfeaturebot@users.noreply.github.com> Signed-off-by: Lukas Reining <lukas.reining@codecentric.de> Co-authored-by: Lukas Reining <lukas.reining@codecentric.de>
🤖 I have created a release *beep* *boop* --- ## [0.0.8-experimental](open-feature/js-sdk@angular-sdk-v0.0.7-experimental...angular-sdk-v0.0.8-experimental) (2024-11-21) ### ✨ New Features * Angular SDK ([open-feature#997](open-feature#997)) ([105fd95](open-feature@105fd95)) * **angular:** add Angular 18 support ([open-feature#1063](open-feature#1063)) ([e62d6d4](open-feature@e62d6d4)) * **angular:** add angular 19 to peerDependencies ([4893d6f](open-feature@4893d6f)) ### 🐛 Bug Fixes * **angular:** add package description ([open-feature#1026](open-feature#1026)) ([dc63ca8](open-feature@dc63ca8)) * **angular:** fix race condition on initialization ([open-feature#1052](open-feature#1052)) ([12eaa97](open-feature@12eaa97)) * copy license to package correctly ([open-feature#1011](open-feature#1011)) ([458d278](open-feature@458d278)) * fix release of angular sdk ([4a370cc](open-feature@4a370cc)) ### 🧹 Chore * add npm keywords for angular ([open-feature#1015](open-feature#1015)) ([6b11165](open-feature@6b11165)) * **main:** release angular-sdk 0.0.1-experimental ([open-feature#1003](open-feature#1003)) ([ed3aaa4](open-feature@ed3aaa4)) * **main:** release angular-sdk 0.0.1-experimental ([open-feature#1010](open-feature#1010)) ([eb42c4c](open-feature@eb42c4c)) * **main:** release angular-sdk 0.0.2-experimental ([open-feature#1008](open-feature#1008)) ([f74056c](open-feature@f74056c)) * **main:** release angular-sdk 0.0.2-experimental ([open-feature#1012](open-feature#1012)) ([8bdc164](open-feature@8bdc164)) * **main:** release angular-sdk 0.0.3-experimental ([open-feature#1014](open-feature#1014)) ([baec2fb](open-feature@baec2fb)) * **main:** release angular-sdk 0.0.4-experimental ([open-feature#1027](open-feature#1027)) ([c1374bb](open-feature@c1374bb)) * **main:** release angular-sdk 0.0.5-experimental ([open-feature#1053](open-feature#1053)) ([5636983](open-feature@5636983)) * **main:** release angular-sdk 0.0.6-experimental ([open-feature#1064](open-feature#1064)) ([7f9001e](open-feature@7f9001e)) * **main:** release angular-sdk 0.0.7-experimental ([open-feature#1088](open-feature#1088)) ([6016465](open-feature@6016465)) * **main:** release angular-sdk 0.0.7-experimental ([open-feature#1091](open-feature#1091)) ([2a21f4f](open-feature@2a21f4f)) ### 📚 Documentation * **angular:** improve angular readme layout ([open-feature#1013](open-feature#1013)) ([ee52da9](open-feature@ee52da9)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Signed-off-by: OpenFeature Bot <109696520+openfeaturebot@users.noreply.github.com> Signed-off-by: Lukas Reining <lukas.reining@codecentric.de> Co-authored-by: Lukas Reining <lukas.reining@codecentric.de> Signed-off-by: Will Chou <w.chou06@gmail.com>
This PR
Adds an Angular SDK as discussed in #976.
It mainly provides directives that conditionally render based on flag value and provider state.
I did not inject any OpenFeature service or anything like that, as I think the directives will be the way to access feature flags in the templates, and the OpenFeature global API can be used directly in services. But I am not 100% sure on that one.
Happy to receive feedback and opinions :)
A small test app can be found here: https://github.com/open-feature/angular-test-app
This can be used with yalc.