@guinetik/primitives-ts 0.1.1 → 0.2.0
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 +87 -87
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/totp.types.d.ts +95 -0
- package/dist/totp.types.d.ts.map +1 -0
- package/dist/totp.types.js +27 -0
- package/dist/website-firestore.types.d.ts +15 -0
- package/dist/website-firestore.types.d.ts.map +1 -1
- package/dist/website-firestore.types.js +2 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
# @guinetik/primitives-ts
|
|
2
|
-
|
|
3
|
-
Shared TypeScript primitives for Guinetik projects.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
This package contains pure TypeScript type definitions and interfaces used across the Guinetik ecosystem. It provides a single source of truth for data contracts between frontend and backend applications.
|
|
8
|
-
|
|
9
|
-
## Features
|
|
10
|
-
|
|
11
|
-
- ✅ **Pure TypeScript** - No runtime dependencies
|
|
12
|
-
- ✅ **Type-safe** - Full TypeScript support with declaration files
|
|
13
|
-
- ✅ **Lightweight** - Minimal bundle size
|
|
14
|
-
- ✅ **Universal** - Works in Node.js, browsers, and other JavaScript runtimes
|
|
15
|
-
|
|
16
|
-
## Installation
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
npm install @guinetik/primitives-ts
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Usage
|
|
23
|
-
|
|
24
|
-
```typescript
|
|
25
|
-
import { User, SystemMetrics, Container } from '@guinetik/primitives-ts';
|
|
26
|
-
|
|
27
|
-
// Use the types in your application
|
|
28
|
-
const user: User = {
|
|
29
|
-
uid: '123',
|
|
30
|
-
email: 'user@example.com',
|
|
31
|
-
displayName: 'John Doe'
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const metrics: SystemMetrics = {
|
|
35
|
-
cpu: { usage: 45.2, cores: 4, model: 'Intel Xeon' },
|
|
36
|
-
memory: { used: 8, total: 16, percentage: 50 },
|
|
37
|
-
disk: { used: 100, total: 500, percentage: 20 },
|
|
38
|
-
uptime: 86400,
|
|
39
|
-
timestamp: new Date()
|
|
40
|
-
};
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Type Categories
|
|
44
|
-
|
|
45
|
-
### Authentication (`auth.types.ts`)
|
|
46
|
-
- `User` - User information
|
|
47
|
-
- `AuthResponse` - Authentication response
|
|
48
|
-
- `AuthProvider` - Authentication provider types
|
|
49
|
-
- `UserUpdateData` - User profile update data
|
|
50
|
-
- `LoginPayload` - Login request payload
|
|
51
|
-
|
|
52
|
-
### System Monitoring (`system.types.ts`)
|
|
53
|
-
- `SystemMetrics` - System metrics (CPU, memory, disk)
|
|
54
|
-
- `Container` - Docker container information
|
|
55
|
-
- `LogEntry` - Container log entry
|
|
56
|
-
- `NetworkStats` - Network statistics
|
|
57
|
-
- `DeploymentInfo` - Deployment information
|
|
58
|
-
- `CommandResult` - Shell command execution result
|
|
59
|
-
|
|
60
|
-
### Website Content (`website.types.ts`)
|
|
61
|
-
- `SiteContent` - Full site content structure
|
|
62
|
-
- `SiteMetadata` - Site metadata
|
|
63
|
-
- `Menu`, `MenuItem` - Navigation menu
|
|
64
|
-
- `Theme`, `ThemeConfig` - Theme configuration
|
|
65
|
-
- `Card`, `Tag` - Project/demo cards with tags
|
|
66
|
-
- `Experiment` - CodePen experiments
|
|
67
|
-
- `AboutSection`, `ProjectsSection`, `DemosSection`, `ReposSection` - Content sections
|
|
68
|
-
|
|
69
|
-
## Development
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
# Build the package
|
|
73
|
-
npm run build
|
|
74
|
-
|
|
75
|
-
# The build output will be in the dist/ folder
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
## Publishing
|
|
79
|
-
|
|
80
|
-
```bash
|
|
81
|
-
# Publish to npm (requires authentication)
|
|
82
|
-
npm publish --access public
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## License
|
|
86
|
-
|
|
87
|
-
MIT © Guinetik
|
|
1
|
+
# @guinetik/primitives-ts
|
|
2
|
+
|
|
3
|
+
Shared TypeScript primitives for Guinetik projects.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This package contains pure TypeScript type definitions and interfaces used across the Guinetik ecosystem. It provides a single source of truth for data contracts between frontend and backend applications.
|
|
8
|
+
|
|
9
|
+
## Features
|
|
10
|
+
|
|
11
|
+
- ✅ **Pure TypeScript** - No runtime dependencies
|
|
12
|
+
- ✅ **Type-safe** - Full TypeScript support with declaration files
|
|
13
|
+
- ✅ **Lightweight** - Minimal bundle size
|
|
14
|
+
- ✅ **Universal** - Works in Node.js, browsers, and other JavaScript runtimes
|
|
15
|
+
|
|
16
|
+
## Installation
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
npm install @guinetik/primitives-ts
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Usage
|
|
23
|
+
|
|
24
|
+
```typescript
|
|
25
|
+
import { User, SystemMetrics, Container } from '@guinetik/primitives-ts';
|
|
26
|
+
|
|
27
|
+
// Use the types in your application
|
|
28
|
+
const user: User = {
|
|
29
|
+
uid: '123',
|
|
30
|
+
email: 'user@example.com',
|
|
31
|
+
displayName: 'John Doe'
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
const metrics: SystemMetrics = {
|
|
35
|
+
cpu: { usage: 45.2, cores: 4, model: 'Intel Xeon' },
|
|
36
|
+
memory: { used: 8, total: 16, percentage: 50 },
|
|
37
|
+
disk: { used: 100, total: 500, percentage: 20 },
|
|
38
|
+
uptime: 86400,
|
|
39
|
+
timestamp: new Date()
|
|
40
|
+
};
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Type Categories
|
|
44
|
+
|
|
45
|
+
### Authentication (`auth.types.ts`)
|
|
46
|
+
- `User` - User information
|
|
47
|
+
- `AuthResponse` - Authentication response
|
|
48
|
+
- `AuthProvider` - Authentication provider types
|
|
49
|
+
- `UserUpdateData` - User profile update data
|
|
50
|
+
- `LoginPayload` - Login request payload
|
|
51
|
+
|
|
52
|
+
### System Monitoring (`system.types.ts`)
|
|
53
|
+
- `SystemMetrics` - System metrics (CPU, memory, disk)
|
|
54
|
+
- `Container` - Docker container information
|
|
55
|
+
- `LogEntry` - Container log entry
|
|
56
|
+
- `NetworkStats` - Network statistics
|
|
57
|
+
- `DeploymentInfo` - Deployment information
|
|
58
|
+
- `CommandResult` - Shell command execution result
|
|
59
|
+
|
|
60
|
+
### Website Content (`website.types.ts`)
|
|
61
|
+
- `SiteContent` - Full site content structure
|
|
62
|
+
- `SiteMetadata` - Site metadata
|
|
63
|
+
- `Menu`, `MenuItem` - Navigation menu
|
|
64
|
+
- `Theme`, `ThemeConfig` - Theme configuration
|
|
65
|
+
- `Card`, `Tag` - Project/demo cards with tags
|
|
66
|
+
- `Experiment` - CodePen experiments
|
|
67
|
+
- `AboutSection`, `ProjectsSection`, `DemosSection`, `ReposSection` - Content sections
|
|
68
|
+
|
|
69
|
+
## Development
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Build the package
|
|
73
|
+
npm run build
|
|
74
|
+
|
|
75
|
+
# The build output will be in the dist/ folder
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Publishing
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# Publish to npm (requires authentication)
|
|
82
|
+
npm publish --access public
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## License
|
|
86
|
+
|
|
87
|
+
MIT © Guinetik
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,cAAc,CAAC;AAG7B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -33,3 +33,5 @@ __exportStar(require("./website.types"), exports);
|
|
|
33
33
|
__exportStar(require("./firestore.types"), exports);
|
|
34
34
|
// Website Firestore document types (backend only)
|
|
35
35
|
__exportStar(require("./website-firestore.types"), exports);
|
|
36
|
+
// TOTP/2FA types
|
|
37
|
+
__exportStar(require("./totp.types"), exports);
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TOTP/2FA Types
|
|
3
|
+
* Types for Time-based One-Time Password authentication
|
|
4
|
+
*/
|
|
5
|
+
import { FirestoreDocument } from './firestore.types';
|
|
6
|
+
/**
|
|
7
|
+
* Firestore document for TOTP secrets collection
|
|
8
|
+
* Collection: totp_secrets
|
|
9
|
+
* Document ID: Firebase user ID
|
|
10
|
+
*
|
|
11
|
+
* Stores TOTP secret keys for two-factor authentication.
|
|
12
|
+
* One document per user, identified by their Firebase UID.
|
|
13
|
+
*/
|
|
14
|
+
export interface TotpSecretDocument extends FirestoreDocument {
|
|
15
|
+
/** TOTP secret key (Base32 encoded) */
|
|
16
|
+
secret: string;
|
|
17
|
+
/** Is 2FA enabled for this user? */
|
|
18
|
+
enabled: boolean;
|
|
19
|
+
/** Document creation timestamp */
|
|
20
|
+
created_at: Date | any;
|
|
21
|
+
/** Document last update timestamp */
|
|
22
|
+
updated_at: Date | any;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Request to setup 2FA for a user
|
|
26
|
+
*/
|
|
27
|
+
export interface TotpSetupRequest {
|
|
28
|
+
/** Firebase user ID */
|
|
29
|
+
uid: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Response from 2FA setup endpoint
|
|
33
|
+
*/
|
|
34
|
+
export interface TotpSetupResponse {
|
|
35
|
+
/** Base32 encoded TOTP secret */
|
|
36
|
+
secret: string;
|
|
37
|
+
/** QR code as base64 data URI */
|
|
38
|
+
qr_code: string;
|
|
39
|
+
/** OTPAuth URI for manual entry */
|
|
40
|
+
uri: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Request to verify a TOTP code
|
|
44
|
+
*/
|
|
45
|
+
export interface TotpVerifyRequest {
|
|
46
|
+
/** Firebase user ID */
|
|
47
|
+
uid: string;
|
|
48
|
+
/** 6-digit TOTP code */
|
|
49
|
+
code: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Response from TOTP verification
|
|
53
|
+
*/
|
|
54
|
+
export interface TotpVerifyResponse {
|
|
55
|
+
/** Was the code valid? */
|
|
56
|
+
verified: boolean;
|
|
57
|
+
/** Human-readable message */
|
|
58
|
+
message: string;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Request to disable 2FA
|
|
62
|
+
*/
|
|
63
|
+
export interface TotpDisableRequest {
|
|
64
|
+
/** Firebase user ID */
|
|
65
|
+
uid: string;
|
|
66
|
+
/** Current valid TOTP code (required to confirm) */
|
|
67
|
+
code: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Response from checking 2FA status
|
|
71
|
+
*/
|
|
72
|
+
export interface TotpStatusResponse {
|
|
73
|
+
/** Is user enrolled in 2FA? (has a secret) */
|
|
74
|
+
enrolled: boolean;
|
|
75
|
+
/** Is 2FA currently enabled? */
|
|
76
|
+
enabled: boolean;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* TOTP collection name in Firestore
|
|
80
|
+
*/
|
|
81
|
+
export declare const TOTP_COLLECTION: "totp_secrets";
|
|
82
|
+
/**
|
|
83
|
+
* TOTP configuration constants
|
|
84
|
+
*/
|
|
85
|
+
export declare const TOTP_CONFIG: {
|
|
86
|
+
/** Number of digits in TOTP code */
|
|
87
|
+
readonly DIGITS: 6;
|
|
88
|
+
/** Time step in seconds */
|
|
89
|
+
readonly INTERVAL: 30;
|
|
90
|
+
/** Issuer name displayed in authenticator apps */
|
|
91
|
+
readonly ISSUER: "Guinetik";
|
|
92
|
+
/** Algorithm used for TOTP */
|
|
93
|
+
readonly ALGORITHM: "SHA1";
|
|
94
|
+
};
|
|
95
|
+
//# sourceMappingURL=totp.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"totp.types.d.ts","sourceRoot":"","sources":["../src/totp.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAMtD;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IAEf,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IAEjB,kCAAkC;IAClC,UAAU,EAAE,IAAI,GAAG,GAAG,CAAC;IAEvB,qCAAqC;IACrC,UAAU,EAAE,IAAI,GAAG,GAAG,CAAC;CACxB;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IAEf,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAEhB,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IAEZ,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAElB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IAEZ,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,QAAQ,EAAE,OAAO,CAAC;IAElB,gCAAgC;IAChC,OAAO,EAAE,OAAO,CAAC;CAClB;AAMD;;GAEG;AACH,eAAO,MAAM,eAAe,EAAG,cAAuB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,WAAW;IACtB,oCAAoC;;IAGpC,2BAA2B;;IAG3B,kDAAkD;;IAGlD,8BAA8B;;CAEtB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* TOTP/2FA Types
|
|
4
|
+
* Types for Time-based One-Time Password authentication
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.TOTP_CONFIG = exports.TOTP_COLLECTION = void 0;
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Constants
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* TOTP collection name in Firestore
|
|
13
|
+
*/
|
|
14
|
+
exports.TOTP_COLLECTION = 'totp_secrets';
|
|
15
|
+
/**
|
|
16
|
+
* TOTP configuration constants
|
|
17
|
+
*/
|
|
18
|
+
exports.TOTP_CONFIG = {
|
|
19
|
+
/** Number of digits in TOTP code */
|
|
20
|
+
DIGITS: 6,
|
|
21
|
+
/** Time step in seconds */
|
|
22
|
+
INTERVAL: 30,
|
|
23
|
+
/** Issuer name displayed in authenticator apps */
|
|
24
|
+
ISSUER: 'Guinetik',
|
|
25
|
+
/** Algorithm used for TOTP */
|
|
26
|
+
ALGORITHM: 'SHA1',
|
|
27
|
+
};
|
|
@@ -109,6 +109,19 @@ export interface ExperimentDocument extends FirestoreDocument, Experiment {
|
|
|
109
109
|
/** Optional technology tags */
|
|
110
110
|
tags?: string[];
|
|
111
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Firestore document for runtime-config collection
|
|
114
|
+
* Collection: runtime-config
|
|
115
|
+
* Document ID: configuration key (e.g., 'adminEmail', 'GITHUB_TOKEN')
|
|
116
|
+
*
|
|
117
|
+
* Runtime configuration values that can be updated without redeployment
|
|
118
|
+
*/
|
|
119
|
+
export interface RuntimeConfigDocument extends FirestoreDocument {
|
|
120
|
+
/** Configuration key */
|
|
121
|
+
key: string;
|
|
122
|
+
/** Configuration value (can be string, number, boolean, or object) */
|
|
123
|
+
value: string | number | boolean | Record<string, any>;
|
|
124
|
+
}
|
|
112
125
|
/**
|
|
113
126
|
* Firestore collection names
|
|
114
127
|
*/
|
|
@@ -119,6 +132,8 @@ export declare const FIRESTORE_COLLECTIONS: {
|
|
|
119
132
|
readonly PROJECTS: "website-projects";
|
|
120
133
|
readonly DEMOS: "website-demos";
|
|
121
134
|
readonly EXPERIMENTS: "website-experiments";
|
|
135
|
+
readonly RUNTIME_CONFIG: "runtime-config";
|
|
136
|
+
readonly TOTP_SECRETS: "totp_secrets";
|
|
122
137
|
};
|
|
123
138
|
/**
|
|
124
139
|
* Firestore document IDs for singleton documents
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"website-firestore.types.d.ts","sourceRoot":"","sources":["../src/website-firestore.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAMlF;;;;GAIG;AACH,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB;IAC9D,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IAEd,uBAAuB;IACvB,WAAW,EAAE,MAAM,CAAC;IAEpB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IAEd,2BAA2B;IAC3B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnC,mCAAmC;IACnC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhC,4BAA4B;IAC5B,KAAK,EAAE,YAAY,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,iBAAiB;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAElB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAc,SAAQ,iBAAiB,EAAE,KAAK;IAC7D,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,wBAAwB;IACxB,OAAO,EAAE,OAAO,CAAC;IAEjB,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,6BAA6B;IAC7B,MAAM,CAAC,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAgB,SAAQ,iBAAiB,EAAE,IAAI;IAC9D,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,2BAA2B;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAElB,0BAA0B;IAC1B,OAAO,EAAE,OAAO,CAAC;IAEjB,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB,EAAE,IAAI;IAC3D,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAC;IAEjB,+BAA+B;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB,EAAE,UAAU;IACvE,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IAEd,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAC;IAEjB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,2BAA2B;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAMD;;GAEG;AACH,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"website-firestore.types.d.ts","sourceRoot":"","sources":["../src/website-firestore.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@ exports.FIRESTORE_COLLECTIONS = {
|
|
|
21
21
|
PROJECTS: 'website-projects',
|
|
22
22
|
DEMOS: 'website-demos',
|
|
23
23
|
EXPERIMENTS: 'website-experiments',
|
|
24
|
+
RUNTIME_CONFIG: 'runtime-config',
|
|
25
|
+
TOTP_SECRETS: 'totp_secrets',
|
|
24
26
|
};
|
|
25
27
|
/**
|
|
26
28
|
* Firestore document IDs for singleton documents
|