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
@@ -0,0 +1,204 @@
1
+ import { getRemoteConfig, fetchAndActivate, fetchConfig, activate, getValue, getString, getBoolean, getNumber, getAll, onConfigUpdate, isSupported, setLogLevel } from 'firebase/remote-config';
2
+ import { firebaseService } from '../firebase.js';
3
+ function getApp() {
4
+ const app = firebaseService.getFirebaseApp();
5
+ if (!app)
6
+ throw new Error('Firebase app is not initialized.');
7
+ return app;
8
+ }
9
+ /**
10
+ * Reactive Firebase Remote Config service.
11
+ *
12
+ * Fetches and activates remote configuration values, exposes them reactively,
13
+ * and optionally subscribes to real-time config updates.
14
+ *
15
+ * @example
16
+ * ```svelte
17
+ * <script lang="ts">
18
+ * import { firekitRemoteConfig } from 'svelte-firekit';
19
+ *
20
+ * const rc = firekitRemoteConfig({
21
+ * defaults: { welcomeMessage: 'Hello!', featureEnabled: false },
22
+ * minimumFetchIntervalMs: 3600_000
23
+ * });
24
+ * await rc.fetchAndActivate();
25
+ * </script>
26
+ * <p>{rc.getString('welcomeMessage')}</p>
27
+ * ```
28
+ */
29
+ export class FirekitRemoteConfig {
30
+ _loading = $state(false);
31
+ _error = $state(null);
32
+ _lastFetchTime = $state(null);
33
+ _activated = $state(false);
34
+ /** Bumped whenever config is activated, so derived reads stay reactive. */
35
+ _version = $state(0);
36
+ _rc = null;
37
+ _unsubscribe = null;
38
+ _options;
39
+ constructor(options = {}) {
40
+ this._options = options;
41
+ this._init();
42
+ }
43
+ get loading() { return this._loading; }
44
+ get error() { return this._error; }
45
+ get activated() { return this._activated; }
46
+ get lastFetchTime() { return this._lastFetchTime; }
47
+ async _init() {
48
+ if (typeof window === 'undefined')
49
+ return;
50
+ try {
51
+ const supported = await isSupported();
52
+ if (!supported)
53
+ return;
54
+ const app = getApp();
55
+ this._rc = getRemoteConfig(app);
56
+ if (this._options.minimumFetchIntervalMs !== undefined) {
57
+ this._rc.settings.minimumFetchIntervalMillis = this._options.minimumFetchIntervalMs;
58
+ }
59
+ if (this._options.fetchTimeoutMs !== undefined) {
60
+ this._rc.settings.fetchTimeoutMillis = this._options.fetchTimeoutMs;
61
+ }
62
+ if (this._options.defaults) {
63
+ this._rc.defaultConfig = this._options.defaults;
64
+ }
65
+ if (this._options.logLevel) {
66
+ setLogLevel(this._rc, this._options.logLevel);
67
+ }
68
+ if (this._options.autoFetch !== false) {
69
+ await this.fetchAndActivate();
70
+ }
71
+ if (this._options.realtime) {
72
+ this._subscribeToUpdates();
73
+ }
74
+ }
75
+ catch (err) {
76
+ this._error = err instanceof Error ? err : new Error(String(err));
77
+ }
78
+ }
79
+ _subscribeToUpdates() {
80
+ if (!this._rc)
81
+ return;
82
+ this._unsubscribe = onConfigUpdate(this._rc, {
83
+ next: async () => {
84
+ try {
85
+ await activate(this._rc);
86
+ this._version++;
87
+ this._activated = true;
88
+ }
89
+ catch (err) {
90
+ this._error = err instanceof Error ? err : new Error(String(err));
91
+ }
92
+ },
93
+ error: (err) => {
94
+ this._error = err instanceof Error ? err : new Error(String(err));
95
+ },
96
+ complete: () => { }
97
+ });
98
+ }
99
+ // ── Fetch / activate ──────────────────────────────────────────────────────
100
+ /** Fetches fresh config from the server and activates it. */
101
+ async fetchAndActivate() {
102
+ if (!this._rc)
103
+ return false;
104
+ this._loading = true;
105
+ this._error = null;
106
+ try {
107
+ const changed = await fetchAndActivate(this._rc);
108
+ this._activated = true;
109
+ this._lastFetchTime = new Date();
110
+ this._version++;
111
+ return changed;
112
+ }
113
+ catch (err) {
114
+ this._error = err instanceof Error ? err : new Error(String(err));
115
+ return false;
116
+ }
117
+ finally {
118
+ this._loading = false;
119
+ }
120
+ }
121
+ /** Fetches config without activating. */
122
+ async fetch() {
123
+ if (!this._rc)
124
+ return;
125
+ this._loading = true;
126
+ this._error = null;
127
+ try {
128
+ await fetchConfig(this._rc);
129
+ this._lastFetchTime = new Date();
130
+ }
131
+ catch (err) {
132
+ this._error = err instanceof Error ? err : new Error(String(err));
133
+ }
134
+ finally {
135
+ this._loading = false;
136
+ }
137
+ }
138
+ /** Activates the last fetched config. */
139
+ async activate() {
140
+ if (!this._rc)
141
+ return false;
142
+ const changed = await activate(this._rc);
143
+ if (changed) {
144
+ this._activated = true;
145
+ this._version++;
146
+ }
147
+ return changed;
148
+ }
149
+ // ── Value accessors ───────────────────────────────────────────────────────
150
+ /** Returns a string config value. Uses default if not set. */
151
+ getString(key, defaultValue = '') {
152
+ void this._version; // reactive dependency — ensures re-evaluation when config is activated // reactive dependency
153
+ if (!this._rc)
154
+ return defaultValue;
155
+ return getString(this._rc, key) || defaultValue;
156
+ }
157
+ /** Returns a boolean config value. */
158
+ getBoolean(key, defaultValue = false) {
159
+ void this._version; // reactive dependency — ensures re-evaluation when config is activated
160
+ if (!this._rc)
161
+ return defaultValue;
162
+ try {
163
+ return getBoolean(this._rc, key);
164
+ }
165
+ catch {
166
+ return defaultValue;
167
+ }
168
+ }
169
+ /** Returns a number config value. */
170
+ getNumber(key, defaultValue = 0) {
171
+ void this._version; // reactive dependency — ensures re-evaluation when config is activated
172
+ if (!this._rc)
173
+ return defaultValue;
174
+ try {
175
+ return getNumber(this._rc, key);
176
+ }
177
+ catch {
178
+ return defaultValue;
179
+ }
180
+ }
181
+ /** Returns the raw Value object for a key. */
182
+ getValue(key) {
183
+ void this._version; // reactive dependency — ensures re-evaluation when config is activated
184
+ if (!this._rc)
185
+ return null;
186
+ return getValue(this._rc, key);
187
+ }
188
+ /** Returns all config key-value pairs as a plain object. */
189
+ getAll() {
190
+ void this._version; // reactive dependency — ensures re-evaluation when config is activated
191
+ if (!this._rc)
192
+ return {};
193
+ return getAll(this._rc);
194
+ }
195
+ /** Stops the real-time config update listener. */
196
+ dispose() {
197
+ this._unsubscribe?.();
198
+ this._unsubscribe = null;
199
+ }
200
+ }
201
+ /** Creates a reactive Remote Config instance. */
202
+ export function firekitRemoteConfig(options) {
203
+ return new FirekitRemoteConfig(options);
204
+ }
@@ -1,257 +1,130 @@
1
+ import { type StorageReference, type UploadTaskSnapshot, type FullMetadata, type UploadMetadata, type SettableMetadata } from 'firebase/storage';
1
2
  /**
2
- * @fileoverview FirekitStorage - Optimized Firebase Storage management for Svelte applications
3
- * @module FirekitStorage
4
- * @version 1.0.0
5
- */
6
- import { type StorageReference, type UploadTaskSnapshot } from 'firebase/storage';
7
- /**
8
- * Manages Firebase Storage download URL fetching with reactive state
9
- * @class
3
+ * Fetches and exposes a Firebase Storage download URL reactively.
10
4
  *
11
5
  * @example
12
- * ```typescript
13
- * // Get download URL for image
14
- * const imageUrl = firekitDownloadUrl('images/photo.jpg');
15
- *
16
- * // Access reactive state
17
- * if (imageUrl.loading) {
18
- * console.log('Loading URL...');
19
- * } else if (imageUrl.url) {
20
- * console.log('Download URL:', imageUrl.url);
21
- * }
6
+ * ```svelte
7
+ * <script lang="ts">
8
+ * import { firekitDownloadUrl } from 'svelte-firekit';
9
+ * const img = firekitDownloadUrl('images/avatar.jpg');
10
+ * </script>
11
+ * {#if img.url}<img src={img.url} alt="avatar" />{/if}
22
12
  * ```
23
13
  */
24
- declare class FirekitDownloadUrl {
25
- /** Current download URL */
14
+ export declare class FirekitDownloadUrl {
26
15
  private _url;
27
- /** Loading state */
28
16
  private _loading;
29
- /** Error state */
30
17
  private _error;
31
- /** Storage reference */
32
- private storageRef;
33
- /**
34
- * Creates a download URL fetcher
35
- * @param {string} path Storage path to file
36
- *
37
- * @example
38
- * ```typescript
39
- * const url = new FirekitDownloadUrl('documents/file.pdf');
40
- * ```
41
- */
18
+ private _storageRef;
19
+ private _path;
42
20
  constructor(path: string);
43
- /**
44
- * Initializes download URL fetching
45
- * @private
46
- * @param {string} path Storage path
47
- */
48
- private initializeDownload;
49
- /** Gets current download URL */
50
21
  get url(): string | null;
51
- /** Gets loading state */
52
22
  get loading(): boolean;
53
- /** Gets error state */
54
23
  get error(): Error | null;
55
- /**
56
- * Refreshes download URL
57
- * Useful when file content has changed
58
- *
59
- * @example
60
- * ```typescript
61
- * // Refresh URL after file update
62
- * await uploadNewVersion();
63
- * imageUrl.refresh();
64
- * ```
65
- */
66
- refresh(): void;
24
+ private _init;
25
+ /** Re-fetches the download URL (useful after replacing a file). */
26
+ refresh(): Promise<void>;
67
27
  }
68
28
  /**
69
- * Manages Firebase Storage directory listing with reactive state
70
- * @class
29
+ * Lists files and sub-folders at a Storage path reactively.
71
30
  *
72
31
  * @example
73
- * ```typescript
74
- * // List contents of images directory
75
- * const imagesList = firekitStorageList('images');
76
- *
77
- * // Access items and folders
78
- * console.log('Files:', imagesList.items);
79
- * console.log('Folders:', imagesList.prefixes);
32
+ * ```svelte
33
+ * <script lang="ts">
34
+ * import { firekitStorageList } from 'svelte-firekit';
35
+ * const dir = firekitStorageList('uploads/2024');
36
+ * </script>
37
+ * {#each dir.items as item}<p>{item.name}</p>{/each}
80
38
  * ```
81
39
  */
82
- declare class FirekitStorageList {
83
- /** List of files in directory */
40
+ export declare class FirekitStorageList {
84
41
  private _items;
85
- /** List of subdirectories */
86
42
  private _prefixes;
87
- /** Loading state */
88
43
  private _loading;
89
- /** Error state */
90
44
  private _error;
91
- /** Storage reference */
92
- private storageRef;
93
- /**
94
- * Creates a storage directory lister
95
- * @param {string} path Storage directory path
96
- *
97
- * @example
98
- * ```typescript
99
- * const list = new FirekitStorageList('uploads/2024');
100
- * ```
101
- */
45
+ private _storageRef;
46
+ private _path;
102
47
  constructor(path: string);
103
- /**
104
- * Initializes directory listing
105
- * @private
106
- * @param {string} path Storage directory path
107
- */
108
- private initializeList;
109
- /** Gets list of files */
110
48
  get items(): StorageReference[];
111
- /** Gets list of subdirectories */
112
49
  get prefixes(): StorageReference[];
113
- /** Gets loading state */
114
50
  get loading(): boolean;
115
- /** Gets error state */
116
51
  get error(): Error | null;
117
- /**
118
- * Refreshes directory listing
119
- * Useful when directory contents have changed
120
- *
121
- * @example
122
- * ```typescript
123
- * // Refresh after upload
124
- * await uploadFile('images/new.jpg');
125
- * imagesList.refresh();
126
- * ```
127
- */
128
- refresh(): void;
52
+ private _init;
53
+ /** Re-lists the directory (useful after uploads/deletes). */
54
+ refresh(): Promise<void>;
129
55
  }
56
+ export type UploadState = 'idle' | 'running' | 'paused' | 'success' | 'canceled' | 'error';
130
57
  /**
131
- * Manages Firebase Storage upload operations with reactive state and progress tracking
132
- * @class
58
+ * Manages a resumable Firebase Storage upload with reactive progress.
133
59
  *
134
60
  * @example
135
- * ```typescript
136
- * // Create upload task
137
- * const upload = firekitUploadTask('images/photo.jpg', file);
138
- *
139
- * // Monitor progress
140
- * console.log(`Upload progress: ${upload.progress}%`);
141
- *
142
- * // Control upload
143
- * upload.pause();
144
- * upload.resume();
145
- * upload.cancel();
61
+ * ```svelte
62
+ * <script lang="ts">
63
+ * import { firekitUploadTask } from 'svelte-firekit';
64
+ * let file: File;
65
+ * $: task = file ? firekitUploadTask('uploads/' + file.name, file) : null;
66
+ * </script>
67
+ * {#if task}
68
+ * <progress value={task.progress} max={100} />
69
+ * {#if task.downloadURL}<img src={task.downloadURL} />{/if}
70
+ * {/if}
146
71
  * ```
147
72
  */
148
- declare class FirekitUploadTask {
149
- /** Upload progress percentage */
73
+ export declare class FirekitUploadTask {
150
74
  private _progress;
151
- /** Error state */
75
+ private _downloadURL;
152
76
  private _error;
153
- /** Current upload snapshot */
77
+ private _state;
78
+ private _bytesTransferred;
79
+ private _totalBytes;
154
80
  private _snapshot;
155
- /** Download URL of uploaded file */
156
- private _downloadURL;
157
- /** Upload completion state */
158
- private _completed;
159
- /** Upload task reference */
160
- private uploadTask;
161
- /** Storage reference */
162
- private storageRef;
163
- /**
164
- * Creates an upload task
165
- * @param {string} path Storage path for upload
166
- * @param {File} file File to upload
167
- *
168
- * @example
169
- * ```typescript
170
- * const task = new FirekitUploadTask('documents/report.pdf', file);
171
- * ```
172
- */
173
- constructor(path: string, file: File);
174
- /**
175
- * Initializes file upload
176
- * @private
177
- * @param {string} path Storage path
178
- * @param {File} file File to upload
179
- */
180
- private initializeUpload;
181
- /** Pauses upload */
182
- pause(): void;
183
- /** Resumes upload */
184
- resume(): void;
185
- /** Cancels upload */
186
- cancel(): void;
187
- /** Gets upload progress percentage */
81
+ readonly completed: boolean;
82
+ readonly canceled: boolean;
83
+ readonly failed: boolean;
84
+ readonly active: boolean;
85
+ private _task;
86
+ private _storageRef;
87
+ constructor(path: string, file: Blob | Uint8Array | ArrayBuffer, metadata?: UploadMetadata);
188
88
  get progress(): number;
189
- /** Gets error state */
89
+ get downloadURL(): string | null;
190
90
  get error(): Error | null;
191
- /** Gets current upload snapshot */
91
+ get state(): UploadState;
92
+ get bytesTransferred(): number;
93
+ get totalBytes(): number;
192
94
  get snapshot(): UploadTaskSnapshot | null;
193
- /** Gets download URL */
194
- get downloadURL(): string | null;
195
- /** Gets completion state */
196
- get completed(): boolean;
95
+ private _init;
96
+ /** Pauses the upload. */
97
+ pause(): void;
98
+ /** Resumes a paused upload. */
99
+ resume(): void;
100
+ /** Cancels the upload. */
101
+ cancel(): void;
197
102
  }
198
103
  /**
199
- * Creates a download URL fetcher
200
- * @param {string} path Storage path to file
201
- * @returns {FirekitDownloadUrl} Download URL fetcher instance
202
- *
203
- * @example
204
- * ```typescript
205
- * const imageUrl = firekitDownloadUrl('images/profile.jpg');
206
- *
207
- * // Use in template
208
- * {#if imageUrl.loading}
209
- * <p>Loading...</p>
210
- * {:else if imageUrl.url}
211
- * <img src={imageUrl.url} alt="Profile" />
212
- * {/if}
213
- * ```
104
+ * Deletes a file from Firebase Storage.
214
105
  */
215
- export declare function firekitDownloadUrl(path: string): FirekitDownloadUrl;
106
+ export declare function deleteFile(path: string): Promise<void>;
216
107
  /**
217
- * Creates a storage directory lister
218
- * @param {string} path Storage directory path
219
- * @returns {FirekitStorageList} Storage list instance
220
- *
221
- * @example
222
- * ```typescript
223
- * const documents = firekitStorageList('documents');
224
- *
225
- * // Use in template
226
- * {#if documents.loading}
227
- * <p>Loading...</p>
228
- * {:else}
229
- * <ul>
230
- * {#each documents.items as item}
231
- * <li>{item.name}</li>
232
- * {/each}
233
- * </ul>
234
- * {/if}
235
- * ```
108
+ * Fetches metadata for a file in Firebase Storage.
236
109
  */
237
- export declare function firekitStorageList(path: string): FirekitStorageList;
110
+ export declare function getFileMetadata(path: string): Promise<FullMetadata>;
238
111
  /**
239
- * Creates an upload task
240
- * @param {string} path Storage path for upload
241
- * @param {File} file File to upload
242
- * @returns {FirekitUploadTask} Upload task instance
112
+ * Updates metadata for a file in Firebase Storage.
113
+ * Only fields provided in `metadata` are changed; omitted fields are left as-is.
243
114
  *
244
115
  * @example
245
- * ```typescript
246
- * const uploadTask = firekitUploadTask('images/profile.jpg', imageFile);
247
- *
248
- * // Template usage
249
- * {#if !uploadTask.completed}
250
- * <progress value={uploadTask.progress} max="100" />
251
- * {:else}
252
- * <img src={uploadTask.downloadURL} alt="Uploaded file" />
253
- * {/if}
116
+ * ```ts
117
+ * await updateFileMetadata('images/avatar.jpg', {
118
+ * contentType: 'image/webp',
119
+ * customMetadata: { uploadedBy: 'uid123' }
120
+ * });
254
121
  * ```
255
122
  */
256
- export declare function firekitUploadTask(path: string, file: File): FirekitUploadTask;
257
- export {};
123
+ export declare function updateFileMetadata(path: string, metadata: SettableMetadata): Promise<FullMetadata>;
124
+ export type { SettableMetadata };
125
+ /** Creates a reactive download URL fetcher. */
126
+ export declare function firekitDownloadUrl(path: string): FirekitDownloadUrl;
127
+ /** Creates a reactive Storage directory listing. */
128
+ export declare function firekitStorageList(path: string): FirekitStorageList;
129
+ /** Creates a reactive resumable upload task. */
130
+ export declare function firekitUploadTask(path: string, file: Blob | Uint8Array | ArrayBuffer, metadata?: UploadMetadata): FirekitUploadTask;