svelte-firekit 0.1.9 → 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.
Files changed (440) hide show
  1. package/README.md +550 -354
  2. package/dist/components/AuthGuard.svelte +64 -0
  3. package/dist/components/AuthGuard.svelte.d.ts +15 -0
  4. package/dist/components/Collection.svelte +62 -0
  5. package/dist/components/Collection.svelte.d.ts +39 -0
  6. package/dist/components/CustomGuard.svelte +87 -0
  7. package/dist/components/CustomGuard.svelte.d.ts +13 -0
  8. package/dist/components/Doc.svelte +56 -0
  9. package/dist/components/Doc.svelte.d.ts +36 -0
  10. package/dist/components/DownloadURL.svelte +48 -0
  11. package/dist/components/DownloadURL.svelte.d.ts +14 -0
  12. package/dist/components/FirebaseApp.svelte +81 -0
  13. package/dist/components/FirebaseApp.svelte.d.ts +12 -0
  14. package/dist/components/Node.svelte +54 -0
  15. package/dist/components/Node.svelte.d.ts +36 -0
  16. package/dist/components/SignedIn.svelte +22 -0
  17. package/dist/components/{firekit/signed-in.svelte.d.ts → SignedIn.svelte.d.ts} +1 -4
  18. package/dist/components/SignedOut.svelte +32 -0
  19. package/dist/components/{firekit/signed-out.svelte.d.ts → SignedOut.svelte.d.ts} +3 -5
  20. package/dist/components/UploadTask.svelte +75 -0
  21. package/dist/components/UploadTask.svelte.d.ts +33 -0
  22. package/dist/config.d.ts +29 -6
  23. package/dist/config.js +37 -74
  24. package/dist/context.d.ts +46 -0
  25. package/dist/context.js +56 -0
  26. package/dist/firebase.d.ts +25 -84
  27. package/dist/firebase.js +75 -125
  28. package/dist/index.d.ts +32 -20
  29. package/dist/index.js +49 -30
  30. package/dist/services/ai.svelte.d.ts +152 -0
  31. package/dist/services/ai.svelte.js +302 -0
  32. package/dist/services/analytics.d.ts +39 -231
  33. package/dist/services/analytics.js +89 -421
  34. package/dist/services/app-check.svelte.d.ts +82 -0
  35. package/dist/services/app-check.svelte.js +159 -0
  36. package/dist/services/auth.d.ts +63 -352
  37. package/dist/services/auth.js +353 -718
  38. package/dist/services/bundles.d.ts +42 -0
  39. package/dist/services/bundles.js +57 -0
  40. package/dist/services/callable.d.ts +57 -0
  41. package/dist/services/callable.js +115 -0
  42. package/dist/services/collection.svelte.d.ts +154 -221
  43. package/dist/services/collection.svelte.js +357 -663
  44. package/dist/services/document.svelte.d.ts +73 -254
  45. package/dist/services/document.svelte.js +196 -497
  46. package/dist/services/in-app-messaging.d.ts +46 -0
  47. package/dist/services/in-app-messaging.js +88 -0
  48. package/dist/services/messaging.svelte.d.ts +75 -0
  49. package/dist/services/messaging.svelte.js +190 -0
  50. package/dist/services/mutations.d.ts +59 -282
  51. package/dist/services/mutations.js +202 -951
  52. package/dist/services/performance.d.ts +60 -0
  53. package/dist/services/performance.js +118 -0
  54. package/dist/services/presence.svelte.d.ts +21 -89
  55. package/dist/services/presence.svelte.js +232 -469
  56. package/dist/services/realtime.svelte.d.ts +54 -125
  57. package/dist/services/realtime.svelte.js +111 -175
  58. package/dist/services/remote-config.svelte.d.ts +73 -0
  59. package/dist/services/remote-config.svelte.js +204 -0
  60. package/dist/services/storage.svelte.d.ts +81 -208
  61. package/dist/services/storage.svelte.js +190 -305
  62. package/dist/services/user.svelte.d.ts +23 -244
  63. package/dist/services/user.svelte.js +129 -439
  64. package/dist/types/analytics.d.ts +2 -36
  65. package/dist/types/analytics.js +0 -5
  66. package/dist/types/auth.d.ts +15 -85
  67. package/dist/types/auth.js +0 -17
  68. package/dist/types/collection.d.ts +31 -225
  69. package/dist/types/collection.js +5 -51
  70. package/dist/types/document.d.ts +11 -236
  71. package/dist/types/document.js +2 -47
  72. package/dist/types/firebase.d.ts +10 -13
  73. package/dist/types/firebase.js +3 -9
  74. package/dist/types/index.d.ts +5 -5
  75. package/dist/types/index.js +5 -4
  76. package/dist/types/mutations.d.ts +11 -225
  77. package/dist/types/mutations.js +6 -51
  78. package/dist/types/presence.d.ts +5 -158
  79. package/dist/types/presence.js +0 -20
  80. package/dist/utils/errors.d.ts +10 -14
  81. package/dist/utils/errors.js +11 -16
  82. package/dist/utils/firestore.d.ts +3 -4
  83. package/dist/utils/firestore.js +7 -10
  84. package/dist/utils/index.d.ts +4 -4
  85. package/dist/utils/index.js +4 -8
  86. package/dist/utils/providers.d.ts +4 -13
  87. package/dist/utils/providers.js +14 -13
  88. package/dist/utils/user.d.ts +1 -3
  89. package/dist/utils/user.js +1 -3
  90. package/package.json +41 -55
  91. package/dist/components/docs/doc-content.svelte +0 -19
  92. package/dist/components/docs/doc-content.svelte.d.ts +0 -6
  93. package/dist/components/docs/doc-header.svelte +0 -24
  94. package/dist/components/docs/doc-header.svelte.d.ts +0 -13
  95. package/dist/components/docs/doc-renderer.svelte +0 -27
  96. package/dist/components/docs/doc-renderer.svelte.d.ts +0 -8
  97. package/dist/components/docs/mobile-table-of-contents.svelte +0 -42
  98. package/dist/components/docs/mobile-table-of-contents.svelte.d.ts +0 -3
  99. package/dist/components/docs/table-of-contents.svelte +0 -33
  100. package/dist/components/docs/table-of-contents.svelte.d.ts +0 -4
  101. package/dist/components/docs/toc.svelte.d.ts +0 -16
  102. package/dist/components/docs/toc.svelte.js +0 -59
  103. package/dist/components/firekit/Collection.svelte +0 -122
  104. package/dist/components/firekit/Collection.svelte.d.ts +0 -27
  105. package/dist/components/firekit/Doc.svelte +0 -140
  106. package/dist/components/firekit/Doc.svelte.d.ts +0 -28
  107. package/dist/components/firekit/Node.svelte +0 -97
  108. package/dist/components/firekit/Node.svelte.d.ts +0 -23
  109. package/dist/components/firekit/auth-guard.svelte +0 -120
  110. package/dist/components/firekit/auth-guard.svelte.d.ts +0 -26
  111. package/dist/components/firekit/custom-guard.svelte +0 -163
  112. package/dist/components/firekit/custom-guard.svelte.d.ts +0 -31
  113. package/dist/components/firekit/download-url.svelte +0 -92
  114. package/dist/components/firekit/download-url.svelte.d.ts +0 -19
  115. package/dist/components/firekit/firebase-app.svelte +0 -33
  116. package/dist/components/firekit/firebase-app.svelte.d.ts +0 -7
  117. package/dist/components/firekit/node-list.svelte +0 -102
  118. package/dist/components/firekit/node-list.svelte.d.ts +0 -27
  119. package/dist/components/firekit/signed-in.svelte +0 -42
  120. package/dist/components/firekit/signed-out.svelte +0 -42
  121. package/dist/components/firekit/storage-list.svelte +0 -97
  122. package/dist/components/firekit/storage-list.svelte.d.ts +0 -26
  123. package/dist/components/firekit/upload-task.svelte +0 -108
  124. package/dist/components/firekit/upload-task.svelte.d.ts +0 -24
  125. package/dist/components/nav/app-sidebar.svelte +0 -175
  126. package/dist/components/nav/app-sidebar.svelte.d.ts +0 -9
  127. package/dist/components/nav/auto-breadcrumb.svelte +0 -41
  128. package/dist/components/nav/auto-breadcrumb.svelte.d.ts +0 -3
  129. package/dist/components/nav/dark-mode-toggle.svelte +0 -17
  130. package/dist/components/nav/dark-mode-toggle.svelte.d.ts +0 -18
  131. package/dist/components/nav/nav-components.svelte +0 -24
  132. package/dist/components/nav/nav-components.svelte.d.ts +0 -11
  133. package/dist/components/nav/nav-main.svelte +0 -45
  134. package/dist/components/nav/nav-main.svelte.d.ts +0 -11
  135. package/dist/components/nav/nav-secondary.svelte +0 -32
  136. package/dist/components/nav/nav-secondary.svelte.d.ts +0 -14
  137. package/dist/components/nav/site-header.svelte +0 -32
  138. package/dist/components/nav/site-header.svelte.d.ts +0 -18
  139. package/dist/components/ui/avatar/avatar-fallback.svelte +0 -17
  140. package/dist/components/ui/avatar/avatar-fallback.svelte.d.ts +0 -4
  141. package/dist/components/ui/avatar/avatar-image.svelte +0 -17
  142. package/dist/components/ui/avatar/avatar-image.svelte.d.ts +0 -4
  143. package/dist/components/ui/avatar/avatar.svelte +0 -19
  144. package/dist/components/ui/avatar/avatar.svelte.d.ts +0 -4
  145. package/dist/components/ui/avatar/index.d.ts +0 -4
  146. package/dist/components/ui/avatar/index.js +0 -6
  147. package/dist/components/ui/badge/badge.svelte +0 -50
  148. package/dist/components/ui/badge/badge.svelte.d.ts +0 -32
  149. package/dist/components/ui/badge/index.d.ts +0 -2
  150. package/dist/components/ui/badge/index.js +0 -2
  151. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte +0 -23
  152. package/dist/components/ui/breadcrumb/breadcrumb-ellipsis.svelte.d.ts +0 -5
  153. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte +0 -20
  154. package/dist/components/ui/breadcrumb/breadcrumb-item.svelte.d.ts +0 -5
  155. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte +0 -31
  156. package/dist/components/ui/breadcrumb/breadcrumb-link.svelte.d.ts +0 -11
  157. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte +0 -23
  158. package/dist/components/ui/breadcrumb/breadcrumb-list.svelte.d.ts +0 -5
  159. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte +0 -23
  160. package/dist/components/ui/breadcrumb/breadcrumb-page.svelte.d.ts +0 -5
  161. package/dist/components/ui/breadcrumb/breadcrumb-separator.svelte +0 -27
  162. package/dist/components/ui/breadcrumb/breadcrumb-separator.svelte.d.ts +0 -5
  163. package/dist/components/ui/breadcrumb/breadcrumb.svelte +0 -21
  164. package/dist/components/ui/breadcrumb/breadcrumb.svelte.d.ts +0 -5
  165. package/dist/components/ui/breadcrumb/index.d.ts +0 -8
  166. package/dist/components/ui/breadcrumb/index.js +0 -10
  167. package/dist/components/ui/button/button.svelte +0 -80
  168. package/dist/components/ui/button/button.svelte.d.ts +0 -58
  169. package/dist/components/ui/button/index.d.ts +0 -2
  170. package/dist/components/ui/button/index.js +0 -4
  171. package/dist/components/ui/card/card-action.svelte +0 -20
  172. package/dist/components/ui/card/card-action.svelte.d.ts +0 -5
  173. package/dist/components/ui/card/card-content.svelte +0 -15
  174. package/dist/components/ui/card/card-content.svelte.d.ts +0 -5
  175. package/dist/components/ui/card/card-description.svelte +0 -20
  176. package/dist/components/ui/card/card-description.svelte.d.ts +0 -5
  177. package/dist/components/ui/card/card-footer.svelte +0 -20
  178. package/dist/components/ui/card/card-footer.svelte.d.ts +0 -5
  179. package/dist/components/ui/card/card-header.svelte +0 -23
  180. package/dist/components/ui/card/card-header.svelte.d.ts +0 -5
  181. package/dist/components/ui/card/card-title.svelte +0 -20
  182. package/dist/components/ui/card/card-title.svelte.d.ts +0 -5
  183. package/dist/components/ui/card/card.svelte +0 -23
  184. package/dist/components/ui/card/card.svelte.d.ts +0 -5
  185. package/dist/components/ui/card/index.d.ts +0 -8
  186. package/dist/components/ui/card/index.js +0 -10
  187. package/dist/components/ui/chart/chart-container.svelte +0 -80
  188. package/dist/components/ui/chart/chart-container.svelte.d.ts +0 -9
  189. package/dist/components/ui/chart/chart-style.svelte +0 -36
  190. package/dist/components/ui/chart/chart-style.svelte.d.ts +0 -8
  191. package/dist/components/ui/chart/chart-tooltip.svelte +0 -159
  192. package/dist/components/ui/chart/chart-tooltip.svelte.d.ts +0 -27
  193. package/dist/components/ui/chart/chart-utils.d.ts +0 -36
  194. package/dist/components/ui/chart/chart-utils.js +0 -33
  195. package/dist/components/ui/chart/index.d.ts +0 -4
  196. package/dist/components/ui/chart/index.js +0 -4
  197. package/dist/components/ui/checkbox/checkbox.svelte +0 -36
  198. package/dist/components/ui/checkbox/checkbox.svelte.d.ts +0 -4
  199. package/dist/components/ui/checkbox/index.d.ts +0 -2
  200. package/dist/components/ui/checkbox/index.js +0 -4
  201. package/dist/components/ui/data-table/data-table.svelte.d.ts +0 -40
  202. package/dist/components/ui/data-table/data-table.svelte.js +0 -110
  203. package/dist/components/ui/data-table/flex-render.svelte +0 -36
  204. package/dist/components/ui/data-table/flex-render.svelte.d.ts +0 -30
  205. package/dist/components/ui/data-table/index.d.ts +0 -3
  206. package/dist/components/ui/data-table/index.js +0 -3
  207. package/dist/components/ui/data-table/render-helpers.d.ts +0 -90
  208. package/dist/components/ui/data-table/render-helpers.js +0 -99
  209. package/dist/components/ui/dialog/dialog-close.svelte +0 -7
  210. package/dist/components/ui/dialog/dialog-close.svelte.d.ts +0 -4
  211. package/dist/components/ui/dialog/dialog-content.svelte +0 -43
  212. package/dist/components/ui/dialog/dialog-content.svelte.d.ts +0 -11
  213. package/dist/components/ui/dialog/dialog-description.svelte +0 -17
  214. package/dist/components/ui/dialog/dialog-description.svelte.d.ts +0 -4
  215. package/dist/components/ui/dialog/dialog-footer.svelte +0 -20
  216. package/dist/components/ui/dialog/dialog-footer.svelte.d.ts +0 -5
  217. package/dist/components/ui/dialog/dialog-header.svelte +0 -20
  218. package/dist/components/ui/dialog/dialog-header.svelte.d.ts +0 -5
  219. package/dist/components/ui/dialog/dialog-overlay.svelte +0 -20
  220. package/dist/components/ui/dialog/dialog-overlay.svelte.d.ts +0 -4
  221. package/dist/components/ui/dialog/dialog-title.svelte +0 -17
  222. package/dist/components/ui/dialog/dialog-title.svelte.d.ts +0 -4
  223. package/dist/components/ui/dialog/dialog-trigger.svelte +0 -7
  224. package/dist/components/ui/dialog/dialog-trigger.svelte.d.ts +0 -4
  225. package/dist/components/ui/dialog/index.d.ts +0 -11
  226. package/dist/components/ui/dialog/index.js +0 -14
  227. package/dist/components/ui/drawer/drawer-close.svelte +0 -7
  228. package/dist/components/ui/drawer/drawer-close.svelte.d.ts +0 -4
  229. package/dist/components/ui/drawer/drawer-content.svelte +0 -37
  230. package/dist/components/ui/drawer/drawer-content.svelte.d.ts +0 -7
  231. package/dist/components/ui/drawer/drawer-description.svelte +0 -17
  232. package/dist/components/ui/drawer/drawer-description.svelte.d.ts +0 -4
  233. package/dist/components/ui/drawer/drawer-footer.svelte +0 -20
  234. package/dist/components/ui/drawer/drawer-footer.svelte.d.ts +0 -5
  235. package/dist/components/ui/drawer/drawer-header.svelte +0 -20
  236. package/dist/components/ui/drawer/drawer-header.svelte.d.ts +0 -5
  237. package/dist/components/ui/drawer/drawer-nested.svelte +0 -12
  238. package/dist/components/ui/drawer/drawer-nested.svelte.d.ts +0 -3
  239. package/dist/components/ui/drawer/drawer-overlay.svelte +0 -20
  240. package/dist/components/ui/drawer/drawer-overlay.svelte.d.ts +0 -4
  241. package/dist/components/ui/drawer/drawer-title.svelte +0 -17
  242. package/dist/components/ui/drawer/drawer-title.svelte.d.ts +0 -4
  243. package/dist/components/ui/drawer/drawer-trigger.svelte +0 -7
  244. package/dist/components/ui/drawer/drawer-trigger.svelte.d.ts +0 -4
  245. package/dist/components/ui/drawer/drawer.svelte +0 -12
  246. package/dist/components/ui/drawer/drawer.svelte.d.ts +0 -3
  247. package/dist/components/ui/drawer/index.d.ts +0 -13
  248. package/dist/components/ui/drawer/index.js +0 -15
  249. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +0 -41
  250. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte.d.ts +0 -9
  251. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte +0 -27
  252. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte.d.ts +0 -7
  253. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte +0 -22
  254. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte.d.ts +0 -8
  255. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte +0 -7
  256. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte.d.ts +0 -4
  257. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte +0 -27
  258. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte.d.ts +0 -8
  259. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte +0 -24
  260. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte.d.ts +0 -8
  261. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +0 -16
  262. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +0 -4
  263. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +0 -31
  264. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte.d.ts +0 -4
  265. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte +0 -17
  266. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte.d.ts +0 -4
  267. package/dist/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte +0 -20
  268. package/dist/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte.d.ts +0 -5
  269. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +0 -20
  270. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte.d.ts +0 -4
  271. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +0 -29
  272. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte.d.ts +0 -7
  273. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte +0 -7
  274. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte.d.ts +0 -4
  275. package/dist/components/ui/dropdown-menu/index.d.ts +0 -25
  276. package/dist/components/ui/dropdown-menu/index.js +0 -17
  277. package/dist/components/ui/input/index.d.ts +0 -2
  278. package/dist/components/ui/input/index.js +0 -4
  279. package/dist/components/ui/input/input.svelte +0 -51
  280. package/dist/components/ui/input/input.svelte.d.ts +0 -13
  281. package/dist/components/ui/label/index.d.ts +0 -2
  282. package/dist/components/ui/label/index.js +0 -4
  283. package/dist/components/ui/label/label.svelte +0 -20
  284. package/dist/components/ui/label/label.svelte.d.ts +0 -4
  285. package/dist/components/ui/scroll-area/index.d.ts +0 -3
  286. package/dist/components/ui/scroll-area/index.js +0 -5
  287. package/dist/components/ui/scroll-area/scroll-area-scrollbar.svelte +0 -31
  288. package/dist/components/ui/scroll-area/scroll-area-scrollbar.svelte.d.ts +0 -4
  289. package/dist/components/ui/scroll-area/scroll-area.svelte +0 -40
  290. package/dist/components/ui/scroll-area/scroll-area.svelte.d.ts +0 -10
  291. package/dist/components/ui/select/index.d.ts +0 -11
  292. package/dist/components/ui/select/index.js +0 -14
  293. package/dist/components/ui/select/select-content.svelte +0 -40
  294. package/dist/components/ui/select/select-content.svelte.d.ts +0 -8
  295. package/dist/components/ui/select/select-group-heading.svelte +0 -21
  296. package/dist/components/ui/select/select-group-heading.svelte.d.ts +0 -10
  297. package/dist/components/ui/select/select-group.svelte +0 -7
  298. package/dist/components/ui/select/select-group.svelte.d.ts +0 -4
  299. package/dist/components/ui/select/select-item.svelte +0 -38
  300. package/dist/components/ui/select/select-item.svelte.d.ts +0 -4
  301. package/dist/components/ui/select/select-label.svelte +0 -20
  302. package/dist/components/ui/select/select-label.svelte.d.ts +0 -6
  303. package/dist/components/ui/select/select-scroll-down-button.svelte +0 -20
  304. package/dist/components/ui/select/select-scroll-down-button.svelte.d.ts +0 -4
  305. package/dist/components/ui/select/select-scroll-up-button.svelte +0 -20
  306. package/dist/components/ui/select/select-scroll-up-button.svelte.d.ts +0 -4
  307. package/dist/components/ui/select/select-separator.svelte +0 -18
  308. package/dist/components/ui/select/select-separator.svelte.d.ts +0 -4
  309. package/dist/components/ui/select/select-trigger.svelte +0 -29
  310. package/dist/components/ui/select/select-trigger.svelte.d.ts +0 -8
  311. package/dist/components/ui/separator/index.d.ts +0 -2
  312. package/dist/components/ui/separator/index.js +0 -4
  313. package/dist/components/ui/separator/separator.svelte +0 -20
  314. package/dist/components/ui/separator/separator.svelte.d.ts +0 -4
  315. package/dist/components/ui/sheet/index.d.ts +0 -11
  316. package/dist/components/ui/sheet/index.js +0 -14
  317. package/dist/components/ui/sheet/sheet-close.svelte +0 -7
  318. package/dist/components/ui/sheet/sheet-close.svelte.d.ts +0 -4
  319. package/dist/components/ui/sheet/sheet-content.svelte +0 -58
  320. package/dist/components/ui/sheet/sheet-content.svelte.d.ts +0 -35
  321. package/dist/components/ui/sheet/sheet-description.svelte +0 -17
  322. package/dist/components/ui/sheet/sheet-description.svelte.d.ts +0 -4
  323. package/dist/components/ui/sheet/sheet-footer.svelte +0 -20
  324. package/dist/components/ui/sheet/sheet-footer.svelte.d.ts +0 -5
  325. package/dist/components/ui/sheet/sheet-header.svelte +0 -20
  326. package/dist/components/ui/sheet/sheet-header.svelte.d.ts +0 -5
  327. package/dist/components/ui/sheet/sheet-overlay.svelte +0 -20
  328. package/dist/components/ui/sheet/sheet-overlay.svelte.d.ts +0 -4
  329. package/dist/components/ui/sheet/sheet-title.svelte +0 -17
  330. package/dist/components/ui/sheet/sheet-title.svelte.d.ts +0 -4
  331. package/dist/components/ui/sheet/sheet-trigger.svelte +0 -7
  332. package/dist/components/ui/sheet/sheet-trigger.svelte.d.ts +0 -4
  333. package/dist/components/ui/sidebar/constants.d.ts +0 -6
  334. package/dist/components/ui/sidebar/constants.js +0 -6
  335. package/dist/components/ui/sidebar/context.svelte.d.ts +0 -42
  336. package/dist/components/ui/sidebar/context.svelte.js +0 -54
  337. package/dist/components/ui/sidebar/index.d.ts +0 -25
  338. package/dist/components/ui/sidebar/index.js +0 -27
  339. package/dist/components/ui/sidebar/sidebar-content.svelte +0 -24
  340. package/dist/components/ui/sidebar/sidebar-content.svelte.d.ts +0 -5
  341. package/dist/components/ui/sidebar/sidebar-footer.svelte +0 -21
  342. package/dist/components/ui/sidebar/sidebar-footer.svelte.d.ts +0 -5
  343. package/dist/components/ui/sidebar/sidebar-group-action.svelte +0 -36
  344. package/dist/components/ui/sidebar/sidebar-group-action.svelte.d.ts +0 -11
  345. package/dist/components/ui/sidebar/sidebar-group-content.svelte +0 -21
  346. package/dist/components/ui/sidebar/sidebar-group-content.svelte.d.ts +0 -5
  347. package/dist/components/ui/sidebar/sidebar-group-label.svelte +0 -34
  348. package/dist/components/ui/sidebar/sidebar-group-label.svelte.d.ts +0 -11
  349. package/dist/components/ui/sidebar/sidebar-group.svelte +0 -21
  350. package/dist/components/ui/sidebar/sidebar-group.svelte.d.ts +0 -5
  351. package/dist/components/ui/sidebar/sidebar-header.svelte +0 -21
  352. package/dist/components/ui/sidebar/sidebar-header.svelte.d.ts +0 -5
  353. package/dist/components/ui/sidebar/sidebar-input.svelte +0 -21
  354. package/dist/components/ui/sidebar/sidebar-input.svelte.d.ts +0 -11
  355. package/dist/components/ui/sidebar/sidebar-inset.svelte +0 -24
  356. package/dist/components/ui/sidebar/sidebar-inset.svelte.d.ts +0 -5
  357. package/dist/components/ui/sidebar/sidebar-menu-action.svelte +0 -43
  358. package/dist/components/ui/sidebar/sidebar-menu-action.svelte.d.ts +0 -12
  359. package/dist/components/ui/sidebar/sidebar-menu-badge.svelte +0 -29
  360. package/dist/components/ui/sidebar/sidebar-menu-badge.svelte.d.ts +0 -5
  361. package/dist/components/ui/sidebar/sidebar-menu-button.svelte +0 -103
  362. package/dist/components/ui/sidebar/sidebar-menu-button.svelte.d.ts +0 -51
  363. package/dist/components/ui/sidebar/sidebar-menu-item.svelte +0 -21
  364. package/dist/components/ui/sidebar/sidebar-menu-item.svelte.d.ts +0 -5
  365. package/dist/components/ui/sidebar/sidebar-menu-skeleton.svelte +0 -36
  366. package/dist/components/ui/sidebar/sidebar-menu-skeleton.svelte.d.ts +0 -8
  367. package/dist/components/ui/sidebar/sidebar-menu-sub-button.svelte +0 -43
  368. package/dist/components/ui/sidebar/sidebar-menu-sub-button.svelte.d.ts +0 -13
  369. package/dist/components/ui/sidebar/sidebar-menu-sub-item.svelte +0 -21
  370. package/dist/components/ui/sidebar/sidebar-menu-sub-item.svelte.d.ts +0 -5
  371. package/dist/components/ui/sidebar/sidebar-menu-sub.svelte +0 -25
  372. package/dist/components/ui/sidebar/sidebar-menu-sub.svelte.d.ts +0 -5
  373. package/dist/components/ui/sidebar/sidebar-menu.svelte +0 -21
  374. package/dist/components/ui/sidebar/sidebar-menu.svelte.d.ts +0 -5
  375. package/dist/components/ui/sidebar/sidebar-provider.svelte +0 -53
  376. package/dist/components/ui/sidebar/sidebar-provider.svelte.d.ts +0 -9
  377. package/dist/components/ui/sidebar/sidebar-rail.svelte +0 -36
  378. package/dist/components/ui/sidebar/sidebar-rail.svelte.d.ts +0 -5
  379. package/dist/components/ui/sidebar/sidebar-separator.svelte +0 -19
  380. package/dist/components/ui/sidebar/sidebar-separator.svelte.d.ts +0 -13
  381. package/dist/components/ui/sidebar/sidebar-trigger.svelte +0 -35
  382. package/dist/components/ui/sidebar/sidebar-trigger.svelte.d.ts +0 -8
  383. package/dist/components/ui/sidebar/sidebar.svelte +0 -104
  384. package/dist/components/ui/sidebar/sidebar.svelte.d.ts +0 -10
  385. package/dist/components/ui/skeleton/index.d.ts +0 -2
  386. package/dist/components/ui/skeleton/index.js +0 -4
  387. package/dist/components/ui/skeleton/skeleton.svelte +0 -17
  388. package/dist/components/ui/skeleton/skeleton.svelte.d.ts +0 -5
  389. package/dist/components/ui/table/index.d.ts +0 -9
  390. package/dist/components/ui/table/index.js +0 -11
  391. package/dist/components/ui/table/table-body.svelte +0 -20
  392. package/dist/components/ui/table/table-body.svelte.d.ts +0 -5
  393. package/dist/components/ui/table/table-caption.svelte +0 -20
  394. package/dist/components/ui/table/table-caption.svelte.d.ts +0 -5
  395. package/dist/components/ui/table/table-cell.svelte +0 -20
  396. package/dist/components/ui/table/table-cell.svelte.d.ts +0 -5
  397. package/dist/components/ui/table/table-footer.svelte +0 -20
  398. package/dist/components/ui/table/table-footer.svelte.d.ts +0 -5
  399. package/dist/components/ui/table/table-head.svelte +0 -23
  400. package/dist/components/ui/table/table-head.svelte.d.ts +0 -5
  401. package/dist/components/ui/table/table-header.svelte +0 -20
  402. package/dist/components/ui/table/table-header.svelte.d.ts +0 -5
  403. package/dist/components/ui/table/table-row.svelte +0 -23
  404. package/dist/components/ui/table/table-row.svelte.d.ts +0 -5
  405. package/dist/components/ui/table/table.svelte +0 -22
  406. package/dist/components/ui/table/table.svelte.d.ts +0 -5
  407. package/dist/components/ui/tabs/index.d.ts +0 -5
  408. package/dist/components/ui/tabs/index.js +0 -7
  409. package/dist/components/ui/tabs/tabs-content.svelte +0 -17
  410. package/dist/components/ui/tabs/tabs-content.svelte.d.ts +0 -4
  411. package/dist/components/ui/tabs/tabs-list.svelte +0 -20
  412. package/dist/components/ui/tabs/tabs-list.svelte.d.ts +0 -4
  413. package/dist/components/ui/tabs/tabs-trigger.svelte +0 -20
  414. package/dist/components/ui/tabs/tabs-trigger.svelte.d.ts +0 -4
  415. package/dist/components/ui/tabs/tabs.svelte +0 -19
  416. package/dist/components/ui/tabs/tabs.svelte.d.ts +0 -4
  417. package/dist/components/ui/toggle/index.d.ts +0 -3
  418. package/dist/components/ui/toggle/index.js +0 -5
  419. package/dist/components/ui/toggle/toggle.svelte +0 -52
  420. package/dist/components/ui/toggle/toggle.svelte.d.ts +0 -43
  421. package/dist/components/ui/toggle-group/index.d.ts +0 -3
  422. package/dist/components/ui/toggle-group/index.js +0 -5
  423. package/dist/components/ui/toggle-group/toggle-group-item.svelte +0 -34
  424. package/dist/components/ui/toggle-group/toggle-group-item.svelte.d.ts +0 -6
  425. package/dist/components/ui/toggle-group/toggle-group.svelte +0 -47
  426. package/dist/components/ui/toggle-group/toggle-group.svelte.d.ts +0 -8
  427. package/dist/components/ui/tooltip/index.d.ts +0 -7
  428. package/dist/components/ui/tooltip/index.js +0 -9
  429. package/dist/components/ui/tooltip/tooltip-content.svelte +0 -47
  430. package/dist/components/ui/tooltip/tooltip-content.svelte.d.ts +0 -7
  431. package/dist/components/ui/tooltip/tooltip-trigger.svelte +0 -7
  432. package/dist/components/ui/tooltip/tooltip-trigger.svelte.d.ts +0 -4
  433. package/dist/hooks/is-mobile.svelte.d.ts +0 -4
  434. package/dist/hooks/is-mobile.svelte.js +0 -7
  435. package/dist/services/index.d.ts +0 -9
  436. package/dist/services/index.js +0 -10
  437. package/dist/types/docs.d.ts +0 -67
  438. package/dist/types/docs.js +0 -1
  439. package/dist/utils.d.ts +0 -15
  440. package/dist/utils.js +0 -44
@@ -1,23 +0,0 @@
1
- import { type DatabaseReference, type Database } from 'firebase/database';
2
- import type { Snippet } from 'svelte';
3
- type $$ComponentProps = {
4
- /**
5
- * Database reference path string (e.g. 'users/123')
6
- */
7
- path: string;
8
- /**
9
- * Initial value to use before node is fetched
10
- */
11
- startWith?: any;
12
- /**
13
- * Content to render when node is loaded
14
- */
15
- children: Snippet<[any, DatabaseReference, Database]>;
16
- /**
17
- * Content to render while loading
18
- */
19
- loading?: Snippet<[]>;
20
- };
21
- declare const Node: import("svelte").Component<$$ComponentProps, {}, "">;
22
- type Node = ReturnType<typeof Node>;
23
- export default Node;
@@ -1,120 +0,0 @@
1
- <script lang="ts">
2
- import { firekitAuth } from '../../services/auth.js';
3
- import { getContext } from 'svelte';
4
- import { goto } from '$app/navigation';
5
- import { onMount, onDestroy } from 'svelte';
6
- import type { UserProfile } from '../../types/auth.js';
7
- import type { Auth } from 'firebase/auth';
8
- import type { Snippet } from 'svelte';
9
-
10
- /**
11
- * Props for AuthGuard component
12
- */
13
- let {
14
- children,
15
- requireAuth = true,
16
- redirectTo = '/',
17
- fallback
18
- }: {
19
- /**
20
- * Children content to render when auth state matches requirements
21
- */
22
- children: Snippet<[UserProfile, Auth, () => Promise<void>]>;
23
- /**
24
- * Whether authentication is required to view the content
25
- * @default true
26
- */
27
- requireAuth?: boolean;
28
- /**
29
- * Path to redirect to if auth state doesn't match requirements
30
- * @default '/'
31
- */
32
- redirectTo?: string;
33
- /**
34
- * Fallback content to show while checking auth state
35
- */
36
- fallback?: Snippet<[]>;
37
- } = $props();
38
-
39
- // Try to get Firebase Auth from context first, fallback to service
40
- let auth: Auth | null = $state(null);
41
- let unsubscribe: (() => void) | null = null;
42
- let authState = $state(firekitAuth.getState());
43
-
44
- // Sign out function
45
- async function signOut() {
46
- await firekitAuth.signOut();
47
- }
48
-
49
- onMount(async () => {
50
- try {
51
- // Try to get auth from context first
52
- auth = getContext<Auth>('firebase/auth');
53
-
54
- // If context doesn't exist, get from service
55
- if (!auth) {
56
- console.warn('Firebase Auth not found in context, using service directly');
57
- const { firebaseService } = await import('../../firebase.js');
58
- auth = firebaseService.getAuthInstance();
59
- }
60
-
61
- if (!auth) {
62
- throw new Error('Firebase Auth instance not available');
63
- }
64
-
65
- // Subscribe to auth state changes
66
- unsubscribe = firekitAuth.onAuthStateChanged((state) => {
67
- authState = state;
68
- });
69
-
70
- // Initial auth check
71
- checkAuthState();
72
- } catch (error) {
73
- console.error('Failed to initialize AuthGuard:', error);
74
- authState = {
75
- user: null,
76
- loading: false,
77
- initialized: true
78
- };
79
- }
80
- });
81
-
82
- // Check if current auth state matches requirements
83
- function checkAuthState() {
84
- if (authState.loading) return;
85
-
86
- const isAuthenticated = firekitAuth.isAuthenticated();
87
- const shouldRedirect = requireAuth ? !isAuthenticated : isAuthenticated;
88
-
89
- if (shouldRedirect) {
90
- goto(redirectTo);
91
- }
92
- }
93
-
94
- // Watch for auth state changes
95
- $effect(() => {
96
- checkAuthState();
97
- });
98
-
99
- // Cleanup subscription on component destruction
100
- onDestroy(() => {
101
- if (unsubscribe) {
102
- unsubscribe();
103
- }
104
- });
105
- </script>
106
-
107
- {#if authState.loading}
108
- {#if fallback}
109
- {@render fallback()}
110
- {:else}
111
- <div class="flex min-h-screen items-center justify-center">
112
- <div class="text-center">
113
- <div class="mx-auto h-8 w-8 animate-spin rounded-full border-b-2 border-gray-900"></div>
114
- <p class="mt-2 text-gray-600">Loading...</p>
115
- </div>
116
- </div>
117
- {/if}
118
- {:else if auth && firekitAuth.isAuthenticated() === requireAuth}
119
- {@render children(authState.user!, auth, signOut)}
120
- {/if}
@@ -1,26 +0,0 @@
1
- import type { UserProfile } from '../../types/auth.js';
2
- import type { Auth } from 'firebase/auth';
3
- import type { Snippet } from 'svelte';
4
- type $$ComponentProps = {
5
- /**
6
- * Children content to render when auth state matches requirements
7
- */
8
- children: Snippet<[UserProfile, Auth, () => Promise<void>]>;
9
- /**
10
- * Whether authentication is required to view the content
11
- * @default true
12
- */
13
- requireAuth?: boolean;
14
- /**
15
- * Path to redirect to if auth state doesn't match requirements
16
- * @default '/'
17
- */
18
- redirectTo?: string;
19
- /**
20
- * Fallback content to show while checking auth state
21
- */
22
- fallback?: Snippet<[]>;
23
- };
24
- declare const AuthGuard: import("svelte").Component<$$ComponentProps, {}, "">;
25
- type AuthGuard = ReturnType<typeof AuthGuard>;
26
- export default AuthGuard;
@@ -1,163 +0,0 @@
1
- <script lang="ts">
2
- import { firekitAuth } from '../../services/auth.js';
3
- import { getContext } from 'svelte';
4
- import { goto } from '$app/navigation';
5
- import { onMount, onDestroy } from 'svelte';
6
- import type { UserProfile } from '../../types/auth.js';
7
- import type { Auth } from 'firebase/auth';
8
- import type { Snippet } from 'svelte';
9
-
10
- /**
11
- * Props for CustomGuard component
12
- */
13
- let {
14
- children,
15
- requireAuth = true,
16
- redirectTo = '/',
17
- fallback,
18
- verificationChecks = []
19
- }: {
20
- /**
21
- * Children content to render when all checks pass
22
- */
23
- children: Snippet<[UserProfile, Auth, () => Promise<void>]>;
24
- /**
25
- * Whether authentication is required to view the content
26
- * @default true
27
- */
28
- requireAuth?: boolean;
29
- /**
30
- * Path to redirect to if checks fail
31
- * @default '/'
32
- */
33
- redirectTo?: string;
34
- /**
35
- * Fallback content to show while checking auth state
36
- */
37
- fallback?: Snippet<[]>;
38
- /**
39
- * Array of verification functions that must return true to allow access
40
- * Each function receives the user profile and auth instance
41
- */
42
- verificationChecks?: ((user: UserProfile, auth: Auth) => boolean | Promise<boolean>)[];
43
- } = $props();
44
-
45
- // Try to get Firebase Auth from context first, fallback to service
46
- let auth: Auth | null = $state(null);
47
- let unsubscribe: (() => void) | null = null;
48
- let authState = $state(firekitAuth.getState());
49
- let verificationPassed = $state(true);
50
- let isVerifying = $state(false);
51
-
52
- // Sign out function
53
- async function signOut() {
54
- await firekitAuth.signOut();
55
- }
56
-
57
- // Check verification functions
58
- async function runVerificationChecks(): Promise<boolean> {
59
- if (!auth || !authState.user || verificationChecks.length === 0) {
60
- return true;
61
- }
62
-
63
- try {
64
- const results = await Promise.all(
65
- verificationChecks.map((check) => check(authState.user!, auth!))
66
- );
67
- return results.every((result) => result === true);
68
- } catch (error) {
69
- console.error('Verification check failed:', error);
70
- return false;
71
- }
72
- }
73
-
74
- // Check if current auth state and verification checks pass
75
- async function checkAccess() {
76
- if (authState.loading) return;
77
-
78
- const isAuthenticated = firekitAuth.isAuthenticated();
79
- const shouldRedirect = requireAuth ? !isAuthenticated : isAuthenticated;
80
-
81
- if (shouldRedirect) {
82
- goto(redirectTo);
83
- return;
84
- }
85
-
86
- // If authenticated and verification checks exist, run them
87
- if (isAuthenticated && verificationChecks.length > 0) {
88
- isVerifying = true;
89
- try {
90
- verificationPassed = await runVerificationChecks();
91
- if (!verificationPassed) {
92
- goto(redirectTo);
93
- }
94
- } finally {
95
- isVerifying = false;
96
- }
97
- } else {
98
- verificationPassed = true;
99
- }
100
- }
101
-
102
- onMount(async () => {
103
- try {
104
- // Try to get auth from context first
105
- auth = getContext<Auth>('firebase/auth');
106
-
107
- // If context doesn't exist, get from service
108
- if (!auth) {
109
- console.warn('Firebase Auth not found in context, using service directly');
110
- const { firebaseService } = await import('../../firebase.js');
111
- auth = firebaseService.getAuthInstance();
112
- }
113
-
114
- if (!auth) {
115
- throw new Error('Firebase Auth instance not available');
116
- }
117
-
118
- // Subscribe to auth state changes
119
- unsubscribe = firekitAuth.onAuthStateChanged((state) => {
120
- authState = state;
121
- });
122
-
123
- // Initial access check
124
- await checkAccess();
125
- } catch (error) {
126
- console.error('Failed to initialize CustomGuard:', error);
127
- authState = {
128
- user: null,
129
- loading: false,
130
- initialized: true
131
- };
132
- }
133
- });
134
-
135
- // Watch for auth state changes
136
- $effect(() => {
137
- checkAccess();
138
- });
139
-
140
- // Cleanup subscription on component destruction
141
- onDestroy(() => {
142
- if (unsubscribe) {
143
- unsubscribe();
144
- }
145
- });
146
- </script>
147
-
148
- {#if authState.loading || isVerifying}
149
- {#if fallback}
150
- {@render fallback()}
151
- {:else}
152
- <div class="flex min-h-screen items-center justify-center">
153
- <div class="text-center">
154
- <div class="mx-auto h-8 w-8 animate-spin rounded-full border-b-2 border-gray-900"></div>
155
- <p class="mt-2 text-gray-600">
156
- {isVerifying ? 'Verifying access...' : 'Loading...'}
157
- </p>
158
- </div>
159
- </div>
160
- {/if}
161
- {:else if auth && firekitAuth.isAuthenticated() === requireAuth && verificationPassed}
162
- {@render children(authState.user!, auth, signOut)}
163
- {/if}
@@ -1,31 +0,0 @@
1
- import type { UserProfile } from '../../types/auth.js';
2
- import type { Auth } from 'firebase/auth';
3
- import type { Snippet } from 'svelte';
4
- type $$ComponentProps = {
5
- /**
6
- * Children content to render when all checks pass
7
- */
8
- children: Snippet<[UserProfile, Auth, () => Promise<void>]>;
9
- /**
10
- * Whether authentication is required to view the content
11
- * @default true
12
- */
13
- requireAuth?: boolean;
14
- /**
15
- * Path to redirect to if checks fail
16
- * @default '/'
17
- */
18
- redirectTo?: string;
19
- /**
20
- * Fallback content to show while checking auth state
21
- */
22
- fallback?: Snippet<[]>;
23
- /**
24
- * Array of verification functions that must return true to allow access
25
- * Each function receives the user profile and auth instance
26
- */
27
- verificationChecks?: ((user: UserProfile, auth: Auth) => boolean | Promise<boolean>)[];
28
- };
29
- declare const CustomGuard: import("svelte").Component<$$ComponentProps, {}, "">;
30
- type CustomGuard = ReturnType<typeof CustomGuard>;
31
- export default CustomGuard;
@@ -1,92 +0,0 @@
1
- <script lang="ts">
2
- import { ref, type StorageReference } from 'firebase/storage';
3
- import { firebaseService } from '../../firebase.js';
4
- import { firekitDownloadUrl } from '../../services/storage.svelte.js';
5
- import { browser } from '$app/environment';
6
- import type { Snippet } from 'svelte';
7
-
8
- /**
9
- * Props for DownloadURL component
10
- */
11
- let {
12
- ref: path,
13
- children,
14
- loading
15
- }: {
16
- /**
17
- * Storage reference path string (e.g. 'images/pic.png')
18
- */
19
- ref: string;
20
- /**
21
- * Content to render when URL is loaded
22
- */
23
- children: Snippet<[string, StorageReference, any]>;
24
- /**
25
- * Content to render while loading
26
- */
27
- loading?: Snippet<[]>;
28
- } = $props();
29
-
30
- // Get Storage instance and create references
31
- let storage: any = $state(null);
32
- let storageRef: StorageReference | null = $state(null);
33
- let downloadUrlService: ReturnType<typeof firekitDownloadUrl> | null = $state(null);
34
-
35
- // Track URL state
36
- let urlState = $state({
37
- loading: true,
38
- url: null as string | null,
39
- error: null as Error | null
40
- });
41
-
42
- // Subscribe to URL changes
43
- $effect(() => {
44
- if (!browser) {
45
- urlState = {
46
- loading: false,
47
- url: null,
48
- error: new Error('Storage not available in SSR')
49
- };
50
- return;
51
- }
52
-
53
- // Initialize storage and service
54
- storage = firebaseService.getStorageInstance();
55
- if (!storage) {
56
- urlState = {
57
- loading: false,
58
- url: null,
59
- error: new Error('Storage instance not available')
60
- };
61
- return;
62
- }
63
-
64
- // Create storage reference
65
- storageRef = ref(storage, path);
66
-
67
- // Create download URL service
68
- downloadUrlService = firekitDownloadUrl(path);
69
-
70
- // The service state is reactive, so we can directly access it
71
- // The effect will re-run when the service state changes
72
- urlState = {
73
- loading: downloadUrlService.loading,
74
- url: downloadUrlService.url,
75
- error: downloadUrlService.error
76
- };
77
- });
78
- </script>
79
-
80
- {#if !browser}
81
- <div>Storage not available in SSR</div>
82
- {:else if urlState.loading}
83
- {#if loading}
84
- {@render loading()}
85
- {:else}
86
- <div>Loading...</div>
87
- {/if}
88
- {:else if urlState.error}
89
- <div class="error">Error: {urlState.error.message}</div>
90
- {:else if urlState.url}
91
- {@render children(urlState.url, storageRef!, storage)}
92
- {/if}
@@ -1,19 +0,0 @@
1
- import { type StorageReference } from 'firebase/storage';
2
- import type { Snippet } from 'svelte';
3
- type $$ComponentProps = {
4
- /**
5
- * Storage reference path string (e.g. 'images/pic.png')
6
- */
7
- ref: string;
8
- /**
9
- * Content to render when URL is loaded
10
- */
11
- children: Snippet<[string, StorageReference, any]>;
12
- /**
13
- * Content to render while loading
14
- */
15
- loading?: Snippet<[]>;
16
- };
17
- declare const DownloadUrl: import("svelte").Component<$$ComponentProps, {}, "">;
18
- type DownloadUrl = ReturnType<typeof DownloadUrl>;
19
- export default DownloadUrl;
@@ -1,33 +0,0 @@
1
- <script lang="ts">
2
- import { setContext } from 'svelte';
3
- import type { Snippet } from 'svelte';
4
- import { browser } from '$app/environment';
5
- import { firebaseService } from '../../firebase.js';
6
-
7
- /**
8
- * Props for FirebaseApp component
9
- */
10
- let { children }: { children: Snippet } = $props();
11
-
12
- // Only initialize Firebase in the browser
13
- if (browser) {
14
- // Get Firebase app instance from service
15
- const app = firebaseService.getFirebaseApp();
16
- const auth = firebaseService.getAuthInstance();
17
- const firestore = firebaseService.getDbInstance();
18
- const storage = firebaseService.getStorageInstance();
19
- const rtdb = firebaseService.getDatabaseInstance();
20
- const analytics = firebaseService.getAnalyticsInstance();
21
- const functions = firebaseService.getFunctionsInstance();
22
- // Set Firebase instances in context
23
- setContext('firebase/app', app);
24
- setContext('firebase/auth', auth);
25
- setContext('firebase/firestore', firestore);
26
- setContext('firebase/storage', storage);
27
- setContext('firebase/rtdb', rtdb);
28
- setContext('firebase/analytics', analytics);
29
- setContext('firebase/functions', functions);
30
- }
31
- </script>
32
-
33
- {@render children()}
@@ -1,7 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- type $$ComponentProps = {
3
- children: Snippet;
4
- };
5
- declare const FirebaseApp: import("svelte").Component<$$ComponentProps, {}, "">;
6
- type FirebaseApp = ReturnType<typeof FirebaseApp>;
7
- export default FirebaseApp;
@@ -1,102 +0,0 @@
1
- <script lang="ts">
2
- import { ref, type DatabaseReference, type Database } from 'firebase/database';
3
- import { firebaseService } from '../../firebase.js';
4
- import { firekitRealtimeList } from '../../services/realtime.svelte.js';
5
- import { browser } from '$app/environment';
6
- import type { Snippet } from 'svelte';
7
-
8
- /**
9
- * Props for NodeList component
10
- */
11
- let {
12
- path,
13
- startWith,
14
- children,
15
- loading,
16
- queryConstraints
17
- }: {
18
- /**
19
- * Database reference path string (e.g. 'users')
20
- */
21
- path: string;
22
- /**
23
- * Initial value to use before list is fetched
24
- */
25
- startWith?: any[];
26
- /**
27
- * Content to render when list is loaded
28
- */
29
- children: Snippet<[any[], DatabaseReference, Database]>;
30
- /**
31
- * Content to render while loading
32
- */
33
- loading?: Snippet<[]>;
34
- /**
35
- * Query constraints for the list
36
- */
37
- queryConstraints?: any[];
38
- } = $props();
39
-
40
- // Get Database instance and create references
41
- let database: Database | null = $state(null);
42
- let listRef: DatabaseReference | null = $state(null);
43
- let listService: ReturnType<typeof firekitRealtimeList> | null = $state(null);
44
-
45
- // Track list state
46
- let listState = $state({
47
- loading: true,
48
- data: startWith ?? [],
49
- error: null as Error | null
50
- });
51
-
52
- // Subscribe to list changes
53
- $effect(() => {
54
- if (!browser) {
55
- listState = {
56
- loading: false,
57
- data: startWith ?? [],
58
- error: new Error('Realtime Database not available in SSR')
59
- };
60
- return;
61
- }
62
-
63
- // Initialize database and service
64
- database = firebaseService.getDatabaseInstance();
65
- if (!database) {
66
- listState = {
67
- loading: false,
68
- data: [],
69
- error: new Error('Realtime Database instance not available')
70
- };
71
- return;
72
- }
73
-
74
- // Create database reference
75
- listRef = ref(database, path);
76
-
77
- // Create list service
78
- listService = firekitRealtimeList(path, startWith);
79
-
80
- // The service state is reactive, so we can directly access it
81
- // The effect will re-run when the service state changes
82
- listState = {
83
- loading: listService.loading,
84
- data: listService.list, // Use the processed list with IDs
85
- error: listService.error
86
- };
87
- });
88
- </script>
89
-
90
- {#if !browser}
91
- {@render children(startWith ?? [], null as any, null as any)}
92
- {:else if listState.loading}
93
- {#if loading}
94
- {@render loading()}
95
- {:else}
96
- <div>Loading...</div>
97
- {/if}
98
- {:else if listState.error}
99
- <div class="error">Error: {listState.error.message}</div>
100
- {:else}
101
- {@render children(listState.data, listRef!, database!)}
102
- {/if}
@@ -1,27 +0,0 @@
1
- import { type DatabaseReference, type Database } from 'firebase/database';
2
- import type { Snippet } from 'svelte';
3
- type $$ComponentProps = {
4
- /**
5
- * Database reference path string (e.g. 'users')
6
- */
7
- path: string;
8
- /**
9
- * Initial value to use before list is fetched
10
- */
11
- startWith?: any[];
12
- /**
13
- * Content to render when list is loaded
14
- */
15
- children: Snippet<[any[], DatabaseReference, Database]>;
16
- /**
17
- * Content to render while loading
18
- */
19
- loading?: Snippet<[]>;
20
- /**
21
- * Query constraints for the list
22
- */
23
- queryConstraints?: any[];
24
- };
25
- declare const NodeList: import("svelte").Component<$$ComponentProps, {}, "">;
26
- type NodeList = ReturnType<typeof NodeList>;
27
- export default NodeList;
@@ -1,42 +0,0 @@
1
- <script lang="ts">
2
- import { firekitAuth } from '../../services/auth.js';
3
- import { firebaseService } from '../../firebase.js';
4
- import { onDestroy } from 'svelte';
5
- import type { UserProfile } from '../../types/auth.js';
6
- import type { Snippet } from 'svelte';
7
-
8
- /**
9
- * Props for SignedIn component
10
- */
11
- let {
12
- children
13
- }: {
14
- /**
15
- * Children content to render when user is signed in
16
- */
17
- children: Snippet<[UserProfile]>;
18
- } = $props();
19
-
20
- // Get Firebase Auth instance
21
- const auth = firebaseService.getAuthInstance();
22
- if (!auth) {
23
- throw new Error('Firebase Auth instance not available');
24
- }
25
-
26
- // Reactive auth state
27
- let authState = $state(firekitAuth.getState());
28
-
29
- // Subscribe to auth state changes
30
- const unsubscribe = firekitAuth.onAuthStateChanged((state) => {
31
- authState = state;
32
- });
33
-
34
- // Cleanup subscription on component destruction
35
- onDestroy(() => {
36
- unsubscribe();
37
- });
38
- </script>
39
-
40
- {#if firekitAuth.isAuthenticated() && authState.user}
41
- {@render children(authState.user)}
42
- {/if}