Skip to content

Commit 9de234a

Browse files
feat: remove beta warning for signing in
1 parent 21b5467 commit 9de234a

File tree

5 files changed

+592
-36
lines changed

5 files changed

+592
-36
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -73,3 +73,7 @@ yarn-error.log
7373
.idea
7474
# Local Netlify folder
7575
.netlify
76+
77+
service.json
78+
user_data.json
79+
auth_data.json

download_user_data.js

+41-15
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,45 @@
1-
// https://github.com/dalenguyen/firestore-import-export
2-
fs = require('fs');
3-
4-
const firestoreService = require('firestore-export-import');
51
const serviceAccount = require('./service.json');
2+
const admin = require('firebase-admin');
3+
const fs = require('fs');
4+
5+
admin.initializeApp({
6+
credential: admin.credential.cert(serviceAccount),
7+
});
68

7-
// Initiate Firebase App
8-
// appName is optional, you can omit it.
9-
const appName = '[DEFAULT]';
10-
const databaseURL = 'https://usaco-guide.firebaseio.com';
11-
firestoreService.initializeApp(serviceAccount, databaseURL, appName);
9+
const db = admin.firestore();
1210

13-
// Start exporting your data
14-
firestoreService.backup('users').then(data =>
15-
fs.writeFile('user_data.json', JSON.stringify(data), function (err) {
16-
if (err) return console.log(err);
17-
console.log('OK');
11+
admin
12+
.auth()
13+
.listUsers(1000)
14+
.then(function (listUsersResult) {
15+
let data = {};
16+
listUsersResult.users.forEach(function (userRecord) {
17+
data[userRecord.uid] = userRecord.toJSON();
18+
});
19+
fs.writeFile('auth_data.json', JSON.stringify(data), function (err) {
20+
if (err) return console.log(err);
21+
console.log('OK');
22+
});
23+
})
24+
.catch(function (error) {
25+
console.log('Error listing users:', error);
26+
});
27+
28+
db.collection('users')
29+
.get()
30+
.then(snapshot => {
31+
let data = {};
32+
snapshot.forEach(doc => {
33+
data[doc.id] = doc.data();
34+
});
35+
return data;
36+
})
37+
.then(data => {
38+
fs.writeFile('user_data.json', JSON.stringify(data), function (err) {
39+
if (err) return console.log(err);
40+
console.log('OK');
41+
});
1842
})
19-
);
43+
.catch(error => {
44+
console.log(error);
45+
});

package.json

+2
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@
7070
"typescript": "^3.9.7"
7171
},
7272
"devDependencies": {
73+
"firebase-admin": "^9.2.0",
74+
"firestore-export-import": "^0.8.0",
7375
"gatsby-plugin-webpack-bundle-analyser-v2": "^1.1.11",
7476
"husky": "^4.2.5",
7577
"lint-staged": "^10.2.11",

src/context/UserDataContext/UserDataContext.tsx

+1-7
Original file line numberDiff line numberDiff line change
@@ -141,13 +141,7 @@ export const UserDataProvider = ({ children }) => {
141141
const userData = {
142142
firebaseUser,
143143
signIn: () => {
144-
if (
145-
confirm(
146-
'Warning: User accounts is still in beta. There is a risk of complete data loss. Are you sure you want to proceed?'
147-
)
148-
) {
149-
firebase.auth().signInWithPopup(new firebase.auth.GoogleAuthProvider());
150-
}
144+
firebase.auth().signInWithPopup(new firebase.auth.GoogleAuthProvider());
151145
},
152146
signOut: () => {
153147
firebase

0 commit comments

Comments
 (0)