Skip to content

Commit a2e302b

Browse files
triniwizNathanWalker
authored andcommitted
feat: remote-config
1 parent 5c2ed70 commit a2e302b

File tree

85 files changed

+2848
-8
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+2848
-8
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ npm start
1313
- @nativescript/firebase-crashlytics
1414
- @nativescript/firebase-database
1515
- @nativescript/firebase-firestore
16+
- @nativescript/firebase-remote-config
1617

1718
# How to use?
1819

apps/demo-angular/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
"@nativescript/firebase-analytics": "file:../../dist/packages/firebase-analytics",
1010
"@nativescript/firebase-admob": "file:../../dist/packages/firebase-admob",
1111
"@nativescript/firebase-crashlytics": "file:../../dist/packages/firebase-crashlytics",
12-
"@nativescript/firebase-app-check": "file:../../dist/packages/firebase-app-check"
12+
"@nativescript/firebase-app-check": "file:../../dist/packages/firebase-app-check",
13+
"@nativescript/firebase-remote-config": "file:../../dist/packages/firebase-remote-config"
1314
},
1415
"devDependencies": {
1516
"@nativescript/android": "8.0.0",

apps/demo-angular/src/app-routing.module.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ const routes: Routes = [
1414
{ path: 'firebase-core', loadChildren: () => import('./plugin-demos/firebase-core.module').then(m => m.FirebaseCoreModule) },
1515
{ path: 'firebase-crashlytics', loadChildren: () => import('./plugin-demos/firebase-crashlytics.module').then(m => m.FirebaseCrashlyticsModule) },
1616
{ path: 'firebase-database', loadChildren: () => import('./plugin-demos/firebase-database.module').then(m => m.FirebaseDatabaseModule) },
17-
{ path: 'firebase-firestore', loadChildren: () => import('./plugin-demos/firebase-firestore.module').then(m => m.FirebaseFirestoreModule) }
17+
{ path: 'firebase-firestore', loadChildren: () => import('./plugin-demos/firebase-firestore.module').then(m => m.FirebaseFirestoreModule) },
18+
{ path: 'firebase-remote-config', loadChildren: () => import('./plugin-demos/firebase-remote-config.module').then(m => m.FirebaseRemoteConfigModule) }
1819
];
1920

2021
@NgModule({

apps/demo-angular/src/home.component.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,9 @@ export class HomeComponent {
2929
},
3030
{
3131
name: 'firebase-firestore'
32+
},
33+
{
34+
name: 'firebase-remote-config'
3235
}
3336
];
3437
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<ActionBar title="firebase-remote-config" class="action-bar"> </ActionBar>
2+
<StackLayout class="p-20">
3+
<ScrollView class="h-full">
4+
<StackLayout>
5+
<Button text="Test firebase-remote-config" (tap)="demoShared.testIt()" class="btn btn-primary"></Button>
6+
</StackLayout>
7+
</ScrollView>
8+
</StackLayout>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { Component, NgZone } from '@angular/core';
2+
import { DemoSharedFirebaseRemoteConfig } from '@demo/shared';
3+
import { } from '@nativescript/firebase-remote-config';
4+
5+
@Component({
6+
selector: 'demo-firebase-remote-config',
7+
templateUrl: 'firebase-remote-config.component.html',
8+
})
9+
export class FirebaseRemoteConfigComponent {
10+
11+
demoShared: DemoSharedFirebaseRemoteConfig;
12+
13+
constructor(private _ngZone: NgZone) {}
14+
15+
ngOnInit() {
16+
this.demoShared = new DemoSharedFirebaseRemoteConfig();
17+
}
18+
19+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
2+
import { NativeScriptCommonModule, NativeScriptRouterModule } from '@nativescript/angular';
3+
import { FirebaseRemoteConfigComponent } from './firebase-remote-config.component';
4+
5+
@NgModule({
6+
imports: [NativeScriptCommonModule, NativeScriptRouterModule.forChild([{ path: '', component: FirebaseRemoteConfigComponent }])],
7+
declarations: [FirebaseRemoteConfigComponent],
8+
schemas: [ NO_ERRORS_SCHEMA]
9+
})
10+
export class FirebaseRemoteConfigModule {}

apps/demo/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
"@nativescript/firebase-analytics": "file:../../packages/firebase-analytics",
1313
"@nativescript/firebase-admob": "file:../../packages/firebase-admob",
1414
"@nativescript/firebase-crashlytics": "file:../../packages/firebase-crashlytics",
15-
"@nativescript/firebase-app-check": "file:../../packages/firebase-app-check"
15+
"@nativescript/firebase-app-check": "file:../../packages/firebase-app-check",
16+
"@nativescript/firebase-remote-config": "file:../../packages/firebase-remote-config"
1617
},
1718
"devDependencies": {
1819
"@nativescript/android": "8.0.0",

apps/demo/src/main-view-model.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,12 @@ export class MainViewModel extends Observable {
2323
{
2424
name: 'firebase-crashlytics',
2525
},
26+
{
27+
name: 'firebase-app-check',
28+
},
29+
{
30+
name: 'firebase-remote-config',
31+
},
2632
];
2733

2834
viewDemo(args) {
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import { Observable, EventData, Page } from '@nativescript/core';
2+
import { DemoSharedFirebaseRemoteConfig } from '@demo/shared';
3+
import { Firebase } from '@nativescript/firebase-core';
4+
import '@nativescript/firebase-remote-config';
5+
import { RemoteConfig } from '@nativescript/firebase-remote-config';
6+
7+
export function navigatingTo(args: EventData) {
8+
const page = <Page>args.object;
9+
page.bindingContext = new DemoModel();
10+
}
11+
12+
export class DemoModel extends DemoSharedFirebaseRemoteConfig {
13+
remoteConfig: RemoteConfig;
14+
constructor() {
15+
super();
16+
this.remoteConfig = Firebase.remoteConfig();
17+
this.remoteConfig
18+
.fetchAndActivate()
19+
.then((val) => {
20+
const all = this.remoteConfig.getAll();
21+
console.log(all.osei_test.asString());
22+
})
23+
.catch((e) => {
24+
console.error('remoteConfig', 'fetchAndActivate', e);
25+
});
26+
}
27+
}

0 commit comments

Comments
 (0)