@intuitionrobotics/firebase 0.41.69 → 0.41.72
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/app-backend/FirebaseModule.js +46 -63
- package/app-backend/FirebaseModule.js.map +1 -1
- package/app-backend/auth/FirebaseBaseWrapper.d.ts +2 -2
- package/app-backend/auth/FirebaseBaseWrapper.js +8 -24
- package/app-backend/auth/FirebaseBaseWrapper.js.map +1 -1
- package/app-backend/auth/FirebaseSession_Admin.d.ts +4 -6
- package/app-backend/auth/FirebaseSession_Admin.js +21 -37
- package/app-backend/auth/FirebaseSession_Admin.js.map +1 -1
- package/app-backend/auth/firebase-session.d.ts +2 -7
- package/app-backend/auth/firebase-session.js +22 -42
- package/app-backend/auth/firebase-session.js.map +1 -1
- package/app-backend/database/DatabaseWrapper.d.ts +1 -1
- package/app-backend/database/DatabaseWrapper.js +91 -195
- package/app-backend/database/DatabaseWrapper.js.map +1 -1
- package/app-backend/firestore/FirestoreCollection.js +92 -216
- package/app-backend/firestore/FirestoreCollection.js.map +1 -1
- package/app-backend/firestore/FirestoreInterface.js +30 -34
- package/app-backend/firestore/FirestoreInterface.js.map +1 -1
- package/app-backend/firestore/FirestoreTransaction.js +125 -321
- package/app-backend/firestore/FirestoreTransaction.js.map +1 -1
- package/app-backend/firestore/FirestoreWrapper.d.ts +1 -1
- package/app-backend/firestore/FirestoreWrapper.js +25 -72
- package/app-backend/firestore/FirestoreWrapper.js.map +1 -1
- package/app-backend/functions/firebase-function.js +178 -327
- package/app-backend/functions/firebase-function.js.map +1 -1
- package/app-backend/push/PushMessagesWrapper.d.ts +1 -1
- package/app-backend/push/PushMessagesWrapper.js +31 -86
- package/app-backend/push/PushMessagesWrapper.js.map +1 -1
- package/app-backend/storage/StorageWrapper.d.ts +2 -2
- package/app-backend/storage/StorageWrapper.js +166 -347
- package/app-backend/storage/StorageWrapper.js.map +1 -1
- package/app-frontend/FirebaseModule.js +81 -169
- package/app-frontend/FirebaseModule.js.map +1 -1
- package/app-frontend/analytics/AnalyticsModule.js +17 -68
- package/app-frontend/analytics/AnalyticsModule.js.map +1 -1
- package/app-frontend/analytics/AnalyticsWrapper.js +17 -33
- package/app-frontend/analytics/AnalyticsWrapper.js.map +1 -1
- package/app-frontend/auth/FirebaseSession.js +33 -80
- package/app-frontend/auth/FirebaseSession.js.map +1 -1
- package/app-frontend/auth/SwFirebaseSession.js +11 -27
- package/app-frontend/auth/SwFirebaseSession.js.map +1 -1
- package/app-frontend/database/DatabaseWrapper.js +64 -148
- package/app-frontend/database/DatabaseWrapper.js.map +1 -1
- package/app-frontend/messaging/MessagingWrapper.js +16 -68
- package/app-frontend/messaging/MessagingWrapper.js.map +1 -1
- package/app-frontend/messaging/SwMessagingWrapper.js +11 -28
- package/app-frontend/messaging/SwMessagingWrapper.js.map +1 -1
- package/package.json +8 -8
|
@@ -16,46 +16,31 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
var __extends = (this && this.__extends) || (function () {
|
|
20
|
-
var extendStatics = function (d, b) {
|
|
21
|
-
extendStatics = Object.setPrototypeOf ||
|
|
22
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
23
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
24
|
-
return extendStatics(d, b);
|
|
25
|
-
};
|
|
26
|
-
return function (d, b) {
|
|
27
|
-
extendStatics(d, b);
|
|
28
|
-
function __() { this.constructor = d; }
|
|
29
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
30
|
-
};
|
|
31
|
-
})();
|
|
32
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
20
|
exports.FirebaseModule = exports.FirebaseModule_Class = void 0;
|
|
34
21
|
/**
|
|
35
22
|
* Created by tacb0ss on 25/08/2018.
|
|
36
23
|
*/
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
var _this = _super.call(this, "firebase") || this;
|
|
24
|
+
const ts_common_1 = require("@intuitionrobotics/ts-common");
|
|
25
|
+
const FirebaseSession_Admin_1 = require("./auth/FirebaseSession_Admin");
|
|
26
|
+
const fs_1 = require("fs");
|
|
27
|
+
class FirebaseModule_Class extends ts_common_1.Module {
|
|
28
|
+
constructor() {
|
|
29
|
+
super("firebase");
|
|
44
30
|
// private readonly tokenSessions: { [s: string]: FirebaseSession_UserPassword; } = {};
|
|
45
|
-
|
|
46
|
-
return _this;
|
|
31
|
+
this.adminSessions = {};
|
|
47
32
|
}
|
|
48
|
-
|
|
33
|
+
init() {
|
|
49
34
|
this.localProjectId = this.deriveLocalProjectId();
|
|
50
|
-
}
|
|
51
|
-
|
|
35
|
+
}
|
|
36
|
+
getLocalProjectId() {
|
|
52
37
|
return this.localProjectId;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
|
|
38
|
+
}
|
|
39
|
+
deriveLocalProjectId() {
|
|
40
|
+
let projectId;
|
|
56
41
|
if (FirebaseModule_Class.localAdminConfigId)
|
|
57
42
|
if (!this.config[FirebaseModule_Class.localAdminConfigId])
|
|
58
|
-
throw new ts_common_1.ImplementationMissingException(
|
|
43
|
+
throw new ts_common_1.ImplementationMissingException(`Forgot to define a service account for project Id: ${FirebaseModule_Class.localAdminConfigId}`);
|
|
59
44
|
else
|
|
60
45
|
projectId = FirebaseModule_Class.localAdminConfigId;
|
|
61
46
|
if (!projectId)
|
|
@@ -65,17 +50,17 @@ var FirebaseModule_Class = /** @class */ (function (_super) {
|
|
|
65
50
|
if (!projectId)
|
|
66
51
|
throw new ts_common_1.ThisShouldNotHappenException("Could not resolve project id...");
|
|
67
52
|
return projectId;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
return new Promise(
|
|
53
|
+
}
|
|
54
|
+
connect() {
|
|
55
|
+
return new Promise((resolve) => {
|
|
71
56
|
resolve();
|
|
72
57
|
});
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
return new Promise(
|
|
58
|
+
}
|
|
59
|
+
disconnect() {
|
|
60
|
+
return new Promise((resolve) => {
|
|
76
61
|
resolve();
|
|
77
62
|
});
|
|
78
|
-
}
|
|
63
|
+
}
|
|
79
64
|
// public async createSessionWithUsernameAndPassword(configId: string) {
|
|
80
65
|
// let session = this.tokenSessions[configId];
|
|
81
66
|
// if (session)
|
|
@@ -91,59 +76,57 @@ var FirebaseModule_Class = /** @class */ (function (_super) {
|
|
|
91
76
|
// await session.connect();
|
|
92
77
|
// return session;
|
|
93
78
|
// }
|
|
94
|
-
|
|
79
|
+
createLocalAdminSession() {
|
|
95
80
|
if (this.localAdmin)
|
|
96
81
|
return this.localAdmin;
|
|
97
82
|
this.logInfo("Creating local admin session");
|
|
98
83
|
this.localAdmin = new FirebaseSession_Admin_1.FirebaseSession_Admin("local-admin");
|
|
99
84
|
this.localAdmin.connect();
|
|
100
85
|
return this.localAdmin;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
|
|
86
|
+
}
|
|
87
|
+
createAdminSession(_projectId) {
|
|
88
|
+
let projectId = _projectId;
|
|
104
89
|
if (!projectId)
|
|
105
90
|
projectId = this.localProjectId;
|
|
106
|
-
|
|
91
|
+
let session = this.adminSessions[projectId];
|
|
107
92
|
if (session)
|
|
108
93
|
return session;
|
|
109
|
-
this.logInfo(
|
|
110
|
-
|
|
94
|
+
this.logInfo(`Creating Firebase session for project id: ${projectId}`);
|
|
95
|
+
let config = this.getProjectAuth(projectId);
|
|
111
96
|
if (!config)
|
|
112
97
|
return this.createLocalAdminSession();
|
|
113
98
|
if (typeof config === "string")
|
|
114
99
|
config = JSON.parse(fs_1.readFileSync(config, "utf8"));
|
|
115
100
|
if (!config || !config.client_email || !config.private_key)
|
|
116
|
-
throw new ts_common_1.BadImplementationException(
|
|
101
|
+
throw new ts_common_1.BadImplementationException(`Config for key ${projectId} is not an Admin credentials pattern`);
|
|
117
102
|
session = new FirebaseSession_Admin_1.FirebaseSession_Admin(projectId, config);
|
|
118
103
|
this.adminSessions[projectId] = session;
|
|
119
104
|
session.connect();
|
|
120
105
|
return session;
|
|
121
|
-
}
|
|
122
|
-
|
|
106
|
+
}
|
|
107
|
+
getProjectAuth(projectId) {
|
|
123
108
|
var _a;
|
|
124
109
|
return (_a = this.config) === null || _a === void 0 ? void 0 : _a[projectId];
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
.filter(
|
|
132
|
-
.map(
|
|
133
|
-
.filter(
|
|
134
|
-
for (
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
var project = toRet[projectId] || (toRet[projectId] = { projectId: projectId, collections: [] });
|
|
110
|
+
}
|
|
111
|
+
listCollectionsInModules() {
|
|
112
|
+
const modules = ts_common_1.moduleResolver();
|
|
113
|
+
const firebaseProjectCollections = modules.reduce((toRet, module) => {
|
|
114
|
+
const keys = ts_common_1._keys(module);
|
|
115
|
+
const _collections = keys
|
|
116
|
+
.filter(key => { var _a; return typeof module[key] === "object" && ((_a = module[key].constructor) === null || _a === void 0 ? void 0 : _a["name"].startsWith("FirestoreCollection")); })
|
|
117
|
+
.map(key => module[key])
|
|
118
|
+
.filter(collection => collection.wrapper.isAdmin());
|
|
119
|
+
for (const collection of _collections) {
|
|
120
|
+
const projectId = collection.wrapper.firebaseSession.getProjectId();
|
|
121
|
+
const collectionName = collection.name;
|
|
122
|
+
const project = toRet[projectId] || (toRet[projectId] = { projectId: projectId, collections: [] });
|
|
139
123
|
project.collections.push(collectionName);
|
|
140
124
|
}
|
|
141
125
|
return toRet;
|
|
142
126
|
}, {});
|
|
143
127
|
return Object.values(firebaseProjectCollections);
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
}(ts_common_1.Module));
|
|
128
|
+
}
|
|
129
|
+
}
|
|
147
130
|
exports.FirebaseModule_Class = FirebaseModule_Class;
|
|
148
131
|
exports.FirebaseModule = new FirebaseModule_Class();
|
|
149
132
|
//# sourceMappingURL=FirebaseModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirebaseModule.js","sourceRoot":"","sources":["../../src/main/app-backend/FirebaseModule.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG
|
|
1
|
+
{"version":3,"file":"FirebaseModule.js","sourceRoot":"","sources":["../../src/main/app-backend/FirebaseModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FirebaseSession } from "./firebase-session";
|
|
2
2
|
import { Logger } from "@intuitionrobotics/ts-common";
|
|
3
3
|
export declare abstract class FirebaseBaseWrapper extends Logger {
|
|
4
|
-
readonly firebaseSession: FirebaseSession<any>;
|
|
5
|
-
protected constructor(firebaseSession: FirebaseSession<any>);
|
|
4
|
+
readonly firebaseSession: FirebaseSession<any, any>;
|
|
5
|
+
protected constructor(firebaseSession: FirebaseSession<any, any>);
|
|
6
6
|
isAdmin(): boolean;
|
|
7
7
|
}
|
|
@@ -16,33 +16,17 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
var __extends = (this && this.__extends) || (function () {
|
|
20
|
-
var extendStatics = function (d, b) {
|
|
21
|
-
extendStatics = Object.setPrototypeOf ||
|
|
22
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
23
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
24
|
-
return extendStatics(d, b);
|
|
25
|
-
};
|
|
26
|
-
return function (d, b) {
|
|
27
|
-
extendStatics(d, b);
|
|
28
|
-
function __() { this.constructor = d; }
|
|
29
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
30
|
-
};
|
|
31
|
-
})();
|
|
32
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
20
|
exports.FirebaseBaseWrapper = void 0;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
_this.firebaseSession = firebaseSession;
|
|
40
|
-
return _this;
|
|
21
|
+
const ts_common_1 = require("@intuitionrobotics/ts-common");
|
|
22
|
+
class FirebaseBaseWrapper extends ts_common_1.Logger {
|
|
23
|
+
constructor(firebaseSession) {
|
|
24
|
+
super();
|
|
25
|
+
this.firebaseSession = firebaseSession;
|
|
41
26
|
}
|
|
42
|
-
|
|
27
|
+
isAdmin() {
|
|
43
28
|
return this.firebaseSession.isAdmin();
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
}(ts_common_1.Logger));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
47
31
|
exports.FirebaseBaseWrapper = FirebaseBaseWrapper;
|
|
48
32
|
//# sourceMappingURL=FirebaseBaseWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirebaseBaseWrapper.js","sourceRoot":"","sources":["../../../src/main/app-backend/auth/FirebaseBaseWrapper.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG
|
|
1
|
+
{"version":3,"file":"FirebaseBaseWrapper.js","sourceRoot":"","sources":["../../../src/main/app-backend/auth/FirebaseBaseWrapper.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAGH,4DAAoD;AAEpD,MAAsB,mBACrB,SAAQ,kBAAM;IAId,YAAsB,eAA0C;QAC/D,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACxC,CAAC;IAED,OAAO;QACN,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;IACvC,CAAC;CACD;AAbD,kDAaC"}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Created by tacb0ss on 19/09/2018.
|
|
3
|
-
*/
|
|
4
|
-
import { auth } from "firebase-admin";
|
|
5
1
|
import { JWTInput } from "google-auth-library";
|
|
6
2
|
import { FirebaseSession } from "./firebase-session";
|
|
3
|
+
import { Auth } from "firebase-admin/auth";
|
|
4
|
+
import { App } from "firebase-admin/app";
|
|
7
5
|
export declare class FirebaseSession_Admin extends FirebaseSession<JWTInput & {
|
|
8
6
|
databaseURL?: string;
|
|
9
|
-
} | undefined> {
|
|
7
|
+
} | undefined, App> {
|
|
10
8
|
constructor(sessionName: string, config?: JWTInput);
|
|
11
9
|
connect(): void;
|
|
12
10
|
getProjectId(): string;
|
|
13
11
|
private createApp;
|
|
14
|
-
getAuth():
|
|
12
|
+
getAuth(): Auth;
|
|
15
13
|
}
|
|
@@ -16,36 +16,21 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
var __extends = (this && this.__extends) || (function () {
|
|
20
|
-
var extendStatics = function (d, b) {
|
|
21
|
-
extendStatics = Object.setPrototypeOf ||
|
|
22
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
23
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
24
|
-
return extendStatics(d, b);
|
|
25
|
-
};
|
|
26
|
-
return function (d, b) {
|
|
27
|
-
extendStatics(d, b);
|
|
28
|
-
function __() { this.constructor = d; }
|
|
29
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
30
|
-
};
|
|
31
|
-
})();
|
|
32
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
20
|
exports.FirebaseSession_Admin = void 0;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
function FirebaseSession_Admin(sessionName, config) {
|
|
43
|
-
return _super.call(this, config, sessionName) || this;
|
|
21
|
+
const firebase_admin_1 = require("firebase-admin");
|
|
22
|
+
const firebase_session_1 = require("./firebase-session");
|
|
23
|
+
const ts_common_1 = require("@intuitionrobotics/ts-common");
|
|
24
|
+
const auth_1 = require("firebase-admin/auth");
|
|
25
|
+
const app_1 = require("firebase-admin/app");
|
|
26
|
+
class FirebaseSession_Admin extends firebase_session_1.FirebaseSession {
|
|
27
|
+
constructor(sessionName, config) {
|
|
28
|
+
super(config, sessionName);
|
|
44
29
|
}
|
|
45
|
-
|
|
30
|
+
connect() {
|
|
46
31
|
this.app = this.createApp();
|
|
47
|
-
}
|
|
48
|
-
|
|
32
|
+
}
|
|
33
|
+
getProjectId() {
|
|
49
34
|
if (!this.config) {
|
|
50
35
|
if (!process.env.GCLOUD_PROJECT)
|
|
51
36
|
throw new ts_common_1.ThisShouldNotHappenException("Could not deduce project id from function const!!");
|
|
@@ -54,20 +39,19 @@ var FirebaseSession_Admin = /** @class */ (function (_super) {
|
|
|
54
39
|
if (!this.config.project_id)
|
|
55
40
|
throw new ts_common_1.ThisShouldNotHappenException("Could not deduce project id from session config.. if you need the functionality.. add it to the config!!");
|
|
56
41
|
return this.config.project_id;
|
|
57
|
-
}
|
|
58
|
-
|
|
42
|
+
}
|
|
43
|
+
createApp() {
|
|
59
44
|
if (!this.config)
|
|
60
|
-
return
|
|
61
|
-
|
|
62
|
-
return
|
|
45
|
+
return app_1.initializeApp();
|
|
46
|
+
const databaseURL = this.config.databaseURL || `https://${this.config.project_id}.firebaseio.com`;
|
|
47
|
+
return app_1.initializeApp({
|
|
63
48
|
credential: firebase_admin_1.credential.cert(this.config),
|
|
64
49
|
databaseURL: databaseURL
|
|
65
50
|
}, this.sessionName);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
return this.app
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
}(firebase_session_1.FirebaseSession));
|
|
51
|
+
}
|
|
52
|
+
getAuth() {
|
|
53
|
+
return auth_1.getAuth(this.app);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
72
56
|
exports.FirebaseSession_Admin = FirebaseSession_Admin;
|
|
73
57
|
//# sourceMappingURL=FirebaseSession_Admin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FirebaseSession_Admin.js","sourceRoot":"","sources":["../../../src/main/app-backend/auth/FirebaseSession_Admin.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG
|
|
1
|
+
{"version":3,"file":"FirebaseSession_Admin.js","sourceRoot":"","sources":["../../../src/main/app-backend/auth/FirebaseSession_Admin.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,mDAGwB;AAExB,yDAAmD;AACnD,4DAA0E;AAC1E,8CAG6B;AAC7B,4CAG4B;AAE5B,MAAa,qBACZ,SAAQ,kCAAqE;IAE7E,YAAY,WAAmB,EAAE,MAAiB;QACjD,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC5B,CAAC;IAEM,OAAO;QACb,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAC7B,CAAC;IAED,YAAY;QACX,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACjB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc;gBAC9B,MAAM,IAAI,wCAA4B,CAAC,mDAAmD,CAAC,CAAA;YAE5F,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;SAClC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU;YAC1B,MAAM,IAAI,wCAA4B,CAAC,0GAA0G,CAAC,CAAA;QAEnJ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEO,SAAS;QAChB,IAAI,CAAC,IAAI,CAAC,MAAM;YACf,OAAO,mBAAa,EAAE,CAAC;QAExB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,WAAW,IAAI,CAAC,MAAM,CAAC,UAAU,iBAAiB,CAAC;QAClG,OAAO,mBAAa,CAAC;YACC,UAAU,EAAE,2BAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAwB,CAAC;YAC1D,WAAW,EAAE,WAAW;SACxB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3C,CAAC;IAEM,OAAO;QACb,OAAO,cAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACD;AAvCD,sDAuCC"}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Created by tacb0ss on 25/08/2018.
|
|
3
|
-
*/
|
|
4
1
|
import { Logger } from "@intuitionrobotics/ts-common";
|
|
5
2
|
import { FirestoreWrapper } from "../firestore/FirestoreWrapper";
|
|
6
3
|
import { DatabaseWrapper } from "../database/DatabaseWrapper";
|
|
7
4
|
import { StorageWrapper } from "../storage/StorageWrapper";
|
|
8
5
|
import { PushMessagesWrapper } from "../push/PushMessagesWrapper";
|
|
9
|
-
import * as admin from "firebase-admin";
|
|
10
6
|
import { FirebaseConfig } from "../..";
|
|
11
7
|
export declare type Firebase_UserCredential = {
|
|
12
8
|
config: FirebaseConfig;
|
|
@@ -15,9 +11,8 @@ export declare type Firebase_UserCredential = {
|
|
|
15
11
|
password: string;
|
|
16
12
|
};
|
|
17
13
|
};
|
|
18
|
-
export declare
|
|
19
|
-
|
|
20
|
-
app: FirebaseApp;
|
|
14
|
+
export declare abstract class FirebaseSession<Config, AppType> extends Logger {
|
|
15
|
+
app: AppType;
|
|
21
16
|
protected database?: DatabaseWrapper;
|
|
22
17
|
protected storage?: StorageWrapper;
|
|
23
18
|
protected firestore?: FirestoreWrapper;
|
|
@@ -16,63 +16,43 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*/
|
|
19
|
-
var __extends = (this && this.__extends) || (function () {
|
|
20
|
-
var extendStatics = function (d, b) {
|
|
21
|
-
extendStatics = Object.setPrototypeOf ||
|
|
22
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
23
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
24
|
-
return extendStatics(d, b);
|
|
25
|
-
};
|
|
26
|
-
return function (d, b) {
|
|
27
|
-
extendStatics(d, b);
|
|
28
|
-
function __() { this.constructor = d; }
|
|
29
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
30
|
-
};
|
|
31
|
-
})();
|
|
32
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
20
|
exports.FirebaseSession = void 0;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
if (_admin === void 0) { _admin = true; }
|
|
46
|
-
var _this = _super.call(this, "firebase: " + sessionName) || this;
|
|
47
|
-
_this.sessionName = sessionName;
|
|
48
|
-
_this.config = config;
|
|
49
|
-
_this.admin = _admin;
|
|
50
|
-
return _this;
|
|
21
|
+
const ts_common_1 = require("@intuitionrobotics/ts-common");
|
|
22
|
+
const FirestoreWrapper_1 = require("../firestore/FirestoreWrapper");
|
|
23
|
+
const DatabaseWrapper_1 = require("../database/DatabaseWrapper");
|
|
24
|
+
const StorageWrapper_1 = require("../storage/StorageWrapper");
|
|
25
|
+
const PushMessagesWrapper_1 = require("../push/PushMessagesWrapper");
|
|
26
|
+
class FirebaseSession extends ts_common_1.Logger {
|
|
27
|
+
constructor(config, sessionName, _admin = true) {
|
|
28
|
+
super(`firebase: ${sessionName}`);
|
|
29
|
+
this.sessionName = sessionName;
|
|
30
|
+
this.config = config;
|
|
31
|
+
this.admin = _admin;
|
|
51
32
|
}
|
|
52
|
-
|
|
33
|
+
isAdmin() {
|
|
53
34
|
return this.admin;
|
|
54
|
-
}
|
|
55
|
-
|
|
35
|
+
}
|
|
36
|
+
getDatabase() {
|
|
56
37
|
if (this.database)
|
|
57
38
|
return this.database;
|
|
58
39
|
return this.database = new DatabaseWrapper_1.DatabaseWrapper(this);
|
|
59
|
-
}
|
|
60
|
-
|
|
40
|
+
}
|
|
41
|
+
getStorage() {
|
|
61
42
|
if (this.storage)
|
|
62
43
|
return this.storage;
|
|
63
44
|
return this.storage = new StorageWrapper_1.StorageWrapper(this);
|
|
64
|
-
}
|
|
65
|
-
|
|
45
|
+
}
|
|
46
|
+
getFirestore() {
|
|
66
47
|
if (this.firestore)
|
|
67
48
|
return this.firestore;
|
|
68
49
|
return this.firestore = new FirestoreWrapper_1.FirestoreWrapper(this);
|
|
69
|
-
}
|
|
70
|
-
|
|
50
|
+
}
|
|
51
|
+
getMessaging() {
|
|
71
52
|
if (this.messaging)
|
|
72
53
|
return this.messaging;
|
|
73
54
|
return this.messaging = new PushMessagesWrapper_1.PushMessagesWrapper(this);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
}(ts_common_1.Logger));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
77
57
|
exports.FirebaseSession = FirebaseSession;
|
|
78
58
|
//# sourceMappingURL=firebase-session.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-session.js","sourceRoot":"","sources":["../../../src/main/app-backend/auth/firebase-session.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG
|
|
1
|
+
{"version":3,"file":"firebase-session.js","sourceRoot":"","sources":["../../../src/main/app-backend/auth/firebase-session.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAEH,4DAAoD;AACpD,oEAA+D;AAC/D,iEAA4D;AAC5D,8DAAyD;AACzD,qEAAgE;AAWhE,MAAsB,eACrB,SAAQ,kBAAM;IAWd,YAAsB,MAAc,EAAE,WAAmB,EAAE,MAAM,GAAG,IAAI;QACvE,KAAK,CAAC,aAAa,WAAW,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;IACrB,CAAC;IAIM,OAAO;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAIM,WAAW;QACjB,IAAI,IAAI,CAAC,QAAQ;YAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;QAEtB,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAEM,UAAU;QAChB,IAAI,IAAI,CAAC,OAAO;YACf,OAAO,IAAI,CAAC,OAAO,CAAC;QAErB,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,+BAAc,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAEM,YAAY;QAClB,IAAI,IAAI,CAAC,SAAS;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC;QAEvB,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,mCAAgB,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAEM,YAAY;QAClB,IAAI,IAAI,CAAC,SAAS;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC;QAEvB,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,yCAAmB,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;CACD;AAtDD,0CAsDC"}
|
|
@@ -4,7 +4,7 @@ import { FirebaseSession } from "../auth/firebase-session";
|
|
|
4
4
|
import { FirebaseBaseWrapper } from "../auth/FirebaseBaseWrapper";
|
|
5
5
|
export declare class DatabaseWrapper extends FirebaseBaseWrapper {
|
|
6
6
|
private readonly database;
|
|
7
|
-
constructor(firebaseSession: FirebaseSession<any>);
|
|
7
|
+
constructor(firebaseSession: FirebaseSession<any, any>);
|
|
8
8
|
get<T>(path: string, defaultValue?: T): Promise<T | undefined>;
|
|
9
9
|
listen<T>(path: string, callback: (value: T | undefined) => void): FirebaseListener;
|
|
10
10
|
stopListening<T>(path: string, listener: FirebaseListener): void;
|