firebase-project-manager
Version:
Create and manage your Firebase projects from the command line or with code
125 lines • 5.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var apis_1 = require("./apis");
var auth = require("./auth");
var firebase = require("./firebase");
var util_1 = require("./util");
var firebase_types_1 = require("./firebase.types");
exports.ERRORS = firebase_types_1.ERRORS;
exports.EVENTS = firebase_types_1.EVENTS;
/** Static OAuth client managed by `authenticate` and `deauthenticate` */
exports.oauth2Client = auth.oauth2Client;
/**
* Authenticates client with Firebase Project Manager and retains a refresh token in the
* system's configuration store for later usage.
* @param verbose If true, authentication status will be logged with `console.log`.
* @return Void promise resolved upon completion
*/
exports.authenticate = auth.authenticate;
/**
* Deauthenticates the currently logged in user, revokes and deletes the currently cached
* refresh_token stored in the system's configuration store.
* @param verbose If true, authentication status will be logged with `console.log`.
* @return Void promise resolved upon completion
*/
exports.deauthenticate = auth.deauthenticate;
/**
* Creates a new Firebase Project via a two step process of first creating a CGP Project
* and then secondly adding Firebase resources to it.
* @param name Desired display name for the underlying GCP project. If available, this name
* will also be used as a `projectId` by replacing all non-whitespace characters with '-'
* and making all alphabetic characters lower-case.
* @param cb function called with progress of project creation.
* @return Promise to the newly created project's `projectId`.
*/
function createFirebaseProject(name, cb) {
if (cb === void 0) { cb = util_1.noop; }
return firebase.createFirebaseProject(apis_1.googleapis, name, cb);
}
exports.createFirebaseProject = createFirebaseProject;
/**
* Creates a new GCP project using Google `cloudresourcemanager`.
* @param name Desired display name for the underlying GCP project. If available, this name
* will also be used as a `projectId` by replacing all non-whitespace characters with `-`
* and making all alphabetic characters lower-case.
* @param cb function called with progress of project creation.
* @return Promise to the newly created project's `projectId`.
*/
function createGCProject(name, cb) {
if (cb === void 0) { cb = util_1.noop; }
return firebase.createGCProject(apis_1.googleapis, name, cb);
}
exports.createGCProject = createGCProject;
/**
* Adds Firebase resources to a GCP Project
* @param projectId projectId of the GCP Project to add Firebase features to.
* @param cb function called with progress of project creation.
* @return Void promise resolved upon completion
*/
function addFirebaseFeatures(projectId, cb) {
if (cb === void 0) { cb = util_1.noop; }
return firebase.addFirebaseFeatures(apis_1.googleapis, projectId, cb);
}
exports.addFirebaseFeatures = addFirebaseFeatures;
/**
* Lists all GCP Projects with Firebase resources.
* @param pageSize The maximum number of Projects to return
* @param pageToken Token returned from a previous call indicating where in the
* set of Projects to resume listing.
* @return Promise to an array of Firebase Projects
*/
function listFirebaseProjects(pageSize, pageToken) {
return firebase.listFirebaseProjects(apis_1.googleapis, pageSize, pageToken);
}
exports.listFirebaseProjects = listFirebaseProjects;
/**
* Lists all GCP Projects lacking Firebase resources, but that are available to become Firebase
* projects.
* @param pageSize The maximum number of Projects to return
* @param pageToken Token returned from a previous call indicating where in the
* set of Projects to resume listing.
* @return Promise to an array of GCP Projects
*/
function listAvailableProjects(pageSize, pageToken) {
return firebase.listAvailableProjects(apis_1.googleapis, pageSize, pageToken);
}
exports.listAvailableProjects = listAvailableProjects;
/**
* Retrieves information for a given Firebase project.
* @param projectId projectId of the Firebase project to retrieve
* @return Promise to a Firebase Project
*/
function getFirebaseProject(projectId) {
return firebase.getFirebaseProject(apis_1.googleapis, projectId);
}
exports.getFirebaseProject = getFirebaseProject;
/**
* Lists all applications associated with a Firebase Project.
* @param projectId projectId of the Firebase project to retrieve apps of
* @param pageSize The maximum number of Apps to return
* @param pageToken Token returned from a previous call indicating where in the
* set of Apps to resume listing.
*/
function listFirebaseProjectApps(projectId, pageSize, pageToken) {
return firebase.listFirebaseProjectApps(apis_1.googleapis, projectId, pageSize, pageToken);
}
exports.listFirebaseProjectApps = listFirebaseProjectApps;
/**
* Creates a new web application under a given Firebase Project.
* @param projectId projectId of the parent Firebase project to create an application for
* @param displayName User-assigned display name of the App.
* @param appUrls Fully qualified URLs where the App is hosted.
*/
function createFirebaseWebapp(projectId, displayName, appUrls) {
return firebase.createFirebaseWebapp(apis_1.googleapis, projectId, displayName, appUrls);
}
exports.createFirebaseWebapp = createFirebaseWebapp;
function getFirebaseWebapp(projectId, appId) {
return firebase.getFirebaseWebapp(apis_1.googleapis, projectId, appId);
}
exports.getFirebaseWebapp = getFirebaseWebapp;
function getFirebaseWebappConfig(projectId, appId) {
return firebase.getFirebaseWebappConfig(apis_1.googleapis, projectId, appId);
}
exports.getFirebaseWebappConfig = getFirebaseWebappConfig;
//# sourceMappingURL=index.js.map