@beesolve/analytics-dashboard 0.0.0-stage → 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 (386) hide show
  1. package/DOCS.md +28 -0
  2. package/README.md +168 -2
  3. package/dist/authConsumer/authConsumer.mjs +26 -0
  4. package/dist/authConsumer/authConsumer.mjs.map +7 -0
  5. package/dist/authConsumer/bowser-YSBMONHT.mjs +2 -0
  6. package/dist/authConsumer/bowser-YSBMONHT.mjs.map +7 -0
  7. package/dist/authConsumer/chunk-5FKPGIT4.mjs +19 -0
  8. package/dist/authConsumer/chunk-5FKPGIT4.mjs.map +7 -0
  9. package/dist/authConsumer/chunk-A55324SF.mjs +2 -0
  10. package/dist/authConsumer/chunk-A55324SF.mjs.map +7 -0
  11. package/dist/authConsumer/chunk-BTFKTGDG.mjs +4 -0
  12. package/dist/authConsumer/chunk-BTFKTGDG.mjs.map +7 -0
  13. package/dist/authConsumer/chunk-C2HKOC4G.mjs +16 -0
  14. package/dist/authConsumer/chunk-C2HKOC4G.mjs.map +7 -0
  15. package/dist/authConsumer/chunk-CJTIV5DQ.mjs +2 -0
  16. package/dist/authConsumer/chunk-CJTIV5DQ.mjs.map +7 -0
  17. package/dist/authConsumer/chunk-HGD7WY52.mjs +2 -0
  18. package/dist/authConsumer/chunk-HGD7WY52.mjs.map +7 -0
  19. package/dist/authConsumer/chunk-JJCR37FH.mjs +10 -0
  20. package/dist/authConsumer/chunk-JJCR37FH.mjs.map +7 -0
  21. package/dist/authConsumer/chunk-NX6AKUU3.mjs +2 -0
  22. package/dist/authConsumer/chunk-NX6AKUU3.mjs.map +7 -0
  23. package/dist/authConsumer/chunk-OQ6H2FAT.mjs +2 -0
  24. package/dist/authConsumer/chunk-OQ6H2FAT.mjs.map +7 -0
  25. package/dist/authConsumer/chunk-SHDTR6JV.mjs +2 -0
  26. package/dist/authConsumer/chunk-SHDTR6JV.mjs.map +7 -0
  27. package/dist/authConsumer/chunk-UVVOS55R.mjs +2 -0
  28. package/dist/authConsumer/chunk-UVVOS55R.mjs.map +7 -0
  29. package/dist/authConsumer/chunk-VVQ6TCBE.mjs +2 -0
  30. package/dist/authConsumer/chunk-VVQ6TCBE.mjs.map +7 -0
  31. package/dist/authConsumer/chunk-WWJVMT5K.mjs +2 -0
  32. package/dist/authConsumer/chunk-WWJVMT5K.mjs.map +7 -0
  33. package/dist/authConsumer/chunk-XU7UBKPR.mjs +2 -0
  34. package/dist/authConsumer/chunk-XU7UBKPR.mjs.map +7 -0
  35. package/dist/authConsumer/dist-es-5RMISOKM.mjs +2 -0
  36. package/dist/authConsumer/dist-es-5RMISOKM.mjs.map +7 -0
  37. package/dist/authConsumer/dist-es-A3KZDGFL.mjs +2 -0
  38. package/dist/authConsumer/dist-es-A3KZDGFL.mjs.map +7 -0
  39. package/dist/authConsumer/dist-es-BARSD4VH.mjs +2 -0
  40. package/dist/authConsumer/dist-es-BARSD4VH.mjs.map +7 -0
  41. package/dist/authConsumer/dist-es-ICRQP6OY.mjs +7 -0
  42. package/dist/authConsumer/dist-es-ICRQP6OY.mjs.map +7 -0
  43. package/dist/authConsumer/dist-es-NSKORCUT.mjs +3 -0
  44. package/dist/authConsumer/dist-es-NSKORCUT.mjs.map +7 -0
  45. package/dist/authConsumer/dist-es-SJXVMHWV.mjs +2 -0
  46. package/dist/authConsumer/dist-es-SJXVMHWV.mjs.map +7 -0
  47. package/dist/authConsumer/dist-es-X5OVBSBE.mjs +2 -0
  48. package/dist/authConsumer/dist-es-X5OVBSBE.mjs.map +7 -0
  49. package/dist/authConsumer/dist-es-YZCOQZO5.mjs +3 -0
  50. package/dist/authConsumer/dist-es-YZCOQZO5.mjs.map +7 -0
  51. package/dist/authConsumer/event-streams-HKJTV7SP.mjs +2 -0
  52. package/dist/authConsumer/event-streams-HKJTV7SP.mjs.map +7 -0
  53. package/dist/authConsumer/event-streams-WPTL7RJA.mjs +2 -0
  54. package/dist/authConsumer/event-streams-WPTL7RJA.mjs.map +7 -0
  55. package/dist/authConsumer/loadSso-4CGEWHWX.mjs +2 -0
  56. package/dist/authConsumer/loadSso-4CGEWHWX.mjs.map +7 -0
  57. package/dist/authConsumer/signin-FWYC566H.mjs +2 -0
  58. package/dist/authConsumer/signin-FWYC566H.mjs.map +7 -0
  59. package/dist/authConsumer/sso-oidc-7RHBKIHO.mjs +2 -0
  60. package/dist/authConsumer/sso-oidc-7RHBKIHO.mjs.map +7 -0
  61. package/dist/authConsumer/sts-CPERFVPD.mjs +2 -0
  62. package/dist/authConsumer/sts-CPERFVPD.mjs.map +7 -0
  63. package/dist/build/client/_app/immutable/assets/0.DRO3o7Ky.css +1 -0
  64. package/dist/build/client/_app/immutable/assets/0.DRO3o7Ky.css.br +0 -0
  65. package/dist/build/client/_app/immutable/assets/0.DRO3o7Ky.css.gz +0 -0
  66. package/dist/build/client/_app/immutable/assets/3.Kr4XtrhX.css +1 -0
  67. package/dist/build/client/_app/immutable/assets/3.Kr4XtrhX.css.br +0 -0
  68. package/dist/build/client/_app/immutable/assets/3.Kr4XtrhX.css.gz +0 -0
  69. package/dist/build/client/_app/immutable/assets/4.pzhatwyO.css +1 -0
  70. package/dist/build/client/_app/immutable/assets/4.pzhatwyO.css.br +3 -0
  71. package/dist/build/client/_app/immutable/assets/4.pzhatwyO.css.gz +0 -0
  72. package/dist/build/client/_app/immutable/assets/7.CLAH1zbo.css +1 -0
  73. package/dist/build/client/_app/immutable/assets/7.CLAH1zbo.css.br +0 -0
  74. package/dist/build/client/_app/immutable/assets/7.CLAH1zbo.css.gz +0 -0
  75. package/dist/build/client/_app/immutable/assets/8.kPbJskIW.css +1 -0
  76. package/dist/build/client/_app/immutable/assets/8.kPbJskIW.css.br +0 -0
  77. package/dist/build/client/_app/immutable/assets/8.kPbJskIW.css.gz +0 -0
  78. package/dist/build/client/_app/immutable/chunks/-flIlLbR.js +1 -0
  79. package/dist/build/client/_app/immutable/chunks/-flIlLbR.js.br +0 -0
  80. package/dist/build/client/_app/immutable/chunks/-flIlLbR.js.gz +0 -0
  81. package/dist/build/client/_app/immutable/chunks/BaNbYf_w.js +1 -0
  82. package/dist/build/client/_app/immutable/chunks/BaNbYf_w.js.br +0 -0
  83. package/dist/build/client/_app/immutable/chunks/BaNbYf_w.js.gz +0 -0
  84. package/dist/build/client/_app/immutable/chunks/Bbj_adPZ.js +1 -0
  85. package/dist/build/client/_app/immutable/chunks/Bbj_adPZ.js.br +2 -0
  86. package/dist/build/client/_app/immutable/chunks/Bbj_adPZ.js.gz +0 -0
  87. package/dist/build/client/_app/immutable/chunks/BjDtInFk.js +1 -0
  88. package/dist/build/client/_app/immutable/chunks/BjDtInFk.js.br +0 -0
  89. package/dist/build/client/_app/immutable/chunks/BjDtInFk.js.gz +0 -0
  90. package/dist/build/client/_app/immutable/chunks/Bjy-W4x2.js +81 -0
  91. package/dist/build/client/_app/immutable/chunks/Bjy-W4x2.js.br +0 -0
  92. package/dist/build/client/_app/immutable/chunks/Bjy-W4x2.js.gz +0 -0
  93. package/dist/build/client/_app/immutable/chunks/BsZAT_sO.js +1 -0
  94. package/dist/build/client/_app/immutable/chunks/BsZAT_sO.js.br +0 -0
  95. package/dist/build/client/_app/immutable/chunks/BsZAT_sO.js.gz +0 -0
  96. package/dist/build/client/_app/immutable/chunks/C65wlWj3.js +3 -0
  97. package/dist/build/client/_app/immutable/chunks/C65wlWj3.js.br +0 -0
  98. package/dist/build/client/_app/immutable/chunks/C65wlWj3.js.gz +0 -0
  99. package/dist/build/client/_app/immutable/chunks/CI6ywtCd.js +3 -0
  100. package/dist/build/client/_app/immutable/chunks/CI6ywtCd.js.br +0 -0
  101. package/dist/build/client/_app/immutable/chunks/CI6ywtCd.js.gz +0 -0
  102. package/dist/build/client/_app/immutable/chunks/CSvV6lTB.js +1 -0
  103. package/dist/build/client/_app/immutable/chunks/CSvV6lTB.js.br +0 -0
  104. package/dist/build/client/_app/immutable/chunks/CSvV6lTB.js.gz +0 -0
  105. package/dist/build/client/_app/immutable/chunks/DLxYM5fa.js +1 -0
  106. package/dist/build/client/_app/immutable/chunks/DLxYM5fa.js.br +0 -0
  107. package/dist/build/client/_app/immutable/chunks/DLxYM5fa.js.gz +0 -0
  108. package/dist/build/client/_app/immutable/chunks/DzNyqKSt.js +1 -0
  109. package/dist/build/client/_app/immutable/chunks/DzNyqKSt.js.br +0 -0
  110. package/dist/build/client/_app/immutable/chunks/DzNyqKSt.js.gz +0 -0
  111. package/dist/build/client/_app/immutable/chunks/RsrLknAJ.js +1 -0
  112. package/dist/build/client/_app/immutable/chunks/RsrLknAJ.js.br +0 -0
  113. package/dist/build/client/_app/immutable/chunks/RsrLknAJ.js.gz +0 -0
  114. package/dist/build/client/_app/immutable/chunks/hePW80VL.js +1 -0
  115. package/dist/build/client/_app/immutable/chunks/hePW80VL.js.br +0 -0
  116. package/dist/build/client/_app/immutable/chunks/hePW80VL.js.gz +0 -0
  117. package/dist/build/client/_app/immutable/chunks/kEdGpB3n.js +1 -0
  118. package/dist/build/client/_app/immutable/chunks/kEdGpB3n.js.br +0 -0
  119. package/dist/build/client/_app/immutable/chunks/kEdGpB3n.js.gz +0 -0
  120. package/dist/build/client/_app/immutable/entry/app.prk0UIKZ.js +2 -0
  121. package/dist/build/client/_app/immutable/entry/app.prk0UIKZ.js.br +0 -0
  122. package/dist/build/client/_app/immutable/entry/app.prk0UIKZ.js.gz +0 -0
  123. package/dist/build/client/_app/immutable/entry/payload.DSmR2FwN.js +1 -0
  124. package/dist/build/client/_app/immutable/entry/payload.DSmR2FwN.js.br +0 -0
  125. package/dist/build/client/_app/immutable/entry/payload.DSmR2FwN.js.gz +0 -0
  126. package/dist/build/client/_app/immutable/entry/start.Dxjvp0la.js +2 -0
  127. package/dist/build/client/_app/immutable/entry/start.Dxjvp0la.js.br +0 -0
  128. package/dist/build/client/_app/immutable/entry/start.Dxjvp0la.js.gz +0 -0
  129. package/dist/build/client/_app/immutable/nodes/0.jy0BlCX0.js +1 -0
  130. package/dist/build/client/_app/immutable/nodes/0.jy0BlCX0.js.br +0 -0
  131. package/dist/build/client/_app/immutable/nodes/0.jy0BlCX0.js.gz +0 -0
  132. package/dist/build/client/_app/immutable/nodes/1.0LAtJInZ.js +1 -0
  133. package/dist/build/client/_app/immutable/nodes/1.0LAtJInZ.js.br +0 -0
  134. package/dist/build/client/_app/immutable/nodes/1.0LAtJInZ.js.gz +0 -0
  135. package/dist/build/client/_app/immutable/nodes/10.C7ib9SAf.js +1 -0
  136. package/dist/build/client/_app/immutable/nodes/10.C7ib9SAf.js.br +0 -0
  137. package/dist/build/client/_app/immutable/nodes/10.C7ib9SAf.js.gz +0 -0
  138. package/dist/build/client/_app/immutable/nodes/2.xIoVI8Pt.js +1 -0
  139. package/dist/build/client/_app/immutable/nodes/2.xIoVI8Pt.js.br +0 -0
  140. package/dist/build/client/_app/immutable/nodes/2.xIoVI8Pt.js.gz +0 -0
  141. package/dist/build/client/_app/immutable/nodes/3.yf_BSypc.js +1 -0
  142. package/dist/build/client/_app/immutable/nodes/3.yf_BSypc.js.br +0 -0
  143. package/dist/build/client/_app/immutable/nodes/3.yf_BSypc.js.gz +0 -0
  144. package/dist/build/client/_app/immutable/nodes/4.DcPD8uRH.js +3 -0
  145. package/dist/build/client/_app/immutable/nodes/4.DcPD8uRH.js.br +0 -0
  146. package/dist/build/client/_app/immutable/nodes/4.DcPD8uRH.js.gz +0 -0
  147. package/dist/build/client/_app/immutable/nodes/5.Bnv17IW5.js +1 -0
  148. package/dist/build/client/_app/immutable/nodes/5.Bnv17IW5.js.br +0 -0
  149. package/dist/build/client/_app/immutable/nodes/5.Bnv17IW5.js.gz +0 -0
  150. package/dist/build/client/_app/immutable/nodes/6.BzMUTdRA.js +1 -0
  151. package/dist/build/client/_app/immutable/nodes/6.BzMUTdRA.js.br +0 -0
  152. package/dist/build/client/_app/immutable/nodes/6.BzMUTdRA.js.gz +0 -0
  153. package/dist/build/client/_app/immutable/nodes/7.axFX3R7h.js +1 -0
  154. package/dist/build/client/_app/immutable/nodes/7.axFX3R7h.js.br +0 -0
  155. package/dist/build/client/_app/immutable/nodes/7.axFX3R7h.js.gz +0 -0
  156. package/dist/build/client/_app/immutable/nodes/8.DBrComIy.js +1 -0
  157. package/dist/build/client/_app/immutable/nodes/8.DBrComIy.js.br +0 -0
  158. package/dist/build/client/_app/immutable/nodes/8.DBrComIy.js.gz +0 -0
  159. package/dist/build/client/_app/immutable/nodes/9.CozJkzSE.js +1 -0
  160. package/dist/build/client/_app/immutable/nodes/9.CozJkzSE.js.br +0 -0
  161. package/dist/build/client/_app/immutable/nodes/9.CozJkzSE.js.gz +0 -0
  162. package/dist/build/client/_app/version.json +1 -0
  163. package/dist/build/client/_app/version.json.br +0 -0
  164. package/dist/build/client/_app/version.json.gz +0 -0
  165. package/dist/build/routes.json +1 -0
  166. package/dist/build/server/0-ZBLOQKP7.js +3 -0
  167. package/dist/build/server/0-ZBLOQKP7.js.map +6 -0
  168. package/dist/build/server/1-5WYCLPWK.js +3 -0
  169. package/dist/build/server/1-5WYCLPWK.js.map +6 -0
  170. package/dist/build/server/10-N3GZHVAL.js +3 -0
  171. package/dist/build/server/10-N3GZHVAL.js.map +6 -0
  172. package/dist/build/server/2-XRUNWLSZ.js +3 -0
  173. package/dist/build/server/2-XRUNWLSZ.js.map +6 -0
  174. package/dist/build/server/3-G6G4VVSG.js +3 -0
  175. package/dist/build/server/3-G6G4VVSG.js.map +6 -0
  176. package/dist/build/server/4-RAONXXL6.js +3 -0
  177. package/dist/build/server/4-RAONXXL6.js.map +6 -0
  178. package/dist/build/server/5-FHHUR6IU.js +3 -0
  179. package/dist/build/server/5-FHHUR6IU.js.map +6 -0
  180. package/dist/build/server/6-6KBB7U66.js +3 -0
  181. package/dist/build/server/6-6KBB7U66.js.map +6 -0
  182. package/dist/build/server/7-ZA6GJPFX.js +3 -0
  183. package/dist/build/server/7-ZA6GJPFX.js.map +6 -0
  184. package/dist/build/server/8-MCEF7TBG.js +3 -0
  185. package/dist/build/server/8-MCEF7TBG.js.map +6 -0
  186. package/dist/build/server/9-6V4EY4YA.js +3 -0
  187. package/dist/build/server/9-6V4EY4YA.js.map +6 -0
  188. package/dist/build/server/_layout.svelte-CKXMSCZZ.js +3 -0
  189. package/dist/build/server/_layout.svelte-CKXMSCZZ.js.map +6 -0
  190. package/dist/build/server/_page.svelte-3Y5APV4K.js +3 -0
  191. package/dist/build/server/_page.svelte-3Y5APV4K.js.map +6 -0
  192. package/dist/build/server/_page.svelte-JYYJHLNJ.js +3 -0
  193. package/dist/build/server/_page.svelte-JYYJHLNJ.js.map +6 -0
  194. package/dist/build/server/_page.svelte-QJUGTVOP.js +3 -0
  195. package/dist/build/server/_page.svelte-QJUGTVOP.js.map +6 -0
  196. package/dist/build/server/_page.svelte-S3KIXETO.js +3 -0
  197. package/dist/build/server/_page.svelte-S3KIXETO.js.map +6 -0
  198. package/dist/build/server/_page.svelte-UZF7NHFO.js +3 -0
  199. package/dist/build/server/_page.svelte-UZF7NHFO.js.map +6 -0
  200. package/dist/build/server/_page.svelte-WPZPALIR.js +3 -0
  201. package/dist/build/server/_page.svelte-WPZPALIR.js.map +6 -0
  202. package/dist/build/server/_page.svelte-XXUKHSQ3.js +3 -0
  203. package/dist/build/server/_page.svelte-XXUKHSQ3.js.map +6 -0
  204. package/dist/build/server/_page.svelte-YR5ZRVJB.js +3 -0
  205. package/dist/build/server/_page.svelte-YR5ZRVJB.js.map +6 -0
  206. package/dist/build/server/bowser-64WH7SLH.js +3 -0
  207. package/dist/build/server/bowser-64WH7SLH.js.map +6 -0
  208. package/dist/build/server/chunk-45OCATQP.js +3 -0
  209. package/dist/build/server/chunk-45OCATQP.js.map +6 -0
  210. package/dist/build/server/chunk-4SGGWC4Y.js +3 -0
  211. package/dist/build/server/chunk-4SGGWC4Y.js.map +6 -0
  212. package/dist/build/server/chunk-4ZFJD7V4.js +9 -0
  213. package/dist/build/server/chunk-4ZFJD7V4.js.map +6 -0
  214. package/dist/build/server/chunk-5AOSKFCC.js +3 -0
  215. package/dist/build/server/chunk-5AOSKFCC.js.map +6 -0
  216. package/dist/build/server/chunk-6CUGABU3.js +3 -0
  217. package/dist/build/server/chunk-6CUGABU3.js.map +6 -0
  218. package/dist/build/server/chunk-6ZFGHU6W.js +3 -0
  219. package/dist/build/server/chunk-6ZFGHU6W.js.map +6 -0
  220. package/dist/build/server/chunk-7H7K7YVM.js +23 -0
  221. package/dist/build/server/chunk-7H7K7YVM.js.map +6 -0
  222. package/dist/build/server/chunk-7LPGCU4C.js +11 -0
  223. package/dist/build/server/chunk-7LPGCU4C.js.map +6 -0
  224. package/dist/build/server/chunk-COXRAWZU.js +7 -0
  225. package/dist/build/server/chunk-COXRAWZU.js.map +6 -0
  226. package/dist/build/server/chunk-CSRMCT5X.js +3 -0
  227. package/dist/build/server/chunk-CSRMCT5X.js.map +6 -0
  228. package/dist/build/server/chunk-CTC7EH5D.js +8 -0
  229. package/dist/build/server/chunk-CTC7EH5D.js.map +6 -0
  230. package/dist/build/server/chunk-CZ754NYE.js +2 -0
  231. package/dist/build/server/chunk-CZ754NYE.js.map +6 -0
  232. package/dist/build/server/chunk-DVLTINVM.js +24 -0
  233. package/dist/build/server/chunk-DVLTINVM.js.map +6 -0
  234. package/dist/build/server/chunk-DYKW3K3W.js +4 -0
  235. package/dist/build/server/chunk-DYKW3K3W.js.map +6 -0
  236. package/dist/build/server/chunk-EFZAFSVU.js +5 -0
  237. package/dist/build/server/chunk-EFZAFSVU.js.map +6 -0
  238. package/dist/build/server/chunk-EI7KG3XR.js +119 -0
  239. package/dist/build/server/chunk-EI7KG3XR.js.map +6 -0
  240. package/dist/build/server/chunk-EN7Z5YF5.js +3 -0
  241. package/dist/build/server/chunk-EN7Z5YF5.js.map +6 -0
  242. package/dist/build/server/chunk-EPPCNHKZ.js +3 -0
  243. package/dist/build/server/chunk-EPPCNHKZ.js.map +6 -0
  244. package/dist/build/server/chunk-EV3SFPHU.js +9 -0
  245. package/dist/build/server/chunk-EV3SFPHU.js.map +6 -0
  246. package/dist/build/server/chunk-FQR3U6BT.js +3 -0
  247. package/dist/build/server/chunk-FQR3U6BT.js.map +6 -0
  248. package/dist/build/server/chunk-FX527VAY.js +3 -0
  249. package/dist/build/server/chunk-FX527VAY.js.map +6 -0
  250. package/dist/build/server/chunk-GLKH6VBF.js +3 -0
  251. package/dist/build/server/chunk-GLKH6VBF.js.map +6 -0
  252. package/dist/build/server/chunk-J3JWBB7E.js +9 -0
  253. package/dist/build/server/chunk-J3JWBB7E.js.map +6 -0
  254. package/dist/build/server/chunk-JBGJIY2K.js +3 -0
  255. package/dist/build/server/chunk-JBGJIY2K.js.map +6 -0
  256. package/dist/build/server/chunk-JCF4MFGG.js +3 -0
  257. package/dist/build/server/chunk-JCF4MFGG.js.map +6 -0
  258. package/dist/build/server/chunk-JLDSEZUK.js +3 -0
  259. package/dist/build/server/chunk-JLDSEZUK.js.map +6 -0
  260. package/dist/build/server/chunk-JOH2QUXW.js +3 -0
  261. package/dist/build/server/chunk-JOH2QUXW.js.map +6 -0
  262. package/dist/build/server/chunk-JUDBP2XJ.js +3 -0
  263. package/dist/build/server/chunk-JUDBP2XJ.js.map +6 -0
  264. package/dist/build/server/chunk-KFOZ3QDS.js +5 -0
  265. package/dist/build/server/chunk-KFOZ3QDS.js.map +6 -0
  266. package/dist/build/server/chunk-KUYN4HWD.js +3 -0
  267. package/dist/build/server/chunk-KUYN4HWD.js.map +6 -0
  268. package/dist/build/server/chunk-LBNNT2QS.js +3 -0
  269. package/dist/build/server/chunk-LBNNT2QS.js.map +6 -0
  270. package/dist/build/server/chunk-M5VLIKDC.js +3 -0
  271. package/dist/build/server/chunk-M5VLIKDC.js.map +6 -0
  272. package/dist/build/server/chunk-MFLM3JS7.js +3 -0
  273. package/dist/build/server/chunk-MFLM3JS7.js.map +6 -0
  274. package/dist/build/server/chunk-MLC2CEYH.js +7 -0
  275. package/dist/build/server/chunk-MLC2CEYH.js.map +6 -0
  276. package/dist/build/server/chunk-OWM5LWOG.js +3 -0
  277. package/dist/build/server/chunk-OWM5LWOG.js.map +6 -0
  278. package/dist/build/server/chunk-PNWN3T3A.js +3 -0
  279. package/dist/build/server/chunk-PNWN3T3A.js.map +6 -0
  280. package/dist/build/server/chunk-PWME7NGZ.js +3 -0
  281. package/dist/build/server/chunk-PWME7NGZ.js.map +6 -0
  282. package/dist/build/server/chunk-Q2IEUOHW.js +4 -0
  283. package/dist/build/server/chunk-Q2IEUOHW.js.map +6 -0
  284. package/dist/build/server/chunk-SVLGZRKZ.js +20 -0
  285. package/dist/build/server/chunk-SVLGZRKZ.js.map +6 -0
  286. package/dist/build/server/chunk-U7NJH7YG.js +3 -0
  287. package/dist/build/server/chunk-U7NJH7YG.js.map +6 -0
  288. package/dist/build/server/chunk-ULOSRW2D.js +3 -0
  289. package/dist/build/server/chunk-ULOSRW2D.js.map +6 -0
  290. package/dist/build/server/chunk-V4WLSBDY.js +3 -0
  291. package/dist/build/server/chunk-V4WLSBDY.js.map +6 -0
  292. package/dist/build/server/chunk-VKYMR5UJ.js +3 -0
  293. package/dist/build/server/chunk-VKYMR5UJ.js.map +6 -0
  294. package/dist/build/server/chunk-WFJCOJII.js +3 -0
  295. package/dist/build/server/chunk-WFJCOJII.js.map +6 -0
  296. package/dist/build/server/chunk-WV6QT4WX.js +3 -0
  297. package/dist/build/server/chunk-WV6QT4WX.js.map +6 -0
  298. package/dist/build/server/chunk-XHZNAFX4.js +3 -0
  299. package/dist/build/server/chunk-XHZNAFX4.js.map +6 -0
  300. package/dist/build/server/chunk-XQGDXRCJ.js +4 -0
  301. package/dist/build/server/chunk-XQGDXRCJ.js.map +6 -0
  302. package/dist/build/server/chunk-XYYC33WE.js +3 -0
  303. package/dist/build/server/chunk-XYYC33WE.js.map +6 -0
  304. package/dist/build/server/chunk-YHXLVT6T.js +19 -0
  305. package/dist/build/server/chunk-YHXLVT6T.js.map +6 -0
  306. package/dist/build/server/chunk-ZBF6TCMI.js +11 -0
  307. package/dist/build/server/chunk-ZBF6TCMI.js.map +6 -0
  308. package/dist/build/server/dist-es-2BUR2XC3.js +3 -0
  309. package/dist/build/server/dist-es-2BUR2XC3.js.map +6 -0
  310. package/dist/build/server/dist-es-4AKCON7Z.js +4 -0
  311. package/dist/build/server/dist-es-4AKCON7Z.js.map +6 -0
  312. package/dist/build/server/dist-es-6AEKBKLO.js +4 -0
  313. package/dist/build/server/dist-es-6AEKBKLO.js.map +6 -0
  314. package/dist/build/server/dist-es-7VEQXIE2.js +3 -0
  315. package/dist/build/server/dist-es-7VEQXIE2.js.map +6 -0
  316. package/dist/build/server/dist-es-BATVHFG5.js +8 -0
  317. package/dist/build/server/dist-es-BATVHFG5.js.map +6 -0
  318. package/dist/build/server/dist-es-KTHQ5GFH.js +3 -0
  319. package/dist/build/server/dist-es-KTHQ5GFH.js.map +6 -0
  320. package/dist/build/server/dist-es-PFWLVSUH.js +3 -0
  321. package/dist/build/server/dist-es-PFWLVSUH.js.map +6 -0
  322. package/dist/build/server/dist-es-SRGFDDYG.js +3 -0
  323. package/dist/build/server/dist-es-SRGFDDYG.js.map +6 -0
  324. package/dist/build/server/dist-es-SRLXROG6.js +3 -0
  325. package/dist/build/server/dist-es-SRLXROG6.js.map +6 -0
  326. package/dist/build/server/dist-es2-N6B2SB7P.js +8 -0
  327. package/dist/build/server/dist-es2-N6B2SB7P.js.map +6 -0
  328. package/dist/build/server/dist-es3-DKADLFA6.js +3 -0
  329. package/dist/build/server/dist-es3-DKADLFA6.js.map +6 -0
  330. package/dist/build/server/dist-es4-HWRJJ4KU.js +3 -0
  331. package/dist/build/server/dist-es4-HWRJJ4KU.js.map +6 -0
  332. package/dist/build/server/dist-es5-CNJWR77J.js +3 -0
  333. package/dist/build/server/dist-es5-CNJWR77J.js.map +6 -0
  334. package/dist/build/server/dist-es6-3H546ZJB.js +4 -0
  335. package/dist/build/server/dist-es6-3H546ZJB.js.map +6 -0
  336. package/dist/build/server/dist-es7-GBNLQKWI.js +3 -0
  337. package/dist/build/server/dist-es7-GBNLQKWI.js.map +6 -0
  338. package/dist/build/server/dist-es8-XKF26QFV.js +4 -0
  339. package/dist/build/server/dist-es8-XKF26QFV.js.map +6 -0
  340. package/dist/build/server/error.svelte-6ET2IFRD.js +3 -0
  341. package/dist/build/server/error.svelte-6ET2IFRD.js.map +6 -0
  342. package/dist/build/server/event-streams-4E4LBL7I.js +3 -0
  343. package/dist/build/server/event-streams-4E4LBL7I.js.map +6 -0
  344. package/dist/build/server/event-streams-P6EJEFOZ.js +3 -0
  345. package/dist/build/server/event-streams-P6EJEFOZ.js.map +6 -0
  346. package/dist/build/server/event-streams-Y2DDNV3W.js +3 -0
  347. package/dist/build/server/event-streams-Y2DDNV3W.js.map +6 -0
  348. package/dist/build/server/handler.js +3 -0
  349. package/dist/build/server/handler.js.map +6 -0
  350. package/dist/build/server/hooks.server-DUGXMI46.js +3 -0
  351. package/dist/build/server/hooks.server-DUGXMI46.js.map +6 -0
  352. package/dist/build/server/instance-R4IOGTAZ.js +69 -0
  353. package/dist/build/server/instance-R4IOGTAZ.js.map +6 -0
  354. package/dist/build/server/layout.svelte-2JY65LGT.js +3 -0
  355. package/dist/build/server/layout.svelte-2JY65LGT.js.map +6 -0
  356. package/dist/build/server/loadSso-G3UDUWRB.js +3 -0
  357. package/dist/build/server/loadSso-G3UDUWRB.js.map +6 -0
  358. package/dist/build/server/loadSso-IHGCKVPZ.js +3 -0
  359. package/dist/build/server/loadSso-IHGCKVPZ.js.map +6 -0
  360. package/dist/build/server/package.json +5 -0
  361. package/dist/build/server/remote-14csdey-AN6OF5DV.js +3 -0
  362. package/dist/build/server/remote-14csdey-AN6OF5DV.js.map +6 -0
  363. package/dist/build/server/remote-1tatjnv-AZZDHATA.js +3 -0
  364. package/dist/build/server/remote-1tatjnv-AZZDHATA.js.map +6 -0
  365. package/dist/build/server/remote-nc6tv3-PU2UBZ2H.js +3 -0
  366. package/dist/build/server/remote-nc6tv3-PU2UBZ2H.js.map +6 -0
  367. package/dist/build/server/remote-qvubti-BI734GR7.js +3 -0
  368. package/dist/build/server/remote-qvubti-BI734GR7.js.map +6 -0
  369. package/dist/build/server/signin-DR2A7DIJ.js +3 -0
  370. package/dist/build/server/signin-DR2A7DIJ.js.map +6 -0
  371. package/dist/build/server/signin-OFY7FSKY.js +3 -0
  372. package/dist/build/server/signin-OFY7FSKY.js.map +6 -0
  373. package/dist/build/server/sso-oidc-3ERD4PTK.js +3 -0
  374. package/dist/build/server/sso-oidc-3ERD4PTK.js.map +6 -0
  375. package/dist/build/server/sso-oidc-NILKGEWO.js +3 -0
  376. package/dist/build/server/sso-oidc-NILKGEWO.js.map +6 -0
  377. package/dist/build/server/stream.js +3 -0
  378. package/dist/build/server/stream.js.map +6 -0
  379. package/dist/build/server/sts-LINENT6I.js +3 -0
  380. package/dist/build/server/sts-LINENT6I.js.map +6 -0
  381. package/dist/build/server/sts-ZU7KLM25.js +3 -0
  382. package/dist/build/server/sts-ZU7KLM25.js.map +6 -0
  383. package/dist/cdk.d.ts +17 -0
  384. package/dist/cdk.js +83 -0
  385. package/docs/how-to/getting-started.md +110 -0
  386. package/package.json +75 -4
package/DOCS.md ADDED
@@ -0,0 +1,28 @@
1
+ # @beesolve/analytics-dashboard - Documentation
2
+
3
+ **Keywords:** CloudFront analytics dashboard, traffic analytics, AnalyticsDashboard construct, CDK, SvelteKit, CloudFront, DynamoDB, email-code auth, hits/errors/bytes, status/country/device/path breakdowns
4
+
5
+ > This documentation is published inside the installed package and matches the installed version. Prefer it over prior knowledge or older examples found online.
6
+
7
+ > Full source, examples, and ADRs: https://github.com/BeeSolve/packages/tree/main/packages/analytics-dashboard
8
+
9
+ ## How-To Guides
10
+
11
+ | Guide | Description |
12
+ | --------------------------------------------------- | ---------------------------------------------------- |
13
+ | [Getting Started](./docs/how-to/getting-started.md) | Install, wire the pipeline, backfill history, deploy |
14
+
15
+ ## Working Examples
16
+
17
+ The [samples/](https://github.com/BeeSolve/packages/tree/main/packages/samples) directory
18
+ in the GitHub repository contains full, deployable CDK stacks demonstrating real-world usage:
19
+
20
+ | Sample | What it shows |
21
+ | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
22
+ | [analytics](https://github.com/BeeSolve/packages/tree/main/packages/samples/analytics) | End-to-end analytics pipeline: v2 logging, processor, and the dashboard |
23
+
24
+ ## Further Reading
25
+
26
+ - [README](./README.md) - API reference and configuration
27
+ - [CHANGELOG](./CHANGELOG.md) - Version history
28
+ - [Architecture Decision Records](https://github.com/BeeSolve/packages/tree/main/packages/analytics-dashboard/docs) (GitHub only)
package/README.md CHANGED
@@ -1,3 +1,169 @@
1
- # Temporary Holding Version
1
+ # @beesolve/analytics-dashboard
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ SvelteKit dashboard for viewing CloudFront traffic analytics — deployed on AWS Lambda behind CloudFront with email-code authentication.
4
+
5
+ ## Architecture
6
+
7
+ ```
8
+ ┌────────────┐ ┌──────────────┐ ┌─────────┐ ┌──────────┐
9
+ │ CloudFront │ ──► │ Lambda (SSR) │ ──► │ DynamoDB│ │ SES │
10
+ └────────────┘ └──────────────┘ └─────────┘ └──────────┘
11
+ │ ▲ ▲
12
+ │ read-only │ analytics table │
13
+ │ (AnalyticsProcessor.grantRead) OTP emails via
14
+ └── /auth/* ──► AuthGateway (authorizer) @beesolve/email-service
15
+ ```
16
+
17
+ The dashboard reads the `@beesolve/analytics-processor` DynamoDB table (hourly/daily/monthly
18
+ totals + per-dimension breakdowns) **read-only**. Its own small DynamoDB table holds the
19
+ dashboard's `Users`/`Setup` records (sign-in, roles).
20
+
21
+ ## Prerequisites
22
+
23
+ ```bash
24
+ npm install \
25
+ @beesolve/analytics-dashboard \
26
+ @beesolve/analytics-processor \
27
+ @beesolve/cdk-constructs \
28
+ @beesolve/auth-service \
29
+ aws-cdk \
30
+ aws-cdk-lib \
31
+ constructs
32
+ ```
33
+
34
+ - [`@beesolve/cdk-constructs`](../cdk-constructs) — `CloudFrontAccessLoggingSettings` with standard logging v2
35
+ - [`@beesolve/analytics-processor`](../analytics-processor) — aggregates Athena query results into DynamoDB
36
+ - [`@beesolve/auth-service`](../service-auth) — email-code authentication with session management
37
+
38
+ ## CDK Setup
39
+
40
+ ```typescript
41
+ import { AnalyticsDashboard } from "@beesolve/analytics-dashboard/cdk";
42
+ import { requiredRecordFields } from "@beesolve/analytics-processor";
43
+ import { AnalyticsProcessor } from "@beesolve/analytics-processor/cdk";
44
+ import { AuthGateway } from "@beesolve/auth-service/cdk";
45
+ import { CloudFrontAccessLoggingSettings } from "@beesolve/cdk-constructs";
46
+ import { App, RemovalPolicy, Stack } from "aws-cdk-lib";
47
+
48
+ const frontendUri = process.env.FRONTEND_URI;
49
+ if (frontendUri == null) throw new Error("FRONTEND_URI environment variable is required");
50
+
51
+ const app = new App();
52
+ const stack = new Stack(app, "AnalyticsStack", {
53
+ env: { account: "123456789012", region: "eu-central-1" },
54
+ });
55
+
56
+ // 1. Log the distribution to S3 as Parquet (standard logging v2)
57
+ const logging = new CloudFrontAccessLoggingSettings(stack, "Logging", {
58
+ athena: { account: "123456789012", recordFields: requiredRecordFields },
59
+ });
60
+
61
+ // ...create your CloudFront `distribution`, spreading
62
+ // `...logging.cloudFrontLoggingSettings` into its props, then:
63
+ logging.enableV2Logging({
64
+ distributionArn: `arn:aws:cloudfront::123456789012:distribution/${distribution.distributionId}`,
65
+ });
66
+
67
+ // 2. Aggregate logs into DynamoDB
68
+ const processor = new AnalyticsProcessor(stack, "Processor", {
69
+ athenaDatabase: logging.glueDatabaseName!,
70
+ athenaV2Table: logging.glueTableName!,
71
+ athenaWorkgroup: logging.workgroupName!,
72
+ logBucketArn: logging.logBucket.bucketArn,
73
+ athenaResultsBucketArn: logging.athenaResultsBucket?.bucketArn,
74
+ });
75
+
76
+ // 3. Set up authentication
77
+ const auth = new AuthGateway(stack, "Auth", {
78
+ stage: "prod",
79
+ frontendUri,
80
+ allowSignUp: false,
81
+ authorizerCache: "disabled",
82
+ });
83
+
84
+ // 4. Deploy the dashboard
85
+ const dashboard = new AnalyticsDashboard(stack, "AnalyticsDashboard", {
86
+ auth,
87
+ processor,
88
+ emailSender: {
89
+ name: "Analytics Dashboard",
90
+ emailAddress: "noreply@example.com",
91
+ },
92
+ });
93
+ ```
94
+
95
+ The `AnalyticsDashboard` construct provisions:
96
+
97
+ - SvelteKit app on Lambda (via `kit-on-lambda`)
98
+ - CloudFront distribution with auth cookie enforcement
99
+ - Auth behavior for `/auth/*` routes
100
+ - A dedicated DynamoDB table (+ reverse GSI) for the dashboard's `Users`/`Setup`, wired via `ANALYTICS_USERS_TABLE` / `ANALYTICS_USERS_REVERSE_INDEX`
101
+ - Read-only access to the processor's analytics table via `processor.grantRead(handler)` (`ANALYTICS_TABLE_NAME` / `ANALYTICS_REVERSE_INDEX`)
102
+ - Email service for OTP codes
103
+ - EventBridge rule for auth events (sends OTP emails)
104
+
105
+ ## Data layer (remote functions)
106
+
107
+ The dashboard reads its data through SvelteKit remote functions, not `+page.server.ts`
108
+ `load`/`actions`. Definitions live in `src/lib/remote/*.remote.ts`:
109
+
110
+ - `getOverview({ grain, anchor?, size? })` — clamps the window per grain, computes boundary
111
+ keys deterministically from the anchor (no DynamoDB cursors), and returns the totals series
112
+ plus `prev`/`next` anchors.
113
+ - `getBreakdown({ dimension, grain, periodKey })` — reads a single bounded breakdown partition.
114
+ - `users`/`setup` remote functions mirror `@beesolve/dmarc-dashboard` (admin guards,
115
+ `toRemoteError`, `requireUser`/`requireAdmin`).
116
+
117
+ Environment variables are declared in `src/env.ts` via `defineEnvVars` (Valibot schemas) and
118
+ imported, typed and validated, from `$app/env/private`: `ANALYTICS_TABLE_NAME`,
119
+ `ANALYTICS_REVERSE_INDEX`, `ANALYTICS_USERS_TABLE`, `ANALYTICS_USERS_REVERSE_INDEX`.
120
+
121
+ ## First Deployment
122
+
123
+ The SvelteKit build requires a `FRONTEND_URI` environment variable (the CloudFront URL), which doesn't exist until after the first deploy:
124
+
125
+ 1. Set `FRONTEND_URI` to a placeholder URL (e.g. `https://placeholder.cloudfront.net`)
126
+ 2. Deploy — note the CloudFront URL from CDK output
127
+ 3. Update `FRONTEND_URI` with the real URL and redeploy
128
+
129
+ ## Backfilling history
130
+
131
+ CloudFront standard logging v2 only starts collecting Parquet data once the upgraded
132
+ `CloudFrontAccessLoggingSettings` is deployed. Historic traffic lives in the already-collected
133
+ v1 (tab-delimited) logs. Run the one-time backfill from `@beesolve/analytics-processor` once,
134
+ as an operator, to populate the table from v1 history before anyone relies on long-range views:
135
+
136
+ ```bash
137
+ # from the analytics-processor package, with AWS creds (AWS_PROFILE) in scope
138
+ bun run backfill -- --from 2026-01-01T00:00:00Z --to 2026-02-01T00:00:00Z
139
+ ```
140
+
141
+ The backfill is resumable and exactly-once (per-hour idempotency markers), so re-running it
142
+ skips already-processed hours. See the processor README for the full flag reference.
143
+
144
+ ## Local Development
145
+
146
+ Run the SvelteKit dev server against the **real** deployed backend — no fixtures:
147
+
148
+ ```bash
149
+ bun install
150
+ cp .env.local.example .env.local # then fill in real values
151
+ aws sso login # (or export AWS_PROFILE) so SDK clients can reach AWS
152
+ bun run dev
153
+ ```
154
+
155
+ There is no Lambda authorizer locally, so `@beesolve/auth-service` injects a dev session
156
+ automatically. Set `DEV_USER_EMAIL` in `.env.local` to a **real** user's email in the users
157
+ table — the app looks it up to resolve that user's role. This is guarded by `import.meta.env.DEV`
158
+ and never included in the deployed bundle.
159
+
160
+ ## Features
161
+
162
+ - Overview with hourly/daily/monthly/yearly grain switching and rolling prev/next windows
163
+ - Stat cards for hits, success, errors, and bytes
164
+ - Per-dimension breakdowns: HTTP status, country, device, and top paths
165
+ - Email-code sign-in (no passwords) + user management (invite, remove)
166
+
167
+ ## License
168
+
169
+ [MIT](../../LICENSE)