@kekkle/shared 2.0.0 → 2.1.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.
Files changed (178) hide show
  1. package/dist/cjs/constants/collections.d.ts +4 -0
  2. package/dist/cjs/constants/collections.d.ts.map +1 -1
  3. package/dist/cjs/constants/collections.js +5 -1
  4. package/dist/cjs/convertors/node/comment-document.converter.d.ts.map +1 -1
  5. package/dist/cjs/convertors/node/event-document.converter.d.ts.map +1 -1
  6. package/dist/cjs/convertors/node/group-document.converter.d.ts.map +1 -1
  7. package/dist/cjs/convertors/node/group-document.converter.js +16 -3
  8. package/dist/cjs/convertors/node/photo-document.converter.d.ts.map +1 -1
  9. package/dist/cjs/convertors/node/quote-document.converter.d.ts.map +1 -1
  10. package/dist/cjs/convertors/node/user-document.converter.d.ts.map +1 -1
  11. package/dist/cjs/convertors/node/wordle-game-document.converter.d.ts.map +1 -1
  12. package/dist/cjs/convertors/node/wordle-game-document.converter.js +1 -3
  13. package/dist/cjs/convertors/node/wordle-game-state-document.converter.d.ts.map +1 -1
  14. package/dist/cjs/convertors/node/wordle-game-state-document.converter.js +1 -4
  15. package/dist/cjs/convertors/node/wordle-leaderboard-document.converter.d.ts.map +1 -1
  16. package/dist/cjs/convertors/node/wordle-leaderboard-document.converter.js +1 -3
  17. package/dist/cjs/convertors/node/wordle-monthly-score-document.converter.d.ts.map +1 -1
  18. package/dist/cjs/convertors/node/wordle-monthly-score-document.converter.js +1 -3
  19. package/dist/cjs/convertors/node/wordle-score-document.converter.d.ts.map +1 -1
  20. package/dist/cjs/convertors/node/wordle-score-document.converter.js +1 -3
  21. package/dist/cjs/convertors/node/wordle6-game-state-document.converter.d.ts +4 -0
  22. package/dist/cjs/convertors/node/wordle6-game-state-document.converter.d.ts.map +1 -0
  23. package/dist/cjs/convertors/node/wordle6-game-state-document.converter.js +23 -0
  24. package/dist/cjs/convertors/web/comment-document.converter.d.ts.map +1 -1
  25. package/dist/cjs/convertors/web/event-document.converter.d.ts.map +1 -1
  26. package/dist/cjs/convertors/web/group-document.converter.d.ts.map +1 -1
  27. package/dist/cjs/convertors/web/group-document.converter.js +16 -3
  28. package/dist/cjs/convertors/web/photo-document.converter.d.ts.map +1 -1
  29. package/dist/cjs/convertors/web/quote-document.converter.d.ts.map +1 -1
  30. package/dist/cjs/convertors/web/user-document.converter.d.ts.map +1 -1
  31. package/dist/cjs/convertors/web/wordle-game-document.converter.d.ts.map +1 -1
  32. package/dist/cjs/convertors/web/wordle-game-document.converter.js +1 -3
  33. package/dist/cjs/convertors/web/wordle-game-state-document.converter.d.ts.map +1 -1
  34. package/dist/cjs/convertors/web/wordle-game-state-document.converter.js +1 -3
  35. package/dist/cjs/convertors/web/wordle-leaderboard-document.converter.d.ts.map +1 -1
  36. package/dist/cjs/convertors/web/wordle-leaderboard-document.converter.js +1 -3
  37. package/dist/cjs/convertors/web/wordle-monthly-score-document.converter.d.ts.map +1 -1
  38. package/dist/cjs/convertors/web/wordle-monthly-score-document.converter.js +1 -3
  39. package/dist/cjs/convertors/web/wordle-score-document.converter.d.ts.map +1 -1
  40. package/dist/cjs/convertors/web/wordle-score-document.converter.js +1 -3
  41. package/dist/cjs/convertors/web/wordle6-game-state-document.converter.d.ts +4 -0
  42. package/dist/cjs/convertors/web/wordle6-game-state-document.converter.d.ts.map +1 -0
  43. package/dist/cjs/convertors/web/wordle6-game-state-document.converter.js +23 -0
  44. package/dist/cjs/helpers/worlde/reconstruct-game-state.d.ts +3 -0
  45. package/dist/cjs/helpers/worlde/reconstruct-game-state.d.ts.map +1 -0
  46. package/dist/cjs/helpers/worlde/reconstruct-game-state.js +51 -0
  47. package/dist/cjs/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.d.ts +6 -0
  48. package/dist/cjs/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.d.ts.map +1 -0
  49. package/dist/cjs/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.js +2 -0
  50. package/dist/cjs/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.d.ts +6 -0
  51. package/dist/cjs/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.d.ts.map +1 -0
  52. package/dist/cjs/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.js +2 -0
  53. package/dist/cjs/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.d.ts +9 -0
  54. package/dist/cjs/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.d.ts.map +1 -0
  55. package/dist/cjs/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.js +2 -0
  56. package/dist/cjs/types/documents/wordle6-game-state-document/wordle6-game-state-document.d.ts +11 -0
  57. package/dist/cjs/types/documents/wordle6-game-state-document/wordle6-game-state-document.d.ts.map +1 -0
  58. package/dist/cjs/types/documents/wordle6-game-state-document/wordle6-game-state-document.js +2 -0
  59. package/dist/esm/constants/collections.d.ts +4 -0
  60. package/dist/esm/constants/collections.d.ts.map +1 -1
  61. package/dist/esm/constants/collections.js +4 -0
  62. package/dist/esm/convertors/node/comment-document.converter.d.ts.map +1 -1
  63. package/dist/esm/convertors/node/event-document.converter.d.ts.map +1 -1
  64. package/dist/esm/convertors/node/group-document.converter.d.ts.map +1 -1
  65. package/dist/esm/convertors/node/group-document.converter.js +16 -3
  66. package/dist/esm/convertors/node/photo-document.converter.d.ts.map +1 -1
  67. package/dist/esm/convertors/node/quote-document.converter.d.ts.map +1 -1
  68. package/dist/esm/convertors/node/user-document.converter.d.ts.map +1 -1
  69. package/dist/esm/convertors/node/wordle-game-document.converter.d.ts.map +1 -1
  70. package/dist/esm/convertors/node/wordle-game-document.converter.js +1 -3
  71. package/dist/esm/convertors/node/wordle-game-state-document.converter.d.ts.map +1 -1
  72. package/dist/esm/convertors/node/wordle-game-state-document.converter.js +1 -4
  73. package/dist/esm/convertors/node/wordle-leaderboard-document.converter.d.ts.map +1 -1
  74. package/dist/esm/convertors/node/wordle-leaderboard-document.converter.js +1 -3
  75. package/dist/esm/convertors/node/wordle-monthly-score-document.converter.d.ts.map +1 -1
  76. package/dist/esm/convertors/node/wordle-monthly-score-document.converter.js +1 -3
  77. package/dist/esm/convertors/node/wordle-score-document.converter.d.ts.map +1 -1
  78. package/dist/esm/convertors/node/wordle-score-document.converter.js +1 -3
  79. package/dist/esm/convertors/node/wordle6-game-state-document.converter.d.ts +4 -0
  80. package/dist/esm/convertors/node/wordle6-game-state-document.converter.d.ts.map +1 -0
  81. package/dist/esm/convertors/node/wordle6-game-state-document.converter.js +20 -0
  82. package/dist/esm/convertors/web/comment-document.converter.d.ts.map +1 -1
  83. package/dist/esm/convertors/web/event-document.converter.d.ts.map +1 -1
  84. package/dist/esm/convertors/web/group-document.converter.d.ts.map +1 -1
  85. package/dist/esm/convertors/web/group-document.converter.js +17 -4
  86. package/dist/esm/convertors/web/photo-document.converter.d.ts.map +1 -1
  87. package/dist/esm/convertors/web/quote-document.converter.d.ts.map +1 -1
  88. package/dist/esm/convertors/web/user-document.converter.d.ts.map +1 -1
  89. package/dist/esm/convertors/web/wordle-game-document.converter.d.ts.map +1 -1
  90. package/dist/esm/convertors/web/wordle-game-document.converter.js +2 -4
  91. package/dist/esm/convertors/web/wordle-game-state-document.converter.d.ts.map +1 -1
  92. package/dist/esm/convertors/web/wordle-game-state-document.converter.js +2 -4
  93. package/dist/esm/convertors/web/wordle-leaderboard-document.converter.d.ts.map +1 -1
  94. package/dist/esm/convertors/web/wordle-leaderboard-document.converter.js +2 -4
  95. package/dist/esm/convertors/web/wordle-monthly-score-document.converter.d.ts.map +1 -1
  96. package/dist/esm/convertors/web/wordle-monthly-score-document.converter.js +2 -4
  97. package/dist/esm/convertors/web/wordle-score-document.converter.d.ts.map +1 -1
  98. package/dist/esm/convertors/web/wordle-score-document.converter.js +2 -4
  99. package/dist/esm/convertors/web/wordle6-game-state-document.converter.d.ts +4 -0
  100. package/dist/esm/convertors/web/wordle6-game-state-document.converter.d.ts.map +1 -0
  101. package/dist/esm/convertors/web/wordle6-game-state-document.converter.js +20 -0
  102. package/dist/esm/helpers/worlde/reconstruct-game-state.d.ts +3 -0
  103. package/dist/esm/helpers/worlde/reconstruct-game-state.d.ts.map +1 -0
  104. package/dist/esm/helpers/worlde/reconstruct-game-state.js +48 -0
  105. package/dist/esm/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.d.ts +6 -0
  106. package/dist/esm/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.d.ts.map +1 -0
  107. package/dist/esm/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.js +1 -0
  108. package/dist/esm/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.d.ts +6 -0
  109. package/dist/esm/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.d.ts.map +1 -0
  110. package/dist/esm/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.js +1 -0
  111. package/dist/esm/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.d.ts +9 -0
  112. package/dist/esm/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.d.ts.map +1 -0
  113. package/dist/esm/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.js +1 -0
  114. package/dist/esm/types/documents/wordle6-game-state-document/wordle6-game-state-document.d.ts +11 -0
  115. package/dist/esm/types/documents/wordle6-game-state-document/wordle6-game-state-document.d.ts.map +1 -0
  116. package/dist/esm/types/documents/wordle6-game-state-document/wordle6-game-state-document.js +1 -0
  117. package/dist/node/constants/collections.d.ts +4 -0
  118. package/dist/node/constants/collections.d.ts.map +1 -1
  119. package/dist/node/constants/collections.js +4 -0
  120. package/dist/node/convertors/node/comment-document.converter.d.ts.map +1 -1
  121. package/dist/node/convertors/node/event-document.converter.d.ts.map +1 -1
  122. package/dist/node/convertors/node/group-document.converter.d.ts.map +1 -1
  123. package/dist/node/convertors/node/group-document.converter.js +16 -3
  124. package/dist/node/convertors/node/photo-document.converter.d.ts.map +1 -1
  125. package/dist/node/convertors/node/quote-document.converter.d.ts.map +1 -1
  126. package/dist/node/convertors/node/user-document.converter.d.ts.map +1 -1
  127. package/dist/node/convertors/node/wordle-game-document.converter.d.ts.map +1 -1
  128. package/dist/node/convertors/node/wordle-game-document.converter.js +1 -3
  129. package/dist/node/convertors/node/wordle-game-state-document.converter.d.ts.map +1 -1
  130. package/dist/node/convertors/node/wordle-game-state-document.converter.js +1 -4
  131. package/dist/node/convertors/node/wordle-leaderboard-document.converter.d.ts.map +1 -1
  132. package/dist/node/convertors/node/wordle-leaderboard-document.converter.js +1 -3
  133. package/dist/node/convertors/node/wordle-monthly-score-document.converter.d.ts.map +1 -1
  134. package/dist/node/convertors/node/wordle-monthly-score-document.converter.js +1 -3
  135. package/dist/node/convertors/node/wordle-score-document.converter.d.ts.map +1 -1
  136. package/dist/node/convertors/node/wordle-score-document.converter.js +1 -3
  137. package/dist/node/convertors/node/wordle6-game-state-document.converter.d.ts +4 -0
  138. package/dist/node/convertors/node/wordle6-game-state-document.converter.d.ts.map +1 -0
  139. package/dist/node/convertors/node/wordle6-game-state-document.converter.js +20 -0
  140. package/dist/node/convertors/web/comment-document.converter.d.ts.map +1 -1
  141. package/dist/node/convertors/web/event-document.converter.d.ts.map +1 -1
  142. package/dist/node/convertors/web/group-document.converter.d.ts.map +1 -1
  143. package/dist/node/convertors/web/group-document.converter.js +17 -4
  144. package/dist/node/convertors/web/photo-document.converter.d.ts.map +1 -1
  145. package/dist/node/convertors/web/quote-document.converter.d.ts.map +1 -1
  146. package/dist/node/convertors/web/user-document.converter.d.ts.map +1 -1
  147. package/dist/node/convertors/web/wordle-game-document.converter.d.ts.map +1 -1
  148. package/dist/node/convertors/web/wordle-game-document.converter.js +2 -4
  149. package/dist/node/convertors/web/wordle-game-state-document.converter.d.ts.map +1 -1
  150. package/dist/node/convertors/web/wordle-game-state-document.converter.js +2 -4
  151. package/dist/node/convertors/web/wordle-leaderboard-document.converter.d.ts.map +1 -1
  152. package/dist/node/convertors/web/wordle-leaderboard-document.converter.js +2 -4
  153. package/dist/node/convertors/web/wordle-monthly-score-document.converter.d.ts.map +1 -1
  154. package/dist/node/convertors/web/wordle-monthly-score-document.converter.js +2 -4
  155. package/dist/node/convertors/web/wordle-score-document.converter.d.ts.map +1 -1
  156. package/dist/node/convertors/web/wordle-score-document.converter.js +2 -4
  157. package/dist/node/convertors/web/wordle6-game-state-document.converter.d.ts +4 -0
  158. package/dist/node/convertors/web/wordle6-game-state-document.converter.d.ts.map +1 -0
  159. package/dist/node/convertors/web/wordle6-game-state-document.converter.js +20 -0
  160. package/dist/node/helpers/worlde/reconstruct-game-state.d.ts +3 -0
  161. package/dist/node/helpers/worlde/reconstruct-game-state.d.ts.map +1 -0
  162. package/dist/node/helpers/worlde/reconstruct-game-state.js +48 -0
  163. package/dist/node/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.d.ts +6 -0
  164. package/dist/node/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.d.ts.map +1 -0
  165. package/dist/node/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.js +1 -0
  166. package/dist/node/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.d.ts +6 -0
  167. package/dist/node/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.d.ts.map +1 -0
  168. package/dist/node/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.js +1 -0
  169. package/dist/node/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.d.ts +9 -0
  170. package/dist/node/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.d.ts.map +1 -0
  171. package/dist/node/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.js +1 -0
  172. package/dist/node/types/documents/wordle6-game-state-document/wordle6-game-state-document.d.ts +11 -0
  173. package/dist/node/types/documents/wordle6-game-state-document/wordle6-game-state-document.d.ts.map +1 -0
  174. package/dist/node/types/documents/wordle6-game-state-document/wordle6-game-state-document.js +1 -0
  175. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  176. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  177. package/dist/tsconfig.node.tsbuildinfo +1 -1
  178. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"group-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/group-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA0DxE,CAAC"}
1
+ {"version":3,"file":"group-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/group-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA2ExE,CAAC"}
@@ -17,15 +17,28 @@ export const groupDocumentConverter = {
17
17
  created_at: groupWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(groupWithoutId.created_at)
19
19
  : groupWithoutId.created_at,
20
- updated_at: groupWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(groupWithoutId.updated_at)
22
- : groupWithoutId.updated_at,
20
+ updated_at: new Date(),
23
21
  join_token_timestamp: groupWithoutId.join_token_timestamp instanceof Date
24
22
  ? Timestamp.fromDate(groupWithoutId.join_token_timestamp)
25
23
  : groupWithoutId.join_token_timestamp,
26
24
  premium_till: groupWithoutId.premium_till instanceof Date
27
25
  ? Timestamp.fromDate(groupWithoutId.premium_till)
28
26
  : groupWithoutId.premium_till,
27
+ members: groupWithoutId.members
28
+ ? Object.fromEntries(Object.entries(groupWithoutId.members).map(([key, member]) => {
29
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
30
+ const { uuid, ...memberWithoutUuid } = member;
31
+ return [
32
+ key,
33
+ {
34
+ ...memberWithoutUuid,
35
+ birthday: memberWithoutUuid.birthday instanceof Date
36
+ ? Timestamp.fromDate(memberWithoutUuid.birthday)
37
+ : memberWithoutUuid.birthday,
38
+ },
39
+ ];
40
+ }))
41
+ : groupWithoutId.members,
29
42
  };
30
43
  },
31
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"photo-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/photo-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAgCxE,CAAC"}
1
+ {"version":3,"file":"photo-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/photo-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAkCxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"quote-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/quote-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAiCxE,CAAC"}
1
+ {"version":3,"file":"quote-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/quote-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAmCxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"user-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/user-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAIrF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,sBAAsB,CAAC,YAAY,CAgDtE,CAAC"}
1
+ {"version":3,"file":"user-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/user-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAIrF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,sBAAsB,CAAC,YAAY,CAkDtE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-game-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-game-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AAGzG;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,sBAAsB,CAAC,kBAAkB,CA6ChF,CAAC"}
1
+ {"version":3,"file":"wordle-game-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-game-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AAGzG;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,sBAAsB,CAAC,kBAAkB,CA0ChF,CAAC"}
@@ -20,9 +20,7 @@ export const wordleGameDocumentConverter = {
20
20
  created_at: wordleGameWithoutId.created_at instanceof Date
21
21
  ? Timestamp.fromDate(wordleGameWithoutId.created_at)
22
22
  : wordleGameWithoutId.created_at,
23
- updated_at: wordleGameWithoutId.updated_at instanceof Date
24
- ? Timestamp.fromDate(wordleGameWithoutId.updated_at)
25
- : wordleGameWithoutId.updated_at,
23
+ updated_at: new Date(),
26
24
  };
27
25
  },
28
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-game-state-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-game-state-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4EAA4E,CAAC;AACrH,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,sBAAsB,CAAC,uBAAuB,CAmC1F,CAAC"}
1
+ {"version":3,"file":"wordle-game-state-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-game-state-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4EAA4E,CAAC;AACrH,OAAO,EACL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,sBAAsB,CAAC,uBAAuB,CAgC1F,CAAC"}
@@ -1,4 +1,3 @@
1
- import { Timestamp, } from "firebase-admin/firestore";
2
1
  /**
3
2
  * Firestore converter for WordleGameStateDocument documents (Admin SDK)
4
3
  * Handles conversion between client-side WordleGameStateDocument type (with Date objects)
@@ -14,9 +13,7 @@ export const wordleGameStateDocumentConverter = {
14
13
  const { _id, ...docWithoutId } = doc;
15
14
  return {
16
15
  ...docWithoutId,
17
- updated_at: docWithoutId.updated_at instanceof Date
18
- ? Timestamp.fromDate(docWithoutId.updated_at)
19
- : docWithoutId.updated_at,
16
+ updated_at: new Date(),
20
17
  };
21
18
  },
22
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-leaderboard-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-leaderboard-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8EAA8E,CAAC;AAG9H;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,EAAE,sBAAsB,CAAC,yBAAyB,CAwC9F,CAAC"}
1
+ {"version":3,"file":"wordle-leaderboard-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-leaderboard-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8EAA8E,CAAC;AAG9H;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,EAAE,sBAAsB,CAAC,yBAAyB,CAqC9F,CAAC"}
@@ -17,9 +17,7 @@ export const wordleLeaderboardDocumentConverter = {
17
17
  created_at: docWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(docWithoutId.created_at)
19
19
  : docWithoutId.created_at,
20
- updated_at: docWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(docWithoutId.updated_at)
22
- : docWithoutId.updated_at,
20
+ updated_at: new Date(),
23
21
  };
24
22
  },
25
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-monthly-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-monthly-score-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAE9H;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,EAAE,sBAAsB,CAAC,0BAA0B,CAwChG,CAAC"}
1
+ {"version":3,"file":"wordle-monthly-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-monthly-score-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAE9H;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,EAAE,sBAAsB,CAAC,0BAA0B,CAqChG,CAAC"}
@@ -17,9 +17,7 @@ export const wordleMonthlyScoreDocumentConverter = {
17
17
  created_at: docWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(docWithoutId.created_at)
19
19
  : docWithoutId.created_at,
20
- updated_at: docWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(docWithoutId.updated_at)
22
- : docWithoutId.updated_at,
20
+ updated_at: new Date(),
23
21
  };
24
22
  },
25
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-score-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AACvG,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,sBAAsB,CAAC,mBAAmB,CAsClF,CAAC"}
1
+ {"version":3,"file":"wordle-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle-score-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AACvG,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,sBAAsB,CAAC,mBAAmB,CAqClF,CAAC"}
@@ -17,9 +17,7 @@ export const wordleScoreDocumentConverter = {
17
17
  created_at: docWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(docWithoutId.created_at)
19
19
  : docWithoutId.created_at,
20
- updated_at: docWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(docWithoutId.updated_at)
22
- : docWithoutId.updated_at,
20
+ updated_at: new Date(),
23
21
  };
24
22
  },
25
23
  /**
@@ -0,0 +1,4 @@
1
+ import type { Wordle6GameStateDocument } from "../../types/documents/wordle6-game-state-document/wordle6-game-state-document.js";
2
+ import { type FirestoreDataConverter } from "firebase-admin/firestore";
3
+ export declare const wordle6GameStateDocumentConverter: FirestoreDataConverter<Wordle6GameStateDocument>;
4
+ //# sourceMappingURL=wordle6-game-state-document.converter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordle6-game-state-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/wordle6-game-state-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8EAA8E,CAAC;AAC7H,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC,eAAO,MAAM,iCAAiC,EAAE,sBAAsB,CAAC,wBAAwB,CAyB5F,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { Timestamp, } from "firebase-admin/firestore";
2
+ export const wordle6GameStateDocumentConverter = {
3
+ toFirestore: (doc) => {
4
+ const { _id, ...docWithoutId } = doc;
5
+ return {
6
+ ...docWithoutId,
7
+ updated_at: docWithoutId.updated_at instanceof Date
8
+ ? Timestamp.fromDate(docWithoutId.updated_at)
9
+ : docWithoutId.updated_at,
10
+ };
11
+ },
12
+ fromFirestore: (snapshot) => {
13
+ const data = snapshot.data();
14
+ return {
15
+ _id: snapshot.id,
16
+ ...data,
17
+ updated_at: data.updated_at.toDate(),
18
+ };
19
+ },
20
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"comment-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/comment-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAoF5B,eAAO,MAAM,6BAA6B;;;;8CACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;8CACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;8CACc,CAAC"}
1
+ {"version":3,"file":"comment-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/comment-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAsF5B,eAAO,MAAM,6BAA6B;;;;8CACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;8CACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;8CACc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/event-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA8CxE,CAAC"}
1
+ {"version":3,"file":"event-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/event-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA8CxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"group-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/group-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA4DxE,CAAC"}
1
+ {"version":3,"file":"group-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/group-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA2ExE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Timestamp, } from "firebase/firestore";
1
+ import { Timestamp, serverTimestamp, } from "firebase/firestore";
2
2
  /**
3
3
  * Firestore converter for Group documents (Web SDK)
4
4
  * Handles conversion between client-side Group type (with Date objects)
@@ -17,15 +17,28 @@ export const groupDocumentConverter = {
17
17
  created_at: groupWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(groupWithoutId.created_at)
19
19
  : groupWithoutId.created_at,
20
- updated_at: groupWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(groupWithoutId.updated_at)
22
- : groupWithoutId.updated_at,
20
+ updated_at: serverTimestamp(),
23
21
  join_token_timestamp: groupWithoutId.join_token_timestamp instanceof Date
24
22
  ? Timestamp.fromDate(groupWithoutId.join_token_timestamp)
25
23
  : groupWithoutId.join_token_timestamp,
26
24
  premium_till: groupWithoutId.premium_till instanceof Date
27
25
  ? Timestamp.fromDate(groupWithoutId.premium_till)
28
26
  : groupWithoutId.premium_till,
27
+ members: groupWithoutId.members
28
+ ? Object.fromEntries(Object.entries(groupWithoutId.members).map(([key, member]) => {
29
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
30
+ const { uuid, ...memberWithoutUuid } = member;
31
+ return [
32
+ key,
33
+ {
34
+ ...memberWithoutUuid,
35
+ birthday: memberWithoutUuid.birthday instanceof Date
36
+ ? Timestamp.fromDate(memberWithoutUuid.birthday)
37
+ : memberWithoutUuid.birthday,
38
+ },
39
+ ];
40
+ }))
41
+ : groupWithoutId.members,
29
42
  };
30
43
  },
31
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"photo-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/photo-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAkCxE,CAAC"}
1
+ {"version":3,"file":"photo-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/photo-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAkCxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"quote-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/quote-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAmCxE,CAAC"}
1
+ {"version":3,"file":"quote-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/quote-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGxF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CAmCxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"user-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/user-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAIrF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,sBAAsB,CAAC,YAAY,CAkDtE,CAAC"}
1
+ {"version":3,"file":"user-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/user-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAIrF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,sBAAsB,CAAC,YAAY,CAkDtE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-game-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-game-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AAGzG;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,sBAAsB,CAAC,kBAAkB,CA+ChF,CAAC"}
1
+ {"version":3,"file":"wordle-game-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-game-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AAGzG;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,sBAAsB,CAAC,kBAAkB,CA0ChF,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Timestamp, } from "firebase/firestore";
1
+ import { Timestamp, serverTimestamp, } from "firebase/firestore";
2
2
  /**
3
3
  * Firestore converter for WordleGameDocument documents (Web SDK)
4
4
  * Handles conversion between client-side WordleGameDocument type (with Date objects)
@@ -20,9 +20,7 @@ export const wordleGameDocumentConverter = {
20
20
  created_at: wordleGameWithoutId.created_at instanceof Date
21
21
  ? Timestamp.fromDate(wordleGameWithoutId.created_at)
22
22
  : wordleGameWithoutId.created_at,
23
- updated_at: wordleGameWithoutId.updated_at instanceof Date
24
- ? Timestamp.fromDate(wordleGameWithoutId.updated_at)
25
- : wordleGameWithoutId.updated_at,
23
+ updated_at: serverTimestamp(),
26
24
  };
27
25
  },
28
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-game-state-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-game-state-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4EAA4E,CAAC;AACrH,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,sBAAsB,CAAC,uBAAuB,CAoC1F,CAAC"}
1
+ {"version":3,"file":"wordle-game-state-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-game-state-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4EAA4E,CAAC;AACrH,OAAO,EACL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,sBAAsB,CAAC,uBAAuB,CA+B1F,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Timestamp, } from "firebase/firestore";
1
+ import { serverTimestamp, } from "firebase/firestore";
2
2
  /**
3
3
  * Firestore converter for WordleGameStateDocument documents (Web SDK)
4
4
  * Handles conversion between client-side WordleGameStateDocument type (with Date objects)
@@ -14,9 +14,7 @@ export const wordleGameStateDocumentConverter = {
14
14
  const { _id, ...docWithoutId } = doc;
15
15
  return {
16
16
  ...docWithoutId,
17
- updated_at: docWithoutId.updated_at instanceof Date
18
- ? Timestamp.fromDate(docWithoutId.updated_at)
19
- : docWithoutId.updated_at,
17
+ updated_at: serverTimestamp(),
20
18
  };
21
19
  },
22
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-leaderboard-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-leaderboard-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,8EAA8E,CAAC;AAEzH;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,EAAE,sBAAsB,CAAC,yBAAyB,CA0C9F,CAAC"}
1
+ {"version":3,"file":"wordle-leaderboard-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-leaderboard-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,8EAA8E,CAAC;AAEzH;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,EAAE,sBAAsB,CAAC,yBAAyB,CAqC9F,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Timestamp, } from "firebase/firestore";
1
+ import { Timestamp, serverTimestamp, } from "firebase/firestore";
2
2
  /**
3
3
  * Firestore converter for WordleLeaderboard documents (Web SDK)
4
4
  * Handles conversion between client-side WordleLeaderboard type (with Date objects)
@@ -17,9 +17,7 @@ export const wordleLeaderboardDocumentConverter = {
17
17
  created_at: docWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(docWithoutId.created_at)
19
19
  : docWithoutId.created_at,
20
- updated_at: docWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(docWithoutId.updated_at)
22
- : docWithoutId.updated_at,
20
+ updated_at: serverTimestamp(),
23
21
  };
24
22
  },
25
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-monthly-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-monthly-score-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAC9H,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,EAAE,sBAAsB,CAAC,0BAA0B,CA0ChG,CAAC"}
1
+ {"version":3,"file":"wordle-monthly-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-monthly-score-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAC9H,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,EAAE,sBAAsB,CAAC,0BAA0B,CAqChG,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Timestamp, } from "firebase/firestore";
1
+ import { Timestamp, serverTimestamp, } from "firebase/firestore";
2
2
  /**
3
3
  * Firestore converter for WordleMonthlyScore documents (Web SDK)
4
4
  * Handles conversion between client-side WordleMonthlyScore type (with Date objects)
@@ -17,9 +17,7 @@ export const wordleMonthlyScoreDocumentConverter = {
17
17
  created_at: docWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(docWithoutId.created_at)
19
19
  : docWithoutId.created_at,
20
- updated_at: docWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(docWithoutId.updated_at)
22
- : docWithoutId.updated_at,
20
+ updated_at: serverTimestamp(),
23
21
  };
24
22
  },
25
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wordle-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-score-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AACvG,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,sBAAsB,CAAC,mBAAmB,CA0ClF,CAAC"}
1
+ {"version":3,"file":"wordle-score-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle-score-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kEAAkE,CAAC;AACvG,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,sBAAsB,CAAC,mBAAmB,CAqClF,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Timestamp, } from "firebase/firestore";
1
+ import { Timestamp, serverTimestamp, } from "firebase/firestore";
2
2
  /**
3
3
  * Firestore converter for WordleScore documents (Web SDK)
4
4
  * Handles conversion between client-side WordleScore type (with Date objects)
@@ -17,9 +17,7 @@ export const wordleScoreDocumentConverter = {
17
17
  created_at: docWithoutId.created_at instanceof Date
18
18
  ? Timestamp.fromDate(docWithoutId.created_at)
19
19
  : docWithoutId.created_at,
20
- updated_at: docWithoutId.updated_at instanceof Date
21
- ? Timestamp.fromDate(docWithoutId.updated_at)
22
- : docWithoutId.updated_at,
20
+ updated_at: serverTimestamp(),
23
21
  };
24
22
  },
25
23
  /**
@@ -0,0 +1,4 @@
1
+ import type { Wordle6GameStateDocument } from "../../types/documents/wordle6-game-state-document/wordle6-game-state-document.js";
2
+ import { type FirestoreDataConverter } from "firebase/firestore";
3
+ export declare const wordle6GameStateDocumentConverter: FirestoreDataConverter<Wordle6GameStateDocument>;
4
+ //# sourceMappingURL=wordle6-game-state-document.converter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordle6-game-state-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/web/wordle6-game-state-document.converter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8EAA8E,CAAC;AAC7H,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,iCAAiC,EAAE,sBAAsB,CAAC,wBAAwB,CA2B5F,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { Timestamp, } from "firebase/firestore";
2
+ export const wordle6GameStateDocumentConverter = {
3
+ toFirestore: (doc) => {
4
+ const { _id, ...docWithoutId } = doc;
5
+ return {
6
+ ...docWithoutId,
7
+ updated_at: docWithoutId.updated_at instanceof Date
8
+ ? Timestamp.fromDate(docWithoutId.updated_at)
9
+ : docWithoutId.updated_at,
10
+ };
11
+ },
12
+ fromFirestore: (snapshot) => {
13
+ const data = snapshot.data();
14
+ return {
15
+ _id: snapshot.id,
16
+ ...data,
17
+ updated_at: data.updated_at.toDate(),
18
+ };
19
+ },
20
+ };
@@ -0,0 +1,3 @@
1
+ import type { WordleGameState } from "../../types/fields/wordle-game-state/wordle-game-state.js";
2
+ export declare function reconstructGameState(guesses: string[], correctWord: string, maxRows: number): WordleGameState;
3
+ //# sourceMappingURL=reconstruct-game-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconstruct-game-state.d.ts","sourceRoot":"","sources":["../../../../src/helpers/worlde/reconstruct-game-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EAEhB,MAAM,uDAAuD,CAAC;AAE/D,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EAAE,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,eAAe,CAcjB"}
@@ -0,0 +1,48 @@
1
+ export function reconstructGameState(guesses, correctWord, maxRows) {
2
+ const wordLength = correctWord.length;
3
+ const rows = [];
4
+ for (const guess of guesses) {
5
+ const row = evaluateGuess(guess, correctWord);
6
+ rows.push(row);
7
+ }
8
+ while (rows.length < maxRows) {
9
+ rows.push(createEmptyRow(wordLength));
10
+ }
11
+ return rows;
12
+ }
13
+ function evaluateGuess(guess, correctWord) {
14
+ const row = Array.from({ length: guess.length }, () => ({
15
+ character: "",
16
+ isCorrect: false,
17
+ isLocked: true,
18
+ }));
19
+ const correctWordCounts = {};
20
+ for (const char of correctWord) {
21
+ correctWordCounts[char] = (correctWordCounts[char] || 0) + 1;
22
+ }
23
+ const markedCounts = {};
24
+ for (let i = 0; i < guess.length; i++) {
25
+ row[i].character = guess[i];
26
+ if (guess[i] === correctWord[i]) {
27
+ row[i].isCorrect = true;
28
+ markedCounts[guess[i]] = (markedCounts[guess[i]] || 0) + 1;
29
+ }
30
+ }
31
+ for (let i = 0; i < guess.length; i++) {
32
+ if (!row[i].isCorrect && correctWord.includes(guess[i])) {
33
+ markedCounts[guess[i]] = (markedCounts[guess[i]] || 0) + 1;
34
+ if (markedCounts[guess[i]] <= correctWordCounts[guess[i]]) {
35
+ row[i].isPresent = true;
36
+ }
37
+ }
38
+ }
39
+ return row;
40
+ }
41
+ function createEmptyRow(wordLength) {
42
+ return Array.from({ length: wordLength }, () => ({
43
+ character: "",
44
+ isCorrect: false,
45
+ isPresent: false,
46
+ isLocked: false,
47
+ }));
48
+ }
@@ -0,0 +1,6 @@
1
+ import type { Timestamp } from "firebase-admin/firestore";
2
+ import type { Wordle6GameStateDocumentFirestoreBase } from "../../../../types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.js";
3
+ export type Wordle6GameStateDocumentFirestore = Wordle6GameStateDocumentFirestoreBase & {
4
+ updated_at: Timestamp;
5
+ };
6
+ //# sourceMappingURL=wordle6-game-state-document-firestore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordle6-game-state-document-firestore.d.ts","sourceRoot":"","sources":["../../../../../../src/types/documents/wordle6-game-state-document/node/wordle6-game-state-document-firestore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,6FAA6F,CAAC;AAEzJ,MAAM,MAAM,iCAAiC,GAC3C,qCAAqC,GAAG;IACtC,UAAU,EAAE,SAAS,CAAC;CACvB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Timestamp } from "firebase/firestore";
2
+ import type { Wordle6GameStateDocumentFirestoreBase } from "../../../../types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.js";
3
+ export type Wordle6GameStateDocumentFirestore = Wordle6GameStateDocumentFirestoreBase & {
4
+ updated_at: Timestamp;
5
+ };
6
+ //# sourceMappingURL=wordle6-game-state-document-firestore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordle6-game-state-document-firestore.d.ts","sourceRoot":"","sources":["../../../../../../src/types/documents/wordle6-game-state-document/web/wordle6-game-state-document-firestore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,6FAA6F,CAAC;AAEzJ,MAAM,MAAM,iCAAiC,GAC3C,qCAAqC,GAAG;IACtC,UAAU,EAAE,SAAS,CAAC;CACvB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export type Wordle6GameStateDocumentFirestoreBase = {
2
+ guesses: string[];
3
+ has_finished: boolean;
4
+ has_lost: boolean;
5
+ has_won: boolean;
6
+ number_of_tries_needed: number;
7
+ user_id: string;
8
+ };
9
+ //# sourceMappingURL=wordle6-game-state-document-firestore-base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordle6-game-state-document-firestore-base.d.ts","sourceRoot":"","sources":["../../../../../src/types/documents/wordle6-game-state-document/wordle6-game-state-document-firestore-base.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qCAAqC,GAAG;IAClD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -0,0 +1,11 @@
1
+ export type Wordle6GameStateDocument = {
2
+ _id: string;
3
+ guesses: string[];
4
+ has_finished: boolean;
5
+ has_lost: boolean;
6
+ has_won: boolean;
7
+ number_of_tries_needed: number;
8
+ updated_at: Date;
9
+ user_id: string;
10
+ };
11
+ //# sourceMappingURL=wordle6-game-state-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordle6-game-state-document.d.ts","sourceRoot":"","sources":["../../../../../src/types/documents/wordle6-game-state-document/wordle6-game-state-document.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,wBAAwB,GAAG;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,IAAI,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -4,4 +4,8 @@ export declare const WORDLE_GAMES_COLLECTION_PATH = "wordle_games";
4
4
  export declare const WORDLE_LEADERBOARD_COLLECTION_PATH = "wordle_leaderboard";
5
5
  export declare const WORDLE_MONTHLY_SCORES_COLLECTION_PATH = "wordle_monthly_scores";
6
6
  export declare const WORDLE_SCORES_COLLECTION_PATH = "wordle_scores";
7
+ export declare const WORDLE6_GAMES_COLLECTION_PATH = "wordle6_games";
8
+ export declare const WORDLE6_LEADERBOARD_COLLECTION_PATH = "wordle6_leaderboard";
9
+ export declare const WORDLE6_MONTHLY_SCORES_COLLECTION_PATH = "wordle6_monthly_scores";
10
+ export declare const WORDLE6_SCORES_COLLECTION_PATH = "wordle6_scores";
7
11
  //# sourceMappingURL=collections.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../src/constants/collections.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAC5C,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAC9C,eAAO,MAAM,4BAA4B,iBAAiB,CAAC;AAC3D,eAAO,MAAM,kCAAkC,uBAAuB,CAAC;AACvE,eAAO,MAAM,qCAAqC,0BAA0B,CAAC;AAC7E,eAAO,MAAM,6BAA6B,kBAAkB,CAAC"}
1
+ {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../src/constants/collections.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAC5C,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAC9C,eAAO,MAAM,4BAA4B,iBAAiB,CAAC;AAC3D,eAAO,MAAM,kCAAkC,uBAAuB,CAAC;AACvE,eAAO,MAAM,qCAAqC,0BAA0B,CAAC;AAC7E,eAAO,MAAM,6BAA6B,kBAAkB,CAAC;AAC7D,eAAO,MAAM,6BAA6B,kBAAkB,CAAC;AAC7D,eAAO,MAAM,mCAAmC,wBAAwB,CAAC;AACzE,eAAO,MAAM,sCAAsC,2BAA2B,CAAC;AAC/E,eAAO,MAAM,8BAA8B,mBAAmB,CAAC"}
@@ -4,3 +4,7 @@ export const WORDLE_GAMES_COLLECTION_PATH = "wordle_games";
4
4
  export const WORDLE_LEADERBOARD_COLLECTION_PATH = "wordle_leaderboard";
5
5
  export const WORDLE_MONTHLY_SCORES_COLLECTION_PATH = "wordle_monthly_scores";
6
6
  export const WORDLE_SCORES_COLLECTION_PATH = "wordle_scores";
7
+ export const WORDLE6_GAMES_COLLECTION_PATH = "wordle6_games";
8
+ export const WORDLE6_LEADERBOARD_COLLECTION_PATH = "wordle6_leaderboard";
9
+ export const WORDLE6_MONTHLY_SCORES_COLLECTION_PATH = "wordle6_monthly_scores";
10
+ export const WORDLE6_SCORES_COLLECTION_PATH = "wordle6_scores";
@@ -1 +1 @@
1
- {"version":3,"file":"comment-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/comment-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AA6EjE,eAAO,MAAM,6BAA6B;;;;EACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;EACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;EACc,CAAC"}
1
+ {"version":3,"file":"comment-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/comment-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AA+EjE,eAAO,MAAM,6BAA6B;;;;EACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;EACc,CAAC;AACzD,eAAO,MAAM,6BAA6B;;;;EACc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/event-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA4CxE,CAAC"}
1
+ {"version":3,"file":"event-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/event-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA8CxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"group-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/group-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAI5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA0DxE,CAAC"}
1
+ {"version":3,"file":"group-document.converter.d.ts","sourceRoot":"","sources":["../../../../src/convertors/node/group-document.converter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAEL,KAAK,sBAAsB,EAG5B,MAAM,0BAA0B,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,CAAC,aAAa,CA2ExE,CAAC"}