Skip to content

Commit 78e26b3

Browse files
authored
Expose only public types from Auth exp (#4398)
* remove unnecessary internal annotation * swap in the public typings when doing release build
1 parent b59c36a commit 78e26b3

25 files changed

+12
-127
lines changed
Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
{
22
"extends": "../../config/api-extractor.json",
33
// Point it to your entry point d.ts file.
4-
"mainEntryPointFilePath": "<projectFolder>/dist/index.d.ts"
4+
"mainEntryPointFilePath": "<projectFolder>/dist/esm5/index.d.ts",
5+
"dtsRollup": {
6+
"enabled": true,
7+
"untrimmedFilePath": "<projectFolder>/dist/<unscopedPackageName>.d.ts",
8+
"publicTrimmedFilePath": "<projectFolder>/dist/<unscopedPackageName>-public.d.ts"
9+
}
510
}

packages-exp/auth-exp/package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"lint:fix": "eslint --fix -c .eslintrc.js '**/*.ts' --ignore-path '../../.gitignore'",
1818
"build": "rollup -c && yarn api-report",
1919
"build:deps": "lerna run --scope @firebase/auth-exp --include-dependencies build",
20-
"build:release": "rollup -c rollup.config.release.js",
20+
"build:release": "rollup -c rollup.config.release.js && yarn api-report && yarn typings:public",
2121
"dev": "rollup -c -w",
2222
"test": "run-p lint test:all",
2323
"test:all": "run-p test:browser test:node",
@@ -31,7 +31,8 @@
3131
"api-report": "api-extractor run --local --verbose",
3232
"predoc": "node ../../scripts/exp/remove-exp.js temp",
3333
"doc": "api-documenter markdown --input temp --output docs",
34-
"build:doc": "yarn build && yarn doc"
34+
"build:doc": "yarn build && yarn doc",
35+
"typings:public": "node ../../scripts/exp/use_typings.js ./dist/auth-exp-public.d.ts"
3536
},
3637
"peerDependencies": {
3738
"@firebase/app-exp": "0.x",

packages-exp/auth-exp/src/core/action_code_url.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import { _assert } from './util/assert';
2323
* Enums for fields in URL query string.
2424
*
2525
* @enum {string}
26-
* @internal
2726
*/
2827
const enum QueryField {
2928
API_KEY = 'apiKey',
@@ -38,7 +37,6 @@ const enum QueryField {
3837
* Maps the mode string in action code URL to Action Code Info operation.
3938
*
4039
* @param mode
41-
* @internal
4240
*/
4341
function parseMode(mode: string | null): externs.ActionCodeOperation | null {
4442
switch (mode) {
@@ -63,7 +61,6 @@ function parseMode(mode: string | null): externs.ActionCodeOperation | null {
6361
* Helper to parse FDL links
6462
*
6563
* @param url
66-
* @internal
6764
*/
6865
function parseDeepLink(url: string): string {
6966
const uri = new URL(url);

packages-exp/auth-exp/src/core/credentials/oauth.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,6 @@ import { AuthCredential } from './auth_credential';
3030

3131
const IDP_REQUEST_URI = 'http://localhost';
3232

33-
/**
34-
* @internal
35-
*/
3633
export interface OAuthCredentialParams {
3734
// OAuth 2 uses either id token or access token
3835
idToken?: string | null;

packages-exp/auth-exp/src/core/credentials/phone.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import { Auth } from '../../model/auth';
2828
import { IdTokenResponse } from '../../model/id_token';
2929
import { AuthCredential } from './auth_credential';
3030

31-
/** @internal */
3231
export interface PhoneAuthCredentialParameters {
3332
verificationId?: string;
3433
verificationCode?: string;

packages-exp/auth-exp/src/core/strategies/credential.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import { _reauthenticate } from '../user/reauthenticate';
2727
import { UserCredentialImpl } from '../user/user_credential_impl';
2828
import { _castAuth } from '../auth/auth_impl';
2929

30-
/** @internal */
3130
export async function _signInWithCredential(
3231
auth: Auth,
3332
credential: AuthCredential,

packages-exp/auth-exp/src/core/strategies/idp.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ import { _assert } from '../util/assert';
3131
import { _signInWithCredential } from './credential';
3232
import { AuthErrorCode } from '../errors';
3333

34-
/** @internal */
3534
export interface IdpTaskParams {
3635
auth: Auth;
3736
requestUri: string;
@@ -43,10 +42,8 @@ export interface IdpTaskParams {
4342
bypassAuthState?: boolean;
4443
}
4544

46-
/** @internal */
4745
export type IdpTask = (params: IdpTaskParams) => Promise<UserCredential>;
4846

49-
/** @internal */
5047
class IdpCredential extends AuthCredential {
5148
constructor(readonly params: IdpTaskParams) {
5249
super(externs.ProviderId.CUSTOM, externs.ProviderId.CUSTOM);
@@ -83,7 +80,6 @@ class IdpCredential extends AuthCredential {
8380
}
8481
}
8582

86-
/** @internal */
8783
export function _signIn(params: IdpTaskParams): Promise<UserCredential> {
8884
return _signInWithCredential(
8985
params.auth,
@@ -92,7 +88,6 @@ export function _signIn(params: IdpTaskParams): Promise<UserCredential> {
9288
) as Promise<UserCredential>;
9389
}
9490

95-
/** @internal */
9691
export function _reauth(params: IdpTaskParams): Promise<UserCredential> {
9792
const { auth, user } = params;
9893
_assert(user, auth, AuthErrorCode.INTERNAL_ERROR);
@@ -103,7 +98,6 @@ export function _reauth(params: IdpTaskParams): Promise<UserCredential> {
10398
);
10499
}
105100

106-
/** @internal */
107101
export async function _link(params: IdpTaskParams): Promise<UserCredential> {
108102
const { auth, user } = params;
109103
_assert(user, auth, AuthErrorCode.INTERNAL_ERROR);

packages-exp/auth-exp/src/core/user/account_info.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,6 @@ export function updatePassword(
117117
return updateEmailOrPassword(user as User, null, newPassword);
118118
}
119119

120-
/** @internal */
121120
async function updateEmailOrPassword(
122121
user: User,
123122
email: string | null,

packages-exp/auth-exp/src/core/user/additional_user_info.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import { UserCredential } from '../../model/user';
2323
/**
2424
* Parse the `AdditionalUserInfo` from the ID token response.
2525
*
26-
* @internal
2726
*/
2827
export function _fromIdTokenResponse(
2928
idTokenResponse?: IdTokenResponse

packages-exp/auth-exp/src/core/user/id_token_result.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@ function secondsStringToMilliseconds(seconds: string): number {
9494
return Number(seconds) * 1000;
9595
}
9696

97-
/** @internal */
9897
export function _parseToken(token: string): externs.ParsedToken | null {
9998
const [algorithm, payload, signature] = token.split('.');
10099
if (
@@ -121,8 +120,6 @@ export function _parseToken(token: string): externs.ParsedToken | null {
121120

122121
/**
123122
* Extract expiresIn TTL from a token by subtracting the expiration from the issuance.
124-
*
125-
* @internal
126123
*/
127124
export function _tokenExpiresIn(token: string): number {
128125
const parsedToken = _parseToken(token);

packages-exp/auth-exp/src/core/user/link_unlink.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ export async function unlink(
5959
return user;
6060
}
6161

62-
/** @internal */
6362
export async function _link(
6463
user: User,
6564
credential: AuthCredential,
@@ -77,7 +76,6 @@ export async function _link(
7776
);
7877
}
7978

80-
/** @internal */
8179
export async function _assertLinkedStatus(
8280
expected: boolean,
8381
user: User,

packages-exp/auth-exp/src/core/user/token_manager.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,6 @@ import { _tokenExpiresIn } from './id_token_result';
2727
/**
2828
* The number of milliseconds before the official expiration time of a token
2929
* to refresh that token, to provide a buffer for RPCs to complete.
30-
*
31-
* @internal
3230
*/
3331
export const enum Buffer {
3432
TOKEN_REFRESH = 30_000

packages-exp/auth-exp/src/core/util/resolver.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ import { _getInstance } from './instantiator';
2626
* Chooses a popup/redirect resolver to use. This prefers the override (which
2727
* is directly passed in), and falls back to the property set on the auth
2828
* object. If neither are available, this function errors w/ an argument error.
29-
*
30-
* @internal
3129
*/
3230
export function _withDefaultResolver(
3331
auth: Auth,

packages-exp/auth-exp/src/model/application_verifier.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,9 @@
1717

1818
import * as externs from '@firebase/auth-types-exp';
1919

20-
/** @internal */
2120
export interface ApplicationVerifier extends externs.ApplicationVerifier {
22-
/** @internal */
21+
/**
22+
* @internal
23+
*/
2324
_reset(): void;
2425
}

packages-exp/auth-exp/src/model/auth.ts

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,76 +22,49 @@ import { AuthErrorCode, AuthErrorParams } from '../core/errors';
2222
import { PopupRedirectResolver } from './popup_redirect';
2323
import { User } from './user';
2424

25-
/** @internal */
2625
export type AppName = string;
27-
/** @internal */
2826
export type ApiKey = string;
29-
/** @internal */
3027
export type AuthDomain = string;
3128

32-
/** @internal */
3329
export interface ConfigInternal extends externs.Config {
3430
/**
35-
* @internal
3631
* @readonly
3732
*/
3833
emulator?: {
3934
url: string;
4035
};
4136
}
4237

43-
/** @internal */
4438
export interface Auth extends externs.Auth {
45-
/** @internal */
4639
currentUser: externs.User | null;
47-
/** @internal */
4840
_canInitEmulator: boolean;
49-
/** @internal */
5041
_isInitialized: boolean;
51-
/** @internal */
5242
_initializationPromise: Promise<void> | null;
53-
/** @internal */
5443
_updateCurrentUser(user: User | null): Promise<void>;
5544

56-
/** @internal */
5745
_onStorageEvent(): void;
5846

59-
/** @internal */
6047
_notifyListenersIfCurrent(user: User): void;
61-
/** @internal */
6248
_persistUserIfCurrent(user: User): Promise<void>;
63-
/** @internal */
6449
_setRedirectUser(
6550
user: User | null,
6651
popupRedirectResolver?: externs.PopupRedirectResolver
6752
): Promise<void>;
68-
/** @internal */
6953
_redirectUserForId(id: string): Promise<User | null>;
70-
/** @internal */
7154
_popupRedirectResolver: PopupRedirectResolver | null;
72-
/** @internal */
7355
_key(): string;
74-
/** @internal */
7556
_startProactiveRefresh(): void;
76-
/** @internal */
7757
_stopProactiveRefresh(): void;
7858
_getPersistence(): string;
7959

80-
/** @internal */
8160
readonly name: AppName;
82-
/** @internal */
8361
readonly config: ConfigInternal;
84-
/** @internal */
8562
languageCode: string | null;
86-
/** @internal */
8763
tenantId: string | null;
88-
/** @internal */
8964
readonly settings: externs.AuthSettings;
9065
_errorFactory: ErrorFactory<AuthErrorCode, AuthErrorParams>;
9166

92-
/** @internal */
9367
useDeviceLanguage(): void;
94-
/** @internal */
9568
signOut(): Promise<void>;
9669
}
9770

packages-exp/auth-exp/src/model/id_token.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,12 @@ import { PhoneOrOauthTokenResponse } from '../api/authentication/mfa';
2222
/**
2323
* Raw encoded JWT
2424
*
25-
* @internal
2625
*/
2726
export type IdToken = string;
2827

2928
/**
3029
* Raw parsed JWT
3130
*
32-
* @internal
3331
*/
3432
export interface ParsedIdToken {
3533
iss: string;
@@ -51,7 +49,6 @@ export interface ParsedIdToken {
5149
/**
5250
* IdToken as returned by the API
5351
*
54-
* @internal
5552
*/
5653
export interface IdTokenResponse {
5754
localId: string;
@@ -72,7 +69,6 @@ export interface IdTokenResponse {
7269
/**
7370
* The possible types of the `IdTokenResponse`
7471
*
75-
* @internal
7672
*/
7773
export const enum IdTokenResponseKind {
7874
CreateAuthUri = 'identitytoolkit#CreateAuthUriResponse',
@@ -91,9 +87,6 @@ export const enum IdTokenResponseKind {
9187
VerifyPassword = 'identitytoolkit#VerifyPasswordResponse'
9288
}
9389

94-
/**
95-
* @internal
96-
*/
9790
export interface TaggedWithTokenResponse {
9891
_tokenResponse?: PhoneOrOauthTokenResponse;
9992
}

0 commit comments

Comments
 (0)