@angular/fire 16.0.0 → 17.0.0-canary.6604db7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -4
- package/analytics/package.json +3 -0
- package/app/package.json +3 -0
- package/app-check/package.json +3 -0
- package/auth/firebase.d.ts +2 -1
- package/auth/package.json +3 -0
- package/auth-guard/package.json +3 -0
- package/compat/analytics/package.json +3 -0
- package/compat/auth/package.json +3 -0
- package/compat/auth-guard/package.json +3 -0
- package/compat/database/package.json +3 -0
- package/compat/firestore/package.json +3 -0
- package/compat/functions/package.json +3 -0
- package/compat/messaging/package.json +3 -0
- package/compat/package.json +3 -0
- package/compat/performance/package.json +3 -0
- package/compat/remote-config/package.json +3 -0
- package/compat/storage/package.json +3 -0
- package/database/package.json +3 -0
- package/esm2022/analytics/analytics.module.mjs +7 -7
- package/esm2022/analytics/screen-tracking.service.mjs +6 -6
- package/esm2022/analytics/user-tracking.service.mjs +5 -5
- package/esm2022/app/app.module.mjs +7 -7
- package/esm2022/app-check/app-check.module.mjs +6 -6
- package/esm2022/auth/auth.module.mjs +6 -6
- package/esm2022/auth/firebase.mjs +3 -2
- package/esm2022/auth-guard/auth-guard.mjs +5 -5
- package/esm2022/auth-guard/auth-guard.module.mjs +6 -6
- package/esm2022/compat/analytics/analytics.mjs +6 -6
- package/esm2022/compat/analytics/analytics.module.mjs +7 -7
- package/esm2022/compat/analytics/screen-tracking.service.mjs +6 -6
- package/esm2022/compat/analytics/user-tracking.service.mjs +6 -6
- package/esm2022/compat/auth/auth.mjs +6 -6
- package/esm2022/compat/auth/auth.module.mjs +6 -6
- package/esm2022/compat/auth-guard/auth-guard.mjs +5 -5
- package/esm2022/compat/auth-guard/auth-guard.module.mjs +6 -6
- package/esm2022/compat/database/database.mjs +6 -6
- package/esm2022/compat/database/database.module.mjs +6 -6
- package/esm2022/compat/firebase.app.module.mjs +7 -7
- package/esm2022/compat/firestore/firestore.mjs +6 -6
- package/esm2022/compat/firestore/firestore.module.mjs +6 -6
- package/esm2022/compat/functions/functions.mjs +6 -6
- package/esm2022/compat/functions/functions.module.mjs +6 -6
- package/esm2022/compat/messaging/messaging.mjs +6 -6
- package/esm2022/compat/messaging/messaging.module.mjs +6 -6
- package/esm2022/compat/performance/performance.mjs +6 -6
- package/esm2022/compat/performance/performance.module.mjs +7 -7
- package/esm2022/compat/performance/performance.service.mjs +5 -5
- package/esm2022/compat/remote-config/remote-config.mjs +6 -6
- package/esm2022/compat/remote-config/remote-config.module.mjs +6 -6
- package/esm2022/compat/storage/pipes/storageUrl.pipe.mjs +10 -10
- package/esm2022/compat/storage/storage.mjs +6 -6
- package/esm2022/compat/storage/storage.module.mjs +6 -6
- package/esm2022/database/database.module.mjs +6 -6
- package/esm2022/firestore/firestore.module.mjs +6 -6
- package/esm2022/firestore/lite/lite.module.mjs +6 -6
- package/esm2022/functions/functions.module.mjs +6 -6
- package/esm2022/messaging/messaging.module.mjs +6 -6
- package/esm2022/performance/performance.module.mjs +6 -6
- package/esm2022/remote-config/remote-config.module.mjs +6 -6
- package/esm2022/storage/storage.module.mjs +6 -6
- package/esm2022/zones.mjs +5 -5
- package/fesm2022/angular-fire-analytics.mjs +17 -17
- package/fesm2022/angular-fire-analytics.mjs.map +1 -1
- package/fesm2022/angular-fire-app-check.mjs +7 -7
- package/fesm2022/angular-fire-app-check.mjs.map +1 -1
- package/fesm2022/angular-fire-app.mjs +7 -7
- package/fesm2022/angular-fire-app.mjs.map +1 -1
- package/fesm2022/angular-fire-auth-guard.mjs +9 -9
- package/fesm2022/angular-fire-auth-guard.mjs.map +1 -1
- package/fesm2022/angular-fire-auth.mjs +9 -8
- package/fesm2022/angular-fire-auth.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-analytics.mjs +22 -22
- package/fesm2022/angular-fire-compat-analytics.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-auth-guard.mjs +9 -9
- package/fesm2022/angular-fire-compat-auth-guard.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-auth.mjs +10 -10
- package/fesm2022/angular-fire-compat-auth.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-database.mjs +10 -10
- package/fesm2022/angular-fire-compat-database.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-firestore.mjs +10 -10
- package/fesm2022/angular-fire-compat-firestore.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-functions.mjs +10 -10
- package/fesm2022/angular-fire-compat-functions.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-messaging.mjs +11 -11
- package/fesm2022/angular-fire-compat-messaging.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-performance.mjs +16 -16
- package/fesm2022/angular-fire-compat-performance.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-remote-config.mjs +11 -11
- package/fesm2022/angular-fire-compat-remote-config.mjs.map +1 -1
- package/fesm2022/angular-fire-compat-storage.mjs +19 -19
- package/fesm2022/angular-fire-compat-storage.mjs.map +1 -1
- package/fesm2022/angular-fire-compat.mjs +6 -6
- package/fesm2022/angular-fire-compat.mjs.map +1 -1
- package/fesm2022/angular-fire-database.mjs +6 -6
- package/fesm2022/angular-fire-database.mjs.map +1 -1
- package/fesm2022/angular-fire-firestore-lite.mjs +6 -6
- package/fesm2022/angular-fire-firestore-lite.mjs.map +1 -1
- package/fesm2022/angular-fire-firestore.mjs +6 -6
- package/fesm2022/angular-fire-firestore.mjs.map +1 -1
- package/fesm2022/angular-fire-functions.mjs +6 -6
- package/fesm2022/angular-fire-functions.mjs.map +1 -1
- package/fesm2022/angular-fire-messaging.mjs +6 -6
- package/fesm2022/angular-fire-messaging.mjs.map +1 -1
- package/fesm2022/angular-fire-performance.mjs +6 -6
- package/fesm2022/angular-fire-performance.mjs.map +1 -1
- package/fesm2022/angular-fire-remote-config.mjs +6 -6
- package/fesm2022/angular-fire-remote-config.mjs.map +1 -1
- package/fesm2022/angular-fire-storage.mjs +6 -6
- package/fesm2022/angular-fire-storage.mjs.map +1 -1
- package/fesm2022/angular-fire.mjs +4 -4
- package/fesm2022/angular-fire.mjs.map +1 -1
- package/firestore/lite/package.json +3 -0
- package/firestore/package.json +3 -0
- package/functions/package.json +3 -0
- package/messaging/package.json +3 -0
- package/package.json +10 -10
- package/performance/package.json +3 -0
- package/remote-config/package.json +3 -0
- package/schematics/firebaseTools.js +2 -2
- package/schematics/setup/index.js +21 -6
- package/schematics/setup/prompts.js +24 -19
- package/schematics/utils.js +3 -1
- package/storage/package.json +3 -0
|
@@ -34,10 +34,8 @@ const setupProject = (tree, context, features, config) => {
|
|
|
34
34
|
firebaseApp: config.firebaseApp,
|
|
35
35
|
firebaseHostingSite: config.firebaseHostingSite,
|
|
36
36
|
sdkConfig: config.sdkConfig,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
serverTarget: config.serverTarget,
|
|
40
|
-
prerenderTarget: config.prerenderTarget,
|
|
37
|
+
buildTarget: config.buildTarget,
|
|
38
|
+
serveTarget: config.serveTarget,
|
|
41
39
|
ssrRegion: config.ssrRegion,
|
|
42
40
|
},
|
|
43
41
|
tree,
|
|
@@ -69,7 +67,10 @@ const ngAddSetupProject = (options) => (host, context) => __awaiter(void 0, void
|
|
|
69
67
|
(0, fs_1.writeFileSync)((0, path_1.join)(projectRoot, 'firebase.json'), '{}');
|
|
70
68
|
}
|
|
71
69
|
const user = yield (0, prompts_1.userPrompt)({ projectRoot });
|
|
72
|
-
yield firebaseTools.login
|
|
70
|
+
const defaultUser = yield firebaseTools.login(options);
|
|
71
|
+
if (user.email !== (defaultUser === null || defaultUser === void 0 ? void 0 : defaultUser.email)) {
|
|
72
|
+
yield firebaseTools.login.use(user.email, { projectRoot });
|
|
73
|
+
}
|
|
73
74
|
const { project: ngProject, projectName: ngProjectName } = (0, utils_1.getProject)(options, host);
|
|
74
75
|
const [defaultProjectName] = (0, utils_1.getFirebaseProjectNameFromHost)(host, ngProjectName);
|
|
75
76
|
const firebaseProject = yield (0, prompts_1.projectPrompt)(defaultProjectName, { projectRoot, account: user.email });
|
|
@@ -122,6 +123,7 @@ function generateFirebaseJson(tree, path, project, region) {
|
|
|
122
123
|
}
|
|
123
124
|
exports.generateFirebaseJson = generateFirebaseJson;
|
|
124
125
|
const setupFirebase = (config) => {
|
|
126
|
+
var _a, _b, _c, _d;
|
|
125
127
|
const { tree, workspacePath, workspace, options } = config;
|
|
126
128
|
const project = workspace.projects[options.project];
|
|
127
129
|
if (!project.architect) {
|
|
@@ -129,7 +131,20 @@ const setupFirebase = (config) => {
|
|
|
129
131
|
}
|
|
130
132
|
project.architect.deploy = {
|
|
131
133
|
builder: '@angular/fire:deploy',
|
|
132
|
-
options:
|
|
134
|
+
options: {
|
|
135
|
+
version: 2,
|
|
136
|
+
},
|
|
137
|
+
configurations: {
|
|
138
|
+
production: {
|
|
139
|
+
buildTarget: (_a = options.buildTarget) === null || _a === void 0 ? void 0 : _a[0],
|
|
140
|
+
serveTarget: (_b = options.serveTarget) === null || _b === void 0 ? void 0 : _b[0],
|
|
141
|
+
},
|
|
142
|
+
development: {
|
|
143
|
+
buildTarget: (_c = options.buildTarget) === null || _c === void 0 ? void 0 : _c[1],
|
|
144
|
+
serveTarget: (_d = options.serveTarget) === null || _d === void 0 ? void 0 : _d[1],
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
defaultConfiguration: 'development',
|
|
133
148
|
};
|
|
134
149
|
tree.overwrite(workspacePath, JSON.stringify(workspace, null, 2));
|
|
135
150
|
generateFirebaseJson(tree, 'firebase.json', options.project, options.ssrRegion);
|
|
@@ -33,6 +33,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
33
33
|
};
|
|
34
34
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
35
|
exports.projectTypePrompt = exports.sitePrompt = exports.appPrompt = exports.projectPrompt = exports.userPrompt = exports.featuresPrompt = exports.searchSites = exports.searchApps = exports.searchProjects = void 0;
|
|
36
|
+
const child_process_1 = require("child_process");
|
|
36
37
|
const fuzzy = __importStar(require("fuzzy"));
|
|
37
38
|
const inquirer = __importStar(require("inquirer"));
|
|
38
39
|
const common_1 = require("../common");
|
|
@@ -141,15 +142,14 @@ exports.featuresPrompt = featuresPrompt;
|
|
|
141
142
|
const userPrompt = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
142
143
|
var _a;
|
|
143
144
|
const firebaseTools = yield (0, firebaseTools_1.getFirebaseTools)();
|
|
144
|
-
|
|
145
|
-
if (!
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
return user;
|
|
145
|
+
let loginList = yield firebaseTools.login.list();
|
|
146
|
+
if (!Array.isArray(loginList) || loginList.length === 0) {
|
|
147
|
+
(0, child_process_1.spawnSync)('firebase login', { shell: true, cwd: options.projectRoot, stdio: 'inherit' });
|
|
148
|
+
return yield firebaseTools.login(options);
|
|
149
149
|
}
|
|
150
150
|
else {
|
|
151
151
|
const defaultUser = yield firebaseTools.login(options);
|
|
152
|
-
const choices =
|
|
152
|
+
const choices = loginList.map(({ user }) => ({ name: user.email, value: user }));
|
|
153
153
|
const newChoice = { name: '[Login in with another account]', value: NEW_OPTION };
|
|
154
154
|
const { user } = yield inquirer.prompt({
|
|
155
155
|
type: 'list',
|
|
@@ -159,8 +159,17 @@ const userPrompt = (options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
159
159
|
default: (_a = choices.find(it => it.value.email === defaultUser.email)) === null || _a === void 0 ? void 0 : _a.value,
|
|
160
160
|
});
|
|
161
161
|
if (user === NEW_OPTION) {
|
|
162
|
-
|
|
163
|
-
|
|
162
|
+
(0, child_process_1.spawnSync)('firebase login:add', { shell: true, cwd: options.projectRoot, stdio: 'inherit' });
|
|
163
|
+
loginList = yield firebaseTools.login.list();
|
|
164
|
+
if (!Array.isArray(loginList)) {
|
|
165
|
+
throw new Error("firebase login:list did not respond as expected");
|
|
166
|
+
}
|
|
167
|
+
const priorEmails = choices.map(it => it.name);
|
|
168
|
+
const newLogin = loginList.find(it => !priorEmails.includes(it.user.email));
|
|
169
|
+
if (!newLogin) {
|
|
170
|
+
throw new Error("Did not find a new user.");
|
|
171
|
+
}
|
|
172
|
+
return newLogin.user;
|
|
164
173
|
}
|
|
165
174
|
return user;
|
|
166
175
|
}
|
|
@@ -256,15 +265,11 @@ const ALLOWED_SSR_REGIONS = [
|
|
|
256
265
|
{ name: 'asia-east1 (Taiwan)', value: 'asia-east1' },
|
|
257
266
|
];
|
|
258
267
|
const projectTypePrompt = (project, name) => __awaiter(void 0, void 0, void 0, function* () {
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
if ((0, utils_1.isUniversalApp)(project)) {
|
|
264
|
-
serverTarget = `${name}:server:${((_e = (_d = project.architect) === null || _d === void 0 ? void 0 : _d.server) === null || _e === void 0 ? void 0 : _e.defaultConfiguration) || 'production'}`;
|
|
265
|
-
browserTarget = `${name}:build:${((_g = (_f = project.architect) === null || _f === void 0 ? void 0 : _f.build) === null || _g === void 0 ? void 0 : _g.defaultConfiguration) || 'production'}`;
|
|
266
|
-
const prerender = (0, utils_1.hasPrerenderOption)(project);
|
|
267
|
-
prerenderTarget = prerender && `${name}:prerender:${prerender.defaultConfiguration || 'production'}`;
|
|
268
|
+
const buildTarget = [`${name}:build:production`, `${name}:build:development`];
|
|
269
|
+
const serveTarget = (0, utils_1.isUniversalApp)(project) ?
|
|
270
|
+
[`${name}:serve-ssr:production`, `${name}:serve-ssr:development`] :
|
|
271
|
+
[`${name}:serve:production`, `${name}:serve:development`];
|
|
272
|
+
if ((0, utils_1.isUniversalApp)(project) || (0, utils_1.isSSRApp)(project)) {
|
|
268
273
|
const { ssrRegion } = yield inquirer.prompt({
|
|
269
274
|
type: 'list',
|
|
270
275
|
name: 'ssrRegion',
|
|
@@ -272,8 +277,8 @@ const projectTypePrompt = (project, name) => __awaiter(void 0, void 0, void 0, f
|
|
|
272
277
|
message: 'In which region would you like to host server-side content?',
|
|
273
278
|
default: DEFAULT_REGION,
|
|
274
279
|
});
|
|
275
|
-
return {
|
|
280
|
+
return { projectType: 3, ssrRegion, buildTarget, serveTarget };
|
|
276
281
|
}
|
|
277
|
-
return { projectType: 3,
|
|
282
|
+
return { projectType: 3, buildTarget, serveTarget };
|
|
278
283
|
});
|
|
279
284
|
exports.projectTypePrompt = projectTypePrompt;
|
package/schematics/utils.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.addIgnoreFiles = exports.featureToRules = exports.addFixesToServer = exports.addEnvironmentEntry = exports.getFirebaseProjectNameFromFs = exports.getFirebaseProjectNameFromHost = exports.getProject = exports.getWorkspace = exports.shortAppId = exports.hasPrerenderOption = exports.isUniversalApp = void 0;
|
|
6
|
+
exports.addIgnoreFiles = exports.featureToRules = exports.addFixesToServer = exports.addEnvironmentEntry = exports.getFirebaseProjectNameFromFs = exports.getFirebaseProjectNameFromHost = exports.getProject = exports.getWorkspace = exports.shortAppId = exports.hasPrerenderOption = exports.isSSRApp = exports.isUniversalApp = void 0;
|
|
7
7
|
const fs_1 = require("fs");
|
|
8
8
|
const path_1 = require("path");
|
|
9
9
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
@@ -14,6 +14,8 @@ const change_1 = require("@schematics/angular/utility/change");
|
|
|
14
14
|
const common_1 = require("./common");
|
|
15
15
|
const isUniversalApp = (project) => { var _a; return (_a = project.architect) === null || _a === void 0 ? void 0 : _a.server; };
|
|
16
16
|
exports.isUniversalApp = isUniversalApp;
|
|
17
|
+
const isSSRApp = (project) => { var _a, _b; return !!((_b = (_a = project.architect) === null || _a === void 0 ? void 0 : _a.build.options) === null || _b === void 0 ? void 0 : _b.ssr); };
|
|
18
|
+
exports.isSSRApp = isSSRApp;
|
|
17
19
|
const hasPrerenderOption = (project) => { var _a; return (_a = project.architect) === null || _a === void 0 ? void 0 : _a.prerender; };
|
|
18
20
|
exports.hasPrerenderOption = hasPrerenderOption;
|
|
19
21
|
const shortAppId = (app) => { var _a; return (_a = app === null || app === void 0 ? void 0 : app.appId) === null || _a === void 0 ? void 0 : _a.split('/').pop(); };
|