Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions packages/browser/src/transports/offline.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import type { OfflineStore, OfflineTransportOptions } from '@sentry/core';
import { makeOfflineTransport } from '@sentry/core';
import type { Envelope, InternalBaseTransportOptions, Transport } from '@sentry/types';
import type { BaseTransportOptions, Envelope, Transport } from '@sentry/types';
import { parseEnvelope, serializeEnvelope } from '@sentry/utils';
import { makeFetchTransport } from './fetch';

// 'Store', 'promisifyRequest' and 'createStore' were originally copied from the 'idb-keyval' package before being
// modified and simplified: https://github.com/jakearchibald/idb-keyval
Expand Down Expand Up @@ -141,8 +142,8 @@ function makeIndexedDbOfflineTransport<T>(
/**
* Creates a transport that uses IndexedDb to store events when offline.
*/
export function makeBrowserOfflineTransport<T extends InternalBaseTransportOptions>(
createTransport: (options: T) => Transport,
export function makeBrowserOfflineTransport<T extends BaseTransportOptions>(
createTransport: (options: T) => Transport = makeFetchTransport,
): (options: T & BrowserOfflineTransportOptions) => Transport {
return makeIndexedDbOfflineTransport<T>(makeOfflineTransport(createTransport));
}
6 changes: 1 addition & 5 deletions packages/browser/src/transports/types.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
import type { BaseTransportOptions } from '@sentry/types';

import type { BrowserOfflineTransportOptions } from './offline';

type BaseTransportAndOfflineTransportOptions = BaseTransportOptions & BrowserOfflineTransportOptions;

export interface BrowserTransportOptions extends BaseTransportAndOfflineTransportOptions {
export interface BrowserTransportOptions extends BaseTransportOptions {
/** Fetch API init parameters. Used by the FetchTransport */
fetchOptions?: RequestInit;
/** Custom headers for the transport. Used by the XHRTransport and FetchTransport */
Expand Down
1 change: 1 addition & 0 deletions packages/browser/test/unit/transports/offline.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@ describe('makeOfflineTransport', () => {
queuedCount += 1;
return true;
},
url: 'http://localhost',
});
const result = await transport.send(ERROR_ENVELOPE);

Expand Down