Skip to content

Commit a976269

Browse files
committed
Merge branch 'master' into release
2 parents 34a9ae9 + 7405e7d commit a976269

Some content is hidden

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

55 files changed

+776
-379
lines changed

.changeset/empty-falcons-sit.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
'@firebase/app': patch
3+
'@firebase/installations': patch
4+
'@firebase/installations-compat': patch
5+
'@firebase/messaging': patch
6+
'@firebase/util': minor
7+
---
8+
9+
Remove idb dependency and replace with our own code.

.changeset/neat-olives-punch.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@firebase/auth-compat": patch
3+
"@firebase/auth": patch
4+
---
5+
6+
Heartbeat

.changeset/polite-donkeys-divide.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@firebase/app-check': patch
3+
---
4+
5+
Update platform logging to use new endpoint.

.changeset/proud-otters-tap.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@firebase/installations': patch
3+
---
4+
5+
Update platform logging code to send to new endpoint.

.changeset/sweet-pumas-dance.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@firebase/app': patch
3+
---
4+
5+
Fix heartbeat controller to ensure not sending more than one a day.

packages/app-check/src/client.test.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import '../test/setup';
1919
import { expect } from 'chai';
2020
import { stub, SinonStub, useFakeTimers } from 'sinon';
2121
import { FirebaseApp } from '@firebase/app';
22-
import { getFakeApp, getFakePlatformLoggingProvider } from '../test/util';
22+
import { getFakeApp, getFakeHeartbeatServiceProvider } from '../test/util';
2323
import {
2424
getExchangeRecaptchaV3TokenRequest,
2525
exchangeToken,
@@ -86,7 +86,7 @@ describe('client', () => {
8686

8787
const response = await exchangeToken(
8888
getExchangeRecaptchaV3TokenRequest(app, 'fake-custom-token'),
89-
getFakePlatformLoggingProvider('a/1.2.3 fire-app-check/2.3.4')
89+
getFakeHeartbeatServiceProvider('a/1.2.3 fire-app-check/2.3.4')
9090
);
9191

9292
expect(
@@ -114,7 +114,7 @@ describe('client', () => {
114114
try {
115115
await exchangeToken(
116116
getExchangeRecaptchaV3TokenRequest(app, 'fake-custom-token'),
117-
getFakePlatformLoggingProvider()
117+
getFakeHeartbeatServiceProvider()
118118
);
119119
} catch (e) {
120120
expect(e).instanceOf(FirebaseError);
@@ -143,7 +143,7 @@ describe('client', () => {
143143
try {
144144
await exchangeToken(
145145
getExchangeRecaptchaV3TokenRequest(app, 'fake-custom-token'),
146-
getFakePlatformLoggingProvider()
146+
getFakeHeartbeatServiceProvider()
147147
);
148148
} catch (e) {
149149
expect(e).instanceOf(FirebaseError);
@@ -171,7 +171,7 @@ describe('client', () => {
171171
try {
172172
await exchangeToken(
173173
getExchangeRecaptchaV3TokenRequest(app, 'fake-custom-token'),
174-
getFakePlatformLoggingProvider()
174+
getFakeHeartbeatServiceProvider()
175175
);
176176
} catch (e) {
177177
expect(e).instanceOf(FirebaseError);
@@ -205,7 +205,7 @@ describe('client', () => {
205205
try {
206206
await exchangeToken(
207207
getExchangeRecaptchaV3TokenRequest(app, 'fake-custom-token'),
208-
getFakePlatformLoggingProvider()
208+
getFakeHeartbeatServiceProvider()
209209
);
210210
} catch (e) {
211211
expect(e).instanceOf(FirebaseError);

packages/app-check/src/client.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,17 +42,20 @@ interface AppCheckRequest {
4242

4343
export async function exchangeToken(
4444
{ url, body }: AppCheckRequest,
45-
platformLoggerProvider: Provider<'platform-logger'>
45+
heartbeatServiceProvider: Provider<'heartbeat'>
4646
): Promise<AppCheckTokenInternal> {
4747
const headers: HeadersInit = {
4848
'Content-Type': 'application/json'
4949
};
50-
// If platform logger exists, add the platform info string to the header.
51-
const platformLogger = platformLoggerProvider.getImmediate({
50+
// If heartbeat service exists, add heartbeat header string to the header.
51+
const heartbeatService = heartbeatServiceProvider.getImmediate({
5252
optional: true
5353
});
54-
if (platformLogger) {
55-
headers['X-Firebase-Client'] = platformLogger.getPlatformInfoString();
54+
if (heartbeatService) {
55+
const heartbeatsHeader = await heartbeatService.getHeartbeatsHeader();
56+
if (heartbeatsHeader) {
57+
headers['X-Firebase-Client'] = heartbeatsHeader;
58+
}
5659
}
5760
const options: RequestInit = {
5861
method: 'POST',

packages/app-check/src/factory.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ import { getState } from './state';
3232
export class AppCheckService implements AppCheck, _FirebaseService {
3333
constructor(
3434
public app: FirebaseApp,
35-
public platformLoggerProvider: Provider<'platform-logger'>
35+
public heartbeatServiceProvider: Provider<'heartbeat'>
3636
) {}
3737
_delete(): Promise<void> {
3838
const { tokenObservers } = getState(this.app);
@@ -45,9 +45,9 @@ export class AppCheckService implements AppCheck, _FirebaseService {
4545

4646
export function factory(
4747
app: FirebaseApp,
48-
platformLoggerProvider: Provider<'platform-logger'>
48+
heartbeatServiceProvider: Provider<'heartbeat'>
4949
): AppCheckService {
50-
return new AppCheckService(app, platformLoggerProvider);
50+
return new AppCheckService(app, heartbeatServiceProvider);
5151
}
5252

5353
export function internalFactory(

packages/app-check/src/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ function registerAppCheck(): void {
4848
container => {
4949
// getImmediate for FirebaseApp will always succeed
5050
const app = container.getProvider('app').getImmediate();
51-
const platformLoggerProvider = container.getProvider('platform-logger');
52-
return factory(app, platformLoggerProvider);
51+
const heartbeatServiceProvider = container.getProvider('heartbeat');
52+
return factory(app, heartbeatServiceProvider);
5353
},
5454
ComponentType.PUBLIC
5555
)

packages/app-check/src/internal-api.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ export async function getToken(
106106
if (!state.exchangeTokenPromise) {
107107
state.exchangeTokenPromise = exchangeToken(
108108
getExchangeDebugTokenRequest(app, await getDebugToken()),
109-
appCheck.platformLoggerProvider
109+
appCheck.heartbeatServiceProvider
110110
).then(token => {
111111
state.exchangeTokenPromise = undefined;
112112
return token;

0 commit comments

Comments
 (0)