@cravery/firebase 0.0.37 → 0.0.38

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.
Files changed (37) hide show
  1. package/dist/converters/equipment/content.d.ts.map +1 -1
  2. package/dist/converters/equipment/content.js.map +1 -1
  3. package/dist/converters/equipment/meta.d.ts.map +1 -1
  4. package/dist/converters/equipment/meta.js.map +1 -1
  5. package/dist/converters/ingredients/content.d.ts.map +1 -1
  6. package/dist/converters/ingredients/content.js.map +1 -1
  7. package/dist/converters/ingredients/meta.d.ts.map +1 -1
  8. package/dist/converters/ingredients/meta.js.map +1 -1
  9. package/dist/converters/ingredients/user.d.ts.map +1 -1
  10. package/dist/converters/ingredients/user.js.map +1 -1
  11. package/package.json +33 -33
  12. package/src/converters/equipment/content.ts +18 -17
  13. package/src/converters/equipment/index.ts +3 -3
  14. package/src/converters/equipment/meta.ts +37 -36
  15. package/src/converters/equipment/user.ts +36 -36
  16. package/src/converters/ingredients/content.ts +18 -17
  17. package/src/converters/ingredients/index.ts +3 -3
  18. package/src/converters/ingredients/meta.ts +37 -36
  19. package/src/converters/ingredients/user.ts +40 -38
  20. package/src/converters/recipes/comment.ts +36 -36
  21. package/src/converters/recipes/content.ts +17 -17
  22. package/src/converters/recipes/index.ts +3 -3
  23. package/src/converters/recipes/meta.ts +36 -36
  24. package/src/converters/reports/index.ts +2 -2
  25. package/src/converters/reports/report.ts +36 -36
  26. package/src/converters/reports/update.ts +36 -36
  27. package/src/converters/settings/index.ts +1 -1
  28. package/src/converters/settings/settings.ts +36 -36
  29. package/src/converters/subscriptions/index.ts +1 -1
  30. package/src/converters/subscriptions/subscription.ts +85 -85
  31. package/src/converters/users/bookmark.ts +36 -36
  32. package/src/converters/users/index.ts +3 -3
  33. package/src/converters/users/profile.ts +36 -36
  34. package/src/converters/users/user.ts +36 -36
  35. package/src/lib/index.ts +2 -2
  36. package/src/lib/strip-undefined.ts +32 -32
  37. package/src/lib/timestamp.ts +44 -44
@@ -1,36 +1,36 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { RecipeMeta } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- export const recipeMetaConverter: FirestoreDataConverter<RecipeMeta> = {
16
- toFirestore(recipeMeta: RecipeMeta): DocumentData {
17
- const { id, createdAt, updatedAt, deletedAt, ...rest } = recipeMeta;
18
- return stripUndefined({
19
- ...rest,
20
- createdAt: toFirestoreTimestamp(createdAt),
21
- updatedAt: toFirestoreTimestamp(updatedAt),
22
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
- });
24
- },
25
-
26
- fromFirestore(snapshot: QueryDocumentSnapshot): RecipeMeta {
27
- const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
- return {
29
- ...rest,
30
- id: snapshot.id,
31
- createdAt: toTimestamp(createdAt),
32
- updatedAt: toTimestamp(updatedAt),
33
- deletedAt: toOptionalTimestamp(deletedAt),
34
- } as RecipeMeta;
35
- },
36
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { RecipeMeta } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ export const recipeMetaConverter: FirestoreDataConverter<RecipeMeta> = {
16
+ toFirestore(recipeMeta: RecipeMeta): DocumentData {
17
+ const { id, createdAt, updatedAt, deletedAt, ...rest } = recipeMeta;
18
+ return stripUndefined({
19
+ ...rest,
20
+ createdAt: toFirestoreTimestamp(createdAt),
21
+ updatedAt: toFirestoreTimestamp(updatedAt),
22
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
+ });
24
+ },
25
+
26
+ fromFirestore(snapshot: QueryDocumentSnapshot): RecipeMeta {
27
+ const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
+ return {
29
+ ...rest,
30
+ id: snapshot.id,
31
+ createdAt: toTimestamp(createdAt),
32
+ updatedAt: toTimestamp(updatedAt),
33
+ deletedAt: toOptionalTimestamp(deletedAt),
34
+ } as RecipeMeta;
35
+ },
36
+ };
@@ -1,2 +1,2 @@
1
- export * from "./report";
2
- export * from "./update";
1
+ export * from "./report";
2
+ export * from "./update";
@@ -1,36 +1,36 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { Report } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- export const reportConverter: FirestoreDataConverter<Report> = {
16
- toFirestore(report: Report): DocumentData {
17
- const { id, createdAt, updatedAt, deletedAt, ...rest } = report;
18
- return stripUndefined({
19
- ...rest,
20
- createdAt: toFirestoreTimestamp(createdAt),
21
- updatedAt: toFirestoreTimestamp(updatedAt),
22
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
- });
24
- },
25
-
26
- fromFirestore(snapshot: QueryDocumentSnapshot): Report {
27
- const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
- return {
29
- ...rest,
30
- id: snapshot.id,
31
- createdAt: toTimestamp(createdAt),
32
- updatedAt: toTimestamp(updatedAt),
33
- deletedAt: toOptionalTimestamp(deletedAt),
34
- } as Report;
35
- },
36
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { Report } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ export const reportConverter: FirestoreDataConverter<Report> = {
16
+ toFirestore(report: Report): DocumentData {
17
+ const { id, createdAt, updatedAt, deletedAt, ...rest } = report;
18
+ return stripUndefined({
19
+ ...rest,
20
+ createdAt: toFirestoreTimestamp(createdAt),
21
+ updatedAt: toFirestoreTimestamp(updatedAt),
22
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
+ });
24
+ },
25
+
26
+ fromFirestore(snapshot: QueryDocumentSnapshot): Report {
27
+ const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
+ return {
29
+ ...rest,
30
+ id: snapshot.id,
31
+ createdAt: toTimestamp(createdAt),
32
+ updatedAt: toTimestamp(updatedAt),
33
+ deletedAt: toOptionalTimestamp(deletedAt),
34
+ } as Report;
35
+ },
36
+ };
@@ -1,36 +1,36 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { ReportUpdate } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- export const reportUpdateConverter: FirestoreDataConverter<ReportUpdate> = {
16
- toFirestore(update: ReportUpdate): DocumentData {
17
- const { id, createdAt, updatedAt, deletedAt, ...rest } = update;
18
- return stripUndefined({
19
- ...rest,
20
- createdAt: toFirestoreTimestamp(createdAt),
21
- updatedAt: toFirestoreTimestamp(updatedAt),
22
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
- });
24
- },
25
-
26
- fromFirestore(snapshot: QueryDocumentSnapshot): ReportUpdate {
27
- const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
- return {
29
- ...rest,
30
- id: snapshot.id,
31
- createdAt: toTimestamp(createdAt),
32
- updatedAt: toTimestamp(updatedAt),
33
- deletedAt: toOptionalTimestamp(deletedAt),
34
- } as ReportUpdate;
35
- },
36
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { ReportUpdate } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ export const reportUpdateConverter: FirestoreDataConverter<ReportUpdate> = {
16
+ toFirestore(update: ReportUpdate): DocumentData {
17
+ const { id, createdAt, updatedAt, deletedAt, ...rest } = update;
18
+ return stripUndefined({
19
+ ...rest,
20
+ createdAt: toFirestoreTimestamp(createdAt),
21
+ updatedAt: toFirestoreTimestamp(updatedAt),
22
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
+ });
24
+ },
25
+
26
+ fromFirestore(snapshot: QueryDocumentSnapshot): ReportUpdate {
27
+ const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
+ return {
29
+ ...rest,
30
+ id: snapshot.id,
31
+ createdAt: toTimestamp(createdAt),
32
+ updatedAt: toTimestamp(updatedAt),
33
+ deletedAt: toOptionalTimestamp(deletedAt),
34
+ } as ReportUpdate;
35
+ },
36
+ };
@@ -1 +1 @@
1
- export * from "./settings";
1
+ export * from "./settings";
@@ -1,36 +1,36 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { Settings } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- export const settingsConverter: FirestoreDataConverter<Settings> = {
16
- toFirestore(settings: Settings): DocumentData {
17
- const { id, createdAt, updatedAt, deletedAt, ...rest } = settings;
18
- return stripUndefined({
19
- ...rest,
20
- createdAt: toFirestoreTimestamp(createdAt),
21
- updatedAt: toFirestoreTimestamp(updatedAt),
22
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
- });
24
- },
25
-
26
- fromFirestore(snapshot: QueryDocumentSnapshot): Settings {
27
- const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
- return {
29
- ...rest,
30
- id: snapshot.id,
31
- createdAt: toTimestamp(createdAt),
32
- updatedAt: toTimestamp(updatedAt),
33
- deletedAt: toOptionalTimestamp(deletedAt),
34
- } as Settings;
35
- },
36
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { Settings } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ export const settingsConverter: FirestoreDataConverter<Settings> = {
16
+ toFirestore(settings: Settings): DocumentData {
17
+ const { id, createdAt, updatedAt, deletedAt, ...rest } = settings;
18
+ return stripUndefined({
19
+ ...rest,
20
+ createdAt: toFirestoreTimestamp(createdAt),
21
+ updatedAt: toFirestoreTimestamp(updatedAt),
22
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
+ });
24
+ },
25
+
26
+ fromFirestore(snapshot: QueryDocumentSnapshot): Settings {
27
+ const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
+ return {
29
+ ...rest,
30
+ id: snapshot.id,
31
+ createdAt: toTimestamp(createdAt),
32
+ updatedAt: toTimestamp(updatedAt),
33
+ deletedAt: toOptionalTimestamp(deletedAt),
34
+ } as Settings;
35
+ },
36
+ };
@@ -1 +1 @@
1
- export * from "./subscription";
1
+ export * from "./subscription";
@@ -1,85 +1,85 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { Subscription, Member } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- function toFirestoreMember(member: Member): DocumentData {
16
- const { invitedAt, joinedAt, ...rest } = member;
17
- return stripUndefined({
18
- ...rest,
19
- invitedAt: toFirestoreTimestamp(invitedAt),
20
- joinedAt: toOptionalFirestoreTimestamp(joinedAt),
21
- });
22
- }
23
-
24
- function fromFirestoreMember(data: DocumentData): Member {
25
- const { invitedAt, joinedAt, ...rest } = data;
26
- return {
27
- ...rest,
28
- invitedAt: toTimestamp(invitedAt),
29
- joinedAt: toOptionalTimestamp(joinedAt),
30
- } as Member;
31
- }
32
-
33
- export const subscriptionConverter: FirestoreDataConverter<Subscription> = {
34
- toFirestore(subscription: Subscription): DocumentData {
35
- const {
36
- id,
37
- createdAt,
38
- updatedAt,
39
- deletedAt,
40
- expiresAt,
41
- purchasedAt,
42
- cancelledAt,
43
- trialExpiresAt,
44
- members,
45
- ...rest
46
- } = subscription;
47
- return stripUndefined({
48
- ...rest,
49
- createdAt: toFirestoreTimestamp(createdAt),
50
- updatedAt: toFirestoreTimestamp(updatedAt),
51
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
52
- expiresAt: toFirestoreTimestamp(expiresAt),
53
- purchasedAt: toFirestoreTimestamp(purchasedAt),
54
- cancelledAt: toOptionalFirestoreTimestamp(cancelledAt),
55
- trialExpiresAt: toOptionalFirestoreTimestamp(trialExpiresAt),
56
- members: members.map(toFirestoreMember),
57
- });
58
- },
59
-
60
- fromFirestore(snapshot: QueryDocumentSnapshot): Subscription {
61
- const {
62
- createdAt,
63
- updatedAt,
64
- deletedAt,
65
- expiresAt,
66
- purchasedAt,
67
- cancelledAt,
68
- trialExpiresAt,
69
- members,
70
- ...rest
71
- } = snapshot.data();
72
- return {
73
- ...rest,
74
- id: snapshot.id,
75
- createdAt: toTimestamp(createdAt),
76
- updatedAt: toTimestamp(updatedAt),
77
- deletedAt: toOptionalTimestamp(deletedAt),
78
- expiresAt: toTimestamp(expiresAt),
79
- purchasedAt: toTimestamp(purchasedAt),
80
- cancelledAt: toOptionalTimestamp(cancelledAt),
81
- trialExpiresAt: toOptionalTimestamp(trialExpiresAt),
82
- members: members.map(fromFirestoreMember),
83
- } as Subscription;
84
- },
85
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { Subscription, Member } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ function toFirestoreMember(member: Member): DocumentData {
16
+ const { invitedAt, joinedAt, ...rest } = member;
17
+ return stripUndefined({
18
+ ...rest,
19
+ invitedAt: toFirestoreTimestamp(invitedAt),
20
+ joinedAt: toOptionalFirestoreTimestamp(joinedAt),
21
+ });
22
+ }
23
+
24
+ function fromFirestoreMember(data: DocumentData): Member {
25
+ const { invitedAt, joinedAt, ...rest } = data;
26
+ return {
27
+ ...rest,
28
+ invitedAt: toTimestamp(invitedAt),
29
+ joinedAt: toOptionalTimestamp(joinedAt),
30
+ } as Member;
31
+ }
32
+
33
+ export const subscriptionConverter: FirestoreDataConverter<Subscription> = {
34
+ toFirestore(subscription: Subscription): DocumentData {
35
+ const {
36
+ id,
37
+ createdAt,
38
+ updatedAt,
39
+ deletedAt,
40
+ expiresAt,
41
+ purchasedAt,
42
+ cancelledAt,
43
+ trialExpiresAt,
44
+ members,
45
+ ...rest
46
+ } = subscription;
47
+ return stripUndefined({
48
+ ...rest,
49
+ createdAt: toFirestoreTimestamp(createdAt),
50
+ updatedAt: toFirestoreTimestamp(updatedAt),
51
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
52
+ expiresAt: toFirestoreTimestamp(expiresAt),
53
+ purchasedAt: toFirestoreTimestamp(purchasedAt),
54
+ cancelledAt: toOptionalFirestoreTimestamp(cancelledAt),
55
+ trialExpiresAt: toOptionalFirestoreTimestamp(trialExpiresAt),
56
+ members: members.map(toFirestoreMember),
57
+ });
58
+ },
59
+
60
+ fromFirestore(snapshot: QueryDocumentSnapshot): Subscription {
61
+ const {
62
+ createdAt,
63
+ updatedAt,
64
+ deletedAt,
65
+ expiresAt,
66
+ purchasedAt,
67
+ cancelledAt,
68
+ trialExpiresAt,
69
+ members,
70
+ ...rest
71
+ } = snapshot.data();
72
+ return {
73
+ ...rest,
74
+ id: snapshot.id,
75
+ createdAt: toTimestamp(createdAt),
76
+ updatedAt: toTimestamp(updatedAt),
77
+ deletedAt: toOptionalTimestamp(deletedAt),
78
+ expiresAt: toTimestamp(expiresAt),
79
+ purchasedAt: toTimestamp(purchasedAt),
80
+ cancelledAt: toOptionalTimestamp(cancelledAt),
81
+ trialExpiresAt: toOptionalTimestamp(trialExpiresAt),
82
+ members: members.map(fromFirestoreMember),
83
+ } as Subscription;
84
+ },
85
+ };
@@ -1,36 +1,36 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { Bookmark } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- export const bookmarkConverter: FirestoreDataConverter<Bookmark> = {
16
- toFirestore(bookmark: Bookmark): DocumentData {
17
- const { id, createdAt, updatedAt, deletedAt, ...rest } = bookmark;
18
- return stripUndefined({
19
- ...rest,
20
- createdAt: toFirestoreTimestamp(createdAt),
21
- updatedAt: toFirestoreTimestamp(updatedAt),
22
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
- });
24
- },
25
-
26
- fromFirestore(snapshot: QueryDocumentSnapshot): Bookmark {
27
- const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
- return {
29
- ...rest,
30
- id: snapshot.id,
31
- createdAt: toTimestamp(createdAt),
32
- updatedAt: toTimestamp(updatedAt),
33
- deletedAt: toOptionalTimestamp(deletedAt),
34
- } as Bookmark;
35
- },
36
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { Bookmark } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ export const bookmarkConverter: FirestoreDataConverter<Bookmark> = {
16
+ toFirestore(bookmark: Bookmark): DocumentData {
17
+ const { id, createdAt, updatedAt, deletedAt, ...rest } = bookmark;
18
+ return stripUndefined({
19
+ ...rest,
20
+ createdAt: toFirestoreTimestamp(createdAt),
21
+ updatedAt: toFirestoreTimestamp(updatedAt),
22
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
+ });
24
+ },
25
+
26
+ fromFirestore(snapshot: QueryDocumentSnapshot): Bookmark {
27
+ const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
+ return {
29
+ ...rest,
30
+ id: snapshot.id,
31
+ createdAt: toTimestamp(createdAt),
32
+ updatedAt: toTimestamp(updatedAt),
33
+ deletedAt: toOptionalTimestamp(deletedAt),
34
+ } as Bookmark;
35
+ },
36
+ };
@@ -1,3 +1,3 @@
1
- export * from "./bookmark";
2
- export * from "./profile";
3
- export * from "./user";
1
+ export * from "./bookmark";
2
+ export * from "./profile";
3
+ export * from "./user";
@@ -1,36 +1,36 @@
1
- import {
2
- FirestoreDataConverter,
3
- QueryDocumentSnapshot,
4
- DocumentData,
5
- } from "firebase-admin/firestore";
6
- import type { Profile } from "@cravery/core";
7
- import {
8
- toTimestamp,
9
- toOptionalTimestamp,
10
- toFirestoreTimestamp,
11
- toOptionalFirestoreTimestamp,
12
- stripUndefined,
13
- } from "../../lib";
14
-
15
- export const profileConverter: FirestoreDataConverter<Profile> = {
16
- toFirestore(profile: Profile): DocumentData {
17
- const { id, createdAt, updatedAt, deletedAt, ...rest } = profile;
18
- return stripUndefined({
19
- ...rest,
20
- createdAt: toFirestoreTimestamp(createdAt),
21
- updatedAt: toFirestoreTimestamp(updatedAt),
22
- deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
- });
24
- },
25
-
26
- fromFirestore(snapshot: QueryDocumentSnapshot): Profile {
27
- const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
- return {
29
- ...rest,
30
- id: snapshot.id,
31
- createdAt: toTimestamp(createdAt),
32
- updatedAt: toTimestamp(updatedAt),
33
- deletedAt: toOptionalTimestamp(deletedAt),
34
- } as Profile;
35
- },
36
- };
1
+ import {
2
+ FirestoreDataConverter,
3
+ QueryDocumentSnapshot,
4
+ DocumentData,
5
+ } from "firebase-admin/firestore";
6
+ import type { Profile } from "@cravery/core";
7
+ import {
8
+ toTimestamp,
9
+ toOptionalTimestamp,
10
+ toFirestoreTimestamp,
11
+ toOptionalFirestoreTimestamp,
12
+ stripUndefined,
13
+ } from "../../lib";
14
+
15
+ export const profileConverter: FirestoreDataConverter<Profile> = {
16
+ toFirestore(profile: Profile): DocumentData {
17
+ const { id, createdAt, updatedAt, deletedAt, ...rest } = profile;
18
+ return stripUndefined({
19
+ ...rest,
20
+ createdAt: toFirestoreTimestamp(createdAt),
21
+ updatedAt: toFirestoreTimestamp(updatedAt),
22
+ deletedAt: toOptionalFirestoreTimestamp(deletedAt),
23
+ });
24
+ },
25
+
26
+ fromFirestore(snapshot: QueryDocumentSnapshot): Profile {
27
+ const { createdAt, updatedAt, deletedAt, ...rest } = snapshot.data();
28
+ return {
29
+ ...rest,
30
+ id: snapshot.id,
31
+ createdAt: toTimestamp(createdAt),
32
+ updatedAt: toTimestamp(updatedAt),
33
+ deletedAt: toOptionalTimestamp(deletedAt),
34
+ } as Profile;
35
+ },
36
+ };