From 5bd4a743b6ddd4a7ea86319151966842a17a25a5 Mon Sep 17 00:00:00 2001 From: Dario Anongba Varela Date: Wed, 30 Oct 2024 11:21:51 +0100 Subject: [PATCH 1/4] add dashboard to project --- .DS_Store | Bin 8196 -> 8196 bytes .env.example | 4 +- .github/workflows/ci.yml | 39 +- dashboard/.dockerignore | 60 + dashboard/.editorconfig | 9 + dashboard/.env.development | 3 + dashboard/.env.example | 18 + dashboard/.env.production | 12 + dashboard/.eslintignore | 48 + dashboard/.eslintrc.js | 109 + dashboard/.gitattributes | 4 + dashboard/.gitignore | 38 + dashboard/.prettierignore | 11 + dashboard/.yarn/install-state.gz | Bin 0 -> 1146721 bytes dashboard/.yarnrc.yml | 1 + dashboard/Dockerfile | 68 + dashboard/README.md | 12 + dashboard/next-env.d.ts | 5 + dashboard/next.config.mjs | 43 + dashboard/openapi-ts.config.mjs | 17 + dashboard/package.json | 124 + dashboard/prettier.config.mjs | 15 + dashboard/public/_redirects | 1 + .../assets/background/background-3-blur.webp | Bin 0 -> 9944 bytes .../public/assets/background/background-4.jpg | Bin 0 -> 5761 bytes .../public/assets/background/overlay.svg | 15 + dashboard/public/assets/cyan-blur.png | Bin 0 -> 17324 bytes .../icons/bitcoin/ic-bitcoin-lightning.svg | 16 + .../assets/icons/bitcoin/ic-bitcoin.svg | 8 + .../assets/icons/bitcoin/ic-lightning.svg | 11 + .../assets/icons/brands/ic-brand-breez.svg | 45 + .../icons/brands/ic-brand-cln-emblem.svg | 15 + .../assets/icons/brands/ic-brand-cln.svg | 74 + .../icons/brands/ic-brand-greenlight.svg | 52 + .../assets/icons/brands/ic-brand-lnd.png | Bin 0 -> 5540 bytes .../assets/icons/components/ic-accordion.svg | 1 + .../assets/icons/components/ic-alert.svg | 1 + .../icons/components/ic-autocomplete.svg | 1 + .../assets/icons/components/ic-avatar.svg | 1 + .../assets/icons/components/ic-badge.svg | 1 + .../icons/components/ic-breadcrumbs.svg | 1 + .../assets/icons/components/ic-buttons.svg | 1 + .../assets/icons/components/ic-checkbox.svg | 1 + .../assets/icons/components/ic-chip.svg | 1 + .../assets/icons/components/ic-colors.svg | 1 + .../assets/icons/components/ic-data-grid.svg | 1 + .../assets/icons/components/ic-dialog.svg | 1 + .../icons/components/ic-extra-animate.svg | 1 + .../icons/components/ic-extra-carousel.svg | 1 + .../icons/components/ic-extra-chart.svg | 1 + .../assets/icons/components/ic-extra-dnd.svg | 1 + .../icons/components/ic-extra-editor.svg | 1 + .../components/ic-extra-form-validation.svg | 1 + .../icons/components/ic-extra-form-wizard.svg | 79 + .../icons/components/ic-extra-image.svg | 1 + .../icons/components/ic-extra-label.svg | 1 + .../icons/components/ic-extra-lightbox.svg | 1 + .../assets/icons/components/ic-extra-map.svg | 1 + .../icons/components/ic-extra-markdown.svg | 1 + .../icons/components/ic-extra-mega-menu.svg | 1 + .../components/ic-extra-multi-language.svg | 1 + .../components/ic-extra-navigation-bar.svg | 1 + .../ic-extra-organization-chart.svg | 1 + .../components/ic-extra-scroll-progress.svg | 1 + .../icons/components/ic-extra-scroll.svg | 1 + .../icons/components/ic-extra-snackbar.svg | 1 + .../icons/components/ic-extra-upload.svg | 1 + .../icons/components/ic-extra-utilities.svg | 1 + .../icons/components/ic-extra-walktour.svg | 1 + .../assets/icons/components/ic-grid.svg | 1 + .../assets/icons/components/ic-icons.svg | 1 + .../assets/icons/components/ic-list.svg | 1 + .../assets/icons/components/ic-menu.svg | 1 + .../assets/icons/components/ic-pagination.svg | 1 + .../assets/icons/components/ic-pickers.svg | 1 + .../assets/icons/components/ic-popover.svg | 1 + .../assets/icons/components/ic-progress.svg | 1 + .../icons/components/ic-radio-button.svg | 1 + .../assets/icons/components/ic-rating.svg | 1 + .../assets/icons/components/ic-shadows.svg | 1 + .../assets/icons/components/ic-slider.svg | 1 + .../assets/icons/components/ic-stepper.svg | 1 + .../assets/icons/components/ic-switch.svg | 1 + .../assets/icons/components/ic-table.svg | 1 + .../assets/icons/components/ic-tabs.svg | 1 + .../assets/icons/components/ic-textfield.svg | 1 + .../assets/icons/components/ic-timeline.svg | 1 + .../assets/icons/components/ic-tooltip.svg | 1 + .../icons/components/ic-transfer-list.svg | 1 + .../assets/icons/components/ic-tree-view.svg | 1 + .../assets/icons/components/ic-typography.svg | 1 + .../public/assets/icons/empty/ic-content.svg | 57 + dashboard/public/assets/icons/files/ic-ai.svg | 25 + .../public/assets/icons/files/ic-audio.svg | 24 + .../public/assets/icons/files/ic-document.svg | 19 + .../public/assets/icons/files/ic-excel.svg | 19 + .../public/assets/icons/files/ic-file.svg | 18 + .../public/assets/icons/files/ic-folder.svg | 5 + .../public/assets/icons/files/ic-img.svg | 26 + dashboard/public/assets/icons/files/ic-js.svg | 12 + .../public/assets/icons/files/ic-pdf.svg | 19 + .../assets/icons/files/ic-power_point.svg | 20 + .../public/assets/icons/files/ic-pts.svg | 25 + .../public/assets/icons/files/ic-txt.svg | 26 + .../public/assets/icons/files/ic-video.svg | 20 + .../public/assets/icons/files/ic-word.svg | 19 + .../public/assets/icons/files/ic-zip.svg | 27 + .../public/assets/icons/flagpack/ad.webp | Bin 0 -> 362 bytes .../public/assets/icons/flagpack/ae.webp | Bin 0 -> 268 bytes .../public/assets/icons/flagpack/af.webp | Bin 0 -> 478 bytes .../public/assets/icons/flagpack/ag.webp | Bin 0 -> 614 bytes .../public/assets/icons/flagpack/ai.webp | Bin 0 -> 818 bytes .../public/assets/icons/flagpack/al.webp | Bin 0 -> 416 bytes .../public/assets/icons/flagpack/am.webp | Bin 0 -> 264 bytes .../public/assets/icons/flagpack/ao.webp | Bin 0 -> 458 bytes .../public/assets/icons/flagpack/aq.webp | Bin 0 -> 382 bytes .../public/assets/icons/flagpack/ar.webp | Bin 0 -> 458 bytes .../public/assets/icons/flagpack/as.webp | Bin 0 -> 652 bytes .../public/assets/icons/flagpack/at.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/au.webp | Bin 0 -> 908 bytes .../public/assets/icons/flagpack/aw.webp | Bin 0 -> 384 bytes .../public/assets/icons/flagpack/ax.webp | Bin 0 -> 456 bytes .../public/assets/icons/flagpack/az.webp | Bin 0 -> 444 bytes .../public/assets/icons/flagpack/ba.webp | Bin 0 -> 596 bytes .../public/assets/icons/flagpack/bb.webp | Bin 0 -> 468 bytes .../public/assets/icons/flagpack/bd.webp | Bin 0 -> 300 bytes .../public/assets/icons/flagpack/be.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/bf.webp | Bin 0 -> 408 bytes .../public/assets/icons/flagpack/bg.webp | Bin 0 -> 242 bytes .../public/assets/icons/flagpack/bh.webp | Bin 0 -> 392 bytes .../public/assets/icons/flagpack/bi.webp | Bin 0 -> 784 bytes .../public/assets/icons/flagpack/bj.webp | Bin 0 -> 278 bytes .../public/assets/icons/flagpack/bl.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/bm.webp | Bin 0 -> 796 bytes .../public/assets/icons/flagpack/bn.webp | Bin 0 -> 704 bytes .../public/assets/icons/flagpack/bo.webp | Bin 0 -> 414 bytes .../public/assets/icons/flagpack/bq-bo.webp | Bin 0 -> 616 bytes .../public/assets/icons/flagpack/bq-sa.webp | Bin 0 -> 690 bytes .../public/assets/icons/flagpack/bq-se.webp | Bin 0 -> 624 bytes .../public/assets/icons/flagpack/br.webp | Bin 0 -> 576 bytes .../public/assets/icons/flagpack/bs.webp | Bin 0 -> 404 bytes .../public/assets/icons/flagpack/bt.webp | Bin 0 -> 594 bytes .../public/assets/icons/flagpack/bv.webp | Bin 0 -> 438 bytes .../public/assets/icons/flagpack/bw.webp | Bin 0 -> 276 bytes .../public/assets/icons/flagpack/by.webp | Bin 0 -> 524 bytes .../public/assets/icons/flagpack/bz.webp | Bin 0 -> 626 bytes .../public/assets/icons/flagpack/ca.webp | Bin 0 -> 490 bytes .../public/assets/icons/flagpack/cc.webp | Bin 0 -> 498 bytes .../public/assets/icons/flagpack/cd.webp | Bin 0 -> 854 bytes .../public/assets/icons/flagpack/cf.webp | Bin 0 -> 502 bytes .../public/assets/icons/flagpack/cg.webp | Bin 0 -> 476 bytes .../public/assets/icons/flagpack/ch.webp | Bin 0 -> 350 bytes .../public/assets/icons/flagpack/ci.webp | Bin 0 -> 254 bytes .../public/assets/icons/flagpack/ck.webp | Bin 0 -> 832 bytes .../public/assets/icons/flagpack/cl.webp | Bin 0 -> 374 bytes .../public/assets/icons/flagpack/cm.webp | Bin 0 -> 386 bytes .../public/assets/icons/flagpack/cn.webp | Bin 0 -> 440 bytes .../public/assets/icons/flagpack/co.webp | Bin 0 -> 250 bytes .../public/assets/icons/flagpack/cr.webp | Bin 0 -> 282 bytes .../public/assets/icons/flagpack/cu.webp | Bin 0 -> 540 bytes .../public/assets/icons/flagpack/cv.webp | Bin 0 -> 594 bytes .../public/assets/icons/flagpack/cw.webp | Bin 0 -> 402 bytes .../public/assets/icons/flagpack/cx.webp | Bin 0 -> 664 bytes .../public/assets/icons/flagpack/cy.webp | Bin 0 -> 390 bytes .../public/assets/icons/flagpack/cz.webp | Bin 0 -> 362 bytes .../public/assets/icons/flagpack/de.webp | Bin 0 -> 230 bytes .../public/assets/icons/flagpack/dj.webp | Bin 0 -> 428 bytes .../public/assets/icons/flagpack/dk.webp | Bin 0 -> 324 bytes .../public/assets/icons/flagpack/dm.webp | Bin 0 -> 686 bytes .../public/assets/icons/flagpack/do.webp | Bin 0 -> 428 bytes .../public/assets/icons/flagpack/dz.webp | Bin 0 -> 494 bytes .../public/assets/icons/flagpack/ec.webp | Bin 0 -> 630 bytes .../public/assets/icons/flagpack/ee.webp | Bin 0 -> 226 bytes .../public/assets/icons/flagpack/eg.webp | Bin 0 -> 374 bytes .../public/assets/icons/flagpack/eh.webp | Bin 0 -> 516 bytes .../public/assets/icons/flagpack/er.webp | Bin 0 -> 700 bytes .../public/assets/icons/flagpack/es.webp | Bin 0 -> 518 bytes .../public/assets/icons/flagpack/et.webp | Bin 0 -> 506 bytes .../public/assets/icons/flagpack/fi.webp | Bin 0 -> 292 bytes .../public/assets/icons/flagpack/fj.webp | Bin 0 -> 874 bytes .../public/assets/icons/flagpack/fk.webp | Bin 0 -> 740 bytes .../public/assets/icons/flagpack/fm.webp | Bin 0 -> 390 bytes .../public/assets/icons/flagpack/fo.webp | Bin 0 -> 368 bytes .../public/assets/icons/flagpack/fr.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/ga.webp | Bin 0 -> 280 bytes .../public/assets/icons/flagpack/gb-eng.webp | Bin 0 -> 298 bytes .../public/assets/icons/flagpack/gb-nir.webp | Bin 0 -> 1126 bytes .../public/assets/icons/flagpack/gb-sct.webp | Bin 0 -> 738 bytes .../public/assets/icons/flagpack/gb-wls.webp | Bin 0 -> 712 bytes .../public/assets/icons/flagpack/gb.webp | Bin 0 -> 1126 bytes .../public/assets/icons/flagpack/gd.webp | Bin 0 -> 724 bytes .../public/assets/icons/flagpack/ge.webp | Bin 0 -> 702 bytes .../public/assets/icons/flagpack/gf.webp | Bin 0 -> 398 bytes .../public/assets/icons/flagpack/gg.webp | Bin 0 -> 588 bytes .../public/assets/icons/flagpack/gh.webp | Bin 0 -> 410 bytes .../public/assets/icons/flagpack/gi.webp | Bin 0 -> 542 bytes .../public/assets/icons/flagpack/gl.webp | Bin 0 -> 414 bytes .../public/assets/icons/flagpack/gm.webp | Bin 0 -> 284 bytes .../public/assets/icons/flagpack/gn.webp | Bin 0 -> 266 bytes .../public/assets/icons/flagpack/gp.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/gq.webp | Bin 0 -> 440 bytes .../public/assets/icons/flagpack/gr.webp | Bin 0 -> 488 bytes .../public/assets/icons/flagpack/gs.webp | Bin 0 -> 886 bytes .../public/assets/icons/flagpack/gt.webp | Bin 0 -> 418 bytes .../public/assets/icons/flagpack/gu.webp | Bin 0 -> 662 bytes .../public/assets/icons/flagpack/gw.webp | Bin 0 -> 340 bytes .../public/assets/icons/flagpack/gy.webp | Bin 0 -> 652 bytes .../public/assets/icons/flagpack/hk.webp | Bin 0 -> 554 bytes .../public/assets/icons/flagpack/hm.webp | Bin 0 -> 908 bytes .../public/assets/icons/flagpack/hn.webp | Bin 0 -> 478 bytes .../public/assets/icons/flagpack/hr.webp | Bin 0 -> 702 bytes .../public/assets/icons/flagpack/ht.webp | Bin 0 -> 426 bytes .../public/assets/icons/flagpack/hu.webp | Bin 0 -> 266 bytes .../public/assets/icons/flagpack/id.webp | Bin 0 -> 202 bytes .../public/assets/icons/flagpack/ie.webp | Bin 0 -> 268 bytes .../public/assets/icons/flagpack/il.webp | Bin 0 -> 424 bytes .../public/assets/icons/flagpack/im.webp | Bin 0 -> 486 bytes .../public/assets/icons/flagpack/in.webp | Bin 0 -> 416 bytes .../public/assets/icons/flagpack/io.webp | Bin 0 -> 1366 bytes .../public/assets/icons/flagpack/iq.webp | Bin 0 -> 390 bytes .../public/assets/icons/flagpack/ir.webp | Bin 0 -> 574 bytes .../public/assets/icons/flagpack/is.webp | Bin 0 -> 456 bytes .../public/assets/icons/flagpack/it.webp | Bin 0 -> 246 bytes .../public/assets/icons/flagpack/je.webp | Bin 0 -> 748 bytes .../public/assets/icons/flagpack/jm.webp | Bin 0 -> 786 bytes .../public/assets/icons/flagpack/jo.webp | Bin 0 -> 476 bytes .../public/assets/icons/flagpack/jp.webp | Bin 0 -> 356 bytes .../public/assets/icons/flagpack/ke.webp | Bin 0 -> 584 bytes .../public/assets/icons/flagpack/kg.webp | Bin 0 -> 474 bytes .../public/assets/icons/flagpack/kh.webp | Bin 0 -> 474 bytes .../public/assets/icons/flagpack/ki.webp | Bin 0 -> 776 bytes .../public/assets/icons/flagpack/km.webp | Bin 0 -> 494 bytes .../public/assets/icons/flagpack/kn.webp | Bin 0 -> 792 bytes .../public/assets/icons/flagpack/kp.webp | Bin 0 -> 486 bytes .../public/assets/icons/flagpack/kr.webp | Bin 0 -> 718 bytes .../public/assets/icons/flagpack/kw.webp | Bin 0 -> 336 bytes .../public/assets/icons/flagpack/ky.webp | Bin 0 -> 874 bytes .../public/assets/icons/flagpack/kz.webp | Bin 0 -> 632 bytes .../public/assets/icons/flagpack/la.webp | Bin 0 -> 330 bytes .../public/assets/icons/flagpack/lb.webp | Bin 0 -> 414 bytes .../public/assets/icons/flagpack/lc.webp | Bin 0 -> 412 bytes .../public/assets/icons/flagpack/li.webp | Bin 0 -> 416 bytes .../public/assets/icons/flagpack/lk.webp | Bin 0 -> 668 bytes .../public/assets/icons/flagpack/lr.webp | Bin 0 -> 464 bytes .../public/assets/icons/flagpack/ls.webp | Bin 0 -> 378 bytes .../public/assets/icons/flagpack/lt.webp | Bin 0 -> 264 bytes .../public/assets/icons/flagpack/lu.webp | Bin 0 -> 256 bytes .../public/assets/icons/flagpack/lv.webp | Bin 0 -> 220 bytes .../public/assets/icons/flagpack/ly.webp | Bin 0 -> 376 bytes .../public/assets/icons/flagpack/ma.webp | Bin 0 -> 364 bytes .../public/assets/icons/flagpack/mc.webp | Bin 0 -> 204 bytes .../public/assets/icons/flagpack/md.webp | Bin 0 -> 668 bytes .../public/assets/icons/flagpack/me.webp | Bin 0 -> 536 bytes .../public/assets/icons/flagpack/mf.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/mg.webp | Bin 0 -> 254 bytes .../public/assets/icons/flagpack/mh.webp | Bin 0 -> 692 bytes .../public/assets/icons/flagpack/mk.webp | Bin 0 -> 932 bytes .../public/assets/icons/flagpack/ml.webp | Bin 0 -> 262 bytes .../public/assets/icons/flagpack/mm.webp | Bin 0 -> 446 bytes .../public/assets/icons/flagpack/mn.webp | Bin 0 -> 432 bytes .../public/assets/icons/flagpack/mo.webp | Bin 0 -> 574 bytes .../public/assets/icons/flagpack/mp.webp | Bin 0 -> 706 bytes .../public/assets/icons/flagpack/mq.webp | Bin 0 -> 244 bytes .../public/assets/icons/flagpack/mr.webp | Bin 0 -> 426 bytes .../public/assets/icons/flagpack/ms.webp | Bin 0 -> 678 bytes .../public/assets/icons/flagpack/mt.webp | Bin 0 -> 290 bytes .../public/assets/icons/flagpack/mu.webp | Bin 0 -> 294 bytes .../public/assets/icons/flagpack/mv.webp | Bin 0 -> 352 bytes .../public/assets/icons/flagpack/mw.webp | Bin 0 -> 344 bytes .../public/assets/icons/flagpack/mx.webp | Bin 0 -> 404 bytes .../public/assets/icons/flagpack/my.webp | Bin 0 -> 530 bytes .../public/assets/icons/flagpack/mz.webp | Bin 0 -> 554 bytes .../public/assets/icons/flagpack/na.webp | Bin 0 -> 854 bytes .../public/assets/icons/flagpack/nc.webp | Bin 0 -> 238 bytes .../public/assets/icons/flagpack/ne.webp | Bin 0 -> 418 bytes .../public/assets/icons/flagpack/nf.webp | Bin 0 -> 510 bytes .../public/assets/icons/flagpack/ng.webp | Bin 0 -> 256 bytes .../public/assets/icons/flagpack/ni.webp | Bin 0 -> 446 bytes .../public/assets/icons/flagpack/nl.webp | Bin 0 -> 254 bytes .../public/assets/icons/flagpack/no.webp | Bin 0 -> 438 bytes .../public/assets/icons/flagpack/np.webp | Bin 0 -> 544 bytes .../public/assets/icons/flagpack/nr.webp | Bin 0 -> 406 bytes .../public/assets/icons/flagpack/nu.webp | Bin 0 -> 966 bytes .../public/assets/icons/flagpack/nz.webp | Bin 0 -> 954 bytes .../public/assets/icons/flagpack/om.webp | Bin 0 -> 514 bytes .../public/assets/icons/flagpack/pa.webp | Bin 0 -> 402 bytes .../public/assets/icons/flagpack/pe.webp | Bin 0 -> 466 bytes .../public/assets/icons/flagpack/pf.webp | Bin 0 -> 472 bytes .../public/assets/icons/flagpack/pg.webp | Bin 0 -> 672 bytes .../public/assets/icons/flagpack/ph.webp | Bin 0 -> 502 bytes .../public/assets/icons/flagpack/pk.webp | Bin 0 -> 410 bytes .../public/assets/icons/flagpack/pl.webp | Bin 0 -> 196 bytes .../public/assets/icons/flagpack/pm.webp | Bin 0 -> 242 bytes .../public/assets/icons/flagpack/pn.webp | Bin 0 -> 826 bytes .../public/assets/icons/flagpack/pr.webp | Bin 0 -> 484 bytes .../public/assets/icons/flagpack/ps.webp | Bin 0 -> 358 bytes .../public/assets/icons/flagpack/pt.webp | Bin 0 -> 564 bytes .../public/assets/icons/flagpack/pw.webp | Bin 0 -> 340 bytes .../public/assets/icons/flagpack/py.webp | Bin 0 -> 414 bytes .../public/assets/icons/flagpack/qa.webp | Bin 0 -> 382 bytes .../public/assets/icons/flagpack/re.webp | Bin 0 -> 238 bytes .../public/assets/icons/flagpack/ro.webp | Bin 0 -> 272 bytes .../public/assets/icons/flagpack/rs.webp | Bin 0 -> 596 bytes .../public/assets/icons/flagpack/ru.webp | Bin 0 -> 238 bytes .../public/assets/icons/flagpack/rw.webp | Bin 0 -> 456 bytes .../public/assets/icons/flagpack/sa.webp | Bin 0 -> 536 bytes .../public/assets/icons/flagpack/sb.webp | Bin 0 -> 694 bytes .../public/assets/icons/flagpack/sc.webp | Bin 0 -> 694 bytes .../public/assets/icons/flagpack/sd.webp | Bin 0 -> 350 bytes .../public/assets/icons/flagpack/se.webp | Bin 0 -> 374 bytes .../public/assets/icons/flagpack/sg.webp | Bin 0 -> 386 bytes .../public/assets/icons/flagpack/sh.webp | Bin 0 -> 686 bytes .../public/assets/icons/flagpack/si.webp | Bin 0 -> 436 bytes .../public/assets/icons/flagpack/sj.webp | Bin 0 -> 438 bytes .../public/assets/icons/flagpack/sk.webp | Bin 0 -> 504 bytes .../public/assets/icons/flagpack/sl.webp | Bin 0 -> 264 bytes .../public/assets/icons/flagpack/sm.webp | Bin 0 -> 574 bytes .../public/assets/icons/flagpack/sn.webp | Bin 0 -> 410 bytes .../public/assets/icons/flagpack/so.webp | Bin 0 -> 310 bytes .../public/assets/icons/flagpack/sr.webp | Bin 0 -> 436 bytes .../public/assets/icons/flagpack/ss.webp | Bin 0 -> 492 bytes .../public/assets/icons/flagpack/st.webp | Bin 0 -> 512 bytes .../public/assets/icons/flagpack/sv.webp | Bin 0 -> 434 bytes .../public/assets/icons/flagpack/sx.webp | Bin 0 -> 566 bytes .../public/assets/icons/flagpack/sy.webp | Bin 0 -> 368 bytes .../public/assets/icons/flagpack/sz.webp | Bin 0 -> 700 bytes .../public/assets/icons/flagpack/tc.webp | Bin 0 -> 668 bytes .../public/assets/icons/flagpack/td.webp | Bin 0 -> 256 bytes .../public/assets/icons/flagpack/tf.webp | Bin 0 -> 534 bytes .../public/assets/icons/flagpack/tg.webp | Bin 0 -> 454 bytes .../public/assets/icons/flagpack/th.webp | Bin 0 -> 268 bytes .../public/assets/icons/flagpack/tj.webp | Bin 0 -> 392 bytes .../public/assets/icons/flagpack/tk.webp | Bin 0 -> 558 bytes .../public/assets/icons/flagpack/tl.webp | Bin 0 -> 562 bytes .../public/assets/icons/flagpack/tm.webp | Bin 0 -> 638 bytes .../public/assets/icons/flagpack/tn.webp | Bin 0 -> 532 bytes .../public/assets/icons/flagpack/to.webp | Bin 0 -> 408 bytes .../public/assets/icons/flagpack/tr.webp | Bin 0 -> 468 bytes .../public/assets/icons/flagpack/tt.webp | Bin 0 -> 560 bytes .../public/assets/icons/flagpack/tv.webp | Bin 0 -> 916 bytes .../public/assets/icons/flagpack/tw.webp | Bin 0 -> 416 bytes .../public/assets/icons/flagpack/tz.webp | Bin 0 -> 760 bytes .../public/assets/icons/flagpack/ua.webp | Bin 0 -> 256 bytes .../public/assets/icons/flagpack/ug.webp | Bin 0 -> 586 bytes .../public/assets/icons/flagpack/um.webp | Bin 0 -> 668 bytes .../public/assets/icons/flagpack/us.webp | Bin 0 -> 668 bytes .../public/assets/icons/flagpack/uy.webp | Bin 0 -> 488 bytes .../public/assets/icons/flagpack/uz.webp | Bin 0 -> 568 bytes .../public/assets/icons/flagpack/va.webp | Bin 0 -> 490 bytes .../public/assets/icons/flagpack/vc.webp | Bin 0 -> 440 bytes .../public/assets/icons/flagpack/ve.webp | Bin 0 -> 428 bytes .../public/assets/icons/flagpack/vg.webp | Bin 0 -> 678 bytes .../public/assets/icons/flagpack/vi.webp | Bin 0 -> 660 bytes .../public/assets/icons/flagpack/vn.webp | Bin 0 -> 348 bytes .../public/assets/icons/flagpack/vu.webp | Bin 0 -> 722 bytes .../public/assets/icons/flagpack/wf.webp | Bin 0 -> 242 bytes .../public/assets/icons/flagpack/ws.webp | Bin 0 -> 372 bytes .../public/assets/icons/flagpack/xk.webp | Bin 0 -> 466 bytes .../public/assets/icons/flagpack/ye.webp | Bin 0 -> 222 bytes .../public/assets/icons/flagpack/yt.webp | Bin 0 -> 962 bytes .../public/assets/icons/flagpack/za.webp | Bin 0 -> 616 bytes .../public/assets/icons/flagpack/zm.webp | Bin 0 -> 378 bytes .../public/assets/icons/flagpack/zw.webp | Bin 0 -> 652 bytes .../assets/icons/navbar/ic-analytics.svg | 8 + .../public/assets/icons/navbar/ic-banking.svg | 10 + .../public/assets/icons/navbar/ic-blank.svg | 4 + .../public/assets/icons/navbar/ic-blog.svg | 7 + .../assets/icons/navbar/ic-calendar.svg | 5 + .../public/assets/icons/navbar/ic-chat.svg | 6 + .../public/assets/icons/navbar/ic-course.svg | 5 + .../assets/icons/navbar/ic-dashboard.svg | 4 + .../assets/icons/navbar/ic-disabled.svg | 4 + .../assets/icons/navbar/ic-external.svg | 4 + .../public/assets/icons/navbar/ic-file.svg | 6 + .../public/assets/icons/navbar/ic-folder.svg | 4 + .../public/assets/icons/navbar/ic-invoice.svg | 5 + .../public/assets/icons/navbar/ic-label.svg | 4 + .../public/assets/icons/navbar/ic-lock.svg | 4 + .../assets/icons/navbar/ic-menu-item.svg | 5 + .../public/assets/icons/navbar/ic-nostr.svg | 3 + .../assets/icons/navbar/ic-parameter.svg | 7 + .../public/assets/icons/navbar/ic-user.svg | 4 + .../assets/icons/notification/ic-chat.svg | 28 + .../assets/icons/notification/ic-delivery.svg | 20 + .../assets/icons/notification/ic-mail.svg | 15 + .../assets/icons/notification/ic-order.svg | 45 + .../public/assets/icons/payments/success.png | Bin 0 -> 24151 bytes .../public/assets/icons/payments/verify.png | Bin 0 -> 16033 bytes .../assets/icons/platforms/ic-auth0.svg | 5 + .../public/assets/icons/platforms/ic-jwt.svg | 15 + .../assets/icons/platforms/ic-supabase.svg | 99 + .../assets/icons/setting/ic-align-left.svg | 7 + .../assets/icons/setting/ic-align-right.svg | 7 + .../assets/icons/setting/ic-autofit-width.svg | 4 + .../assets/icons/setting/ic-collapse.svg | 4 + .../assets/icons/setting/ic-contrast-bold.svg | 4 + .../assets/icons/setting/ic-contrast.svg | 5 + .../icons/setting/ic-exit-full-screen.svg | 6 + .../public/assets/icons/setting/ic-font.svg | 4 + .../assets/icons/setting/ic-full-screen.svg | 6 + .../public/assets/icons/setting/ic-moon.svg | 4 + .../icons/setting/ic-sidebar-filled.svg | 3 + .../icons/setting/ic-sidebar-outline.svg | 6 + .../assets/icons/setting/ic-sidebar.svg | 4 + .../icons/setting/ic-siderbar-duotone.svg | 4 + .../public/assets/icons/setting/ic-sun.svg | 13 + .../public/assets/icons/setting/ic_moon.svg | 4 + .../assets/icons/setting/ic_setting.svg | 6 + .../public/assets/icons/setting/ic_sun.svg | 13 + .../illustrations/characters/character-4.webp | Bin 0 -> 7008 bytes .../illustrations/characters/character-6.webp | Bin 0 -> 8800 bytes dashboard/public/assets/placeholder.svg | 8 + dashboard/public/assets/red-blur.png | Bin 0 -> 12348 bytes dashboard/public/assets/transparent.png | Bin 0 -> 95 bytes dashboard/public/browserconfig.xml | 9 + dashboard/public/favicon.ico | Bin 0 -> 15086 bytes .../public/favicon/android-chrome-192x192.png | Bin 0 -> 13299 bytes .../public/favicon/android-chrome-512x512.png | Bin 0 -> 41694 bytes dashboard/public/favicon/apple-touch-icon.png | Bin 0 -> 6068 bytes dashboard/public/favicon/favicon-16x16.png | Bin 0 -> 940 bytes dashboard/public/favicon/favicon-32x32.png | Bin 0 -> 1708 bytes dashboard/public/favicon/favicon.ico | Bin 0 -> 15086 bytes dashboard/public/favicon/mstile-144x144.png | Bin 0 -> 5659 bytes dashboard/public/favicon/mstile-150x150.png | Bin 0 -> 5875 bytes dashboard/public/favicon/mstile-310x150.png | Bin 0 -> 6415 bytes dashboard/public/favicon/mstile-310x310.png | Bin 0 -> 13101 bytes dashboard/public/favicon/mstile-70x70.png | Bin 0 -> 4002 bytes .../public/favicon/safari-pinned-tab.svg | 47 + dashboard/public/logo/logo.png | Bin 0 -> 148856 bytes dashboard/public/logo/logo.svg | 100 + dashboard/public/logo/logo_font.png | Bin 0 -> 75393 bytes dashboard/public/logo/logo_font.svg | 79 + dashboard/public/logo/logo_font_negative.png | Bin 0 -> 75354 bytes dashboard/public/logo/logo_font_negative.svg | 79 + dashboard/public/logo/logo_negative.png | Bin 0 -> 149273 bytes dashboard/public/logo/logo_negative.svg | 100 + dashboard/public/logo/logo_single.png | Bin 0 -> 105191 bytes dashboard/public/logo/logo_single.svg | 49 + .../public/logo/logo_single_negative.png | Bin 0 -> 105314 bytes .../public/logo/logo_single_negative.svg | 49 + dashboard/public/logo/logo_square.png | Bin 0 -> 79480 bytes dashboard/public/logo/logo_square.svg | 49 + .../public/logo/logo_square_negative.png | Bin 0 -> 80081 bytes .../public/logo/logo_square_negative.svg | 49 + dashboard/public/logo/social.png | Bin 0 -> 108665 bytes dashboard/public/robots.txt | 3 + dashboard/public/site.webmanifest | 20 + dashboard/src/actions/api-key.ts | 40 + dashboard/src/actions/invoices.ts | 67 + dashboard/src/actions/keys.ts | 46 + dashboard/src/actions/ln-addresses.ts | 65 + dashboard/src/actions/ln-node.ts | 100 + dashboard/src/actions/mempool-space.ts | 34 + dashboard/src/actions/payments.ts | 67 + dashboard/src/actions/user-wallet.ts | 293 + dashboard/src/actions/wallet.ts | 70 + .../src/app/(index)/admin/api-keys/page.tsx | 13 + .../app/(index)/admin/invoices/[id]/page.tsx | 21 + .../src/app/(index)/admin/invoices/page.tsx | 13 + .../admin/lightning-addresses/[id]/page.tsx | 21 + .../admin/lightning-addresses/page.tsx | 13 + .../app/(index)/admin/lightning-node/page.tsx | 30 + .../app/(index)/admin/payments/[id]/page.tsx | 21 + .../src/app/(index)/admin/payments/page.tsx | 13 + .../src/app/(index)/admin/wallets/page.tsx | 13 + dashboard/src/app/(index)/layout.tsx | 22 + dashboard/src/app/(index)/loading.tsx | 7 + dashboard/src/app/(index)/page.tsx | 7 + dashboard/src/app/(index)/settings/page.tsx | 13 + .../src/app/(index)/wallet/contacts/page.tsx | 13 + .../app/(index)/wallet/invoices/[id]/page.tsx | 21 + .../src/app/(index)/wallet/invoices/page.tsx | 13 + .../(index)/wallet/lightning-address/page.tsx | 13 + .../app/(index)/wallet/nostr-address/page.tsx | 13 + dashboard/src/app/(index)/wallet/page.tsx | 13 + .../app/(index)/wallet/payments/[id]/page.tsx | 21 + .../src/app/(index)/wallet/payments/page.tsx | 13 + dashboard/src/app/layout.tsx | 101 + dashboard/src/app/loading.tsx | 7 + dashboard/src/app/login/callback/page.tsx | 7 + dashboard/src/app/login/layout.tsx | 17 + dashboard/src/app/login/page.tsx | 22 + dashboard/src/app/not-found.tsx | 13 + dashboard/src/app/reset-password/layout.tsx | 11 + dashboard/src/app/reset-password/page.tsx | 11 + dashboard/src/app/sign-up/layout.tsx | 17 + dashboard/src/app/sign-up/page.tsx | 19 + dashboard/src/app/update-password/layout.tsx | 11 + dashboard/src/app/update-password/page.tsx | 11 + dashboard/src/app/verify/layout.tsx | 11 + dashboard/src/app/verify/page.tsx | 11 + dashboard/src/assets/data/countries.ts | 251 + dashboard/src/assets/data/currencies.ts | 3 + dashboard/src/assets/data/index.ts | 2 + .../src/assets/icons/email-inbox-icon.tsx | 127 + dashboard/src/assets/icons/index.ts | 4 + .../src/assets/icons/new-password-icon.tsx | 106 + dashboard/src/assets/icons/password-icon.tsx | 102 + dashboard/src/assets/icons/sent-icon.tsx | 67 + .../src/assets/illustrations/avatar-shape.tsx | 30 + .../assets/illustrations/background-shape.tsx | 31 + .../illustrations/forbidden-illustration.tsx | 86 + dashboard/src/assets/illustrations/index.ts | 4 + .../page-not-found-illustration.tsx | 72 + .../illustrations/upload-illustration.tsx | 483 + dashboard/src/auth/context/auth-context.tsx | 11 + .../src/auth/context/auth0/auth-provider.tsx | 122 + dashboard/src/auth/context/auth0/index.ts | 1 + dashboard/src/auth/context/jwt/action.ts | 40 + .../src/auth/context/jwt/auth-provider.tsx | 76 + dashboard/src/auth/context/jwt/constant.ts | 1 + dashboard/src/auth/context/jwt/index.ts | 7 + dashboard/src/auth/context/jwt/utils.ts | 55 + .../src/auth/context/supabase/action.tsx | 132 + .../auth/context/supabase/auth-provider.tsx | 93 + dashboard/src/auth/context/supabase/index.ts | 3 + dashboard/src/auth/guard/auth-guard.tsx | 65 + dashboard/src/auth/guard/guest-guard.tsx | 53 + dashboard/src/auth/guard/index.ts | 5 + dashboard/src/auth/guard/role-based-guard.tsx | 55 + dashboard/src/auth/hooks/index.ts | 1 + dashboard/src/auth/hooks/use-auth-context.ts | 17 + dashboard/src/auth/permissions.ts | 2 + dashboard/src/auth/types.ts | 21 + dashboard/src/components/analytic/index.ts | 1 + .../src/components/analytic/item-analytic.tsx | 58 + .../src/components/animate/animate-avatar.tsx | 84 + .../src/components/animate/animate-border.tsx | 169 + .../components/animate/animate-count-up.tsx | 62 + .../src/components/animate/animate-logo.tsx | 123 + .../src/components/animate/animate-text.tsx | 157 + .../animate/back-to-top/back-to-top.tsx | 51 + .../components/animate/back-to-top/index.ts | 1 + dashboard/src/components/animate/features.ts | 3 + dashboard/src/components/animate/index.ts | 19 + .../components/animate/motion-container.tsx | 31 + .../src/components/animate/motion-lazy.tsx | 19 + .../components/animate/motion-viewport.tsx | 40 + .../animate/scroll-progress/index.ts | 3 + .../scroll-progress/scroll-progress.tsx | 89 + .../scroll-progress/use-scroll-progress.ts | 28 + dashboard/src/components/animate/types.ts | 32 + .../components/animate/variants/actions.ts | 6 + .../components/animate/variants/background.ts | 100 + .../src/components/animate/variants/bounce.ts | 92 + .../components/animate/variants/container.ts | 18 + .../src/components/animate/variants/fade.ts | 69 + .../src/components/animate/variants/flip.ts | 36 + .../src/components/animate/variants/index.ts | 23 + .../src/components/animate/variants/path.ts | 7 + .../src/components/animate/variants/rotate.ts | 27 + .../src/components/animate/variants/scale.ts | 45 + .../src/components/animate/variants/slide.ts | 59 + .../components/animate/variants/transition.ts | 24 + .../src/components/animate/variants/zoom.ts | 124 + .../api-key/create-api-key-dialog.tsx | 45 + .../api-key/create-api-key-form.tsx | 162 + dashboard/src/components/api-key/index.ts | 2 + dashboard/src/components/app/index.ts | 1 + dashboard/src/components/app/welcome.tsx | 66 + dashboard/src/components/bitcoin/index.ts | 1 + .../src/components/bitcoin/sats-with-icon.tsx | 25 + .../src/components/carousel/breakpoints.ts | 9 + .../src/components/carousel/carousel.tsx | 91 + dashboard/src/components/carousel/classes.ts | 27 + .../components/carousel-arrow-buttons.tsx | 238 + .../components/carousel-dot-buttons.tsx | 146 + .../components/carousel-progress-bar.tsx | 47 + .../carousel/components/carousel-slide.tsx | 99 + .../carousel/components/carousel-thumbs.tsx | 162 + .../carousel/hooks/use-carousel-arrows.ts | 43 + .../carousel/hooks/use-carousel-auto-play.ts | 47 + .../hooks/use-carousel-auto-scroll.ts | 47 + .../carousel/hooks/use-carousel-dots.ts | 50 + .../carousel/hooks/use-carousel-parallax.ts | 84 + .../carousel/hooks/use-carousel-progress.ts | 27 + .../components/carousel/hooks/use-carousel.ts | 81 + .../components/carousel/hooks/use-thumbs.ts | 46 + dashboard/src/components/carousel/index.ts | 19 + dashboard/src/components/carousel/types.ts | 162 + .../src/components/chart/chart-legends.tsx | 65 + .../src/components/chart/chart-loading.tsx | 48 + .../src/components/chart/chart-select.tsx | 67 + dashboard/src/components/chart/chart.tsx | 47 + dashboard/src/components/chart/index.ts | 11 + dashboard/src/components/chart/styles.css | 59 + dashboard/src/components/chart/types.ts | 20 + dashboard/src/components/chart/use-chart.ts | 323 + .../components/color-utils/color-picker.tsx | 107 + .../components/color-utils/color-preview.tsx | 48 + dashboard/src/components/color-utils/index.ts | 5 + dashboard/src/components/color-utils/types.ts | 19 + dashboard/src/components/copy/copy-button.tsx | 40 + .../src/components/copy/copy-menu-item.tsx | 40 + dashboard/src/components/copy/index.ts | 2 + .../country-select/country-select.tsx | 133 + .../src/components/country-select/index.ts | 3 + .../src/components/country-select/utils.ts | 17 + .../custom-breadcrumbs/breadcrumb-link.tsx | 56 + .../custom-breadcrumbs/custom-breadcrumbs.tsx | 75 + .../components/custom-breadcrumbs/index.ts | 3 + .../components/custom-breadcrumbs/types.ts | 26 + .../custom-date-range-picker.tsx | 87 + .../custom-date-range-picker/index.ts | 3 + .../custom-date-range-picker/types.ts | 27 + .../use-date-range-picker.ts | 67 + .../custom-dialog/confirm-dialog.tsx | 27 + .../src/components/custom-dialog/index.ts | 1 + .../src/components/custom-dialog/types.ts | 10 + .../custom-popover/custom-popover.tsx | 52 + .../src/components/custom-popover/index.ts | 5 + .../src/components/custom-popover/styles.tsx | 115 + .../src/components/custom-popover/types.ts | 38 + .../components/custom-popover/use-popover.ts | 27 + .../src/components/custom-popover/utils.ts | 127 + .../components/custom-tabs/custom-tabs.tsx | 87 + dashboard/src/components/custom-tabs/index.ts | 1 + .../src/components/delete/delete-button.tsx | 54 + dashboard/src/components/delete/index.ts | 1 + .../empty-content/empty-content.tsx | 66 + .../src/components/empty-content/index.ts | 1 + dashboard/src/components/error/error-view.tsx | 26 + dashboard/src/components/error/index.ts | 1 + .../file-thumbnail/action-buttons.tsx | 65 + .../src/components/file-thumbnail/classes.ts | 9 + .../file-thumbnail/file-thumbnail.tsx | 73 + .../src/components/file-thumbnail/index.ts | 7 + .../src/components/file-thumbnail/types.ts | 25 + .../src/components/file-thumbnail/utils.ts | 156 + .../filters-result/filters-block.tsx | 47 + .../filters-result/filters-result.tsx | 42 + .../src/components/filters-result/index.ts | 3 + dashboard/src/components/hook-form/fields.tsx | 33 + .../components/hook-form/form-provider.tsx | 21 + dashboard/src/components/hook-form/index.ts | 31 + .../components/hook-form/rhf-autocomplete.tsx | 68 + .../src/components/hook-form/rhf-checkbox.tsx | 137 + .../src/components/hook-form/rhf-code.tsx | 34 + .../hook-form/rhf-country-select.tsx | 34 + .../components/hook-form/rhf-date-picker.tsx | 82 + .../components/hook-form/rhf-phone-input.tsx | 33 + .../components/hook-form/rhf-radio-group.tsx | 85 + .../src/components/hook-form/rhf-rating.tsx | 48 + .../src/components/hook-form/rhf-select.tsx | 159 + .../src/components/hook-form/rhf-slider.tsx | 31 + .../src/components/hook-form/rhf-switch.tsx | 137 + .../components/hook-form/rhf-text-field.tsx | 43 + .../hook-form/rhf-wallet-select.tsx | 50 + .../src/components/hook-form/schema-helper.ts | 126 + dashboard/src/components/iconify/classes.ts | 3 + .../src/components/iconify/flag-icon.tsx | 46 + dashboard/src/components/iconify/iconify.tsx | 41 + dashboard/src/components/iconify/index.ts | 9 + .../src/components/iconify/social-icon.tsx | 118 + dashboard/src/components/iconify/types.ts | 6 + dashboard/src/components/image/classes.ts | 7 + dashboard/src/components/image/image.tsx | 104 + dashboard/src/components/image/index.ts | 5 + dashboard/src/components/image/styles.css | 1 + dashboard/src/components/image/types.ts | 18 + dashboard/src/components/image/utils.ts | 15 + dashboard/src/components/label/classes.ts | 3 + dashboard/src/components/label/index.ts | 7 + dashboard/src/components/label/label.tsx | 55 + dashboard/src/components/label/styles.ts | 113 + dashboard/src/components/label/types.ts | 14 + dashboard/src/components/ln-address/index.ts | 2 + .../ln-address/register-ln-address-dialog.tsx | 38 + .../ln-address/register-ln-address-form.tsx | 101 + .../src/components/loading-screen/index.ts | 3 + .../loading-screen/loading-screen.tsx | 39 + .../loading-screen/splash-screen.tsx | 45 + dashboard/src/components/logo/classes.ts | 3 + dashboard/src/components/logo/index.ts | 3 + dashboard/src/components/logo/logo.tsx | 79 + dashboard/src/components/markdown/classes.ts | 12 + .../markdown/code-highlight-block.css | 82 + .../src/components/markdown/html-tags.ts | 172 + .../components/markdown/html-to-markdown.ts | 62 + dashboard/src/components/markdown/index.ts | 3 + .../src/components/markdown/markdown.tsx | 87 + dashboard/src/components/markdown/styles.ts | 165 + dashboard/src/components/markdown/types.ts | 9 + dashboard/src/components/nav-basic/classes.ts | 10 + .../src/components/nav-basic/css-vars.ts | 81 + .../src/components/nav-basic/desktop/index.ts | 3 + .../nav-basic/desktop/nav-basic-desktop.tsx | 38 + .../components/nav-basic/desktop/nav-item.tsx | 207 + .../components/nav-basic/desktop/nav-list.tsx | 138 + dashboard/src/components/nav-basic/index.ts | 9 + .../src/components/nav-basic/mobile/index.ts | 3 + .../nav-basic/mobile/nav-basic-mobile.tsx | 30 + .../components/nav-basic/mobile/nav-item.tsx | 235 + .../components/nav-basic/mobile/nav-list.tsx | 122 + dashboard/src/components/nav-basic/types.ts | 68 + .../src/components/nav-section/classes.ts | 31 + .../src/components/nav-section/css-vars.ts | 119 + .../src/components/nav-section/hooks.tsx | 82 + .../nav-section/horizontal/index.ts | 3 + .../nav-section/horizontal/nav-item.tsx | 212 + .../nav-section/horizontal/nav-list.tsx | 150 + .../horizontal/nav-section-horizontal.tsx | 79 + dashboard/src/components/nav-section/index.ts | 15 + .../src/components/nav-section/mini/index.ts | 3 + .../components/nav-section/mini/nav-item.tsx | 224 + .../components/nav-section/mini/nav-list.tsx | 150 + .../nav-section/mini/nav-section-mini.tsx | 59 + .../src/components/nav-section/styles.tsx | 211 + dashboard/src/components/nav-section/types.ts | 74 + .../components/nav-section/vertical/index.ts | 3 + .../nav-section/vertical/nav-item.tsx | 223 + .../nav-section/vertical/nav-list.tsx | 118 + .../vertical/nav-section-vertical.tsx | 84 + dashboard/src/components/phone-input/index.ts | 3 + dashboard/src/components/phone-input/list.tsx | 133 + .../components/phone-input/phone-input.tsx | 53 + dashboard/src/components/phone-input/types.ts | 16 + dashboard/src/components/phone-input/utils.ts | 46 + .../src/components/progress-bar/index.ts | 1 + .../components/progress-bar/progress-bar.tsx | 77 + .../src/components/progress-bar/styles.css | 26 + dashboard/src/components/qr/index.ts | 1 + dashboard/src/components/qr/qr-dialog.tsx | 79 + dashboard/src/components/scrollbar/classes.ts | 3 + dashboard/src/components/scrollbar/index.ts | 5 + .../src/components/scrollbar/scrollbar.tsx | 43 + dashboard/src/components/scrollbar/styles.css | 8 + dashboard/src/components/scrollbar/types.ts | 16 + .../src/components/search-not-found/index.ts | 1 + .../search-not-found/search-not-found.tsx | 33 + .../components/settings/config-settings.ts | 19 + .../src/components/settings/context/index.ts | 3 + .../settings/context/settings-provider.tsx | 52 + .../settings/context/use-settings-context.ts | 15 + .../settings/drawer/base-option.tsx | 74 + .../settings/drawer/font-options.tsx | 75 + .../settings/drawer/fullscreen-button.tsx | 48 + .../src/components/settings/drawer/index.ts | 1 + .../settings/drawer/nav-options.tsx | 258 + .../settings/drawer/presets-options.tsx | 54 + .../settings/drawer/settings-drawer.tsx | 193 + .../src/components/settings/drawer/styles.tsx | 63 + dashboard/src/components/settings/index.ts | 7 + dashboard/src/components/settings/server.ts | 13 + dashboard/src/components/settings/types.ts | 48 + dashboard/src/components/snackbar/classes.ts | 25 + dashboard/src/components/snackbar/index.ts | 3 + .../src/components/snackbar/snackbar.tsx | 53 + dashboard/src/components/snackbar/styles.tsx | 178 + dashboard/src/components/svg-color/classes.ts | 3 + dashboard/src/components/svg-color/index.ts | 5 + .../src/components/svg-color/svg-color.tsx | 28 + dashboard/src/components/svg-color/types.ts | 7 + dashboard/src/components/table/index.ts | 17 + .../src/components/table/table-empty-rows.tsx | 21 + .../components/table/table-head-custom.tsx | 92 + .../src/components/table/table-no-data.tsx | 27 + .../table/table-pagination-custom.tsx | 42 + .../table/table-selected-action.tsx | 62 + .../src/components/table/table-skeleton.tsx | 32 + dashboard/src/components/table/types.ts | 28 + dashboard/src/components/table/use-table.ts | 135 + dashboard/src/components/table/utils.ts | 51 + .../clean-transactions-button.tsx | 65 + .../transactions/confirm-payment-dialog.tsx | 339 + .../src/components/transactions/index.ts | 10 + .../transactions/new-invoice-card.tsx | 27 + .../transactions/new-invoice-dialog.tsx | 38 + .../transactions/new-invoice-form.tsx | 243 + .../transactions/new-payment-card.tsx | 30 + .../transactions/new-payment-dialog.tsx | 38 + .../transactions/new-payment-form.tsx | 243 + dashboard/src/components/wallet/index.ts | 2 + .../wallet/register-wallet-dialog.tsx | 38 + .../wallet/register-wallet-form.tsx | 74 + dashboard/src/config-global.ts | 73 + dashboard/src/global.css | 64 + dashboard/src/hooks/use-boolean.ts | 42 + dashboard/src/hooks/use-client-rect.ts | 76 + dashboard/src/hooks/use-cookies.ts | 137 + dashboard/src/hooks/use-copy-to-clipboard.ts | 40 + dashboard/src/hooks/use-countdown.ts | 96 + dashboard/src/hooks/use-debounce.ts | 27 + dashboard/src/hooks/use-double-click.ts | 41 + dashboard/src/hooks/use-event-listener.ts | 68 + dashboard/src/hooks/use-local-storage.ts | 109 + dashboard/src/hooks/use-negative-logo.ts | 7 + dashboard/src/hooks/use-responsive.ts | 56 + dashboard/src/hooks/use-scroll-offset-top.ts | 57 + dashboard/src/hooks/use-set-state.ts | 47 + dashboard/src/hooks/use-tabs.ts | 47 + dashboard/src/layouts/auth-centered/index.ts | 3 + .../src/layouts/auth-centered/layout.tsx | 95 + dashboard/src/layouts/auth-centered/main.tsx | 60 + dashboard/src/layouts/auth-split/index.ts | 3 + dashboard/src/layouts/auth-split/layout.tsx | 108 + dashboard/src/layouts/auth-split/main.tsx | 78 + dashboard/src/layouts/auth-split/section.tsx | 111 + dashboard/src/layouts/classes.ts | 9 + .../src/layouts/components/account-button.tsx | 57 + .../src/layouts/components/account-drawer.tsx | 161 + .../layouts/components/account-popover.tsx | 107 + .../layouts/components/contacts-popover.tsx | 98 + .../layouts/components/currency-popover.tsx | 65 + .../layouts/components/language-popover.tsx | 78 + .../src/layouts/components/menu-button.tsx | 30 + .../layouts/components/nav-toggle-button.tsx | 58 + .../components/notifications-drawer/index.tsx | 167 + .../notification-item.tsx | 237 + .../layouts/components/searchbar/index.tsx | 190 + .../components/searchbar/result-item.tsx | 61 + .../src/layouts/components/searchbar/utils.ts | 103 + .../layouts/components/settings-button.tsx | 38 + .../src/layouts/components/sign-in-button.tsx | 17 + .../layouts/components/sign-out-button.tsx | 72 + .../layouts/components/workspaces-popover.tsx | 107 + dashboard/src/layouts/config-nav-account.tsx | 40 + .../src/layouts/config-nav-dashboard.tsx | 120 + .../src/layouts/config-nav-workspace.tsx | 12 + dashboard/src/layouts/core/header-base.tsx | 227 + dashboard/src/layouts/core/header-section.tsx | 125 + dashboard/src/layouts/core/layout-section.tsx | 62 + dashboard/src/layouts/dashboard/index.ts | 3 + dashboard/src/layouts/dashboard/layout.tsx | 268 + dashboard/src/layouts/dashboard/main.tsx | 84 + .../src/layouts/dashboard/nav-horizontal.tsx | 44 + .../src/layouts/dashboard/nav-mobile.tsx | 61 + .../src/layouts/dashboard/nav-vertical.tsx | 96 + dashboard/src/layouts/simple/index.ts | 3 + dashboard/src/layouts/simple/layout.tsx | 73 + dashboard/src/layouts/simple/main.tsx | 50 + dashboard/src/lib/openapi.json | 1 + dashboard/src/lib/supabase.ts | 14 + dashboard/src/lib/swissknife/index.ts | 4 + dashboard/src/lib/swissknife/schemas.gen.ts | 862 ++ dashboard/src/lib/swissknife/services.gen.ts | 897 ++ dashboard/src/lib/swissknife/types.gen.ts | 1959 +++ dashboard/src/locales/all-langs.ts | 41 + dashboard/src/locales/config-locales.ts | 37 + dashboard/src/locales/i18n-provider.tsx | 56 + dashboard/src/locales/index.ts | 11 + dashboard/src/locales/langs/en/common.json | 419 + dashboard/src/locales/langs/fr/common.json | 421 + .../src/locales/localization-provider.tsx | 31 + dashboard/src/locales/server.ts | 53 + dashboard/src/locales/use-locales.ts | 52 + .../src/locales/utils/number-format-locale.ts | 14 + dashboard/src/routes/components/index.ts | 1 + .../src/routes/components/router-link.tsx | 3 + dashboard/src/routes/hooks/index.ts | 10 + dashboard/src/routes/hooks/use-active-link.ts | 55 + dashboard/src/routes/hooks/use-params.ts | 1 + dashboard/src/routes/hooks/use-pathname.ts | 1 + dashboard/src/routes/hooks/use-router.ts | 1 + .../src/routes/hooks/use-search-params.ts | 1 + dashboard/src/routes/paths.ts | 51 + dashboard/src/routes/utils.ts | 43 + .../src/sections/api-key/api-key-list.tsx | 280 + .../api-key/api-key-table-filters-result.tsx | 49 + .../sections/api-key/api-key-table-row.tsx | 185 + .../api-key/api-key-table-toolbar.tsx | 151 + .../api-key/view/api-key-list-view.tsx | 100 + dashboard/src/sections/api-key/view/index.ts | 1 + .../auth/auth0/auth0-sign-in-view.tsx | 30 + dashboard/src/sections/auth/auth0/index.ts | 1 + dashboard/src/sections/auth/jwt/index.ts | 3 + .../sections/auth/jwt/jwt-sign-in-view.tsx | 122 + .../sections/auth/jwt/jwt-sign-up-view.tsx | 179 + dashboard/src/sections/auth/supabase/index.ts | 9 + .../supabase/supabase-reset-password-view.tsx | 104 + .../auth/supabase/supabase-sign-in-view.tsx | 153 + .../auth/supabase/supabase-sign-up-view.tsx | 175 + .../supabase-update-password-view.tsx | 143 + .../auth/supabase/supabase-verify-view.tsx | 47 + .../src/sections/contact/contact-list.tsx | 79 + .../contact/view/contact-list-view.tsx | 58 + dashboard/src/sections/contact/view/index.ts | 1 + dashboard/src/sections/error/403-view.tsx | 44 + dashboard/src/sections/error/index.ts | 2 + .../src/sections/error/not-found-view.tsx | 45 + .../ln-address/ln-address-details.tsx | 245 + .../sections/ln-address/ln-address-list.tsx | 367 + .../ln-address-table-filters-result.tsx | 56 + .../ln-address/ln-address-table-row.tsx | 191 + .../ln-address/ln-address-table-toolbar.tsx | 153 + .../view/admin-ln-address-details-view.tsx | 64 + .../src/sections/ln-address/view/index.ts | 3 + .../view/ln-address-details-view.tsx | 67 + .../ln-address/view/ln-address-list-view.tsx | 131 + .../src/sections/node/current-balance.tsx | 265 + dashboard/src/sections/node/ln-addresses.tsx | 67 + dashboard/src/sections/node/lsp-list.tsx | 299 + dashboard/src/sections/node/sign-message.tsx | 90 + .../src/sections/node/verify-message.tsx | 93 + .../sections/node/view/breez-node-view.tsx | 167 + dashboard/src/sections/node/view/index.ts | 2 + .../src/sections/node/view/node-view.tsx | 121 + .../src/sections/nostr/nostr-details.tsx | 97 + dashboard/src/sections/nostr/view/index.ts | 1 + .../nostr/view/nostr-details-view.tsx | 67 + .../sections/settings/settings-api-key.tsx | 190 + .../sections/settings/settings-ln-address.tsx | 181 + dashboard/src/sections/settings/view/index.ts | 1 + .../sections/settings/view/settings-view.tsx | 86 + .../sections/transaction/invoice-details.tsx | 260 + .../sections/transaction/payment-details.tsx | 224 + .../transaction/recent-transactions.tsx | 246 + .../sections/transaction/transaction-list.tsx | 403 + .../transaction-table-filters-result.tsx | 73 + .../transaction/transaction-table-row.tsx | 227 + .../transaction/transaction-table-toolbar.tsx | 196 + .../transaction/transaction-toolbar.tsx | 90 + .../view/admin-invoice-details-view.tsx | 64 + .../view/admin-invoice-list-view.tsx | 114 + .../view/admin-payment-details-view.tsx | 64 + .../view/admin-payment-list-view.tsx | 110 + .../src/sections/transaction/view/index.ts | 8 + .../transaction/view/invoice-details-view.tsx | 60 + .../transaction/view/invoice-list-view.tsx | 168 + .../transaction/view/payment-details-view.tsx | 60 + .../transaction/view/payment-list-view.tsx | 168 + .../src/sections/wallet/balance-overview.tsx | 252 + dashboard/src/sections/wallet/contacts.tsx | 96 + .../src/sections/wallet/current-balance.tsx | 138 + dashboard/src/sections/wallet/view/index.ts | 2 + .../sections/wallet/view/wallet-list-view.tsx | 99 + .../src/sections/wallet/view/wallet-view.tsx | 116 + dashboard/src/sections/wallet/wallet-list.tsx | 281 + .../wallet/wallet-table-filters-result.tsx | 49 + .../src/sections/wallet/wallet-table-row.tsx | 246 + .../sections/wallet/wallet-table-toolbar.tsx | 151 + dashboard/src/theme/color-scheme-script.ts | 14 + dashboard/src/theme/core/colors.json | 66 + .../src/theme/core/components/accordion.tsx | 48 + dashboard/src/theme/core/components/alert.tsx | 168 + .../src/theme/core/components/appbar.tsx | 19 + .../theme/core/components/autocomplete.tsx | 60 + .../src/theme/core/components/avatar.tsx | 124 + .../src/theme/core/components/backdrop.tsx | 21 + dashboard/src/theme/core/components/badge.tsx | 108 + .../src/theme/core/components/breadcrumbs.tsx | 19 + .../src/theme/core/components/button-fab.tsx | 193 + .../theme/core/components/button-group.tsx | 155 + .../theme/core/components/button-toggle.tsx | 83 + .../src/theme/core/components/button.tsx | 175 + dashboard/src/theme/core/components/card.tsx | 51 + .../src/theme/core/components/checkbox.tsx | 59 + dashboard/src/theme/core/components/chip.tsx | 174 + .../src/theme/core/components/dialog.tsx | 64 + .../src/theme/core/components/drawer.tsx | 35 + dashboard/src/theme/core/components/form.tsx | 53 + dashboard/src/theme/core/components/index.ts | 91 + dashboard/src/theme/core/components/link.tsx | 19 + dashboard/src/theme/core/components/list.tsx | 43 + dashboard/src/theme/core/components/menu.tsx | 16 + .../theme/core/components/mui-x-data-grid.tsx | 334 + .../core/components/mui-x-date-picker.tsx | 213 + .../theme/core/components/mui-x-tree-view.tsx | 17 + .../src/theme/core/components/pagination.tsx | 114 + dashboard/src/theme/core/components/paper.tsx | 26 + .../src/theme/core/components/popover.tsx | 23 + .../src/theme/core/components/progress.tsx | 53 + dashboard/src/theme/core/components/radio.tsx | 60 + .../src/theme/core/components/rating.tsx | 42 + .../src/theme/core/components/select.tsx | 65 + .../src/theme/core/components/skeleton.tsx | 26 + .../src/theme/core/components/slider.tsx | 119 + dashboard/src/theme/core/components/stack.tsx | 18 + .../src/theme/core/components/stepper.tsx | 14 + .../src/theme/core/components/svg-icon.tsx | 14 + .../src/theme/core/components/switch.tsx | 55 + dashboard/src/theme/core/components/table.tsx | 113 + dashboard/src/theme/core/components/tabs.tsx | 63 + .../src/theme/core/components/textfield.tsx | 121 + .../src/theme/core/components/timeline.tsx | 21 + .../src/theme/core/components/tooltip.tsx | 45 + .../src/theme/core/components/typography.tsx | 17 + dashboard/src/theme/core/custom-shadows.ts | 70 + dashboard/src/theme/core/index.ts | 9 + dashboard/src/theme/core/palette.ts | 146 + dashboard/src/theme/core/shadows.ts | 44 + dashboard/src/theme/core/typography.ts | 115 + dashboard/src/theme/create-theme.ts | 99 + dashboard/src/theme/overrides-theme.ts | 26 + dashboard/src/theme/styles/index.ts | 3 + dashboard/src/theme/styles/mixins.ts | 247 + dashboard/src/theme/styles/utils.ts | 98 + dashboard/src/theme/theme-provider.tsx | 42 + dashboard/src/theme/types.ts | 19 + .../theme/with-settings/primary-color.json | 42 + .../src/theme/with-settings/right-to-left.tsx | 31 + .../src/theme/with-settings/update-theme.ts | 110 + dashboard/src/types/apikey.ts | 8 + dashboard/src/types/bitcoin.ts | 3 + dashboard/src/types/breez-node.ts | 32 + dashboard/src/types/common.ts | 7 + dashboard/src/types/currency.ts | 1 + dashboard/src/types/light-bolt11-decoder.d.ts | 3 + dashboard/src/types/ln-address.ts | 9 + dashboard/src/types/transaction.ts | 21 + dashboard/src/types/wallet.ts | 8 + dashboard/src/utils/ajv.ts | 5 + dashboard/src/utils/change-case.ts | 23 + dashboard/src/utils/errors.ts | 15 + dashboard/src/utils/fiat.ts | 8 + dashboard/src/utils/format-number.ts | 123 + dashboard/src/utils/format-string.ts | 16 + dashboard/src/utils/format-time.ts | 241 + dashboard/src/utils/helper.ts | 130 + dashboard/src/utils/lnurl.ts | 17 + dashboard/src/utils/nostr.ts | 11 + dashboard/src/utils/storage-available.ts | 24 + dashboard/src/utils/transactions.ts | 78 + dashboard/src/utils/with-loading-props.tsx | 19 + dashboard/tsconfig.json | 32 + dashboard/yarn.lock | 11029 ++++++++++++++++ 1016 files changed, 55286 insertions(+), 15 deletions(-) create mode 100644 dashboard/.dockerignore create mode 100644 dashboard/.editorconfig create mode 100755 dashboard/.env.development create mode 100755 dashboard/.env.example create mode 100755 dashboard/.env.production create mode 100644 dashboard/.eslintignore create mode 100644 dashboard/.eslintrc.js create mode 100644 dashboard/.gitattributes create mode 100644 dashboard/.gitignore create mode 100644 dashboard/.prettierignore create mode 100644 dashboard/.yarn/install-state.gz create mode 100644 dashboard/.yarnrc.yml create mode 100644 dashboard/Dockerfile create mode 100644 dashboard/README.md create mode 100644 dashboard/next-env.d.ts create mode 100644 dashboard/next.config.mjs create mode 100644 dashboard/openapi-ts.config.mjs create mode 100644 dashboard/package.json create mode 100644 dashboard/prettier.config.mjs create mode 100644 dashboard/public/_redirects create mode 100644 dashboard/public/assets/background/background-3-blur.webp create mode 100644 dashboard/public/assets/background/background-4.jpg create mode 100644 dashboard/public/assets/background/overlay.svg create mode 100644 dashboard/public/assets/cyan-blur.png create mode 100644 dashboard/public/assets/icons/bitcoin/ic-bitcoin-lightning.svg create mode 100644 dashboard/public/assets/icons/bitcoin/ic-bitcoin.svg create mode 100644 dashboard/public/assets/icons/bitcoin/ic-lightning.svg create mode 100644 dashboard/public/assets/icons/brands/ic-brand-breez.svg create mode 100644 dashboard/public/assets/icons/brands/ic-brand-cln-emblem.svg create mode 100644 dashboard/public/assets/icons/brands/ic-brand-cln.svg create mode 100644 dashboard/public/assets/icons/brands/ic-brand-greenlight.svg create mode 100644 dashboard/public/assets/icons/brands/ic-brand-lnd.png create mode 100644 dashboard/public/assets/icons/components/ic-accordion.svg create mode 100644 dashboard/public/assets/icons/components/ic-alert.svg create mode 100644 dashboard/public/assets/icons/components/ic-autocomplete.svg create mode 100644 dashboard/public/assets/icons/components/ic-avatar.svg create mode 100644 dashboard/public/assets/icons/components/ic-badge.svg create mode 100644 dashboard/public/assets/icons/components/ic-breadcrumbs.svg create mode 100644 dashboard/public/assets/icons/components/ic-buttons.svg create mode 100644 dashboard/public/assets/icons/components/ic-checkbox.svg create mode 100644 dashboard/public/assets/icons/components/ic-chip.svg create mode 100644 dashboard/public/assets/icons/components/ic-colors.svg create mode 100644 dashboard/public/assets/icons/components/ic-data-grid.svg create mode 100644 dashboard/public/assets/icons/components/ic-dialog.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-animate.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-carousel.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-chart.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-dnd.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-editor.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-form-validation.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-form-wizard.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-image.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-label.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-lightbox.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-map.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-markdown.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-mega-menu.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-multi-language.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-navigation-bar.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-organization-chart.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-scroll-progress.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-scroll.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-snackbar.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-upload.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-utilities.svg create mode 100644 dashboard/public/assets/icons/components/ic-extra-walktour.svg create mode 100644 dashboard/public/assets/icons/components/ic-grid.svg create mode 100644 dashboard/public/assets/icons/components/ic-icons.svg create mode 100644 dashboard/public/assets/icons/components/ic-list.svg create mode 100644 dashboard/public/assets/icons/components/ic-menu.svg create mode 100644 dashboard/public/assets/icons/components/ic-pagination.svg create mode 100644 dashboard/public/assets/icons/components/ic-pickers.svg create mode 100644 dashboard/public/assets/icons/components/ic-popover.svg create mode 100644 dashboard/public/assets/icons/components/ic-progress.svg create mode 100644 dashboard/public/assets/icons/components/ic-radio-button.svg create mode 100644 dashboard/public/assets/icons/components/ic-rating.svg create mode 100644 dashboard/public/assets/icons/components/ic-shadows.svg create mode 100644 dashboard/public/assets/icons/components/ic-slider.svg create mode 100644 dashboard/public/assets/icons/components/ic-stepper.svg create mode 100644 dashboard/public/assets/icons/components/ic-switch.svg create mode 100644 dashboard/public/assets/icons/components/ic-table.svg create mode 100644 dashboard/public/assets/icons/components/ic-tabs.svg create mode 100644 dashboard/public/assets/icons/components/ic-textfield.svg create mode 100644 dashboard/public/assets/icons/components/ic-timeline.svg create mode 100644 dashboard/public/assets/icons/components/ic-tooltip.svg create mode 100644 dashboard/public/assets/icons/components/ic-transfer-list.svg create mode 100644 dashboard/public/assets/icons/components/ic-tree-view.svg create mode 100644 dashboard/public/assets/icons/components/ic-typography.svg create mode 100644 dashboard/public/assets/icons/empty/ic-content.svg create mode 100644 dashboard/public/assets/icons/files/ic-ai.svg create mode 100644 dashboard/public/assets/icons/files/ic-audio.svg create mode 100644 dashboard/public/assets/icons/files/ic-document.svg create mode 100644 dashboard/public/assets/icons/files/ic-excel.svg create mode 100644 dashboard/public/assets/icons/files/ic-file.svg create mode 100644 dashboard/public/assets/icons/files/ic-folder.svg create mode 100644 dashboard/public/assets/icons/files/ic-img.svg create mode 100644 dashboard/public/assets/icons/files/ic-js.svg create mode 100644 dashboard/public/assets/icons/files/ic-pdf.svg create mode 100644 dashboard/public/assets/icons/files/ic-power_point.svg create mode 100644 dashboard/public/assets/icons/files/ic-pts.svg create mode 100644 dashboard/public/assets/icons/files/ic-txt.svg create mode 100644 dashboard/public/assets/icons/files/ic-video.svg create mode 100644 dashboard/public/assets/icons/files/ic-word.svg create mode 100644 dashboard/public/assets/icons/files/ic-zip.svg create mode 100644 dashboard/public/assets/icons/flagpack/ad.webp create mode 100644 dashboard/public/assets/icons/flagpack/ae.webp create mode 100644 dashboard/public/assets/icons/flagpack/af.webp create mode 100644 dashboard/public/assets/icons/flagpack/ag.webp create mode 100644 dashboard/public/assets/icons/flagpack/ai.webp create mode 100644 dashboard/public/assets/icons/flagpack/al.webp create mode 100644 dashboard/public/assets/icons/flagpack/am.webp create mode 100644 dashboard/public/assets/icons/flagpack/ao.webp create mode 100644 dashboard/public/assets/icons/flagpack/aq.webp create mode 100644 dashboard/public/assets/icons/flagpack/ar.webp create mode 100644 dashboard/public/assets/icons/flagpack/as.webp create mode 100644 dashboard/public/assets/icons/flagpack/at.webp create mode 100644 dashboard/public/assets/icons/flagpack/au.webp create mode 100644 dashboard/public/assets/icons/flagpack/aw.webp create mode 100644 dashboard/public/assets/icons/flagpack/ax.webp create mode 100644 dashboard/public/assets/icons/flagpack/az.webp create mode 100644 dashboard/public/assets/icons/flagpack/ba.webp create mode 100644 dashboard/public/assets/icons/flagpack/bb.webp create mode 100644 dashboard/public/assets/icons/flagpack/bd.webp create mode 100644 dashboard/public/assets/icons/flagpack/be.webp create mode 100644 dashboard/public/assets/icons/flagpack/bf.webp create mode 100644 dashboard/public/assets/icons/flagpack/bg.webp create mode 100644 dashboard/public/assets/icons/flagpack/bh.webp create mode 100644 dashboard/public/assets/icons/flagpack/bi.webp create mode 100644 dashboard/public/assets/icons/flagpack/bj.webp create mode 100644 dashboard/public/assets/icons/flagpack/bl.webp create mode 100644 dashboard/public/assets/icons/flagpack/bm.webp create mode 100644 dashboard/public/assets/icons/flagpack/bn.webp create mode 100644 dashboard/public/assets/icons/flagpack/bo.webp create mode 100644 dashboard/public/assets/icons/flagpack/bq-bo.webp create mode 100644 dashboard/public/assets/icons/flagpack/bq-sa.webp create mode 100644 dashboard/public/assets/icons/flagpack/bq-se.webp create mode 100644 dashboard/public/assets/icons/flagpack/br.webp create mode 100644 dashboard/public/assets/icons/flagpack/bs.webp create mode 100644 dashboard/public/assets/icons/flagpack/bt.webp create mode 100644 dashboard/public/assets/icons/flagpack/bv.webp create mode 100644 dashboard/public/assets/icons/flagpack/bw.webp create mode 100644 dashboard/public/assets/icons/flagpack/by.webp create mode 100644 dashboard/public/assets/icons/flagpack/bz.webp create mode 100644 dashboard/public/assets/icons/flagpack/ca.webp create mode 100644 dashboard/public/assets/icons/flagpack/cc.webp create mode 100644 dashboard/public/assets/icons/flagpack/cd.webp create mode 100644 dashboard/public/assets/icons/flagpack/cf.webp create mode 100644 dashboard/public/assets/icons/flagpack/cg.webp create mode 100644 dashboard/public/assets/icons/flagpack/ch.webp create mode 100644 dashboard/public/assets/icons/flagpack/ci.webp create mode 100644 dashboard/public/assets/icons/flagpack/ck.webp create mode 100644 dashboard/public/assets/icons/flagpack/cl.webp create mode 100644 dashboard/public/assets/icons/flagpack/cm.webp create mode 100644 dashboard/public/assets/icons/flagpack/cn.webp create mode 100644 dashboard/public/assets/icons/flagpack/co.webp create mode 100644 dashboard/public/assets/icons/flagpack/cr.webp create mode 100644 dashboard/public/assets/icons/flagpack/cu.webp create mode 100644 dashboard/public/assets/icons/flagpack/cv.webp create mode 100644 dashboard/public/assets/icons/flagpack/cw.webp create mode 100644 dashboard/public/assets/icons/flagpack/cx.webp create mode 100644 dashboard/public/assets/icons/flagpack/cy.webp create mode 100644 dashboard/public/assets/icons/flagpack/cz.webp create mode 100644 dashboard/public/assets/icons/flagpack/de.webp create mode 100644 dashboard/public/assets/icons/flagpack/dj.webp create mode 100644 dashboard/public/assets/icons/flagpack/dk.webp create mode 100644 dashboard/public/assets/icons/flagpack/dm.webp create mode 100644 dashboard/public/assets/icons/flagpack/do.webp create mode 100644 dashboard/public/assets/icons/flagpack/dz.webp create mode 100644 dashboard/public/assets/icons/flagpack/ec.webp create mode 100644 dashboard/public/assets/icons/flagpack/ee.webp create mode 100644 dashboard/public/assets/icons/flagpack/eg.webp create mode 100644 dashboard/public/assets/icons/flagpack/eh.webp create mode 100644 dashboard/public/assets/icons/flagpack/er.webp create mode 100644 dashboard/public/assets/icons/flagpack/es.webp create mode 100644 dashboard/public/assets/icons/flagpack/et.webp create mode 100644 dashboard/public/assets/icons/flagpack/fi.webp create mode 100644 dashboard/public/assets/icons/flagpack/fj.webp create mode 100644 dashboard/public/assets/icons/flagpack/fk.webp create mode 100644 dashboard/public/assets/icons/flagpack/fm.webp create mode 100644 dashboard/public/assets/icons/flagpack/fo.webp create mode 100644 dashboard/public/assets/icons/flagpack/fr.webp create mode 100644 dashboard/public/assets/icons/flagpack/ga.webp create mode 100644 dashboard/public/assets/icons/flagpack/gb-eng.webp create mode 100644 dashboard/public/assets/icons/flagpack/gb-nir.webp create mode 100644 dashboard/public/assets/icons/flagpack/gb-sct.webp create mode 100644 dashboard/public/assets/icons/flagpack/gb-wls.webp create mode 100644 dashboard/public/assets/icons/flagpack/gb.webp create mode 100644 dashboard/public/assets/icons/flagpack/gd.webp create mode 100644 dashboard/public/assets/icons/flagpack/ge.webp create mode 100644 dashboard/public/assets/icons/flagpack/gf.webp create mode 100644 dashboard/public/assets/icons/flagpack/gg.webp create mode 100644 dashboard/public/assets/icons/flagpack/gh.webp create mode 100644 dashboard/public/assets/icons/flagpack/gi.webp create mode 100644 dashboard/public/assets/icons/flagpack/gl.webp create mode 100644 dashboard/public/assets/icons/flagpack/gm.webp create mode 100644 dashboard/public/assets/icons/flagpack/gn.webp create mode 100644 dashboard/public/assets/icons/flagpack/gp.webp create mode 100644 dashboard/public/assets/icons/flagpack/gq.webp create mode 100644 dashboard/public/assets/icons/flagpack/gr.webp create mode 100644 dashboard/public/assets/icons/flagpack/gs.webp create mode 100644 dashboard/public/assets/icons/flagpack/gt.webp create mode 100644 dashboard/public/assets/icons/flagpack/gu.webp create mode 100644 dashboard/public/assets/icons/flagpack/gw.webp create mode 100644 dashboard/public/assets/icons/flagpack/gy.webp create mode 100644 dashboard/public/assets/icons/flagpack/hk.webp create mode 100644 dashboard/public/assets/icons/flagpack/hm.webp create mode 100644 dashboard/public/assets/icons/flagpack/hn.webp create mode 100644 dashboard/public/assets/icons/flagpack/hr.webp create mode 100644 dashboard/public/assets/icons/flagpack/ht.webp create mode 100644 dashboard/public/assets/icons/flagpack/hu.webp create mode 100644 dashboard/public/assets/icons/flagpack/id.webp create mode 100644 dashboard/public/assets/icons/flagpack/ie.webp create mode 100644 dashboard/public/assets/icons/flagpack/il.webp create mode 100644 dashboard/public/assets/icons/flagpack/im.webp create mode 100644 dashboard/public/assets/icons/flagpack/in.webp create mode 100644 dashboard/public/assets/icons/flagpack/io.webp create mode 100644 dashboard/public/assets/icons/flagpack/iq.webp create mode 100644 dashboard/public/assets/icons/flagpack/ir.webp create mode 100644 dashboard/public/assets/icons/flagpack/is.webp create mode 100644 dashboard/public/assets/icons/flagpack/it.webp create mode 100644 dashboard/public/assets/icons/flagpack/je.webp create mode 100644 dashboard/public/assets/icons/flagpack/jm.webp create mode 100644 dashboard/public/assets/icons/flagpack/jo.webp create mode 100644 dashboard/public/assets/icons/flagpack/jp.webp create mode 100644 dashboard/public/assets/icons/flagpack/ke.webp create mode 100644 dashboard/public/assets/icons/flagpack/kg.webp create mode 100644 dashboard/public/assets/icons/flagpack/kh.webp create mode 100644 dashboard/public/assets/icons/flagpack/ki.webp create mode 100644 dashboard/public/assets/icons/flagpack/km.webp create mode 100644 dashboard/public/assets/icons/flagpack/kn.webp create mode 100644 dashboard/public/assets/icons/flagpack/kp.webp create mode 100644 dashboard/public/assets/icons/flagpack/kr.webp create mode 100644 dashboard/public/assets/icons/flagpack/kw.webp create mode 100644 dashboard/public/assets/icons/flagpack/ky.webp create mode 100644 dashboard/public/assets/icons/flagpack/kz.webp create mode 100644 dashboard/public/assets/icons/flagpack/la.webp create mode 100644 dashboard/public/assets/icons/flagpack/lb.webp create mode 100644 dashboard/public/assets/icons/flagpack/lc.webp create mode 100644 dashboard/public/assets/icons/flagpack/li.webp create mode 100644 dashboard/public/assets/icons/flagpack/lk.webp create mode 100644 dashboard/public/assets/icons/flagpack/lr.webp create mode 100644 dashboard/public/assets/icons/flagpack/ls.webp create mode 100644 dashboard/public/assets/icons/flagpack/lt.webp create mode 100644 dashboard/public/assets/icons/flagpack/lu.webp create mode 100644 dashboard/public/assets/icons/flagpack/lv.webp create mode 100644 dashboard/public/assets/icons/flagpack/ly.webp create mode 100644 dashboard/public/assets/icons/flagpack/ma.webp create mode 100644 dashboard/public/assets/icons/flagpack/mc.webp create mode 100644 dashboard/public/assets/icons/flagpack/md.webp create mode 100644 dashboard/public/assets/icons/flagpack/me.webp create mode 100644 dashboard/public/assets/icons/flagpack/mf.webp create mode 100644 dashboard/public/assets/icons/flagpack/mg.webp create mode 100644 dashboard/public/assets/icons/flagpack/mh.webp create mode 100644 dashboard/public/assets/icons/flagpack/mk.webp create mode 100644 dashboard/public/assets/icons/flagpack/ml.webp create mode 100644 dashboard/public/assets/icons/flagpack/mm.webp create mode 100644 dashboard/public/assets/icons/flagpack/mn.webp create mode 100644 dashboard/public/assets/icons/flagpack/mo.webp create mode 100644 dashboard/public/assets/icons/flagpack/mp.webp create mode 100644 dashboard/public/assets/icons/flagpack/mq.webp create mode 100644 dashboard/public/assets/icons/flagpack/mr.webp create mode 100644 dashboard/public/assets/icons/flagpack/ms.webp create mode 100644 dashboard/public/assets/icons/flagpack/mt.webp create mode 100644 dashboard/public/assets/icons/flagpack/mu.webp create mode 100644 dashboard/public/assets/icons/flagpack/mv.webp create mode 100644 dashboard/public/assets/icons/flagpack/mw.webp create mode 100644 dashboard/public/assets/icons/flagpack/mx.webp create mode 100644 dashboard/public/assets/icons/flagpack/my.webp create mode 100644 dashboard/public/assets/icons/flagpack/mz.webp create mode 100644 dashboard/public/assets/icons/flagpack/na.webp create mode 100644 dashboard/public/assets/icons/flagpack/nc.webp create mode 100644 dashboard/public/assets/icons/flagpack/ne.webp create mode 100644 dashboard/public/assets/icons/flagpack/nf.webp create mode 100644 dashboard/public/assets/icons/flagpack/ng.webp create mode 100644 dashboard/public/assets/icons/flagpack/ni.webp create mode 100644 dashboard/public/assets/icons/flagpack/nl.webp create mode 100644 dashboard/public/assets/icons/flagpack/no.webp create mode 100644 dashboard/public/assets/icons/flagpack/np.webp create mode 100644 dashboard/public/assets/icons/flagpack/nr.webp create mode 100644 dashboard/public/assets/icons/flagpack/nu.webp create mode 100644 dashboard/public/assets/icons/flagpack/nz.webp create mode 100644 dashboard/public/assets/icons/flagpack/om.webp create mode 100644 dashboard/public/assets/icons/flagpack/pa.webp create mode 100644 dashboard/public/assets/icons/flagpack/pe.webp create mode 100644 dashboard/public/assets/icons/flagpack/pf.webp create mode 100644 dashboard/public/assets/icons/flagpack/pg.webp create mode 100644 dashboard/public/assets/icons/flagpack/ph.webp create mode 100644 dashboard/public/assets/icons/flagpack/pk.webp create mode 100644 dashboard/public/assets/icons/flagpack/pl.webp create mode 100644 dashboard/public/assets/icons/flagpack/pm.webp create mode 100644 dashboard/public/assets/icons/flagpack/pn.webp create mode 100644 dashboard/public/assets/icons/flagpack/pr.webp create mode 100644 dashboard/public/assets/icons/flagpack/ps.webp create mode 100644 dashboard/public/assets/icons/flagpack/pt.webp create mode 100644 dashboard/public/assets/icons/flagpack/pw.webp create mode 100644 dashboard/public/assets/icons/flagpack/py.webp create mode 100644 dashboard/public/assets/icons/flagpack/qa.webp create mode 100644 dashboard/public/assets/icons/flagpack/re.webp create mode 100644 dashboard/public/assets/icons/flagpack/ro.webp create mode 100644 dashboard/public/assets/icons/flagpack/rs.webp create mode 100644 dashboard/public/assets/icons/flagpack/ru.webp create mode 100644 dashboard/public/assets/icons/flagpack/rw.webp create mode 100644 dashboard/public/assets/icons/flagpack/sa.webp create mode 100644 dashboard/public/assets/icons/flagpack/sb.webp create mode 100644 dashboard/public/assets/icons/flagpack/sc.webp create mode 100644 dashboard/public/assets/icons/flagpack/sd.webp create mode 100644 dashboard/public/assets/icons/flagpack/se.webp create mode 100644 dashboard/public/assets/icons/flagpack/sg.webp create mode 100644 dashboard/public/assets/icons/flagpack/sh.webp create mode 100644 dashboard/public/assets/icons/flagpack/si.webp create mode 100644 dashboard/public/assets/icons/flagpack/sj.webp create mode 100644 dashboard/public/assets/icons/flagpack/sk.webp create mode 100644 dashboard/public/assets/icons/flagpack/sl.webp create mode 100644 dashboard/public/assets/icons/flagpack/sm.webp create mode 100644 dashboard/public/assets/icons/flagpack/sn.webp create mode 100644 dashboard/public/assets/icons/flagpack/so.webp create mode 100644 dashboard/public/assets/icons/flagpack/sr.webp create mode 100644 dashboard/public/assets/icons/flagpack/ss.webp create mode 100644 dashboard/public/assets/icons/flagpack/st.webp create mode 100644 dashboard/public/assets/icons/flagpack/sv.webp create mode 100644 dashboard/public/assets/icons/flagpack/sx.webp create mode 100644 dashboard/public/assets/icons/flagpack/sy.webp create mode 100644 dashboard/public/assets/icons/flagpack/sz.webp create mode 100644 dashboard/public/assets/icons/flagpack/tc.webp create mode 100644 dashboard/public/assets/icons/flagpack/td.webp create mode 100644 dashboard/public/assets/icons/flagpack/tf.webp create mode 100644 dashboard/public/assets/icons/flagpack/tg.webp create mode 100644 dashboard/public/assets/icons/flagpack/th.webp create mode 100644 dashboard/public/assets/icons/flagpack/tj.webp create mode 100644 dashboard/public/assets/icons/flagpack/tk.webp create mode 100644 dashboard/public/assets/icons/flagpack/tl.webp create mode 100644 dashboard/public/assets/icons/flagpack/tm.webp create mode 100644 dashboard/public/assets/icons/flagpack/tn.webp create mode 100644 dashboard/public/assets/icons/flagpack/to.webp create mode 100644 dashboard/public/assets/icons/flagpack/tr.webp create mode 100644 dashboard/public/assets/icons/flagpack/tt.webp create mode 100644 dashboard/public/assets/icons/flagpack/tv.webp create mode 100644 dashboard/public/assets/icons/flagpack/tw.webp create mode 100644 dashboard/public/assets/icons/flagpack/tz.webp create mode 100644 dashboard/public/assets/icons/flagpack/ua.webp create mode 100644 dashboard/public/assets/icons/flagpack/ug.webp create mode 100644 dashboard/public/assets/icons/flagpack/um.webp create mode 100644 dashboard/public/assets/icons/flagpack/us.webp create mode 100644 dashboard/public/assets/icons/flagpack/uy.webp create mode 100644 dashboard/public/assets/icons/flagpack/uz.webp create mode 100644 dashboard/public/assets/icons/flagpack/va.webp create mode 100644 dashboard/public/assets/icons/flagpack/vc.webp create mode 100644 dashboard/public/assets/icons/flagpack/ve.webp create mode 100644 dashboard/public/assets/icons/flagpack/vg.webp create mode 100644 dashboard/public/assets/icons/flagpack/vi.webp create mode 100644 dashboard/public/assets/icons/flagpack/vn.webp create mode 100644 dashboard/public/assets/icons/flagpack/vu.webp create mode 100644 dashboard/public/assets/icons/flagpack/wf.webp create mode 100644 dashboard/public/assets/icons/flagpack/ws.webp create mode 100644 dashboard/public/assets/icons/flagpack/xk.webp create mode 100644 dashboard/public/assets/icons/flagpack/ye.webp create mode 100644 dashboard/public/assets/icons/flagpack/yt.webp create mode 100644 dashboard/public/assets/icons/flagpack/za.webp create mode 100644 dashboard/public/assets/icons/flagpack/zm.webp create mode 100644 dashboard/public/assets/icons/flagpack/zw.webp create mode 100644 dashboard/public/assets/icons/navbar/ic-analytics.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-banking.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-blank.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-blog.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-calendar.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-chat.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-course.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-dashboard.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-disabled.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-external.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-file.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-folder.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-invoice.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-label.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-lock.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-menu-item.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-nostr.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-parameter.svg create mode 100644 dashboard/public/assets/icons/navbar/ic-user.svg create mode 100644 dashboard/public/assets/icons/notification/ic-chat.svg create mode 100644 dashboard/public/assets/icons/notification/ic-delivery.svg create mode 100644 dashboard/public/assets/icons/notification/ic-mail.svg create mode 100644 dashboard/public/assets/icons/notification/ic-order.svg create mode 100644 dashboard/public/assets/icons/payments/success.png create mode 100644 dashboard/public/assets/icons/payments/verify.png create mode 100644 dashboard/public/assets/icons/platforms/ic-auth0.svg create mode 100644 dashboard/public/assets/icons/platforms/ic-jwt.svg create mode 100644 dashboard/public/assets/icons/platforms/ic-supabase.svg create mode 100644 dashboard/public/assets/icons/setting/ic-align-left.svg create mode 100644 dashboard/public/assets/icons/setting/ic-align-right.svg create mode 100644 dashboard/public/assets/icons/setting/ic-autofit-width.svg create mode 100644 dashboard/public/assets/icons/setting/ic-collapse.svg create mode 100644 dashboard/public/assets/icons/setting/ic-contrast-bold.svg create mode 100644 dashboard/public/assets/icons/setting/ic-contrast.svg create mode 100644 dashboard/public/assets/icons/setting/ic-exit-full-screen.svg create mode 100644 dashboard/public/assets/icons/setting/ic-font.svg create mode 100644 dashboard/public/assets/icons/setting/ic-full-screen.svg create mode 100644 dashboard/public/assets/icons/setting/ic-moon.svg create mode 100644 dashboard/public/assets/icons/setting/ic-sidebar-filled.svg create mode 100644 dashboard/public/assets/icons/setting/ic-sidebar-outline.svg create mode 100644 dashboard/public/assets/icons/setting/ic-sidebar.svg create mode 100644 dashboard/public/assets/icons/setting/ic-siderbar-duotone.svg create mode 100644 dashboard/public/assets/icons/setting/ic-sun.svg create mode 100644 dashboard/public/assets/icons/setting/ic_moon.svg create mode 100644 dashboard/public/assets/icons/setting/ic_setting.svg create mode 100644 dashboard/public/assets/icons/setting/ic_sun.svg create mode 100644 dashboard/public/assets/illustrations/characters/character-4.webp create mode 100644 dashboard/public/assets/illustrations/characters/character-6.webp create mode 100644 dashboard/public/assets/placeholder.svg create mode 100644 dashboard/public/assets/red-blur.png create mode 100644 dashboard/public/assets/transparent.png create mode 100644 dashboard/public/browserconfig.xml create mode 100644 dashboard/public/favicon.ico create mode 100644 dashboard/public/favicon/android-chrome-192x192.png create mode 100644 dashboard/public/favicon/android-chrome-512x512.png create mode 100644 dashboard/public/favicon/apple-touch-icon.png create mode 100644 dashboard/public/favicon/favicon-16x16.png create mode 100644 dashboard/public/favicon/favicon-32x32.png create mode 100644 dashboard/public/favicon/favicon.ico create mode 100644 dashboard/public/favicon/mstile-144x144.png create mode 100644 dashboard/public/favicon/mstile-150x150.png create mode 100644 dashboard/public/favicon/mstile-310x150.png create mode 100644 dashboard/public/favicon/mstile-310x310.png create mode 100644 dashboard/public/favicon/mstile-70x70.png create mode 100644 dashboard/public/favicon/safari-pinned-tab.svg create mode 100644 dashboard/public/logo/logo.png create mode 100644 dashboard/public/logo/logo.svg create mode 100644 dashboard/public/logo/logo_font.png create mode 100644 dashboard/public/logo/logo_font.svg create mode 100644 dashboard/public/logo/logo_font_negative.png create mode 100644 dashboard/public/logo/logo_font_negative.svg create mode 100644 dashboard/public/logo/logo_negative.png create mode 100644 dashboard/public/logo/logo_negative.svg create mode 100644 dashboard/public/logo/logo_single.png create mode 100644 dashboard/public/logo/logo_single.svg create mode 100644 dashboard/public/logo/logo_single_negative.png create mode 100644 dashboard/public/logo/logo_single_negative.svg create mode 100644 dashboard/public/logo/logo_square.png create mode 100644 dashboard/public/logo/logo_square.svg create mode 100644 dashboard/public/logo/logo_square_negative.png create mode 100644 dashboard/public/logo/logo_square_negative.svg create mode 100644 dashboard/public/logo/social.png create mode 100644 dashboard/public/robots.txt create mode 100644 dashboard/public/site.webmanifest create mode 100644 dashboard/src/actions/api-key.ts create mode 100644 dashboard/src/actions/invoices.ts create mode 100644 dashboard/src/actions/keys.ts create mode 100644 dashboard/src/actions/ln-addresses.ts create mode 100644 dashboard/src/actions/ln-node.ts create mode 100644 dashboard/src/actions/mempool-space.ts create mode 100644 dashboard/src/actions/payments.ts create mode 100644 dashboard/src/actions/user-wallet.ts create mode 100644 dashboard/src/actions/wallet.ts create mode 100644 dashboard/src/app/(index)/admin/api-keys/page.tsx create mode 100644 dashboard/src/app/(index)/admin/invoices/[id]/page.tsx create mode 100644 dashboard/src/app/(index)/admin/invoices/page.tsx create mode 100644 dashboard/src/app/(index)/admin/lightning-addresses/[id]/page.tsx create mode 100644 dashboard/src/app/(index)/admin/lightning-addresses/page.tsx create mode 100644 dashboard/src/app/(index)/admin/lightning-node/page.tsx create mode 100644 dashboard/src/app/(index)/admin/payments/[id]/page.tsx create mode 100644 dashboard/src/app/(index)/admin/payments/page.tsx create mode 100644 dashboard/src/app/(index)/admin/wallets/page.tsx create mode 100644 dashboard/src/app/(index)/layout.tsx create mode 100644 dashboard/src/app/(index)/loading.tsx create mode 100644 dashboard/src/app/(index)/page.tsx create mode 100644 dashboard/src/app/(index)/settings/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/contacts/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/invoices/[id]/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/invoices/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/lightning-address/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/nostr-address/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/payments/[id]/page.tsx create mode 100644 dashboard/src/app/(index)/wallet/payments/page.tsx create mode 100644 dashboard/src/app/layout.tsx create mode 100644 dashboard/src/app/loading.tsx create mode 100644 dashboard/src/app/login/callback/page.tsx create mode 100644 dashboard/src/app/login/layout.tsx create mode 100644 dashboard/src/app/login/page.tsx create mode 100644 dashboard/src/app/not-found.tsx create mode 100644 dashboard/src/app/reset-password/layout.tsx create mode 100644 dashboard/src/app/reset-password/page.tsx create mode 100644 dashboard/src/app/sign-up/layout.tsx create mode 100644 dashboard/src/app/sign-up/page.tsx create mode 100644 dashboard/src/app/update-password/layout.tsx create mode 100644 dashboard/src/app/update-password/page.tsx create mode 100644 dashboard/src/app/verify/layout.tsx create mode 100644 dashboard/src/app/verify/page.tsx create mode 100644 dashboard/src/assets/data/countries.ts create mode 100644 dashboard/src/assets/data/currencies.ts create mode 100644 dashboard/src/assets/data/index.ts create mode 100644 dashboard/src/assets/icons/email-inbox-icon.tsx create mode 100644 dashboard/src/assets/icons/index.ts create mode 100644 dashboard/src/assets/icons/new-password-icon.tsx create mode 100644 dashboard/src/assets/icons/password-icon.tsx create mode 100644 dashboard/src/assets/icons/sent-icon.tsx create mode 100644 dashboard/src/assets/illustrations/avatar-shape.tsx create mode 100644 dashboard/src/assets/illustrations/background-shape.tsx create mode 100644 dashboard/src/assets/illustrations/forbidden-illustration.tsx create mode 100644 dashboard/src/assets/illustrations/index.ts create mode 100644 dashboard/src/assets/illustrations/page-not-found-illustration.tsx create mode 100644 dashboard/src/assets/illustrations/upload-illustration.tsx create mode 100644 dashboard/src/auth/context/auth-context.tsx create mode 100644 dashboard/src/auth/context/auth0/auth-provider.tsx create mode 100644 dashboard/src/auth/context/auth0/index.ts create mode 100644 dashboard/src/auth/context/jwt/action.ts create mode 100644 dashboard/src/auth/context/jwt/auth-provider.tsx create mode 100644 dashboard/src/auth/context/jwt/constant.ts create mode 100644 dashboard/src/auth/context/jwt/index.ts create mode 100644 dashboard/src/auth/context/jwt/utils.ts create mode 100644 dashboard/src/auth/context/supabase/action.tsx create mode 100644 dashboard/src/auth/context/supabase/auth-provider.tsx create mode 100644 dashboard/src/auth/context/supabase/index.ts create mode 100644 dashboard/src/auth/guard/auth-guard.tsx create mode 100644 dashboard/src/auth/guard/guest-guard.tsx create mode 100644 dashboard/src/auth/guard/index.ts create mode 100644 dashboard/src/auth/guard/role-based-guard.tsx create mode 100644 dashboard/src/auth/hooks/index.ts create mode 100644 dashboard/src/auth/hooks/use-auth-context.ts create mode 100644 dashboard/src/auth/permissions.ts create mode 100644 dashboard/src/auth/types.ts create mode 100644 dashboard/src/components/analytic/index.ts create mode 100644 dashboard/src/components/analytic/item-analytic.tsx create mode 100644 dashboard/src/components/animate/animate-avatar.tsx create mode 100644 dashboard/src/components/animate/animate-border.tsx create mode 100644 dashboard/src/components/animate/animate-count-up.tsx create mode 100644 dashboard/src/components/animate/animate-logo.tsx create mode 100644 dashboard/src/components/animate/animate-text.tsx create mode 100644 dashboard/src/components/animate/back-to-top/back-to-top.tsx create mode 100644 dashboard/src/components/animate/back-to-top/index.ts create mode 100644 dashboard/src/components/animate/features.ts create mode 100644 dashboard/src/components/animate/index.ts create mode 100644 dashboard/src/components/animate/motion-container.tsx create mode 100644 dashboard/src/components/animate/motion-lazy.tsx create mode 100644 dashboard/src/components/animate/motion-viewport.tsx create mode 100644 dashboard/src/components/animate/scroll-progress/index.ts create mode 100644 dashboard/src/components/animate/scroll-progress/scroll-progress.tsx create mode 100644 dashboard/src/components/animate/scroll-progress/use-scroll-progress.ts create mode 100644 dashboard/src/components/animate/types.ts create mode 100644 dashboard/src/components/animate/variants/actions.ts create mode 100644 dashboard/src/components/animate/variants/background.ts create mode 100644 dashboard/src/components/animate/variants/bounce.ts create mode 100644 dashboard/src/components/animate/variants/container.ts create mode 100644 dashboard/src/components/animate/variants/fade.ts create mode 100644 dashboard/src/components/animate/variants/flip.ts create mode 100644 dashboard/src/components/animate/variants/index.ts create mode 100644 dashboard/src/components/animate/variants/path.ts create mode 100644 dashboard/src/components/animate/variants/rotate.ts create mode 100644 dashboard/src/components/animate/variants/scale.ts create mode 100644 dashboard/src/components/animate/variants/slide.ts create mode 100644 dashboard/src/components/animate/variants/transition.ts create mode 100644 dashboard/src/components/animate/variants/zoom.ts create mode 100644 dashboard/src/components/api-key/create-api-key-dialog.tsx create mode 100644 dashboard/src/components/api-key/create-api-key-form.tsx create mode 100644 dashboard/src/components/api-key/index.ts create mode 100644 dashboard/src/components/app/index.ts create mode 100644 dashboard/src/components/app/welcome.tsx create mode 100644 dashboard/src/components/bitcoin/index.ts create mode 100644 dashboard/src/components/bitcoin/sats-with-icon.tsx create mode 100644 dashboard/src/components/carousel/breakpoints.ts create mode 100644 dashboard/src/components/carousel/carousel.tsx create mode 100644 dashboard/src/components/carousel/classes.ts create mode 100644 dashboard/src/components/carousel/components/carousel-arrow-buttons.tsx create mode 100644 dashboard/src/components/carousel/components/carousel-dot-buttons.tsx create mode 100644 dashboard/src/components/carousel/components/carousel-progress-bar.tsx create mode 100644 dashboard/src/components/carousel/components/carousel-slide.tsx create mode 100644 dashboard/src/components/carousel/components/carousel-thumbs.tsx create mode 100644 dashboard/src/components/carousel/hooks/use-carousel-arrows.ts create mode 100644 dashboard/src/components/carousel/hooks/use-carousel-auto-play.ts create mode 100644 dashboard/src/components/carousel/hooks/use-carousel-auto-scroll.ts create mode 100644 dashboard/src/components/carousel/hooks/use-carousel-dots.ts create mode 100644 dashboard/src/components/carousel/hooks/use-carousel-parallax.ts create mode 100644 dashboard/src/components/carousel/hooks/use-carousel-progress.ts create mode 100644 dashboard/src/components/carousel/hooks/use-carousel.ts create mode 100644 dashboard/src/components/carousel/hooks/use-thumbs.ts create mode 100644 dashboard/src/components/carousel/index.ts create mode 100644 dashboard/src/components/carousel/types.ts create mode 100644 dashboard/src/components/chart/chart-legends.tsx create mode 100644 dashboard/src/components/chart/chart-loading.tsx create mode 100644 dashboard/src/components/chart/chart-select.tsx create mode 100644 dashboard/src/components/chart/chart.tsx create mode 100644 dashboard/src/components/chart/index.ts create mode 100644 dashboard/src/components/chart/styles.css create mode 100644 dashboard/src/components/chart/types.ts create mode 100644 dashboard/src/components/chart/use-chart.ts create mode 100644 dashboard/src/components/color-utils/color-picker.tsx create mode 100644 dashboard/src/components/color-utils/color-preview.tsx create mode 100644 dashboard/src/components/color-utils/index.ts create mode 100644 dashboard/src/components/color-utils/types.ts create mode 100644 dashboard/src/components/copy/copy-button.tsx create mode 100644 dashboard/src/components/copy/copy-menu-item.tsx create mode 100644 dashboard/src/components/copy/index.ts create mode 100644 dashboard/src/components/country-select/country-select.tsx create mode 100644 dashboard/src/components/country-select/index.ts create mode 100644 dashboard/src/components/country-select/utils.ts create mode 100644 dashboard/src/components/custom-breadcrumbs/breadcrumb-link.tsx create mode 100644 dashboard/src/components/custom-breadcrumbs/custom-breadcrumbs.tsx create mode 100644 dashboard/src/components/custom-breadcrumbs/index.ts create mode 100644 dashboard/src/components/custom-breadcrumbs/types.ts create mode 100644 dashboard/src/components/custom-date-range-picker/custom-date-range-picker.tsx create mode 100644 dashboard/src/components/custom-date-range-picker/index.ts create mode 100644 dashboard/src/components/custom-date-range-picker/types.ts create mode 100644 dashboard/src/components/custom-date-range-picker/use-date-range-picker.ts create mode 100644 dashboard/src/components/custom-dialog/confirm-dialog.tsx create mode 100644 dashboard/src/components/custom-dialog/index.ts create mode 100644 dashboard/src/components/custom-dialog/types.ts create mode 100644 dashboard/src/components/custom-popover/custom-popover.tsx create mode 100644 dashboard/src/components/custom-popover/index.ts create mode 100644 dashboard/src/components/custom-popover/styles.tsx create mode 100644 dashboard/src/components/custom-popover/types.ts create mode 100644 dashboard/src/components/custom-popover/use-popover.ts create mode 100644 dashboard/src/components/custom-popover/utils.ts create mode 100644 dashboard/src/components/custom-tabs/custom-tabs.tsx create mode 100644 dashboard/src/components/custom-tabs/index.ts create mode 100644 dashboard/src/components/delete/delete-button.tsx create mode 100644 dashboard/src/components/delete/index.ts create mode 100644 dashboard/src/components/empty-content/empty-content.tsx create mode 100644 dashboard/src/components/empty-content/index.ts create mode 100644 dashboard/src/components/error/error-view.tsx create mode 100644 dashboard/src/components/error/index.ts create mode 100644 dashboard/src/components/file-thumbnail/action-buttons.tsx create mode 100644 dashboard/src/components/file-thumbnail/classes.ts create mode 100644 dashboard/src/components/file-thumbnail/file-thumbnail.tsx create mode 100644 dashboard/src/components/file-thumbnail/index.ts create mode 100644 dashboard/src/components/file-thumbnail/types.ts create mode 100644 dashboard/src/components/file-thumbnail/utils.ts create mode 100644 dashboard/src/components/filters-result/filters-block.tsx create mode 100644 dashboard/src/components/filters-result/filters-result.tsx create mode 100644 dashboard/src/components/filters-result/index.ts create mode 100644 dashboard/src/components/hook-form/fields.tsx create mode 100644 dashboard/src/components/hook-form/form-provider.tsx create mode 100644 dashboard/src/components/hook-form/index.ts create mode 100644 dashboard/src/components/hook-form/rhf-autocomplete.tsx create mode 100644 dashboard/src/components/hook-form/rhf-checkbox.tsx create mode 100644 dashboard/src/components/hook-form/rhf-code.tsx create mode 100644 dashboard/src/components/hook-form/rhf-country-select.tsx create mode 100644 dashboard/src/components/hook-form/rhf-date-picker.tsx create mode 100644 dashboard/src/components/hook-form/rhf-phone-input.tsx create mode 100644 dashboard/src/components/hook-form/rhf-radio-group.tsx create mode 100644 dashboard/src/components/hook-form/rhf-rating.tsx create mode 100644 dashboard/src/components/hook-form/rhf-select.tsx create mode 100644 dashboard/src/components/hook-form/rhf-slider.tsx create mode 100644 dashboard/src/components/hook-form/rhf-switch.tsx create mode 100644 dashboard/src/components/hook-form/rhf-text-field.tsx create mode 100644 dashboard/src/components/hook-form/rhf-wallet-select.tsx create mode 100644 dashboard/src/components/hook-form/schema-helper.ts create mode 100644 dashboard/src/components/iconify/classes.ts create mode 100644 dashboard/src/components/iconify/flag-icon.tsx create mode 100644 dashboard/src/components/iconify/iconify.tsx create mode 100644 dashboard/src/components/iconify/index.ts create mode 100644 dashboard/src/components/iconify/social-icon.tsx create mode 100644 dashboard/src/components/iconify/types.ts create mode 100644 dashboard/src/components/image/classes.ts create mode 100644 dashboard/src/components/image/image.tsx create mode 100644 dashboard/src/components/image/index.ts create mode 100644 dashboard/src/components/image/styles.css create mode 100644 dashboard/src/components/image/types.ts create mode 100644 dashboard/src/components/image/utils.ts create mode 100644 dashboard/src/components/label/classes.ts create mode 100644 dashboard/src/components/label/index.ts create mode 100644 dashboard/src/components/label/label.tsx create mode 100644 dashboard/src/components/label/styles.ts create mode 100644 dashboard/src/components/label/types.ts create mode 100644 dashboard/src/components/ln-address/index.ts create mode 100644 dashboard/src/components/ln-address/register-ln-address-dialog.tsx create mode 100644 dashboard/src/components/ln-address/register-ln-address-form.tsx create mode 100644 dashboard/src/components/loading-screen/index.ts create mode 100644 dashboard/src/components/loading-screen/loading-screen.tsx create mode 100644 dashboard/src/components/loading-screen/splash-screen.tsx create mode 100644 dashboard/src/components/logo/classes.ts create mode 100644 dashboard/src/components/logo/index.ts create mode 100644 dashboard/src/components/logo/logo.tsx create mode 100644 dashboard/src/components/markdown/classes.ts create mode 100644 dashboard/src/components/markdown/code-highlight-block.css create mode 100644 dashboard/src/components/markdown/html-tags.ts create mode 100644 dashboard/src/components/markdown/html-to-markdown.ts create mode 100644 dashboard/src/components/markdown/index.ts create mode 100644 dashboard/src/components/markdown/markdown.tsx create mode 100644 dashboard/src/components/markdown/styles.ts create mode 100644 dashboard/src/components/markdown/types.ts create mode 100644 dashboard/src/components/nav-basic/classes.ts create mode 100644 dashboard/src/components/nav-basic/css-vars.ts create mode 100644 dashboard/src/components/nav-basic/desktop/index.ts create mode 100644 dashboard/src/components/nav-basic/desktop/nav-basic-desktop.tsx create mode 100644 dashboard/src/components/nav-basic/desktop/nav-item.tsx create mode 100644 dashboard/src/components/nav-basic/desktop/nav-list.tsx create mode 100644 dashboard/src/components/nav-basic/index.ts create mode 100644 dashboard/src/components/nav-basic/mobile/index.ts create mode 100644 dashboard/src/components/nav-basic/mobile/nav-basic-mobile.tsx create mode 100644 dashboard/src/components/nav-basic/mobile/nav-item.tsx create mode 100644 dashboard/src/components/nav-basic/mobile/nav-list.tsx create mode 100644 dashboard/src/components/nav-basic/types.ts create mode 100644 dashboard/src/components/nav-section/classes.ts create mode 100644 dashboard/src/components/nav-section/css-vars.ts create mode 100644 dashboard/src/components/nav-section/hooks.tsx create mode 100644 dashboard/src/components/nav-section/horizontal/index.ts create mode 100644 dashboard/src/components/nav-section/horizontal/nav-item.tsx create mode 100644 dashboard/src/components/nav-section/horizontal/nav-list.tsx create mode 100644 dashboard/src/components/nav-section/horizontal/nav-section-horizontal.tsx create mode 100644 dashboard/src/components/nav-section/index.ts create mode 100644 dashboard/src/components/nav-section/mini/index.ts create mode 100644 dashboard/src/components/nav-section/mini/nav-item.tsx create mode 100644 dashboard/src/components/nav-section/mini/nav-list.tsx create mode 100644 dashboard/src/components/nav-section/mini/nav-section-mini.tsx create mode 100644 dashboard/src/components/nav-section/styles.tsx create mode 100644 dashboard/src/components/nav-section/types.ts create mode 100644 dashboard/src/components/nav-section/vertical/index.ts create mode 100644 dashboard/src/components/nav-section/vertical/nav-item.tsx create mode 100644 dashboard/src/components/nav-section/vertical/nav-list.tsx create mode 100644 dashboard/src/components/nav-section/vertical/nav-section-vertical.tsx create mode 100644 dashboard/src/components/phone-input/index.ts create mode 100644 dashboard/src/components/phone-input/list.tsx create mode 100644 dashboard/src/components/phone-input/phone-input.tsx create mode 100644 dashboard/src/components/phone-input/types.ts create mode 100644 dashboard/src/components/phone-input/utils.ts create mode 100644 dashboard/src/components/progress-bar/index.ts create mode 100644 dashboard/src/components/progress-bar/progress-bar.tsx create mode 100644 dashboard/src/components/progress-bar/styles.css create mode 100644 dashboard/src/components/qr/index.ts create mode 100644 dashboard/src/components/qr/qr-dialog.tsx create mode 100644 dashboard/src/components/scrollbar/classes.ts create mode 100644 dashboard/src/components/scrollbar/index.ts create mode 100644 dashboard/src/components/scrollbar/scrollbar.tsx create mode 100644 dashboard/src/components/scrollbar/styles.css create mode 100644 dashboard/src/components/scrollbar/types.ts create mode 100644 dashboard/src/components/search-not-found/index.ts create mode 100644 dashboard/src/components/search-not-found/search-not-found.tsx create mode 100644 dashboard/src/components/settings/config-settings.ts create mode 100644 dashboard/src/components/settings/context/index.ts create mode 100644 dashboard/src/components/settings/context/settings-provider.tsx create mode 100644 dashboard/src/components/settings/context/use-settings-context.ts create mode 100644 dashboard/src/components/settings/drawer/base-option.tsx create mode 100644 dashboard/src/components/settings/drawer/font-options.tsx create mode 100644 dashboard/src/components/settings/drawer/fullscreen-button.tsx create mode 100644 dashboard/src/components/settings/drawer/index.ts create mode 100644 dashboard/src/components/settings/drawer/nav-options.tsx create mode 100644 dashboard/src/components/settings/drawer/presets-options.tsx create mode 100644 dashboard/src/components/settings/drawer/settings-drawer.tsx create mode 100644 dashboard/src/components/settings/drawer/styles.tsx create mode 100644 dashboard/src/components/settings/index.ts create mode 100644 dashboard/src/components/settings/server.ts create mode 100644 dashboard/src/components/settings/types.ts create mode 100644 dashboard/src/components/snackbar/classes.ts create mode 100644 dashboard/src/components/snackbar/index.ts create mode 100644 dashboard/src/components/snackbar/snackbar.tsx create mode 100644 dashboard/src/components/snackbar/styles.tsx create mode 100644 dashboard/src/components/svg-color/classes.ts create mode 100644 dashboard/src/components/svg-color/index.ts create mode 100644 dashboard/src/components/svg-color/svg-color.tsx create mode 100644 dashboard/src/components/svg-color/types.ts create mode 100644 dashboard/src/components/table/index.ts create mode 100644 dashboard/src/components/table/table-empty-rows.tsx create mode 100644 dashboard/src/components/table/table-head-custom.tsx create mode 100644 dashboard/src/components/table/table-no-data.tsx create mode 100644 dashboard/src/components/table/table-pagination-custom.tsx create mode 100644 dashboard/src/components/table/table-selected-action.tsx create mode 100644 dashboard/src/components/table/table-skeleton.tsx create mode 100644 dashboard/src/components/table/types.ts create mode 100644 dashboard/src/components/table/use-table.ts create mode 100644 dashboard/src/components/table/utils.ts create mode 100644 dashboard/src/components/transactions/clean-transactions-button.tsx create mode 100644 dashboard/src/components/transactions/confirm-payment-dialog.tsx create mode 100644 dashboard/src/components/transactions/index.ts create mode 100644 dashboard/src/components/transactions/new-invoice-card.tsx create mode 100644 dashboard/src/components/transactions/new-invoice-dialog.tsx create mode 100644 dashboard/src/components/transactions/new-invoice-form.tsx create mode 100644 dashboard/src/components/transactions/new-payment-card.tsx create mode 100644 dashboard/src/components/transactions/new-payment-dialog.tsx create mode 100644 dashboard/src/components/transactions/new-payment-form.tsx create mode 100644 dashboard/src/components/wallet/index.ts create mode 100644 dashboard/src/components/wallet/register-wallet-dialog.tsx create mode 100644 dashboard/src/components/wallet/register-wallet-form.tsx create mode 100644 dashboard/src/config-global.ts create mode 100644 dashboard/src/global.css create mode 100644 dashboard/src/hooks/use-boolean.ts create mode 100644 dashboard/src/hooks/use-client-rect.ts create mode 100644 dashboard/src/hooks/use-cookies.ts create mode 100644 dashboard/src/hooks/use-copy-to-clipboard.ts create mode 100644 dashboard/src/hooks/use-countdown.ts create mode 100644 dashboard/src/hooks/use-debounce.ts create mode 100644 dashboard/src/hooks/use-double-click.ts create mode 100644 dashboard/src/hooks/use-event-listener.ts create mode 100644 dashboard/src/hooks/use-local-storage.ts create mode 100644 dashboard/src/hooks/use-negative-logo.ts create mode 100644 dashboard/src/hooks/use-responsive.ts create mode 100644 dashboard/src/hooks/use-scroll-offset-top.ts create mode 100644 dashboard/src/hooks/use-set-state.ts create mode 100644 dashboard/src/hooks/use-tabs.ts create mode 100644 dashboard/src/layouts/auth-centered/index.ts create mode 100644 dashboard/src/layouts/auth-centered/layout.tsx create mode 100644 dashboard/src/layouts/auth-centered/main.tsx create mode 100644 dashboard/src/layouts/auth-split/index.ts create mode 100644 dashboard/src/layouts/auth-split/layout.tsx create mode 100644 dashboard/src/layouts/auth-split/main.tsx create mode 100644 dashboard/src/layouts/auth-split/section.tsx create mode 100644 dashboard/src/layouts/classes.ts create mode 100644 dashboard/src/layouts/components/account-button.tsx create mode 100644 dashboard/src/layouts/components/account-drawer.tsx create mode 100644 dashboard/src/layouts/components/account-popover.tsx create mode 100644 dashboard/src/layouts/components/contacts-popover.tsx create mode 100644 dashboard/src/layouts/components/currency-popover.tsx create mode 100644 dashboard/src/layouts/components/language-popover.tsx create mode 100644 dashboard/src/layouts/components/menu-button.tsx create mode 100644 dashboard/src/layouts/components/nav-toggle-button.tsx create mode 100644 dashboard/src/layouts/components/notifications-drawer/index.tsx create mode 100644 dashboard/src/layouts/components/notifications-drawer/notification-item.tsx create mode 100644 dashboard/src/layouts/components/searchbar/index.tsx create mode 100644 dashboard/src/layouts/components/searchbar/result-item.tsx create mode 100644 dashboard/src/layouts/components/searchbar/utils.ts create mode 100644 dashboard/src/layouts/components/settings-button.tsx create mode 100644 dashboard/src/layouts/components/sign-in-button.tsx create mode 100644 dashboard/src/layouts/components/sign-out-button.tsx create mode 100644 dashboard/src/layouts/components/workspaces-popover.tsx create mode 100644 dashboard/src/layouts/config-nav-account.tsx create mode 100644 dashboard/src/layouts/config-nav-dashboard.tsx create mode 100644 dashboard/src/layouts/config-nav-workspace.tsx create mode 100644 dashboard/src/layouts/core/header-base.tsx create mode 100644 dashboard/src/layouts/core/header-section.tsx create mode 100644 dashboard/src/layouts/core/layout-section.tsx create mode 100644 dashboard/src/layouts/dashboard/index.ts create mode 100644 dashboard/src/layouts/dashboard/layout.tsx create mode 100644 dashboard/src/layouts/dashboard/main.tsx create mode 100644 dashboard/src/layouts/dashboard/nav-horizontal.tsx create mode 100644 dashboard/src/layouts/dashboard/nav-mobile.tsx create mode 100644 dashboard/src/layouts/dashboard/nav-vertical.tsx create mode 100644 dashboard/src/layouts/simple/index.ts create mode 100644 dashboard/src/layouts/simple/layout.tsx create mode 100644 dashboard/src/layouts/simple/main.tsx create mode 100644 dashboard/src/lib/openapi.json create mode 100644 dashboard/src/lib/supabase.ts create mode 100644 dashboard/src/lib/swissknife/index.ts create mode 100644 dashboard/src/lib/swissknife/schemas.gen.ts create mode 100644 dashboard/src/lib/swissknife/services.gen.ts create mode 100644 dashboard/src/lib/swissknife/types.gen.ts create mode 100644 dashboard/src/locales/all-langs.ts create mode 100644 dashboard/src/locales/config-locales.ts create mode 100644 dashboard/src/locales/i18n-provider.tsx create mode 100644 dashboard/src/locales/index.ts create mode 100755 dashboard/src/locales/langs/en/common.json create mode 100755 dashboard/src/locales/langs/fr/common.json create mode 100644 dashboard/src/locales/localization-provider.tsx create mode 100644 dashboard/src/locales/server.ts create mode 100644 dashboard/src/locales/use-locales.ts create mode 100644 dashboard/src/locales/utils/number-format-locale.ts create mode 100644 dashboard/src/routes/components/index.ts create mode 100644 dashboard/src/routes/components/router-link.tsx create mode 100644 dashboard/src/routes/hooks/index.ts create mode 100644 dashboard/src/routes/hooks/use-active-link.ts create mode 100644 dashboard/src/routes/hooks/use-params.ts create mode 100644 dashboard/src/routes/hooks/use-pathname.ts create mode 100644 dashboard/src/routes/hooks/use-router.ts create mode 100644 dashboard/src/routes/hooks/use-search-params.ts create mode 100644 dashboard/src/routes/paths.ts create mode 100644 dashboard/src/routes/utils.ts create mode 100644 dashboard/src/sections/api-key/api-key-list.tsx create mode 100644 dashboard/src/sections/api-key/api-key-table-filters-result.tsx create mode 100644 dashboard/src/sections/api-key/api-key-table-row.tsx create mode 100644 dashboard/src/sections/api-key/api-key-table-toolbar.tsx create mode 100644 dashboard/src/sections/api-key/view/api-key-list-view.tsx create mode 100644 dashboard/src/sections/api-key/view/index.ts create mode 100644 dashboard/src/sections/auth/auth0/auth0-sign-in-view.tsx create mode 100644 dashboard/src/sections/auth/auth0/index.ts create mode 100644 dashboard/src/sections/auth/jwt/index.ts create mode 100644 dashboard/src/sections/auth/jwt/jwt-sign-in-view.tsx create mode 100644 dashboard/src/sections/auth/jwt/jwt-sign-up-view.tsx create mode 100644 dashboard/src/sections/auth/supabase/index.ts create mode 100644 dashboard/src/sections/auth/supabase/supabase-reset-password-view.tsx create mode 100644 dashboard/src/sections/auth/supabase/supabase-sign-in-view.tsx create mode 100644 dashboard/src/sections/auth/supabase/supabase-sign-up-view.tsx create mode 100644 dashboard/src/sections/auth/supabase/supabase-update-password-view.tsx create mode 100644 dashboard/src/sections/auth/supabase/supabase-verify-view.tsx create mode 100644 dashboard/src/sections/contact/contact-list.tsx create mode 100644 dashboard/src/sections/contact/view/contact-list-view.tsx create mode 100644 dashboard/src/sections/contact/view/index.ts create mode 100644 dashboard/src/sections/error/403-view.tsx create mode 100644 dashboard/src/sections/error/index.ts create mode 100644 dashboard/src/sections/error/not-found-view.tsx create mode 100644 dashboard/src/sections/ln-address/ln-address-details.tsx create mode 100644 dashboard/src/sections/ln-address/ln-address-list.tsx create mode 100644 dashboard/src/sections/ln-address/ln-address-table-filters-result.tsx create mode 100644 dashboard/src/sections/ln-address/ln-address-table-row.tsx create mode 100644 dashboard/src/sections/ln-address/ln-address-table-toolbar.tsx create mode 100644 dashboard/src/sections/ln-address/view/admin-ln-address-details-view.tsx create mode 100644 dashboard/src/sections/ln-address/view/index.ts create mode 100644 dashboard/src/sections/ln-address/view/ln-address-details-view.tsx create mode 100644 dashboard/src/sections/ln-address/view/ln-address-list-view.tsx create mode 100644 dashboard/src/sections/node/current-balance.tsx create mode 100644 dashboard/src/sections/node/ln-addresses.tsx create mode 100644 dashboard/src/sections/node/lsp-list.tsx create mode 100644 dashboard/src/sections/node/sign-message.tsx create mode 100644 dashboard/src/sections/node/verify-message.tsx create mode 100644 dashboard/src/sections/node/view/breez-node-view.tsx create mode 100644 dashboard/src/sections/node/view/index.ts create mode 100644 dashboard/src/sections/node/view/node-view.tsx create mode 100644 dashboard/src/sections/nostr/nostr-details.tsx create mode 100644 dashboard/src/sections/nostr/view/index.ts create mode 100644 dashboard/src/sections/nostr/view/nostr-details-view.tsx create mode 100644 dashboard/src/sections/settings/settings-api-key.tsx create mode 100644 dashboard/src/sections/settings/settings-ln-address.tsx create mode 100644 dashboard/src/sections/settings/view/index.ts create mode 100644 dashboard/src/sections/settings/view/settings-view.tsx create mode 100644 dashboard/src/sections/transaction/invoice-details.tsx create mode 100644 dashboard/src/sections/transaction/payment-details.tsx create mode 100644 dashboard/src/sections/transaction/recent-transactions.tsx create mode 100644 dashboard/src/sections/transaction/transaction-list.tsx create mode 100644 dashboard/src/sections/transaction/transaction-table-filters-result.tsx create mode 100644 dashboard/src/sections/transaction/transaction-table-row.tsx create mode 100644 dashboard/src/sections/transaction/transaction-table-toolbar.tsx create mode 100644 dashboard/src/sections/transaction/transaction-toolbar.tsx create mode 100644 dashboard/src/sections/transaction/view/admin-invoice-details-view.tsx create mode 100644 dashboard/src/sections/transaction/view/admin-invoice-list-view.tsx create mode 100644 dashboard/src/sections/transaction/view/admin-payment-details-view.tsx create mode 100644 dashboard/src/sections/transaction/view/admin-payment-list-view.tsx create mode 100644 dashboard/src/sections/transaction/view/index.ts create mode 100644 dashboard/src/sections/transaction/view/invoice-details-view.tsx create mode 100644 dashboard/src/sections/transaction/view/invoice-list-view.tsx create mode 100644 dashboard/src/sections/transaction/view/payment-details-view.tsx create mode 100644 dashboard/src/sections/transaction/view/payment-list-view.tsx create mode 100644 dashboard/src/sections/wallet/balance-overview.tsx create mode 100644 dashboard/src/sections/wallet/contacts.tsx create mode 100644 dashboard/src/sections/wallet/current-balance.tsx create mode 100644 dashboard/src/sections/wallet/view/index.ts create mode 100644 dashboard/src/sections/wallet/view/wallet-list-view.tsx create mode 100644 dashboard/src/sections/wallet/view/wallet-view.tsx create mode 100644 dashboard/src/sections/wallet/wallet-list.tsx create mode 100644 dashboard/src/sections/wallet/wallet-table-filters-result.tsx create mode 100644 dashboard/src/sections/wallet/wallet-table-row.tsx create mode 100644 dashboard/src/sections/wallet/wallet-table-toolbar.tsx create mode 100644 dashboard/src/theme/color-scheme-script.ts create mode 100644 dashboard/src/theme/core/colors.json create mode 100644 dashboard/src/theme/core/components/accordion.tsx create mode 100644 dashboard/src/theme/core/components/alert.tsx create mode 100644 dashboard/src/theme/core/components/appbar.tsx create mode 100644 dashboard/src/theme/core/components/autocomplete.tsx create mode 100644 dashboard/src/theme/core/components/avatar.tsx create mode 100644 dashboard/src/theme/core/components/backdrop.tsx create mode 100644 dashboard/src/theme/core/components/badge.tsx create mode 100644 dashboard/src/theme/core/components/breadcrumbs.tsx create mode 100644 dashboard/src/theme/core/components/button-fab.tsx create mode 100644 dashboard/src/theme/core/components/button-group.tsx create mode 100644 dashboard/src/theme/core/components/button-toggle.tsx create mode 100644 dashboard/src/theme/core/components/button.tsx create mode 100644 dashboard/src/theme/core/components/card.tsx create mode 100644 dashboard/src/theme/core/components/checkbox.tsx create mode 100644 dashboard/src/theme/core/components/chip.tsx create mode 100644 dashboard/src/theme/core/components/dialog.tsx create mode 100644 dashboard/src/theme/core/components/drawer.tsx create mode 100644 dashboard/src/theme/core/components/form.tsx create mode 100644 dashboard/src/theme/core/components/index.ts create mode 100644 dashboard/src/theme/core/components/link.tsx create mode 100644 dashboard/src/theme/core/components/list.tsx create mode 100644 dashboard/src/theme/core/components/menu.tsx create mode 100644 dashboard/src/theme/core/components/mui-x-data-grid.tsx create mode 100644 dashboard/src/theme/core/components/mui-x-date-picker.tsx create mode 100644 dashboard/src/theme/core/components/mui-x-tree-view.tsx create mode 100644 dashboard/src/theme/core/components/pagination.tsx create mode 100644 dashboard/src/theme/core/components/paper.tsx create mode 100644 dashboard/src/theme/core/components/popover.tsx create mode 100644 dashboard/src/theme/core/components/progress.tsx create mode 100644 dashboard/src/theme/core/components/radio.tsx create mode 100644 dashboard/src/theme/core/components/rating.tsx create mode 100644 dashboard/src/theme/core/components/select.tsx create mode 100644 dashboard/src/theme/core/components/skeleton.tsx create mode 100644 dashboard/src/theme/core/components/slider.tsx create mode 100644 dashboard/src/theme/core/components/stack.tsx create mode 100644 dashboard/src/theme/core/components/stepper.tsx create mode 100644 dashboard/src/theme/core/components/svg-icon.tsx create mode 100644 dashboard/src/theme/core/components/switch.tsx create mode 100644 dashboard/src/theme/core/components/table.tsx create mode 100644 dashboard/src/theme/core/components/tabs.tsx create mode 100644 dashboard/src/theme/core/components/textfield.tsx create mode 100644 dashboard/src/theme/core/components/timeline.tsx create mode 100644 dashboard/src/theme/core/components/tooltip.tsx create mode 100644 dashboard/src/theme/core/components/typography.tsx create mode 100644 dashboard/src/theme/core/custom-shadows.ts create mode 100644 dashboard/src/theme/core/index.ts create mode 100644 dashboard/src/theme/core/palette.ts create mode 100644 dashboard/src/theme/core/shadows.ts create mode 100644 dashboard/src/theme/core/typography.ts create mode 100644 dashboard/src/theme/create-theme.ts create mode 100644 dashboard/src/theme/overrides-theme.ts create mode 100644 dashboard/src/theme/styles/index.ts create mode 100644 dashboard/src/theme/styles/mixins.ts create mode 100644 dashboard/src/theme/styles/utils.ts create mode 100644 dashboard/src/theme/theme-provider.tsx create mode 100644 dashboard/src/theme/types.ts create mode 100644 dashboard/src/theme/with-settings/primary-color.json create mode 100644 dashboard/src/theme/with-settings/right-to-left.tsx create mode 100644 dashboard/src/theme/with-settings/update-theme.ts create mode 100644 dashboard/src/types/apikey.ts create mode 100644 dashboard/src/types/bitcoin.ts create mode 100644 dashboard/src/types/breez-node.ts create mode 100644 dashboard/src/types/common.ts create mode 100644 dashboard/src/types/currency.ts create mode 100644 dashboard/src/types/light-bolt11-decoder.d.ts create mode 100644 dashboard/src/types/ln-address.ts create mode 100644 dashboard/src/types/transaction.ts create mode 100644 dashboard/src/types/wallet.ts create mode 100644 dashboard/src/utils/ajv.ts create mode 100644 dashboard/src/utils/change-case.ts create mode 100644 dashboard/src/utils/errors.ts create mode 100644 dashboard/src/utils/fiat.ts create mode 100644 dashboard/src/utils/format-number.ts create mode 100644 dashboard/src/utils/format-string.ts create mode 100644 dashboard/src/utils/format-time.ts create mode 100644 dashboard/src/utils/helper.ts create mode 100644 dashboard/src/utils/lnurl.ts create mode 100644 dashboard/src/utils/nostr.ts create mode 100644 dashboard/src/utils/storage-available.ts create mode 100644 dashboard/src/utils/transactions.ts create mode 100644 dashboard/src/utils/with-loading-props.tsx create mode 100644 dashboard/tsconfig.json create mode 100644 dashboard/yarn.lock diff --git a/.DS_Store b/.DS_Store index d2f6183050a8d764f84ac61ed2aa98e4989e46b8..ae355dc1ebc995f2ee3d2b5d1f256c8516c8f109 100644 GIT binary patch delta 29 lcmZp1XmOa}UDU^hRb;$|KJJC@B}JbRfpvrGJC2LO!O2`2ym delta 161 zcmZp1XmOa}aFU^hRb>Si7RJC=F|1_m~U5{5*EB8GH^RECnAbi?4}{M-VdIOF?= xG856|bMswXl5+BsfZ`knk4#x2^ZlqJrkWIjY6>#I_HckL`n=`A=8Gc6+yI^bEgAp- diff --git a/.env.example b/.env.example index e2c1fe6e..ee78c92c 100644 --- a/.env.example +++ b/.env.example @@ -1,10 +1,10 @@ RUN_MODE=development # Database migrations -DATABASE_URL="postgres://postgres:postgres@localhost/numeraire" +DATABASE_URL="HERE_YOUR_DATABASE_URL" # Database -SWISSKNIFE_DATABASE__URL="postgres://postgres:postgres@localhost/numeraire" +SWISSKNIFE_DATABASE__URL="HERE_YOUR_DATABASE_URL" # Breez SWISSKNIFE_BREEZ_CONFIG__API_KEY="HERE_YOUR_API_KEY" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 626b4fac..ea86ee20 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,19 +31,32 @@ jobs: - run: make lint - run: make fmt - test: + lint-dashboard: runs-on: ubuntu-latest + defaults: + run: + working-directory: ./dashboard + steps: - - uses: actions/checkout@v4 - - uses: actions/cache@v3 + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up Node.js + uses: actions/setup-node@v4 with: - path: | - ~/.cargo/bin/ - ~/.cargo/registry/index/ - ~/.cargo/registry/cache/ - ~/.cargo/git/db/ - target/ - key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - - run: sudo apt-get update && sudo apt-get install -y protobuf-compiler - - uses: dtolnay/rust-toolchain@stable - - run: cargo test --all-features + node-version: "20" + + - name: Enable Corepack + run: corepack enable + + - name: Install dependencies + run: yarn install + + - name: Run ESLint + run: yarn lint + + - name: Run Prettier + run: yarn fm:check + + - name: Run Typecheck + run: yarn ts diff --git a/dashboard/.dockerignore b/dashboard/.dockerignore new file mode 100644 index 00000000..de7d587e --- /dev/null +++ b/dashboard/.dockerignore @@ -0,0 +1,60 @@ +# Node modules directory +node_modules +node_modules/ + +# Dependency directories +bower_components +jspm_packages + +# Log files +*.log +npm-debug.log* + +# Next.js build output +.next +out +dist + +# Production build +/build + +# Miscellaneous +.DS_Store +*.pem +*.pid +*.seed +*.pid.lock + +# dotenv environment variables file +.env.local +.env.development.local +.env.test.local +.env.production.local + +# Editor directories and files +.vscode +.idea +*.suo +*.ntvs* +*.njsproj +*.sln + +# OS-specific files +Thumbs.db +Desktop.ini + +# Coverage directory used by tools like istanbul +coverage +coverage/ + +# Git directories and files +.git +.gitignore +.gitattributes + +# Docker files +Dockerfile +docker-compose.yml + +# Build scripts and configurations +scripts/ \ No newline at end of file diff --git a/dashboard/.editorconfig b/dashboard/.editorconfig new file mode 100644 index 00000000..181aeebb --- /dev/null +++ b/dashboard/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +indent_size = 2 +end_of_line = lf +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true diff --git a/dashboard/.env.development b/dashboard/.env.development new file mode 100755 index 00000000..a17a78f1 --- /dev/null +++ b/dashboard/.env.development @@ -0,0 +1,3 @@ +LN_PROVIDER=cln +NEXT_PUBLIC_SERVER_URL=http://localhost:3000 +NEXT_PUBLIC_AUTH_METHOD=jwt diff --git a/dashboard/.env.example b/dashboard/.env.example new file mode 100755 index 00000000..14cf53fe --- /dev/null +++ b/dashboard/.env.example @@ -0,0 +1,18 @@ +LN_PROVIDER=breez + +# App +NEXT_PUBLIC_BASE_PATH= +NEXT_PUBLIC_SERVER_URL= +NEXT_PUBLIC_ASSET_URL= +NEXT_PUBLIC_AUTH_METHOD= +NEXT_PUBLIC_SITENAME= + +# Auth0 +NEXT_PUBLIC_AUTH0_DOMAIN= +NEXT_PUBLIC_AUTH0_CLIENT_ID= +NEXT_PUBLIC_AUTH0_CALLBACK_URL= +NEXT_PUBLIC_AUTH0_AUDIENCE= + +# Supabase +NEXT_PUBLIC_SUPABASE_URL= +NEXT_PUBLIC_SUPABASE_ANON_KEY= diff --git a/dashboard/.env.production b/dashboard/.env.production new file mode 100755 index 00000000..b015dcca --- /dev/null +++ b/dashboard/.env.production @@ -0,0 +1,12 @@ +LN_PROVIDER=cln + +# App +NEXT_PUBLIC_SERVER_URL=https://api.numeraire.tech +NEXT_PUBLIC_AUTH_METHOD=auth0 +NEXT_PUBLIC_SITENAME="Numeraire Dashboard" + +# Auth0 +NEXT_PUBLIC_AUTH0_DOMAIN=auth.numeraire.tech +NEXT_PUBLIC_AUTH0_CLIENT_ID=7Jh0DPs8JoAHNrdTbIYKVDty7YNPWbSM +NEXT_PUBLIC_AUTH0_CALLBACK_URL=https://app.numeraire.tech/login/callback +NEXT_PUBLIC_AUTH0_AUDIENCE=https://swissknife.numeraire.tech/api/v1 diff --git a/dashboard/.eslintignore b/dashboard/.eslintignore new file mode 100644 index 00000000..d0cc6ac4 --- /dev/null +++ b/dashboard/.eslintignore @@ -0,0 +1,48 @@ +# Build directories + +build/_ +dist/_ +public/_ +\*\*/out/_ +**/.next/\* +**/node_modules/\* + +# src/ + +**/reportWebVitals.\* +**/service-worker._ +\*\*/serviceWorkerRegistration._ \*_/setupTests._ + +# eslintrc + +\*_/.eslintrc._ + +# prettier + +**/.prettier.\* +**/prettier.config.\* + +# next + +\*_/next.config._ + +# vite + +\*_/vite.config._ + +# tailwind + +**/postcss.config.\* +**/tailwind.config.\* + +# craco + +\*_/craco.config._ + +# misc + +\*\*/jsconfig.json + +# openapi + +src/lib/swissknife/types.gen.ts diff --git a/dashboard/.eslintrc.js b/dashboard/.eslintrc.js new file mode 100644 index 00000000..270ed58b --- /dev/null +++ b/dashboard/.eslintrc.js @@ -0,0 +1,109 @@ +/** + * @type {import('eslint').ESLint.ConfigData} + */ +module.exports = { + root: true, + env: { browser: true, es2020: true }, + plugins: ['perfectionist', 'unused-imports', '@typescript-eslint', 'prettier'], + extends: ['airbnb', 'airbnb-typescript', 'airbnb/hooks', 'prettier'], + parserOptions: { + sourceType: 'module', + ecmaVersion: 'latest', + ecmaFeatures: { jsx: true }, + project: './tsconfig.json', + }, + settings: { + 'import/resolver': { + typescript: { + project: './tsconfig.json', + }, + }, + }, + /** + * 0 ~ 'off' + * 1 ~ 'warn' + * 2 ~ 'error' + */ + rules: { + // general + 'no-alert': 0, + camelcase: 0, + 'no-console': 0, + 'no-unused-vars': 0, + 'no-nested-ternary': 0, + 'no-param-reassign': 0, + 'no-underscore-dangle': 0, + 'no-restricted-exports': 0, + 'no-promise-executor-return': 0, + 'import/prefer-default-export': 0, + 'prefer-destructuring': [1, { object: true, array: false }], + // typescript + '@typescript-eslint/naming-convention': 0, + '@typescript-eslint/no-use-before-define': 0, + '@typescript-eslint/consistent-type-exports': 1, + '@typescript-eslint/consistent-type-imports': 1, + '@typescript-eslint/no-unused-vars': [1, { args: 'none' }], + // react + 'react/no-children-prop': 0, + 'react/react-in-jsx-scope': 0, + 'react/no-array-index-key': 0, + 'react/require-default-props': 0, + 'react/jsx-props-no-spreading': 0, + 'react/function-component-definition': 0, + 'react/jsx-no-useless-fragment': [1, { allowExpressions: true }], + 'react/no-unstable-nested-components': [1, { allowAsProps: true }], + 'react/jsx-no-duplicate-props': [1, { ignoreCase: false }], + // jsx-a11y + 'jsx-a11y/anchor-is-valid': 0, + 'jsx-a11y/control-has-associated-label': 0, + // unused imports + 'unused-imports/no-unused-imports': 1, + 'unused-imports/no-unused-vars': [ + 0, + { vars: 'all', varsIgnorePattern: '^_', args: 'after-used', argsIgnorePattern: '^_' }, + ], + // perfectionist + 'perfectionist/sort-exports': [1, { order: 'asc', type: 'line-length' }], + 'perfectionist/sort-named-imports': [1, { order: 'asc', type: 'line-length' }], + 'perfectionist/sort-named-exports': [1, { order: 'asc', type: 'line-length' }], + 'perfectionist/sort-imports': [ + 1, + { + order: 'asc', + type: 'line-length', + 'newlines-between': 'always', + groups: [ + 'style', + 'type', + ['builtin', 'external'], + 'custom-mui', + 'custom-routes', + 'custom-hooks', + 'custom-utils', + 'internal', + 'custom-components', + 'custom-sections', + 'custom-auth', + 'custom-types', + ['parent', 'sibling', 'index'], + ['parent-type', 'sibling-type', 'index-type'], + 'object', + 'unknown', + ], + 'custom-groups': { + value: { + ['custom-mui']: '@mui/**', + ['custom-auth']: 'src/auth/**', + ['custom-hooks']: 'src/hooks/**', + ['custom-utils']: 'src/utils/**', + ['custom-types']: 'src/types/**', + ['custom-routes']: 'src/routes/**', + ['custom-sections']: 'src/sections/**', + ['custom-components']: 'src/components/**', + }, + }, + 'internal-pattern': ['src/**'], + }, + ], + }, +}; diff --git a/dashboard/.gitattributes b/dashboard/.gitattributes new file mode 100644 index 00000000..af3ad128 --- /dev/null +++ b/dashboard/.gitattributes @@ -0,0 +1,4 @@ +/.yarn/** linguist-vendored +/.yarn/releases/* binary +/.yarn/plugins/**/* binary +/.pnp.* binary linguist-generated diff --git a/dashboard/.gitignore b/dashboard/.gitignore new file mode 100644 index 00000000..a177fa8b --- /dev/null +++ b/dashboard/.gitignore @@ -0,0 +1,38 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# dependencies +node_modules +.pnp +.pnp.js + +# testing +coverage + +# production +.next +.swc +_static +out +dist +build + +# environment variables +.env*.local + +# misc +.DS_Store +.vercel +.netlify +.vscode +.eslintcache +.unimportedrc.json +tsconfig.tsbuildinfo + +# Exclude PWA service worker and workbox files +public/sw.js +public/workbox-*.js \ No newline at end of file diff --git a/dashboard/.prettierignore b/dashboard/.prettierignore new file mode 100644 index 00000000..34d65be4 --- /dev/null +++ b/dashboard/.prettierignore @@ -0,0 +1,11 @@ +# Build directories +build/* +dist/* +public/* +**/out/* +**/.next/* +**/node_modules/* + +yarn.lock +package-lock.json +jsconfig.json diff --git a/dashboard/.yarn/install-state.gz b/dashboard/.yarn/install-state.gz new file mode 100644 index 0000000000000000000000000000000000000000..7daa23324a67f59dc9cbad67afb57e8b807c8156 GIT binary patch literal 1146721 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�To;DKrR*Tm&TRu;P&ootAv-QUifc&$_$nUP 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%0A)E#zgR$zk(0~1gGB`G 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 BJHy@y0LVGpRY2VyHiQ9lNNC5k%ef4|igw0W{ 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%0DZTF*B?RzCk0~aB82Co9*(^CbaGnKfXUBo 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%0AwPfm!})rzaQy7$dvvv7o);D^saq4<7%?4n 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ÿ%ZER{$$QbI zM=#!O65@+k4`aV&n76nk^8apUsY)H^h;amxSA0>W7))%OZ$ON5e3nVZ- z^NPZ{3U9;7(vInxyWEbUbB5Kv2-|tp>^W|Ksoz*U_|dEPdO+^u)u#09Lvv7-cc3SF zPA;8>8+KNB84S<13jRds#;ck@93*|rOS+C~{4P2aIW`CtnL04K)Gke|8ym(g0N;S+ z$CbJxaw5C?D{9s^^;3QH;(hh~>z$VgU`;w`tl1kZ4;G3%7rbiY3PSm5rxSJzN~Z{3 zl1{v6kd^WPR}i&IorljZ?bE2w4hbUuK?y^2Ypeh#5Qq#wgjx7);qV*#sXlu3UTbbX zsXPVVZ`nMqo3zaND&e-Ej!;&3t+nZqhtA#yAH?^bl=E2l@1Z;?UQ? ze=2Q&fdRL~ftBex5cVNzh$Ya0L+x9Rc|UsXUdIbRkz}clS_>{;3^9r76`}A0bhUvA zC+f*om2F6s*Ex)vwRP0uY5-=nw+rNeq^D z*%<$g1{p%5ohV$&g0qd9lmSPQ%1G3oT52#R6q?Hg*}Co zxE@t)EIMH#4~2jd6?nCUID*pIn}=TnFfGy&oU0I1QXUB^!!f-;6uxD24E)I0c?!JQ+A;PknHandsCVskq7$vZcPv7{f#@E2p@G_ zI@-ihCv&=D+*=4DNScPl1=IWNq40_!aA3+bc^NiV43Te}EEp!!-GMsnlzQFo81agfMLkxj)NcWf$28bA_7;b1>% z?cHYEm<|iiMMbEM1A*tj0pcceve!PHtpWANy%g7=gEQ6cg*SQ51Dj2vB&;aUzB=lz z%J)z4Lsj0RD?NJkeljNYfBf%%ePu=e`hWZDA5%(Ur+85s-qAAlWv=4_U>9i*<6a=4 z1IyOBVVGgM3ru|tlCL#}oD+}-Aw_lI-D7~wJCt`3G$wkA3>3Z`v$dv9>dQuVY|Go{ z%hPo8*dEaF;L3+47T66yHulBPRsufMB|5b#gAqF=AuDK?xRu1Xabm=&$!y39!2Y=Y!7Qqnj1=2%Pfz+~{ zRp=v6Bxc3XkgMA49rX#gd40N<=ky?0f)<8qZlCF2ynMIbfB5=u_R*{NHD3{3ja+i^ zNlcE2t9j+)Dvfs|}AY_uJn1Z~5>bcNbS9w^BSy?j7$OV1@+=A=ku zx~vW&B@DB&29s{#^qRm{s+Z0wW}4_zE>e`Oyu`#Cx43;1|JiR};-0Ji(X00PY5q$* zP5M%6sEL{zrty-ZnvhQbgm%N{JJ%(lZn!-&28yT_9H-UF@WWBQI6%A|v-A5h6>^kd zT)H7L)LQygDA=69xOGUyYgv;rK%vfUTO7uceGcv_2%{jBpF6YGvWDOvP{>Fmt8%1XV{yY}OwpGqCR~-$Qxk?N>tQLq5l2~q$0A|~pSb>+`<@RCz`sMrg z&u>4})7{zQN3Y%OKn;Dm$WYHl(Wz75uh~1T$}pPZPHTfCG%)LnB#>^;JX8mtHmw=O z7E6Fc6t6-J58?-f;emYzI{ga+wPOS-CEfEnndjnad|*9(1&y`l2e_I+%F$0DvW?f# z%$5yvj6SR(vkh})`L-194p%m=@|C)Pch*tM(ZHw;MCrih2bmvYUXp_(OkCO`@+Mp4 z#Avwxe!iFfhhKg8pV9P?E@DyaR(62zw4g(lM z9onJWF{ScX&sG<&Q*i)h#(xu@QGlx<#%^QOL!D zsHtFH7h_}zp!=i%2d;O>mp7}h((FCZdN6=#nP=GmoOY05@o_f4PNx%TO^yDt5NSJS`C2Ic@5UoK&c3)o9D^x6p{yO9&Z)EV<^}xEet-AH``|VE z{22e=|L%9s??3#o-u$n!$*Xa5LnJ3Xq#F#*vrlDfy@SsW*6wbOH$lq4`vnaJS&DwH z#$0tUoWC}S?|t@ZZPXCKY0rRos~Up?VBYHZ?|IIa1lHT%d?pm==fVdbVD~utl2*jb zh9=XMa6Vxxfx+fum}Mf@qXBnVM+;6tghk;A^6FSgM3N)cxv&~y4w$y|fE-bh`yPy> z&(zC%k(!_j-wu610VE5CT&TE$+CIH|+dS9=7%s~d7(mt4Cs>76tP_q^Hu6Tm6XV1r z)PfEwe+LfLGcW~1@ZM!QCcgX_=zSQ0#2k9k1l;y!Tm4Tze18C!j`#0=|B~-tK;C;g z_eLxqy^f!^+W+%qtF=H);Bt(E<6v#WEkCVF8WgLl2}-`owyppd$p)-ky^R$VtKclZ zqN3cuTJ33Y4;lUl=0)2u!89lXt_8E0J^3iUhk+Q%-+Vc3e5`_>8OIWsBk+!(O__{z ze6`(dB>34YXY|4+8MkFb5&bOqKa;HEA`^CyqCzEiNl>qXQ1>Ge>gZO6zOZCLXkCHg z(b(w?mFU~+z_(Ijd-Srs-dM)ck~rv$lSxB5<|ua-2_=$F0Q`^Q#&z0-$4pd|+%QcF z(pMX62nD>>s;yD49 z56jqL2q`W^5s{aK&Zm30tM4te!UEDy@LX``^De#mv>4jybhsrB>RU6G$!rcQ9&KP4 z+>v!JJDb2z;F$D^FL@&BWWsz~2V-V^PWU>?W)Y^%aH3x}AdWBZXOaMB4b&uUbqAMq zgxAF0lD)6ol{NUS_nExOnUTcCJg0R4{T8^_Ek>-NKOSRaMZWp8z5ear=bP{I{nK~v z&JS<$>BIZ=_NCsv|L!hz^1VT*U>Q0O0@_P>I0;|iw2>yX$82%512^A&Fqir0IU<>em49d_owSU@i<8RqM-G+xl z=dosM#ldGH33;@$%!%+E8XDD2=UT{~6M5^*HcY_w02>Te!wF76vCufz#LdwSzmLmW z&C&wL;x%O;osXHL#m6y0qp$2n0#R+iV$ktSoDKja_4K()B|JvRBg#I>H}bJUo7!CB=aBs?B#dAdH=a; zb#1?=@89Q3-pl_#dI>-8vj6+bE*oRxL=|355=J}pJLQbs5%46Zi)n=7JpN~)LYp;h zp0&#A^ffqnZf^53!gl}**V?1e)_zp?NLxh+PU1qpCy=^YTEHBkxO45YAK_7u=n?a> zV{Kp@#bIX(7!Y;zZp||*uk*nnf|sM)@#z&)JJE^RPK*vL8Dh6n!QGa%`k1(U;yOcH zYRs6s8%X@A{I=s5@{*HO!+o2>_AD|7K_0<9CLGr z8{;5qOfhH2bha@#T7o3@%KY)?``ycT2sqdCy|3n@ z7w`2~^B1wZE;iZ60>RE+E8xO5r8fJ7SCufcg$|VI>O2H#fGN2O#mLoAL}U1uspe`# z-G`&B1{1IVbA6zM#90Hu033VR2Beh7;B%Ipi5aZk9X-!E25iH{o#nVS)T*>=qgmr1 zH>iTT(4?9jp_CJYkSGR@!Ao^A2Ac5G@7<_wTZ~%{_u$?@0+F(@Bo>e)sA{uQ;H2vd zL02%`7G^bMHjLPSsbs6*k3+Iq0i{>j+BhJEKqd|SW7aXaRtsz0QH{(6@Hwb7%f`Kp z_n*JE@$$RxKm742|A4dH%k#T?h44o&?=OD;LC>nhvd9;LR>IjQG|iM3qkr0L#hD#G zG1Wj*5pemvGHb`i)vLFGDeOLc%u_6;9Ye1U<}|y(Xvwffw(VgH45OV+EpRTleevby z99NyxU85b%-tIqaHz#>p2vV`J&R)Q!J~E5JmSC-)>ard-5_5b zfVx*7gwItj_^!cb#NZe(4E5i#|Gs~-_RX8`>38eR4|fg64_@A1{Qk>>+Okcsajkb< z2lfj5#2|r&?HTxnqZ6!S7HJJ9*%Gi~8<#^vu8dys>TC8%wOX4a*3_0@T^X?mOtY=} zIgQeXI*z6x+h4&5#C31n+h-E|1+?(_mB4j8TIZoakq(p*G~|4&1W!`@(@wPEh$2QJ z^|$BJTCVE6cJ%Cd>1!~0H!RG0-y7pjxCZBjv!pBk)5pD+-~Hz4{PFGj?s-3bc>eI_ z-mZJ}qWUR3n|e^6DNXX3a?{4dF0Mz}hG40kbDFiPUjy;43=)QFn@gW!y9iB{aW#Q$`Q&}oHHP}A z!z9EFe{NM13q%^h@1xjz7HA?@Tel^MrdQaO*o(SuH|kt>zq+q? zU4Hj;p1;et_|)F3&pmokfAPC+A>1*L2_7v^A^?St+m`=`nsiua^emGeSqw~PI~24x+7O$YH5`U&`|y;V zq1PNC0wpn(PTt#f|LG^Y?n^oN>3y#K;py%A@cg^PX1oUjc<}1}Vz=Mt!d+X_oyP=J zXiINiQnHvCL;8EnmbUSi+);oZbQ6fw;7^clDxqWB5lURU+R;capuI<(T^+KCgRwJ= zA)yiyr_a51Z&j#qy(WmL!Z#undvjZDL4{h19`t0XpmQ4Un(TWubqcSGg5UEFH6>@gNbyGGpo)c(h>Y(KpI_Pg)CfA{t) z(3l4=?JsukeR=h{R_oD^!MU7*zmxhH1V8RY1Qo7JNghimL3#i}r_Jdh(-fD=oE4#5 z{ov5tK;I#d^9j;3fJmEcW^P?bBf-Jqg-QqLxwlolc{+ifK&vL?>3Kj~^VFh&J-7+;1KydnZEcf(v^&x2$CM2z!p zFYG^m<*m2hy?yzx-hOz>H~C$@{c!Kw`{?z3-5cxTU>#~@tD&`OkM06G$HquTt<@FE zMF0crOl^B@37fR0mmfz8)LUSP(f66F;`Bw(X=t@8YiJX9pfUZR2)poV#>r@|S$gD4 zZ|qB9*##%wld>i^fEbOqD7 zXJed~0(`@o^Jt!yIuzvru&((OoNC7q7o*t|94iux+xROnv#%<#rCP|3AumX4L1(*B z`%;~;RmR@;u>+}&h<@oAG?Z@0SypvSJ^FL#@f|E+x*VGyroYSRn9_eAepFtey*A@j-7md&+V z2VFv|7i#V`oM$cpkWyf)ShmJ)H74+`>D4gW>&{JOi%{_4{KteWI727)+d_&8>|HaD<6=7Xkp=byiNnofZJ+iIXyEE97kW67WRt z;NoH?X${=uxGo%xEkp!*&ppR%)jO$!kA0#j6@tcl*M?tzI=TJ!WO`GfQ=Y9v8Td zH8gC1%b(1ON~_{8N7jH*Wgx;ZzA7p7>SAhQAlI8{m<=yOI-HT!(Ag5kqXAUfnz?)p zDorIMAs`0TJ$YAPa&B~n)*%S>;0D9u31IDNt~nc@oI^&QYP~Pi>*ij^$>iP+`|}^` zaPRK586LcXzxXYN68`lL@9L|XKo2y?jwo}-M66z-?Upev9&4gMDWF@yx=6ITqvwRl z%GjFAdW*!o%;XbS_?G&nZnL(*7L~Eat|H|4C|>Ebu*{j@7x0?2`t~!yfoPVDP>{uD z6hWPZ%{&|A8(WU!7JsCYi+V3iqaRlvy4+QDk$Kt! z;>8mympWbblV~-&VL{2#+eSrEoT)c)b>NB^skO}Gt@X~XEm2wWO ze2e%9FZjKex6zD{w*}oIV_mvF=dfTe6hPS~KFSQ~MfzTbpS+x|aCM>%+ZeY&AV>); z%GFR+!JEO`zPlIsr+e{b)q4N@Y2(#%zBy0NZ=XLruQ$*CnD3uH{sZngb053X-@s-B zs|qnRfZ9C9S)=)>Gckl@)^s*&=bY76X@nXSs1ag)af{qz825=8-ks@fs{!LUlnv!4 z9MPCIDCwxC4oc^X3dP)weYZPi3`60$gE#h&?^t`}O?xK2rP9%l$3v$UQK9qBR7e!xhjA(rmEMoz{FRY^X*iyd6K^PG>9VE9vW) zbVlQPpy9P^jX0I!78U_Z@H(}!!SNF9Acz5X_ZEi*X^J5WA)wZDN4*@ljh>q=hY z<$`zA*-|8m0NvOw*X?wZCX*&Q)_kI&tv6;Bu)Pp#5BOACX`NQl4`YB2%p0I66Y(LVk3!^llMo8L)h@MIG%Ls9tI!F- zx6hh^W4IyW)yl;-_~6(pf~F1AqS!8wbO*9tWFj=HZ0VkQ*fR z>#89t&5P)Vv5wJj0@E&WtRzLCBc9hV3`TZVcIA_!Lu5TPmCMiluE_uVxx(|uw;$FY zo}Rz^{@wczPwV9+-+%Z@;Of!K`U`$FejbQKm;bDl2UYhBXpUvufw?ica<&yJ=r3qE z%m&l(5N!==LP?DA1f00f-lLQ<7X~&jV=@&CUPaL`JyW0qH10q&^;J%bbmZ;MquiLd z-Z&MZD>aRpuS@K^X^aqvN&40?VozLV43f`nphC@sS)w4asRjQ*bActn7mQ|6AdApS zkX>x7CcB5_6zK(d^RUHnzv=sxo%cE0d~fGHdRf1Lowu(7Nr2BZa4HszUr*FPXM=>C z=}fbP?>@ci0QxYLdp0#EP3bTt9b9o6Jh9U+TT$9MsX)FcrkvsBP|kJS8=^ORDJ@8M zUbEvetRIF*wgHinP{_^|I#<-5sohJ*nbHAL`PCHdlw( zCjo3LpE_5{vaObe6XvXj2fEX{$NlN=zy9gY`{C{LC8&ML4=-QU5I=fdf4N)lOLute zMTPL!>F$k39Rosof}Bi@o2eLnk-P;}0?b(`BNTu#-Z~NULPng-O=6BA#WQlD^$~EJ ztzpV(j42nG8$xiBX@?Eg8NIzSFO1`M0ohm5VMS}L_KE4@TYWYgv?uWLXxUk8h#8yr zz^f9i+1;pw<~32dL9p1&cAB!{Bfd&mbTAE*F~fXNpQUnv$9CKPvs>@Su+@71{@w4t z)NSs)^&Y*hzuc|&CtK`K`n&{3gkc&h@n$!_#{0GT8-OsBJj*JPwC#$*aFqFaJ1$C zg%RSe3A!2TY1Y>wPaRD}pm1jOUY)@DMX0U?m$W^PMhq92kPflc?MMYTrKSm*QJ!)( z+-R?+J3y|8Gb@(_CJ>LfDh_qv>~&+binXuh2eJo{sG)AylV_xK%ovsWp4gSZX7$<7 zAU*i#$ytZJ=Gqe~*#hIJ&jFTeb{>@E%U;!Atus?7r(PyF3Ju z@Jp!J610;6*xn!%3TOfB2v;a8s6>02OR+jkTyL5&0UeHl~5_ znH++iIk37hlNt~!!v#$V?7q}VULPJ1v+PHoAp*SwagZv0j zZn-+0oTwxUN!ae1C*Xie%>2;l8&47jCrqu6F32DcyfN7KTTg4%5F)}X7+9KEdFq`H$jXkvoE#}r zpm136QB#Z{py!a&!_&2y1H|pMq=&7w)M;=-wYQnU{erAik?rya^viDkIuw>mIk4-X?p4#;bb| zDBgwF>M~oMn29z5vA}k|0vUA%!QC%|h^({07+$_YTR^UHyd9ncedbCK`w6rwG*f|% z$KOYfHJZqSlEK}(=6~a%@8jP4)SJ8BfOjDpk6qed@b3Fu?K9a2e#Zr00%6E?2Gp|< zR28v0l5A%pThwA8eu>JOO0~7P<;TD;P+W{+zU-KwQr6akqxC37t7)U8u}P_NBP

    >IvvCGj7-#w$_eM+X4bx&5MX76-gwK|ST5mm=MAk-%v!S8HaDFBp9kkYa-caK z9eu17qm50qF$XkmQ`2E6ZPAciV1;uAp+dHDObV93xc?|VJ{#fDVN!9kD0&nHgpMWQ zq$dj|nCX4ZS+Wuc`?xNYph%<6)>dzR4$nguEe1K}uY7F(ykw?%j6nOm-~2i?;jVw%cyl zhR<;Ocw;LOB!fZnWehNajM}QoOeG}ks!E`r!iFym-}yO>F?HD8Yc1{CeYGT@Zgxqj zHCIgj@kfwjd}AYfs^+e3kLbPDi|@EJPXWVtv^7lk4A7*ZBC>5cfyZ+jE?^`-y=2@a zJs)7#d65J)1Uhp7?LrSO7spN{lvII`f(+Jk6qetdO1Tg|V>&r7zZgrAeY6~Ds7L!A zAFWfsvRh__-42ek)JCo~$;@tF+wrhteYfb(;^Dr9UPU7 zQ5Ax&U|hZghU{>Az{PRoDn%rQdF+S7Yyg@G_}D!37-*u0%exOK6*kvw(J1BepI$FZpS@L7|d9N@r@He4O@P78Cq;&kOI}$Nc%{Z%)--dr^OYx=n?|mv;cc#NuV~=1n`i65g;cZd^)d3a zD64qSnRX4KS==N2nGcR(ie3lQ3z6eJdqkYYXF_BO{E6H<6uC;ob55qxa0FxIHYOx_ z6XV;6)~%_9VDXCSp)B1q&o))Ko$f>)MuJy10J=lRtp2Q&;NPgbKmPXf+XJE1-}LV< zUTt4_S$}}an}m!R-oxS)6EWb02(|7zH^u~*I~v8nP)Gr6N17@+og0s7cn^lgtm}a6 zVRMeM{Rncu55C^Y^_V3za!d;bths||Khis%1-qW2g=Rw*xERP0SL1sRwyr(%&Lm-B zd=(I!G6`H;`Z$^Uyjf?2>)Hq+FJxUKOozB)*alYz=m1(%9PtMfkqZIbNVucY9r|Y_ z&@WXU{zAPu`P*lq{$IU+_s8G9tuT1)<^BOGGIa&5LF}5D%wyz*#Q;R9sk3>_dq7v}LztV20J~evU1#buI$gnDk&iDkts4 zL9oaH05z5}FxEZJIsiv<*k8IAe#Z8FQdqqt=zHa5{Q)YEy|*D4Da|HQO$=1YLkDZIy0o4Y*R;pCWm81Ek4A@l#ea=vMfJGJCxI7Jd#A>c9Vlu6mmfPZDmv-x%<|_WJ$+C725x z^jKX+IBPxV+<_C;#imn=&xb$qq%n4)+vGb25CoFz5+j}@W+(T!0B)_Wha96!K+T6@ zo-=^jAKHcJPxu&(FJfXB-YR=x4(#Se zRQ_`3@4t9ffN&LfXvm0Q=sxRmkrj)6WG=8rC?&XRr7}kj&6~?PXG*c+{ z?1h{b;V^&*+h>BoYmJQ`}!^`cz_f4%Za?{0nmcT zV*|9_8wpOjcECs|Wb;=g$l8wO92AD7@WFHa415HFHdOXr>o`8Z=Z-L7)yq zjB=4q5X(6=hryZJex|bDgICJg`(z`mj3Znb#u+f2T*l(X(2egvv%y#9*%+Jqvmr-4 zycWxKCDH?wuscyqesIFKu-*i#hln2PBJ$G&>B_3bNU*bovfNz{^Dh9ijs)$25avOE zdhWT%ftQKXLkb4mvvy$?wq7p0=gq#q{_yVCHy=LYvinlY<+T^}2dFy%BG`x^HOrgD z9HZyP{4=%&4BT8m(8$=AYflM?emAa#!j!zv1uY%XO>iuz91vI$p6+zV3MKT}&fSw^ zYa&5t4!Ma`aNAD-Yj{gKK*Zpn;kb6LjCJ&ks_PScpAAzHh(*Zl%;CHopDFl2)?vQp zx#0wC^N_pu&eJ?s-aK2140*DoR)HAJB6H7kb`9h^y(}U9ub$Q2&u>5W`~3OEHs32R z=nqhHm&UL)GAMfBDv0D*C_=XM+WO$=Y{S-p2?9-;A($?#jby}Jrx0Vdbd9yv#3Wuw zZ`nbblS3e!sWH121_`o|DRE;BCp+iz(Do}-z6 ze)m^zPyP(2-|OUHbEM+m||=K;Xj zoDaTmp!W_gj!1DH3v%iGGArwUdsc_P^e?;L{~NfMKerpc_7eX9RmdQ$@E~B@mz5xx z7G4{mIdenu1~A`VOF*Gm_j(D)KFC#x5ja|bvboQ?47})}sF>vDJk$_!hX}O16Sgu> z1g~41u^}(MH=b5u8*YRXwhZJUAVLLQW8kI6!qgoQo@itVA@lnTsM#PMz+8mrrbn;= z@|G;ON!B`-(UVOU8f?TD=RSod{o!}Gw;EQYeOJtv-@yOv^D2Dg=ze&Uztl_3y;ok- zAE4|ekzd-=rdIFiI6@VT%yTi^KY?3iA}iuvVxo}DL@G-?7{f$z0vtX>1wnVR??wOp z7QkYTTi9%XB&2(QGEa_99U@c0ik@9Kh!I|XL@<}Y^cB?4%x-GGuu~(5bfVi3tM<7Q zgl#8_5Y=tPcVVzm5rCc{7AEchcN{dq ztwnL~sh79BZ`a<3-#>ipUtX-e*Iw8kp!QCh-INCa1tO8Wa&KI09J>p1>BxMrP1cO! zo##TU!2^>}-iQL)Bhi0LS<=~->1K!^6`xs{P7Iu|SQ`nsHpds5P#V~ug;)R^`x3SL#rN2DH?>Vw$lzo`p8}kV_3T0?7D7KbuVqgsrM~O9 zr}ARC{7A@>tM>r{U_^COLt+0H-g*BW1ud_=$Ui_GmRN4azdotb>|7{0TNrtVEvFX1 zjMo|Y+!4!={hscR0MgpBY3WGT+z2&@p1TUPq`7QkfQkNrU1q<2H4(H8bB1utlfC$< zduWfKFIDyaVf&6gQSwuKXL1n*>-nJ1T z8y8-iYvmPaKlr%9r_@9qzE@9uxzGIHJg>w4yEh;6{a^JaUq);#5_#%Q~ztQ@GGz#?3zorc42ic8k*sT*?QyItUw?*SM7Ce;Hx zd;&|RbBfBu_mbqgYX%}hU}{J zb8x@DF9S{g#}~@*mwx~Dy!p_e?7m!luf4KAK=BQnkXFdDaN6L9u;1yRgaF-eXtOQ^ zL{1iDcg|@bVgto+ap!~#Xs3>2LtT`Sf@jc>18Ue4Erh_6f3@-q1#nyMu#0q|)8}c! zrExeLP7`6`e)G`ut&W#3NGuMUq~z|~(tAf`a+m3{oO^k+?}6kWTDxjNwmupY&_t{^ zgeAG5a`B;i-yLX8PwU-hQtuk)Wjn`n-|i<;>6`cc;p1o4^UGNbue!89K=q*;YRkvM zWFhCh;CVJ8Nr~^$Q=qWIVlO+w#@z==>vAsZBg;{66GeVx;^$baTt7ai(jH)mKt%%c zRmee6@e*FU#)6iYpU>Qomj}Gg%+qUk!cVi2MCE~O6d3`Tyh=UBvs@0Wwpk8@Yb_tN z`%bdLVeytFtk#SO(#vxo6D{2}+G?LM_ZYh`DUgzj7d;dqf04f6bM<}r<8S@qEBBQb z^#`cCxd?u1)du-V3kR1L7EHGV3I89<#53^dsY;l@z>Z6+(P5Zw)k2FDX&I2t?XfVWM>lgBMhGJpXO*bY#I zNP>4_pa$nWUJK0r0_RZbF*Gta1^S6=M%LhzKtEtZxDq29yMT&5i%`gN)qy-`r0%Xd zGpL(=K6WQwLTl;}#1-I`$%yRg*mm$|Mzyz}sv(#igc7CSt|JNmqE=%bub=>gz%qBl zFAs4H>7aahIRfc+I)f z898()z#Zz^!%iR>6|v;F$ilZ;xE=(OsxHWjCo#MN;vLBPdE1t5oa3q}d-_D9Lq^@T zSOE?&pE)-3_T9T6ra8A?Znr$=;(iHA_@zJo;a$B5YkB2${Q*iZ+V5l3Ud0~)VBtdAbWen z-N=^25-`{fPqxu)vhDWl`Hm-q*$Lbblk6JK-c z?A|_tAR*HupoJi(MIyLv`o0L6ca`R%Amp+y%p|XlSQDKmF#aRKi#SO;;bZVv$%i1k zfZVKy+2d1Q!4G&k<&d!~Bx__@F)eA2#kSOtPc(K|-n7$v6jY5tAycowLkQ|9po+sF zAlPf_I=o4}scSa;xn0QrMT+#qU}4~6Bl1mTzz;j=FFo^pt-e1a=zHyz{Q-&(bYKf= zDuL70?$H|$l-<_K?c0piY;AvZ-&l4`u1uIJzbz}7X$t|79|YP zi_LU}BWltwyk%#j#rD*-7FW^FT9{Ex+lTbG!Kvz_-_}EO)^((K^+F8?`oU>l;GCx-sV5a+R9P?|h=?_qL z`^wt7hiSEk=^=RC5hIMwrP0|UHE5*|9FN09ahJlk$4zh}-p-t2MpqC)c{h@fK_tW1 zICLQqK=+w^MzN5`3B&`9!q0vB=FPL25>Zx zKOtLWLTWH*^+9LQXL@S-jI)kq+rY_*9whs)Gm0XX+evIk@WTfGg`%p5l;Ah$Ti)Kc zFJCxbdttxh+WVS5bW@|o#AsWFk{@{TAV%_yFpP!V`XbMvj-2k{E8)5rkDJz9|$5}^)+;uzHv zvT*ULoWQ4LZ8>vr8GAVTWXD^sjVZb&#okWfA0q_gqLrot3;+X>2+-!Sv-3Wf0k;65 z{6^~Zb4&)(!`}aG*PFk4_x{EE#%nL@cU*a2ue!W*)$VLuCi^y;Xv36&J2@B0Uw&%% zLgUjpV03o3GuEOuzcPw0k|2r@9)?Jux_cY@ItVp^0z)0f>~+`NTWGG6irh2=v^;&; zA~cNfOY2CCu<#!_lUTNAf5>0|0XpPsFYXUef3bS#oCM=> zCE|a;WM4%~u5tNMWUrv@)f^qZ`C+)IrjCqIw^IgQ(Sk_8CLEon&Kv76HdONk-IgV!OMfAv;G2`&*Iv#apyE2}F5X*s zvmpX|QX_{L|ME3MqrW#5%{`*GIA!0s11}3SdH3FugAb5AYtI>@wdvB)Za=0-;+D#c zH~}NV#6NehZyR*@+@}?HXc)vsdLdyxqcMw$iGw*$)iLK;wj(Ml&qRhm^AKYV<9{^s{@Do0;? zQGbBCqq82A8fYs<*Pe6uQD|~PhKXLa!F0n1*xCoAePi@D*${B}72BW= zFI%hR3{F22e7(bxGUlEglrLchKBEXPvv9( z^4rg7?fsda%4@Ie4^Vt8<^UeE4M3T2E{2x;Bm$G?B?Var{V#Xg11#$mcRz+#dJ#fZ zLy_y#vXDIoET~5FwwM7w43q%0LLZEOm=fKQrJVpX;=g#>(4##cp)0vO0sKBnd4*Sr z<{4+K5XZa>xOT>vX@_Bs*{vhj$O%bhQXvq=+Dut7tit4}h#;m5o^#)v$}=1BfR6JZ z(X`utDTMjs@4xlC`{u*%zwCEEzhskq&m^NB zb|*6J#+p6v8iX;~m>ZqEbrg$#0pLSb&3W(%d=VnIPDK7e|zz2@!IS91C-wBbuMI=5@-TU+4~C4 zv}-ayEQIaSW(7Mn!pqiUKrcxOev`H2b?1$Y;*B_<0slSuz3qiu4`TQkuvug;$7|*mL!{@AqNSf*>z2X z3gEYGd8C-eNuBWMq63khV=rHk7P_58W|-BTsd+AZy|8Tm#nA^}D)3u{_u8xa0~B8Q zxW}e~60&lfON%maxOdx5b?%y0RF<@XMm$E1+<4#D7@1-lE-=IyXA)=)$J&G0ATu5GRTY&_NrRgUc?o){w+$;;de16&$DV-k8>V z87(7-F)9f!j1`^0zuw5$c;lcw_q6&(3vj}aQ_A9KmGBG zG5jT&$}6wpmqPphzOO)|HYTta1sjc+LPmTrZQ|8h>mms^NVhKpH{(>eN@K$g;ap4G*k*~uhGH3} z|0GAoPbNfi9ZsM?O^KUBW!6ZhA{^7b{#1J7OIzA)ahGE7*+sk7Dp2~$9Lz1_prtu_z?;Vt|M-htKef&6Nhh$-g5BfDF8DhU3pG+@ z+B6{It{%g&D0KQ``sBt8Ru@c)BwoaG@M@T+8#A0Z0wC7~ffaxrBg2`ucR3=tDLhJ+ zLh=pU{F9>NKv-H3UQa7GXe>gTBy~vPly(k??{mzx)V3XF<2oe-02MmIS0g8aD8;VU z%0ZW7BUH_NB1ANR&iIrA|43=;;9YkQnx-#LFaGC0^v}Qb`#0x(V`A}H8g)BA{_%Z( z_*{}N$pl_`ZJ+OXn|tn!zw0#-aOea$O@vo2f!tB&^+9XHGPj``Bq%M$JlxXjoNfXZ z3urLCwa_~tYj}rGr|yg2nIqJ7K$N@ZoCVfz9w`66Tq(#u?|I;LVo){u$f&Xnu`j;6 zBE~s(uQ3+N_mO_bAV?=`hae+`CwZkc9;Y7ERyyWj5JJIJ0<&k&9up)k_7c0+plLfA zaEXlNXVfXXkV~RLTzd5(i5hh8yfW@s?kwVRFgwRY-P*?_+KT;5(R@8nEHii}H>7ER zK{XTbw8pV%fU*+dmL?E(+_oz;hgnPQZhYASC(V8z2|OXkC{m zF7qW|O9bS;&|>s;Sew!76*HZ+kI!{ly;9~p7rCLbhqj$XWAh2(#Brvc$pzed&0Hi} zttNXcn{IHD1v(yyd2T@#Ac++lbje)&?j!g<3RH{`ka6M6$TbFXK~DrMs&(Oh+#3x$ zeslzRiyb?jP*#%m%L9!6>EGV?K4pdf!~5QAFYWW{<3ggQBlOug(2QPb&Y+}Yc)SvX z81?BF5!Qz<0&l9wX4OW1_R5hv7Ia<$5)204kZ4?YlY@5?@cf~sn~~9psX6{HwU*g< z-bzUp4~y*!;&8MqPtOUgaoapdOHaiQDG-z7NDW0C`i#SL%!kR@uo@qZyVWE=v8o5; zo2ZyNY=fH22oM3J^>y8i;s4V4ObeguVsBp_fgB7Pd3KJLjrZ|}F+XaLvFLG(SJZW`Q9^UAJK=P{cbw5LIRlExBT-^-@_sXGo7|zJG zAa^hexJM39lj9B`AP_Z(h)5-21C%r6{v?aZD~kMBJ;$F_MKa|(vo$#%+ySKq@|wdMq@8%_KRYuQ717fMr+ znoGAd*07d3~Sjt@^(Gwf}U*`0f3>zkORTf-YWrS)bo8 z94~sX_Gyi%yN?qtF&wMFW9xnpGYkmKN>MuJ5Uf;Z?t5{QK=}2{Y8aFl?1PyFYyR5H zI8MSHjjv7(vBi0vRiTQU3vKQ3r~3te5~wsa#Z?7+M$TQ>M0rT!H zCaCxlBwT*|_Bdjg(Vj|!uQFrHH@@YA8l#bhe z#Art^xj6qDTBmW#b%%&z)CI6zS}f8z=6ouTVj%u&j*|el%0Ra+F?z)196QI6LE!l4 zG@1*r2wW4zIe{R^`JP;{UhweEsUoRXsqnZYy)wi&~)9#)dHA#q*zRGd94iZ2|Aj$FX~I@v@6!Fy{l_q+FZR29ghxwlId^9+2hUr$v{GOC|>DG|6ma)b#6m&bdtx zy1`ZeLLSwj^?>>#m7u{B*ay*7e$Bjfv)?AAajzd`+ERN=Q&PBvK>CMF4p)D_$HvhE ztLtAF5Bas|-c|NQPZB)Pmar+wws{Q(M4F>;Y5JK)~T>4_mIQt|{Y|2|U!8%A$g zM?H#eovDKg-8A1d6G@E}7kEpB@u2IjZ4rHR+QrxIashfDx;7qB8Zy|#t@|llrCkHb zB{UGGD4{|CZpQJYgEBA}YlC80%k#D;V(;pxf%q`EItM(ge)WPm(&l+j7*tCBNc&@_ zK#1oo$n|O>&$$dK8(!ySmB4d>)TaXc?T_#KP5%1pyN{2g+!x(vue`iJKm{VZ74AXA z!(BxSG43Mds#k0f_m>tUp?U+3gHhBhaO&_Nk|Q`BXW&3|wG$8&3K%F-dtC1Z-O@Hi zK)qAC5NbnrE+`*?Wu&JS2*0R~#lY`KvV?^nAkV~yJ(lK%PAWpo-ng+ZC*2rP`zRLP z1`>6Z9lcV7q zWm=aNlmnjUltR{jW24_vpu=bu6m9TAhdk$p?zQzorMqCg8io``g-xY&$tBxR8p5f! zaH9lDHq0|rQg_6<^AWog4}tJf3B2!M>`GsP_f1dWGNyIh6Dap@e~L z%aDD+iJc=HE%?sIy$rX?zYrw_3H+y8dx;zR%1ipZ>fF_N4hUd}C3Bo1rY3ST2Hxy?oJ$6YyH056CY}$*T zzhhY;lNCO=2a*@(fyT|;7=gd#BR29C@14V!?mX*&SXV$UtlqHdA?Z^Ew&@3x4vh?k zx8O`)4tA>|r34*b+}T+kVRIJ*{-@;b(B<|B!I7z!acYefLy4j@*kJmOSglGc@ zu(F~@E(Q9+c-fNhuC<`R6QI^%ID7;~a)BBJPga4lUdKv0Jm9{m^0b%TX8+~Cy~F+4 zl6&p-d|qEDZqBIzDMlYd4wGu;GNPTChVHh4)++djbw#x} zI1k+9(C7n;WCNH?j)9nRB;Xw4t0r?nK=_=WGC6AIP4B77SE~YI9lM*4<+d?P>nI>b zAVe=$pVJAn_M6w$@SnysO94(bmlVg0dXKm?oEDW^%T7!$+7Slw*+1+lBf~2#Hj??80PvI!tl(kj?hRFM#$)H{A0WMV- zQVet>h_>b+Jr1!s4q0C}x_^?ty{$ff^X0X=`{T!c|0e(XZ{PI$_b-P)zV=c+@7oD3 zS(72P(W8-;z|8oq)~&3Fx*tFw89117*0tc`%cfGN6M_m)1UY=Accna z;hR+ah#agTj)0u511mAklZLmMd>dFTQ_H5Z{pgpyNV)0R!Jw!s4c^i-zvJrTAyEI#c)o zpdd#WbnzW|0H1CU#=$CHd zR^G^>4Sc8bTAy|N6ij~{YiTS*+h*rn1M^t1LVAh#K-W|(s*PUW(EjlNL-~?FAlq3tEA2%rS^knNxc_W{B zA;j#i?gPll0ozp|0z{ofN)t37E7!qWgRks!9^zQZm2+)DduSeAQ)6&%FZ2wMuZ%=> z#iPfisrO_Dgbx_}x6#loJL9W**{fpz8H$Aqh&Fx zPB^Y45WGto{1Y>D>x_Hn92goZ6z%?S4kN##7KSlrTS0I$3M^39l}pCC#z&)&?g2;( zOi}Y>>hMU2;Xa?o_$U5J|JA?#*Z=DOAo;qJ%{h1;3_>XP8Evx0$uJ&{gz<6n6!+fa zkhUxr6O-Jzh6fT$#McVfi6ia3;SiA55bF?atwb9F;pTk<0}{Q8*5sh25LVA;o@(RW zx)WKzlM&Xw*Sh5=ERbyjfwd#Y>mUvJ6wt*1-+L~chT&cz-)q-$=-|p@pM0qC*R`z8 z#&Jo-WW|V08NM3s2UEB$#*-TR4?cYS{pYT4ObK3l?Y>mn|M|7jY9$GuoCYz|D^=KZ4NaIE8nz;+ce|s2nH{GO-9M_nib5xr@&ogG`XN-PDLynJYwwv6&E^(49f#N5!j}6^XY4HfGvV<7dyKws45Y=m^j6& zk_H|-KEAcW5xNMK&vChPuiiXByv93_6Z;6rOLhfv-Z=_1I9y;ArfX<<_#lv{Zud!M zTwd3c;`(QK-o5|z8@2V?OZWWkn2MoYY6fDT7P>bqI?jxFW^KtF7ZIR&rnYpn-X2Dk z{0Oi;w@v&)W!HQjNLgeGQqE3adol+#bkSn}31@J9|qi#y*Nhv4VHWaCU&*d1qA;cOhYoU| zzI}kGN0UNr$H+zFX>kd+@yJy|O(6QMZMx&&h`FGU)`Qfy1B{F#x)ak}2a+w2wH;%+ zAE-Szp^Jtg6s(voopU>|`g-f3)yzH2K_joMd#5IT(=TVR|D-?s{Px$6Z_c}4e);3C zZ$JM2rD^v0|NpJy*lRE6^Mb45!ETB06knS-(HLIvc=#@C1iuU)GrNszqb*fN3RZJtcju$)*v++&L5^Sfh6Dh< zp!vGsf!QkFPbZ!#e4@}RB3ZT@!#>Ek*66y1_)D(Z3u4||pjWDHwm{~kFHCHxdsSl? zg;kz?Am%}CbSy;*rkhRe3x$FuY!QUnF@&q3N5|LMQ~vSeAHM8q|NQYkK8ZSBvZKE8 z57RbeTda@-1EyChf(a6=w~MElYB?6I8gyu4r_ z61>B0K#gGoEr+#q<)rGR1Xqjp%RG*gwNb z?Cm#D=dZnl-)oV{PyG4#pIc$Z!gWU=-AvUe_>4MzP}Y9jQ)iOOz^r7iu-a|&=7tUr zq4VwqL5QY%!q!c;$JQ|s6G^+EH3U9OqtUoBKHJE8-pl*x@t>kg4XTn$fHE|?rG1-1 zf!#`Z0E1>GdaIdOmelD_q|63=q*IvFa1@?b`X9Y&|6Vd0h*g$yH8GzG!oh7%>Qe(n~ zT_LMxutA?X9e3m0v=jl{Q*6K#qG4a)yk)C0#a+pn54jOxww zh@srmnGTbL-K5#w7ZR&Gk$Tv41X=6zkkU6w>>q#Xk-em6eC74~zH3ZB8THl(Zomsl z11HVH%k%8H5w&I*A4rH@XV}F?$)z5Qvv>NV(|(TaYZv}%S)(jV0_#a1H^A%%cESR6xe#NX`A_)O?s5GLl( z@JI(VLvyW53D3b!RYnBP2_6u}rwYP`2shQaVBVham41y$`X_(r-{0hKZ@=_m-~HCV z=5KG`e0=F;`Pysvz1G?IN#!T{)QXkv4T>j{>z$>1K8~hS?BYjeDSr{@cTWK#pjd1+2GjifyX}QY2jrP z`3HswTDa^l7#rxcA5r9U&;gJICz|VfH{`*swdq1HJvy;Clq;j8|3gH;ssYFmp<*m+Afx*3U$gMLwF_2=}DuJ-Mbz7uW@R~Ks$At z`?!~CO$R52$3E(J1 z8=e|bvKA1r%ak1FLlS=>TIc#?xIa zwg{9X@b`V;BbLzy!T zfoD(gsam@5RC~jy&kmxAhb)3*0aQYvkwK&GI9so*d}ukdRbn5}*obSt7P&;XJ5q4( zT1P?LfW)Zx)VUIY31zvST1#lKaEs?3g8;DC}3!N7V?Vo-rw3m)!ue^HS zb%pV#t?VF{7Bc4@6TuJ=_#HY|5(>9C;J^>ui+1|4bGM!t0DNt<7F5?o*k_!mv2R>q z^ar9-krtqVuH+_#kfn)wMlNC`u3cLoRXqzTigToaCw|=c@4Z!X;YP@W00i?h)!f;k zW?fL3j=XGVUBs60;!y$07h^nQJNoRYgGcCI1$AsBA=&&o!hP?7=raniffbYLg$n!U zfB&ZPW4`&T_itb7VZ8PNey>L|`^mmclqOC+=nr%nK*w@VTPBXy33r7zSR{m__>n0P z2s22WLILB7d;sF~3t+WMez!dNX3KCBfw!W)j<&KmJ-VtL0xbAk6J zkr;{*WjszMjr2b=%$cBy2?z>$UPc2g`xFk(_b4OS(aI$6sXb{#xx<@zlNi)mDE=8r z;fuTA^ezQQ(Nwm+^tSvLj}q%Qzr8(w^YYE|wb$_bud+))7r!22m2^O?loi4qNU-f| zDTf9;kSFgr^8yhSEjMrL-co^Rrh%|_Qgy!%Y?M?7jA%n>C>VOSec`rU!=&l5IU4c2 zo+|tCNaMVoz^{*iZ*LMu!-tI*#6Vhh3&FyOshy52xRbd2rVd0>LcqDMnhAlz0l2#a zuiF+>ox4x3O1qCV4B>SrPp7kd>++X3vXAe(-~8>{{=1hZO0T?t-+zg*RqtsaDe69M zI$%tNMLRLU{Ui*;#R>9BjN-!g>J|#o&^-mpT^T7E^VnF*bkE{YD96u0rqm{$1?AM@ zso9eeg(l~^H$N*ei_5bdJ=QyJ_L;U;s}F2i0zK(I*4ljvQogxT?DC*B7BgJ+J$MlD zrnBc^AjE~wUEnRkWIvWX^iN)Q%ryh}DA?2x^P=NxEB2p#CbZQ3awdDZI$=Oek`F}#A9R`;xX9HF2bnMFGR~_y^ zwm12SxsOgR9H9d?GBktuCLwa3`mG9XK&z%by!eBId{aki5;JG?fH&?oqC9)PB{&IxH_Y17(A zan9f4sPwHEdkvQ}V=XihxPySohNC3uAFR25{9As*8u!{O`6CotBis14V@jx{oTjil zPB=4U_01RFw?V+alxlQsW;?%r?5^CZXayO1RqlGd_dS+e{G7U1h@kilRCX}^UZ zU;#3MoGEQjce}bH0j z54c12K=OlblKHTf>jEwhMPkmfpmDuGa2YYiO1`J=bCiw7A;)zy9BufhYV~~rlGzJL zRl|YXUsC%1$>02X-+y7W{I?%3)&J|myPr?|@WbnS?Tr`mTfIxicl7Bl9bpy?yVmUXZQ$m~JAf@3eS0x%RPxa@J7YVPUH$P&tn z>?aY^b)*9w`;iPrKqGXl(WX5hcONU8PnH1#NP2xW`AhTC-^pTm>$Uq!bYoSp(XUKYcu zKhEuAls@|sis8DG=&s57lBTDoa*@wS1kA+(3r>(1Uu#_uX%|kfL8@$LRiBOx(`iiJ zFaiXMYB&u`=T5!Ej^hx6s)J}9K4@Z1I~K^*Mkk)`W}1cY$5k(O*FVGV!sI+&)nvT& z;(g28>r?Z8rBN;sLt;Z*wEfzSYqr8j+h>w)I6Pa{6PdIeA?T`mHb0ylM;W~?GwN8C za+WbyQJxF7xyZ__QD$|gC|Rh9w@!qkylnnMfqfApGD3z_-I^zLfNp~-m^S++H1ui1 zo46V*?lO@3B@qFDp8&53P~#ya9dLEGKjF4xF0TtI^H`>Np=6ADu%ol$dCb1pUjJkL zA-|7zCqDf6>(BN5yZH5&AK(4H-v93RuMN)MdM&@z-Dcl?)|s*A-jE5`HkrKEOyj=2 zk-&6}uAYl<80S1N_}9IA*jk6zQe?~^uNay_9TSc9I;VOl4Y^2TEv+DL6GD*KUPy;q z28_FE8K0L{%%QtWC&@&xBv{kR#PvsIYE+0Y`JR)TFnw`L=KBK11H7$`7p~PcW z;j1YYk`f+`tcm;ryfH60o#1YdrH2$GCnzM2HkzaIVz>R9S9Ti`2VNTtyzxSQ`&+Fg zZSj)B4L$Iln1dW}QR|s=z!umQi9z7XG3u;DI(c;(20vnwj;Ltd2WNttsGu$2{{Uy{ zj7tP{#r38Qzk5O_KUM&M$1lYi(aRb5{~HJjEE{2SG}h!?Bz|072w}3l;Oar#1iKJtN2M4$;&Snxp&H4W^uf9{ett=7S%O?;b)xO;GdbLAi$JlL_}yy-|kt!&F=^ zT8WZo368TGRFC+&dY)DD09AjQZ}diGE@0Df&3wACGEqw}uzx_^c>s^Ak##tX#-W|I zPm}whLxUMV0pOuuoo%n|x!2CNH(teWcBA>1Mq02@nM$oVhilm(S3liT25f12n^!4& zs1ZVg4~9dCgjgWBYQxn7Jr}%&pqJCI)nGg`tquB;%{yu`B1rM*G))zR`aAP`~{0{?(T4Td(7{dX4%Q|M`H7YiFFv zen8orF}7bF1K(yM=;9W#pr_xiJ z7@eQPra_v^zzi<$P1i>a#8zlH;5V}dWL?ttBmnp0jH-T_w*6_Rz5l~cKYsY-Gj#UD z-+ht3^^$(8n@+x@ZC}G_(Hk`23>2!Pt7svB6xc!3KtTqd1Vs7+?SnlfjWe5VP6dk`pHXuR>?XB}BzlX`a&->&Xw`yLg44 zrdcam4=`JfU+Ac|&os;{QHqFyLoE!2qA$hkbF0>dn6c;%#lMbCc z_YQnK=SqO<5R`?{h@HCY23Wpp!Jv~oxp1r^kJ81%f?x<+En&l zadRVIiO~h&8oO;@d0DXi>p$OU2ptRN*V-O$y^i1Nk+#0G&jecJq^Qfl3lGE`K^B|u z8VkRKd0cXx;Y&B;okwzejTm?uo^M05Lm1cvxPE>PgcDF=J2{LYz3^Aya)Xg> z1hOl2#`@|=a~thP_3)LTx&WKgEmMqcCXiqu5gm8mOONM!+zkOLjI`B2B$F(-*Dib@ z_l!#?#vTm!`P4@)^5kfpvem7Ih^2A7$l70W8~>+2-)TS9hpq$9`um?>9Ur{$Vt%_P z8-K3bX6R5jTOnvg{v>y|QJffbJoW(Ci8+MNwRlqI-7iiD*~<<9u?jSA8$`#0z`qX5 zjO}{z$^w+K7UZtFY^;lNB(~yf4B?k7grp%3%#@r3A16{3AO3+8Sjalg^%U>sNCk=t z5bGf{$qe+}1K*KdR$B~qBbdNUb{2+-H2qp_z3JQTHa-XzrmhRq=T5Shb=!-R?eBOY zy!ASMt0xeiE!FX+AVC&q|>tc!+hk2X^%XOpY z*+@1o4!Z1HXruJnPl_ESW(gq_GpqA}v63g1HZA;Fh*}}p_|B#1)(4V3#|YYqvg*Z7 z`?r6-(>}_GU}ArD2>-@Q`K@lY`KO%hWh-h@Z@5`+a;QoopHRB8TPUAFWFrfbMxf_D zp^&YG3I+8Dt~2W-js+X-Iw?qizKOzj=p-aRSX@s&vGI#fA0r8p?3WawMeEuyo0Gje zqDsuTPdcS2jEzslQ+u2>NEfo+ayXh=a&OMHt`n{>X8dF5(1L;RF3X$e zwTTzp9Xf$pS@CjE_20d+*tJmlLPUh!*h7fqh9Iw|{7|sb&2$9=yizWP{ zbb-0hothi^!^}Q{(7xU}+>z$!id0q{4$GLhkEad4#>daNrS}YqgVYr|#_SygZ=lkr}AAbG0?x%<7tJ<|UUd?ayT$3-X+CUcS zUhVTE{p|`(gkpVk``m@&pg`0mzG-V#8iFlHB5jb?8On_e3>g_Vi_E4TkMi6GNMq6I z&@IQsZDX$7XZu7X$hzZetk7VmrKt(IBNuefrVcR2^L_0Va%UCtpFNS*rH2pv9?hxF zhaXJA;8jZmHg;<~GJBf?yBB;CcQd;X9(}mzYJ^#@Mo<66e*2655Pzr-?>=#?UU`4M z@$!AE*5Z$uP9L`zL7ua@r^>QpJ#x<*=tFAKomQO--3LKdLE9EXN0RZ|EI>$(p$9H` zdg4Rt4I&xxKP1*Yt8EWEr^BXF;!(b9I_zkpFFHwI!QIyw02w#$(OBzSd%NH)Kz`uZ zFnxoG3~vFI#OVeD<=lEyMzrn$6#dquwV{LE4x{+yvntU)K{dUuU7MW%{|{NE;$9%Gf0!LJi=1cW(6*X79i)5Yiou>5m5DBKsDT?Q<0!@IeZQ z|Hd;*>2L|piExl%F9BBY68Jph;#RTM0)Y5fweg5kawHIq1p^B>$D~BpFk6E9nU)KZ zl*TwfY*b<^NscFFc(MZ8ftYnQc6068Y?F~3Rmgx!Xw6=1xBnU(j(0!(F>sm7awsr~>2Vhoj8}lOqs-SRB@CDexD)*xs-%Bv!qND?6j3g_3CL^FN zFz@lae?F#3sNOweZX^)}@&Km??cMUSGs|nEdkJaTV4H!|dNtDKTNfUKb=&i}Be&tq zb)fU=9{0vN$UIG%>mnrl!mq1X1vMFCa033Sx9dU|i88F8ls`w|rU@)=y%a!xayj_jF5NagEz9@5HGsep%NGs z$ZmdwIQxRfzu@61XBAZmvJSvW0562tP`06$Z3}WelbAU-`tYoIhkNBb_0ljr z??)g;f;`2g>y}wIsmu%Y1f$O-Y>qIii7LKrod9D%oWF{QG9(0cnw#WBcw`0SX%Um` zlFHzX8x~Emx_}eKvkAMpLdGR7hK{Eyx4HPqf4FW|Sj$2R!KA1nM7+wKH1 z;2@eIVdT2|99f!u=V&J^jW;2gGvwl{?GrlyfZ_?6%4)qsZ5o85{K&+R!Z$|pxQhwe z2OmwLIC5fNp1?2)udh(%& zSxugmwV*DHBCwS>hu`LyebS&wn6U9s(OtoC<+|s>{<+lC?b*8@t~+M`*uHF4jRd$){ZFcQhd3%~`Z->A5YjHlNG`dmlUq z)`414ndX_hxY#Dp#(N^6wf$V!IwhKsEg*#GLu%QLrzRYnf}k5vs2G!Vr|A-**Y>9Q z@=*I9KB4!1k3rH8zy2ZX!*5QI-g+g!)x8Gt-p6-l#03xboJ7D4A$NrPKJTVLwz#wg z0%UEUNq51t4=Xrl%Az63XbYkJj>NcqTR$=)f)2GCCfW=w#2U;rdbD+b=6_8s5J2~m zf);l`+%mZZE7>E*l4WXsZSn zTZRK@ePMSWV8)6*=K?YxY|=}~?7#d>q&h#|diVX0zx(mEhS?i0;kUcVK3g{Ny1C>7 z{(nry5&|sZJos|Jq2GAseh0k(Qo|o3qt;Sfpj(Bq>7cW|qpl8T57)uaR8QbkYD0T) z)?JO4m6$)qp31c_pL^NN$h%fvYXhd@th4P2Gq*!yh=pP@yk>ge-RTJ5vPXU<8xYqa zkZZe7;)^epg0PVsn5Rz>q*-s9hTa&wdS3UONoTP8^_uz80q`$=e*cG`zORfAzbPhr z>jnIFx7hehJXp2q38tSTH^iIkZb$@Fnr0G3|(ap|0UIv3MCeLHiy@cehW=AGDU+kT)hzGlQZBYhOV}t9Tq=qKzl)(-n=s3J# z0ji@ok9H<=eu_9d2NZAs`$uilc92;>MeW4HtJ8#?&f@R%^Wh~u%h`=aM-vpJ8=^o+;4bZof+so!CG91yTV&%-A*l&2 z`qiZ<@YX{ZW5n5|5znJx0GlcE9S*;={ z^Y??Odx@m_mk2t1|MM3$>@Tmef!=xvztv4PzT?jmC6U>+vX|@=v=aEyM6YQJ<1KT1;1d&CFf~Tn~AS(G`ZZvFLD=b$Hu%l(~RxLa+(j{nwGpQ z`F$5?hFUGU{d_FuW1nzN52{&;N#5cOF$P`uC>xPGfVhHA7m&qv=7e~mm(n7UARV0YGSs6pRDbq*9c!UFH&3|^#nTkNdjpDpapDeIDQS5zQ6%cXG1>4 za{)b4vmvwgZr6)E-AI^vfQTo=;Vj?7EmnLURK5(I{);%Le*XD=B6|8Y=jB^3Tz-8a7$_qIhCNjkV?S~*Y}`klJMphfoxRo zJ&R@!T^r}LGO~gmTY1!2n zbK`u1j~r*j26^r*cuIO*=#pcTMDL@R(AY6T zI28xNc>81_+v^bhDIM%ZD)9gI>(BM>{SQCa2mHf#)i7Yb`{Vmxe*doH`|mT(tB$3& zUfi#@-`VYvQ^9m`#UyoIGoQ$Ur9P%hNFa6@L-DD_I2C~MvFDY!rs@_z=y$Y6F3*9>8=nY%~UgXh7dB4=b z;=n%0Z}P4rqZ4Nj?Ll`Vmxg^=Q$e$Zor#be@;Ga35yWhYx0#-01zsmUewZY|EuiWRY_5Xg^T1ZDz1il_fIaD~}5XK8n2QjBReCReh=e;F4$$1HN z(7g_E8jF@-B2Uy@B@PZSpB(H%wlp0~O|R0LP_;31-)w>Yu^pYy*7}&Mne|J2H$UZs z^#3Jx{(DM?uT!8IPDWcP7-0{H^8nw3Ph1Rum}3pj(6}cS z;alEo=Rhjt>GRkr3`UTB5oY<)YUy`QM4uRY#ZGA#6uyW`4>yt{o6QQh=?)P|A*;9f<)ASn$nSiQwl$NE0~AU)f^+KvRtDJMq^8`g7c z)Y0@@*-kBNmCFDJ>2l!G(|Jfj3kvQ&4Z_@PL>vb)}T>Auz7wPAMqxVv0ua*y;>|5((2cC*RQ|4|Ngbz_0~)Gt?sVBb#_?=9Xv^Mr?80dsp->javSt8 zGz?#T9y+%L&$nTPN09<4%w`kMSAZ*1ax$K0$Gdg;rki7r7#GHdv!`nm;^DT33;Q z^JRD{9oGnvQc=9-=2SYg%w?x)-7i<;KkM&*j9=dW@Vj?kcG=%4=YQ*E{QB|u*2UqU zOqBMiN!E@YO+Zs+z{_KB#Ke|Z1H?_O<@z3n1?eW0c6yLisq+#Iz7*lv<#3;0xojvkXHgDbk_A~4~WYixID zKgoc4TYYU%4TN%MH6!%r+_A?_n4!AAa}#RpZE8FX2Cc zU51G7n>unh(M4W8 z=)bVL)yNWur+i#opSF?|IR0E0M9ny8Ai7^!yAgOUh0At5F7$nb@+)fb$E)&}5Anm# z@1G{@?>_wa>rby~uitnbU%59&=2XNHz#V_l*hTw?sNmW}w9q+I95g;~o)JlgTY}}< zB$Ti+gb(fIcu?&?X@ZAsAx2{?rHxu8FO>t0Ij?#(@-D^^jr9c+H9x24i1~tZ#+N&< z4zC@k^{!!XgFDB|CqgW_AyNV8Mqo_aI*K;-G9$ba&e#Laz0q{r57Q*!R2}0oNYQI& zqcM0&_dsZtPn|D&{{N85|F>Sc&ztN2`?9&L;)b{Y8G1kq%IPG_-58c*Ix z??w{VO}y56N?K=I$qgl z|Lm{dz5n5t`tU=%y4&7*0lz-VzKPwozZ;+DN4if@s4{2Hu{%}ev}^+ROJhW0o;bnZ zH{4IaF}ore60l&v9)cY#Q)EU4LjI1gu@{rja3|rLIY}OxyD|!+w=4Ow(+@p^ z-bBA%khGjYJDuS%1^Rbr!R|c`S`tRk97dDM3u%+<%I%0Ld{^QDZ*ko7CXDB#^U-3h zEih}8t!*dZLi3F*&52C9emOt-r$0db+V#u%{cA?cH(tB1YqHHp4ysz;kX7h|cifq# zcgAo4!r51EJ^SEN)m28g2llSbcwYiS71Wr07@u_xY7#Be3BK;7Acd4N5EfMx!#2Wy z{86ocZe`@CI8jGV`8=hS(q#qg|#r@swB z9F2oqvD}vvzUYH|=ni^d;1eGOSS4B=iea8R^6N;}lo*0}|Lj8NypT--m$;T{+XUkY zKdQ*C(?hX=Iw9E06W2qz6Nx5kTBho4$Gu6hD#!A0sZ?n2~_B3Z(nb?(n* z-rtUz{-^kZcfWOczV&K;eVpOx!C?@1))J8E&o#SaJbU-v&4U&a5)oOvgioHV8p}(8 zRB+i-0;Vs$CM*X2+2J@k8-iYhe#;z!=oe>~Mu5UJ7qq+)EdS{^WBX!JvUFYW)vxDO zom!aYA+`Xv`qRGGlUr0HA+Rfml@cq5J8Z9@yNaU0WcCTHxUPE@p#1H0_w~FzV0r+6 zr0MW9%(xq~?XU7A4qTV}vG};N_#M=BX0|NkX*qX|O`t^eMU&%@I^_G>Q!$6!E0HN9 zv(5-H@IDp7v1t=rIWR=n zzKy82VX#IB((PXsXEvEJziaq*AwV%-3aQ2BP96IkGj!BeI8Tn62dhM}Crog18r6ka zR*r$+GK!gqsjkaGW!kpw98?mQh9EC^rr^43+0cKzxH_@TJqZ5G*miHdsITZ4-}rui zx$T||ZkEwwK1pe-xA>9BE8~Q6T5Jp!>4JnmW%a0b&_rl}%R1467pj_3C}SzutPszr0Nm?5vgN^17}vb<*7t zZI2@YVEN1>hNsS9q~x8^Ep&`3_$>2=b=Yv57Aq8^F5ySp)MB#}DUK0)7;7&TG}_LuEp|dNc@T z2l+9KuGE>bhSNq%eV?(lwI#siD7U3M$zM9l|CiTtf#3g!-+qa{^>Ti#pxwANMb|7L z)trI6;f4!GmF1rMh)u4Nh%bErZ0LxT=tA2V8SOcmCQAd13SrfOc3ce+?r3?&s_A8T z(fPiZMJ$6F{=%Ul&xZRGC=Vf1hvyPsBX3H>1q;U`eu{Jt@jbS34{DqYW>2RZw2%{! zh&-ri;#4GoZ1=OEP`)D**)J;VDrT1D0rTOu#+U}JSxi6fOL-$YPj~A)98h)5?4^&% zC&2+)<$Nm=tgyIVG666TWCEDFQCpz+ znfNfmvHKE~_ita#2mTF7?OQM9*KIaq?Wdx{8$%(L=Y6f5s}a)=x`DH1snhodD+>8Ha@|70^K^oI`= zDVuhX;=4kyF`?OjcJ+j&ZyboBkNS+MqlO?(@al8AA~Ut^#2t+2Ajnr#asNEP-8fY?&v7GTlelJ;RM+*5-p5ZvLTkEUcrXw;C z_jmbl&XWQ#n=s;dV_oM<&{c#zaR~&3t6!i;f=;8Vq=gA=O+mt-V0im+*fNIlh(mm@ z2$2OwwjAR&D2eMae7R~2o8nL;;a^VCa{pnaz3#ApXuw2oZ}2ZZ4=XW zjJkywUGLh{#Ym|Fs?O?y%urQiq!c~^GJLyhc0iFoMW%>S^wou)005SY6u;Y-z1%Ud zZ}O3C`-IQBpHOEIdnN`XhX^4JtJhFUYaQ&n0d1YV8O7J!Ll02+3y+`;w6ykwesJTq zm|%{L9(h~oZjAQu%2<-ft$VS}{_(B+^))@(TQA!yZvnVHC!_=uLIp&wi$imfD94bO zLXVULS>1!~nu>Ldnwb4f?RJv_F||kGe;`(2)V<4n$Yh+)!~>R1Rhc~3L3lTxevHtQ z{zS~!pUyAV+HHkOaBM?l%w5jIZ-6F(T^TWOGzj{Sml#|9Sm6G`4?5OfizWxuA$n;r z;$QC6+Ottz7cjnwCeCrU@*ixX&b)p>_> z9fO~=r47+!EAaRtOkKKS1&sMfbrQMh3bFDsfWPR7!CP-L(Q2A!%o;00Y2&IicgW89 z3)$dv>QaFYc44E~gL|=}2c^v>!2>?Pm;)6ek3HZJ z`OP(;mYsu15(Z5==a9oMdk2WDL0hlXQaO-W7nY*&>k^jv%vrCRnDEt?`|O`*WPSh8 z8DHhIy!GmReU2?%2k-U4(}x03d)A!vM8Q{U4N*6pdtEx~iAG;|pVYb4IqOclO0gKP zk*9gPZ;kRv6sN`RLXAHXz!^0}^#!=mt2a!k>Yp~4ePJA+5=1<0c#?*!ky&MTWT6;E zg!tjDJNp=|=Hqnw4mk)7WV;2?A@RoT;1)>hmV_6>H>9DxHWbOR#woXZ-Pk}A;~-s7 z%fBT5NTcrxLqBggEj2@DuFwJ3+&Y}y>%_LzC70nUK$9D`eJh7xo1-}_*U+K`)f!$! zrDu+uGqiFTTI=XZo_lEFZaCaS_fUVC>h-VA_Z2_9`(x!#asKKPrsXw7+8eLpx4O^f zmwI33*rp}0br1AGKn}b$HR7Vy)JCqhj(FnPR>2f0P*yE6q<-Md(!4=m;rL+TOs7 z2v{tfp2fhEp|U9j1wC{6*&(McQI|K$)FAIseoynV3x0bV(}I0H$9-9d{rA7rho9@i z-@nn`dKtgfji%qpCnTd}3#;J}Hi*1VcwVF2kXXSQ3E(uEDl@O6Q?t~Z=DCvVE`mAB zbTIoB#BR-tX={LI_f$PI4xMf8sJ5`=vyut%T=tu?SIHAAEy!A%y8|YWV^KkUYt}~Df9~)F z&cIg+?mzzc;ji+?zy8nIX>Yua-|9|V-|43$rr6Zyl7zP40O=I;M-U$m16G46(6ML2 z!lzSK?BmA=B58u2@?+K1(=#v#o0Pe?=|%MpVD$mx7mzzcuV@(oxUayJ#lypS={~0z zQ*3L~K4+!z?ZB}Fg}eIoGjt#TZsfp3Nf*gZmJ~2TE<^}j_nx}u0H;r=TPXld2nt5o zoV$qNd6@{D99S3GYBucl%aDnG9{>J7y!)&A8)Ou|R{Ov8>b)Y~un895+%Q7p_<{Y4+L{hCr|i8p^Mi!D5O30 z9>chWWyu#Rkba`G@9VqnzE?XiK!c-&aAN4i(cuMk3s@o(F$sF&T%^K%_4(whPKT39Q_;|fg$+Ukf) ze<`c|aI-gFyRTeYVe8+qOdp4217CN|Y*TlMdo{DAaM2y6*xmtjiJjK*-xViQxJ^-H45(rFtWp?_7_xP%zXL>&t-clQcT2P7g-be4}#>cn1?fAc~ZXUHN2iJ@tB2QeOSKr@_l`J0nrm{ zLxpnG?=ZsSrD*vUpFCyLZA5?I$u=ffviMhNW|g z;NI6`w>I2qq`e3H+&+%qePgb>fvrSGZck)w$VIAP`yD8j&>&F9{D!_pW1rL_+h(?S zjWH)*L&(kI;s(;Ex(SU|*%Nd@i$?ort^0(Ix>T7 z9y%--bs&_+Z%S;>16F2gPJrus?Zpp};pu|H012mC>CIg*q#9$Gn+T;;f)!%o645b{ z3ysFsSG|jvJ}c1R8*{gA4E-B-e1+FS8{64RCos|IH8QUH$b(chkF{fBEslYxByt zUdY!d2XI{~gk-1I@I#Y zUSDuK0K0x!bm0So2C-SPjkzvds0dUX4;7H*JY46-n3`KJ5)C#$^lj&^J8nTkAn3^T z1{q?Yw>u+QW^0euQ#+!%)=pbR*Nm1=S@WE}=yf}a(rpV7L{nnt!37;k5ldFI6YArn z-OLAK61zY{Ze!*pW*1v9F~`*2vTY(@?U)AlTun}U<#sARUg|b`)MR_cHWBKR83P>% zxE_Y^0B`GokkZhWIb$-fZ{u4?)!~FDn1mb0OtgleRY>C==*d>%J4sSareCgi(tMjF*~6 zuMCJt#gjP(2-kcc362Sfk#}{aZh)~`r+O}3F_rE83Y z%9z?$u44>Ar3{*r4Bf{V=RuU?lVC{tLtfq)_!ic}TR9mb6mQyYx-tD^*w<&Efy2d_ z<<(~^-bXB_�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 wgTOZ5x(gr8LH7duA&A6M3_L-;RIar(nati*yRX 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

    n)$IN*NJ!PJ@hMZh#_dIgx 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 V8#X6}}bBl+mFm9*1G*EPCM!n|(s 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%0D)}Bc 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�H>YnQL1qGSN`1wNz7w*>aT$ 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

    oun6vnX-3+AF~HHSBjrghba4(rou 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 ?nkM5hRnfV}Uxsg*Ri}#$ngioUwX@@LkA|Yb% zxc-T~wVu3uAik!J+!1QJELl(2Ay~LHs1;5*@C~gsRodD;=&ZV{pydOk2m*JIf9F2j zhWNbT4al)-e$EVAd*b12bw=X3Ux}bAZL`C@)@=Li@MI#*2sV#G5$+;3%KHYs4782N zpounhw9^M3uz6=&{dw_P+3TOFT%Kxzo@spD^DTV9+pD}^JNr}R^CX=;hYyT&vGSDH zjy0Lb4(-Q@O;TM?DdK5C|s=Y;}E4 z;85s5`Fd)fMRXb;X{8__?uv-*T}hS$eA-tfdg;!3MP;rna+U<3Gz%5+_BPSDIN4=b z?{&)7n0HpHLM;M@PfO-zq`kS)I5W=bw2Cu}Hq+=^O^;wmWNX2s>(ylAr9|%1LFy8W zpUXHZiB9Q(PRvM8FGUG~^ZQmH8EH0a*y`_&6@UI)g>%zSuvFdmJ$!zT{y{8N0}kZ( z_UNB}<8xoEtYf;%2UXe{7hWOIN9-M+wlYlNJ=)OJsa}e{*zp*9F5{^rL5qEXp=4(q z19uBbWElw8ZBzH$jo8j?PQVGcvJ?a1GjiFv{RPy&eIG!WwA-#!j~#?i;9fWm)B&oi z$(+~pMiDZJsxc>MMSB4TF%eVLz*1m?h8v60P;aS|L5sI(VUuP9U-XiCcjByr@roPW z{^EnE!v7Mk0`#(tS&qbRTWt)+%O^HXPRu^DI%0}fo0AA_0Y`yQ}Eh$aNh^SKTY1o<)wD+)qMPI$ZiD(n7kXi@rkZCax9C-Wh@*xy@ z|9t}L^#KaKf4(03+poNqx8IyE{j@K8{I&6muaoKjkT3nTw?FaPE9dJUea++BZ^>s0 z!r%Ji-}=no@Z0jGpY<7i$JfTwBks5S_&0z2@B8ifu`hmqKEgWLk=_W%9Ka`L%kAuq zyiX=wi&#)UY>6}s_bW&ZoldmQknEn++(KInG(LI^O$i7JPU0W}S%u63fGGCv~2VAEB_ z)My7QACq<9x$Lp6j82x+!sz%K<(TgocdE%R{n|I)eAVChx}Tt&yziU%fKR^j<@vso z?~|`T_hJ$@uO?>=$;u#e@2C10*8vtzKr-}APxQg)(2ppIWyAP%X*)L$U0Z3SgQaAB z3Gab@+@|)RX{YSU9Ni;EFTFf^TRoED{<{6(S3H4!QeQ_p?;5RSAn3RQXVd|K;ZBPP zrASoU1P|&`X0O9yzQSS##{9ml+KxpsSB6cEHW-27Y|gE%hSLX&Q7cET^O6p4<&4`8 z;VNpm`M&IweP<>{=(3u(fz+!Gk7b^s-Oj-Rk0J$XzL9E_HWz%A7|0)+b`0|zgC#So z<{D5zsG)T*dkj|sEG)Q#FS&9d@ALMQmE{+n>c%Fy^Yq zx0j8`Y%a=Mu#L~6Y#bx8u(#ZTA7q8(^{|Fh1!#B!4yBmO7v`hA&2}oOCo8H6X9+AI zAjW~GXR8hGFuE2oaTB}!$csS{_gysn$_KGg{;K>OJ0ia(?{q{EIxRK>I+?l0LIk86Ue?KQ3~s&mMP2qKd3w-fJ8JgV%SR87W z+6Yot$i%C+A)Snm`ba2~^Fkl{Q@!)fR+SXa?zSC=K=y6 z;dB5i51%JklY7Bz-$$w_;c1bIHFx+%K!|G4we_`-b9(D*Dn^;T9o&NQ;R~^KI-5v( z^xGf!cVE=AovXKn9irEE0$YOsZ@iw{inBXcw2|GrWw%vwu86gB4DjJO_Ugtsi~9_8 zFbvBu@Xea$g2Pz=AGMb z{HBlGS)f+xs>A>ri=el@`XamFr>JVRMrHR6zVy^H!Xi(!sf&l4Gxr)6p1DTs zxqP%`g*IRDaj!;RLTGbNiLGKwS@Z-r?XB_@6mG5_m-GR~7`LZ=+V(!h#*?o<56(#i3yi=_Mtp;~?kr5doIb?OUA_Y=?6y8k}>1PY|jw+Qa<$!G-dyPhUIwCoz z9{}lHhQ*w7G0m|6G*t+Mg>HZI-@pA07D)mWpSfo2G=p}TrXZ)He~L*su!+b$C^b!T?$MQ18Xym|Hd4OGG z_QED3DT{DWWCfVnh~_>>w}&dX1vg)i>)Le2F4`}S5p9Op59MIOFQdmwK?E1unUvC&Lr&z zy2FblWXt9v>m6l0kVVHPd;@A_sxo!^D6?_mI4DO54b;hX=GGy4+8nY^p53ho#jvh* z`_}6+?p?F-ZP#Vo`@8e)*JUgO7fNd#nqd%p5S%fp`IL!;+3O75T3}l8FygE7hfF#| zbn)y93)x0BYMKW)+b&l(e=m(8Q#cP;Glj~ry!11kZul4Z`1YNj{>XD> zCg1hxkG%9Rz4!Zf{-*E#^hZAS(f5@KJE@(e-4z6^1ArRFqi0`kLA%UNS7$c>_&jGV zgvBA72JMN4#|yO%PQKVo63+=#%T7S|P@2+)?xKy8ndxYHs8HW0o42^joz|R6wsH;$ zb=r6$7l>Rn54iF%?2Mr+dlR&i*^KzI)vbmXz3p>$&V9YyQe{*sb1yu%q`W83H3fQb z9vd+p(Js_4V`yY1cS?nydEM?u=e0NNt!MR}_kHi4UoA9f(U9;@_Jd{Q!PCC`U|C6Xv|p1jT?>;;i0w;6|Ht<$dF?`Ve5iKi<5%g+g4*Kk#^Pu z?MyHx4vZ~V3zxAAs{K`XG*c;ILYfQ_Go4hcPgsTW_QPKZVUkqt(bx@z%G^6vPfXhV zw7ok1vW@B%PFfJkMrh*p96v@moFqf?P|tStxwH43YoMx_xtUJ&N#__sc#P4R>$=oV zUhu-zZhsb60Y9hmY}S!ru&fF#td=I-8f`f?Jy`oSn99A^_GqNhASfUU4V+a)dZBx; z_6TF1dsI84O$2@k?_?T67_et4vU$tC&bf@61?_O z=%ZVMRrhey%he@}Wda!yt?3*S-l_qnRKPwI+*{m!6Gw@#6f&w?Clz`2AJkUwQkp6WAwpOTO{R+h2YAZV(a8a{`~-p4MQnTYZ!@_U=&k zuYoDw(u6f#4qFwioPC~*L=+gy8d!@N$z|4&=&_N3v&dn+Rh_IM>8-Y0Joqxf*8BW zFuk4WID8Ua#or1Knj41R#OzFF#_X%h-5{bbd2;7odHwZz^R4>2x1Px&y63z1fNQ?? za(j8aFN+9Yf1%WT_r5rM^OvJX{9J$eeczzJ|IS0WLI2Tqq5g%i+an4-5 zxdf;0*cHX8*W_+X2jSdFH>0@iJA6{A*P42GhNif+JL}@V`1a#^^!V#vk4N=&Z`GTx z+iQ;=zxBqO&k)V;`z}6zeKh>_b0GN@Vn+><*2P%h^fsSeYV|=I4Y&ON+Pij~h+-H> zkC0a42HVh3II&+olpt{dPLPi+RxgN^-f~C~+zHKF3bv#}h%%`X7Zb}fnJK~?HE6-J z(iFzVFkNaiA%v{5vzpD}=-gJTYOl=G#K8>S?F_;kk+39^DAaC|zVOkX5PZk=KR*6_ ze0&|hp+Ilrha}@^clj~Cvy3A;HX9o%mR_ z`(_B)g$+dwX7EMF^bG-mnoungmslY66e+P-Cum$^7K%9)h0v5)ibhN=l=^D!j(^)e tFd?ih;Csf!GVk_#?YB@WE?3uQ+sz78$Bl +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/dashboard/next.config.mjs b/dashboard/next.config.mjs new file mode 100644 index 00000000..9db9e0da --- /dev/null +++ b/dashboard/next.config.mjs @@ -0,0 +1,43 @@ +// eslint-disable-next-line import/no-extraneous-dependencies +import withPWA from 'next-pwa'; + +const isStaticExport = 'false'; + +/** + * @type {import('next').NextConfig} + */ +const nextConfig = { + trailingSlash: true, + basePath: process.env.NEXT_PUBLIC_BASE_PATH, + env: { + BUILD_STATIC_EXPORT: isStaticExport, + }, + modularizeImports: { + '@mui/icons-material': { + transform: '@mui/icons-material/{{member}}', + }, + '@mui/material': { + transform: '@mui/material/{{member}}', + }, + '@mui/lab': { + transform: '@mui/lab/{{member}}', + }, + }, + webpack(config) { + config.module.rules.push({ + test: /\.svg$/, + use: ['@svgr/webpack'], + }); + + return config; + }, + output: 'standalone', // or 'export' or 'browser' or 'server' or 'experimental-server' + ...(isStaticExport === 'true' && { + output: 'export', + }), +}; + +export default withPWA({ + dest: 'public', + disable: process.env.NODE_ENV === 'development', +})(nextConfig); diff --git a/dashboard/openapi-ts.config.mjs b/dashboard/openapi-ts.config.mjs new file mode 100644 index 00000000..d0026b53 --- /dev/null +++ b/dashboard/openapi-ts.config.mjs @@ -0,0 +1,17 @@ +/** @type {import('@hey-api/openapi-ts').UserConfig} */ +export default { + client: '@hey-api/client-fetch', + input: 'src/lib/openapi.json', + output: { + format: 'prettier', + lint: 'eslint', + path: 'src/lib/swissknife', + }, + types: { + dates: 'types+transform', + enums: 'javascript', + }, + schemas: { + type: 'form', + }, +}; diff --git a/dashboard/package.json b/dashboard/package.json new file mode 100644 index 00000000..8141656c --- /dev/null +++ b/dashboard/package.json @@ -0,0 +1,124 @@ +{ + "name": "swissknife-dashboard", + "author": "Dario Anongba Varela", + "version": "0.1.4", + "email": "dario.varela@numeraire.tech", + "description": "Numeraire Bitcoin SwissKnife Dashboard", + "private": true, + "scripts": { + "dev": "next dev -p 8080", + "start": "next start -p 8080", + "build": "next build", + "lint": "eslint \"src/**/*.{js,jsx,ts,tsx}\"", + "lint:fix": "eslint --fix \"src/**/*.{js,jsx,ts,tsx}\"", + "fm:check": "prettier --check \"src/**/*.{js,jsx,ts,tsx}\"", + "fm:fix": "prettier --write \"src/**/*.{js,jsx,ts,tsx}\"", + "rm:all": "rm -rf node_modules .next out dist build", + "re:start": "yarn rm:all && yarn install && yarn dev", + "re:build": "yarn rm:all && yarn install && yarn build", + "re:build-npm": "npm run rm:all && npm install && npm run build", + "dev:ts": "yarn dev & yarn ts:watch", + "ts": "tsc --noEmit --incremental", + "ts:watch": "yarn ts --watch", + "start:out": "npx serve@latest out -p 8082", + "openapi-ts": "rm -rf src/lib/swissknife && openapi-ts" + }, + "dependencies": { + "@auth0/auth0-react": "^2.2.4", + "@dnd-kit/core": "^6.1.0", + "@dnd-kit/sortable": "^8.0.0", + "@dnd-kit/utilities": "^3.2.2", + "@emotion/cache": "^11.11.0", + "@emotion/react": "^11.11.4", + "@emotion/styled": "^11.11.5", + "@fontsource/inter": "^5.0.18", + "@hey-api/client-fetch": "^0.4.2", + "@hookform/resolvers": "^3.9.0", + "@iconify/react": "^5.0.1", + "@mui/lab": "^5.0.0-alpha.170", + "@mui/material": "^5.15.20", + "@mui/material-nextjs": "^5.15.11", + "@mui/x-data-grid": "^7.7.0", + "@mui/x-date-pickers": "^7.7.0", + "@mui/x-tree-view": "^7.7.0", + "@react-pdf/renderer": "^3.4.4", + "@supabase/supabase-js": "^2.43.4", + "@yudiel/react-qr-scanner": "^2.0.4", + "ajv": "^8.17.1", + "ajv-errors": "^3.0.0", + "ajv-formats": "^3.0.1", + "apexcharts": "^3.49.1", + "autosuggest-highlight": "^3.3.4", + "bech32": "^2.0.0", + "dayjs": "^1.11.11", + "embla-carousel": "^8.1.5", + "embla-carousel-auto-height": "^8.1.5", + "embla-carousel-auto-scroll": "^8.1.5", + "embla-carousel-autoplay": "^8.1.5", + "embla-carousel-react": "^8.1.5", + "framer-motion": "^11.2.10", + "i18next": "^23.11.5", + "i18next-browser-languagedetector": "^8.0.0", + "i18next-resources-to-backend": "^1.2.1", + "jwt-decode": "^4.0.0", + "light-bolt11-decoder": "^3.1.1", + "mui-one-time-password-input": "^2.0.2", + "next": "^14.2.4", + "next-pwa": "^5.6.0", + "nprogress": "^0.2.0", + "react": "^18.3.1", + "react-apexcharts": "^1.4.1", + "react-dom": "^18.3.1", + "react-dropzone": "^14.2.3", + "react-hook-form": "^7.53.0", + "react-i18next": "^14.1.2", + "react-joyride": "^2.8.2", + "react-lazy-load-image-component": "^1.6.0", + "react-markdown": "^9.0.1", + "react-phone-number-input": "^3.4.3", + "react-qrcode-logo": "^3.0.0", + "rehype-highlight": "^7.0.0", + "rehype-raw": "^7.0.0", + "remark-gfm": "^4.0.0", + "simplebar-react": "^3.2.5", + "sonner": "^1.5.0", + "stylis": "^4.3.2", + "stylis-plugin-rtl": "^2.1.1", + "swr": "^2.2.5", + "turndown": "^7.2.0", + "zod": "^3.23.8" + }, + "devDependencies": { + "@hey-api/openapi-ts": "^0.53.11", + "@svgr/webpack": "^8.1.0", + "@types/autosuggest-highlight": "^3.2.3", + "@types/next-pwa": "^5.6.9", + "@types/node": "^20.14.2", + "@types/nprogress": "^0.2.3", + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", + "@types/react-lazy-load-image-component": "^1.6.4", + "@types/stylis": "^4.2.6", + "@types/turndown": "^5.0.4", + "@typescript-eslint/eslint-plugin": "^7.13.0", + "@typescript-eslint/parser": "^7.13.0", + "eslint": "^8.57.0", + "eslint-config-airbnb": "^19.0.4", + "eslint-config-airbnb-typescript": "^18.0.0", + "eslint-config-prettier": "^9.1.0", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jsx-a11y": "^6.8.0", + "eslint-plugin-perfectionist": "^2.11.0", + "eslint-plugin-prettier": "^5.1.3", + "eslint-plugin-react": "^7.34.2", + "eslint-plugin-react-hooks": "^4.6.2", + "eslint-plugin-unused-imports": "^3.2.0", + "prettier": "^3.3.2", + "typescript": "^5.4.5" + }, + "packageManager": "yarn@4.4.0", + "engines": { + "node": "20.x" + } +} diff --git a/dashboard/prettier.config.mjs b/dashboard/prettier.config.mjs new file mode 100644 index 00000000..bb0123c6 --- /dev/null +++ b/dashboard/prettier.config.mjs @@ -0,0 +1,15 @@ +/** + * @type {import("prettier").Config} + * Need to restart IDE when changing configuration + * Open the command palette (Ctrl + Shift + P) and execute the command > Reload Window. + */ +const config = { + semi: true, + tabWidth: 2, + endOfLine: 'lf', + printWidth: 140, + singleQuote: true, + trailingComma: 'es5', +}; + +export default config; diff --git a/dashboard/public/_redirects b/dashboard/public/_redirects new file mode 100644 index 00000000..50a46335 --- /dev/null +++ b/dashboard/public/_redirects @@ -0,0 +1 @@ +/* /index.html 200 \ No newline at end of file diff --git a/dashboard/public/assets/background/background-3-blur.webp b/dashboard/public/assets/background/background-3-blur.webp new file mode 100644 index 0000000000000000000000000000000000000000..106fdca9199ebe1619b535312d40ca2cf17f9f9d GIT binary patch literal 9944 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 Wo@4g>{>b3+R;i0DrdE5cAOHZHazFn7 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/background/background-4.jpg b/dashboard/public/assets/background/background-4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7a26aad7b8f3f44d6b5523cb57422a618163508d GIT binary patch literal 5761 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 + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/cyan-blur.png b/dashboard/public/assets/cyan-blur.png new file mode 100644 index 0000000000000000000000000000000000000000..b5dbc95dadc58c306f112aadd2341a1c38ce51af GIT binary patch literal 17324 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 + + 编组 31 + + + + + + + + + + + + + \ No newline at end of file diff --git a/dashboard/public/assets/icons/bitcoin/ic-bitcoin.svg b/dashboard/public/assets/icons/bitcoin/ic-bitcoin.svg new file mode 100644 index 00000000..063d6ccd --- /dev/null +++ b/dashboard/public/assets/icons/bitcoin/ic-bitcoin.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/dashboard/public/assets/icons/bitcoin/ic-lightning.svg b/dashboard/public/assets/icons/bitcoin/ic-lightning.svg new file mode 100644 index 00000000..d9e946e7 --- /dev/null +++ b/dashboard/public/assets/icons/bitcoin/ic-lightning.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/brands/ic-brand-breez.svg b/dashboard/public/assets/icons/brands/ic-brand-breez.svg new file mode 100644 index 00000000..166fb81b --- /dev/null +++ b/dashboard/public/assets/icons/brands/ic-brand-breez.svg @@ -0,0 +1,45 @@ + + + + + + diff --git a/dashboard/public/assets/icons/brands/ic-brand-cln-emblem.svg b/dashboard/public/assets/icons/brands/ic-brand-cln-emblem.svg new file mode 100644 index 00000000..116d8adf --- /dev/null +++ b/dashboard/public/assets/icons/brands/ic-brand-cln-emblem.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/dashboard/public/assets/icons/brands/ic-brand-cln.svg b/dashboard/public/assets/icons/brands/ic-brand-cln.svg new file mode 100644 index 00000000..5371e98b --- /dev/null +++ b/dashboard/public/assets/icons/brands/ic-brand-cln.svg @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/brands/ic-brand-greenlight.svg b/dashboard/public/assets/icons/brands/ic-brand-greenlight.svg new file mode 100644 index 00000000..6c2e5d50 --- /dev/null +++ b/dashboard/public/assets/icons/brands/ic-brand-greenlight.svg @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/brands/ic-brand-lnd.png b/dashboard/public/assets/icons/brands/ic-brand-lnd.png new file mode 100644 index 0000000000000000000000000000000000000000..ab7f04668d3e39c203da451b9e1dadd32d508e15 GIT binary patch literal 5540 zcmeHLi93{S+aKAoM z>?fbvUsdWKnx?Jm>l#uq_foM%wVymO2mg*M5P5cNkFWUgvG~N%P?l!IWe%i}ib*G8e|($r z%HX7#m!IA%ZJa{7VS3@qx1TXu$jnGav_4Wh)VpK=GsWE)D#q*SNX&1{P8U(ny#M;M zQTLRrj?{dzy~UpsA5l7X(IXFyR(lq4fzm_j2T=tJJQCI&K)ojHn%hv{w2N)}$z{ev)o`^1js~{XE-G z=hgFtqQo4hwwOKphhON7o%()GJYsdNvG_CL3V_zsy;`a2WF675m%4l>8)<#@si=1NG z{F`}#ld1zB|Mk;uZ1Nalzr-fB!%gC37|197oBJ01jtk0%`mu}U(Qxgcvk11iz1bt$j!Y}u<6_Im?x zYNqC>_#k?n#n?K{^b?bZAshNNA5#x3xu9Yabr3Mvz$AK?QY_s>M6u1V1B$&AykO6o zYO8Hr9K5ni-1pB;vRSLa$S=TAb9`?c)4Y5XV-QYOkV^#q+Ij^F8q9oni|Am0i11M^ zu7%#mkf9JqGYM#VXN#V}6)^#n`@@5Zy{CqJ89o@vJiqq6yuj&_zM(M!d9;1f9RVPn zx$0Z|*<1+K_M3gX0T9nQ+%a5$+qLHV$CNzeC`7)qCkpD6rQ5@r|Ne2(x^kD0>Ns)w zK3IS;W(dZ?55vIrY!kL<-m}?RG$7(Gh)1A)RCt}CC4c81PO!+4Nj~P~ide(0bbM9x z*6S-QRC|ai<)9;yy_}nIi>mjGh7xlDg zl;ce{f+%;ixbHMK{5gZ++?J0A&S1gjb<@og-yS12H0rSc@mY|$O3?FRqYV09K784( zagIcWEFf(7!yu`AG_6`|gyU29+KnVrNdG4fd+Cs*a z=(3s2U^Jav6+f*uV;`s852p}iKGgpRuDPTSiXO12Y3Kp=*FtvtIB$UQb`car6~II+ zM#D|+=03lBeKan^UGTv#pei?tSb3KWLQNKs@4XCfx(l9qfq(V$@JMiJC*Z1W+FnJflo1`}`vJC%r81->m}L2dzwr-Iu?4 zgjJe@GyROKvK{c}i-Rwk(A+kD2jJ8R)In9rN;L;QonOa^-YzI~<*v?*tLUXH^Kut^ zgLO@(4vxh+u%)1GfdUdaQKJPM){y|H0?#+e3#~_V7yNDs%|!|}(q;+ZY*0E0E{mep=o>ti5b(u1q$YfXKAJ*A3ZRLstuC>V0&Apv$e4GwHm z!1lwrh(#-dJlZTlKkt(+!AJt;kzhcgY}lgU(&J!5%o*NQ2rzcuu_*VE2grl$HWHe678bDkwv zU4XAev_R#COZgPQs*jtu)er(a&Q?EWoc!CDf$xNhQgwqr`=Jb!=MGApF2{19M-bpY zAeLe4T+?(yogN_BMJ^PvwCpIZ~=s#B00RR9$T%)CkX-AeV`gi4cwgIsp;tdb_qPd!MSk8 zQiTy|vXX!TkK9y6{_M$?_M)|qX{$VfbO9^*J=J4Ufl*{Ucn+carqwR7$=8_6Vjvk= zjmvD#m-T0_p)GIQ-?dx-{= zR~ES4b&(ux7`hxtwV+Hhk(bz;3-5|O4gmjEplit3_pTmmKKi|5qLbtKslg9oEPM$NOIH`znD*=^a2>!gRZuu% zo|eJKj6Az=r8(;kK0i-BtowK^{<4d+ySZ#1=fF<<1Gaan5W?p zI)W@<8RVuapT^O}JbSq~EicCkK4uS`?2Vjoo=_Qgv6H1V3r2aSlktRi#ZTPSF}cZ& zZhS@qc9t!ooEoAgq({}1)lTL{G@^I2|7A2YNr;@)mcdFxPGAIM6n!WHD3Z$HuJj=~ ze|Dr>hMnpK7C7HqE$?C_kfWM&^5o?xLhgh6tdsis`s5J^{L8QH2u9dgM8}i!Ap#jg zWyR*@O?xbrJ6-{1FGOvi6%E$T8E;>k*=LW%OIO_;ui75Nsi^4tnztgFUa?VY{m$P? zY%4va%2|G2hw&9=3lGOOI#QK#l1WogRCR6LN6DtEiUitNO6<>)mjdNDf0ZvrFKVkf zcGmlZ*@CDQa#dB8ypqxuH`Xp~>`C9{j?|%olGg55C{VtXR>CKU(x73>+Xe?8rMT;yV=+SRHpz64>}p98MIaE7 zQ8_2)44PObx z@^A%zZ05^p$zwy0UDJohjFbt#pTt*f9o2|~+v%P;+yrFWt1Bny`{Dbza4}G$6P+K$+f6 z@^eaZOJpc#13f(tq$(Orq-w}tw;odNZM^H%Bz0W5j?HN!T;9-RNinzfQcBO3o{U<% zDlR28A|9G!HRTrAJvNtxJ|@>~BZ9?r+~gPjaLGjStw>%&kcqc?$Ogl{dg6Ud?w5qLG*+WJxtD{*@twU%YEL`m@ueb*Jk zPYSU=wOdydG?d7vU$3HBVMmbONTj6lDfvW6rD`?!_oftl)#f*2ZwF3~9k*;OiR5P1 z>RBeX`C=jVd`6z)Gi~!$9k6Hg-NE>kp*TOo8{a>Bnl>(^k~s}WbroLx>32{kSamFq zFgvd2_k4H;$lew1dSX>jYwY$?nC$1E`1c{EjRx^iNpVZ0FIS24o^gYHv%mE%2`_Jv#W0>Sub0aF{R^JC5?|Ks4HCyoe;pai z>1hj(95^#7C+5H)`L?gH \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-alert.svg b/dashboard/public/assets/icons/components/ic-alert.svg new file mode 100644 index 00000000..dd9293dc --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-alert.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-autocomplete.svg b/dashboard/public/assets/icons/components/ic-autocomplete.svg new file mode 100644 index 00000000..bdca6b87 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-autocomplete.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-avatar.svg b/dashboard/public/assets/icons/components/ic-avatar.svg new file mode 100644 index 00000000..58383b21 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-avatar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-badge.svg b/dashboard/public/assets/icons/components/ic-badge.svg new file mode 100644 index 00000000..facf08b4 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-badge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-breadcrumbs.svg b/dashboard/public/assets/icons/components/ic-breadcrumbs.svg new file mode 100644 index 00000000..169b414f --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-breadcrumbs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-buttons.svg b/dashboard/public/assets/icons/components/ic-buttons.svg new file mode 100644 index 00000000..d89e1204 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-buttons.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-checkbox.svg b/dashboard/public/assets/icons/components/ic-checkbox.svg new file mode 100644 index 00000000..77101ec4 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-checkbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-chip.svg b/dashboard/public/assets/icons/components/ic-chip.svg new file mode 100644 index 00000000..d8f7666c --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-chip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-colors.svg b/dashboard/public/assets/icons/components/ic-colors.svg new file mode 100644 index 00000000..07f08bbb --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-colors.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-data-grid.svg b/dashboard/public/assets/icons/components/ic-data-grid.svg new file mode 100644 index 00000000..f33bad86 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-data-grid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-dialog.svg b/dashboard/public/assets/icons/components/ic-dialog.svg new file mode 100644 index 00000000..a5f18ecb --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-dialog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-animate.svg b/dashboard/public/assets/icons/components/ic-extra-animate.svg new file mode 100644 index 00000000..146b15cb --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-animate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-carousel.svg b/dashboard/public/assets/icons/components/ic-extra-carousel.svg new file mode 100644 index 00000000..78fa295d --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-carousel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-chart.svg b/dashboard/public/assets/icons/components/ic-extra-chart.svg new file mode 100644 index 00000000..cd5d678e --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-chart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-dnd.svg b/dashboard/public/assets/icons/components/ic-extra-dnd.svg new file mode 100644 index 00000000..35d60370 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-dnd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-editor.svg b/dashboard/public/assets/icons/components/ic-extra-editor.svg new file mode 100644 index 00000000..355c02fd --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-editor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-form-validation.svg b/dashboard/public/assets/icons/components/ic-extra-form-validation.svg new file mode 100644 index 00000000..dd37949e --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-form-validation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-form-wizard.svg b/dashboard/public/assets/icons/components/ic-extra-form-wizard.svg new file mode 100644 index 00000000..781e26ce --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-form-wizard.svg @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/components/ic-extra-image.svg b/dashboard/public/assets/icons/components/ic-extra-image.svg new file mode 100644 index 00000000..5145bc00 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-label.svg b/dashboard/public/assets/icons/components/ic-extra-label.svg new file mode 100644 index 00000000..37c0c122 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-label.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-lightbox.svg b/dashboard/public/assets/icons/components/ic-extra-lightbox.svg new file mode 100644 index 00000000..b0b61406 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-lightbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-map.svg b/dashboard/public/assets/icons/components/ic-extra-map.svg new file mode 100644 index 00000000..684acf09 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-map.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-markdown.svg b/dashboard/public/assets/icons/components/ic-extra-markdown.svg new file mode 100644 index 00000000..2e95c947 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-markdown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-mega-menu.svg b/dashboard/public/assets/icons/components/ic-extra-mega-menu.svg new file mode 100644 index 00000000..fa83f3f5 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-mega-menu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-multi-language.svg b/dashboard/public/assets/icons/components/ic-extra-multi-language.svg new file mode 100644 index 00000000..fa34fed1 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-multi-language.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-navigation-bar.svg b/dashboard/public/assets/icons/components/ic-extra-navigation-bar.svg new file mode 100644 index 00000000..be234fde --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-navigation-bar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-organization-chart.svg b/dashboard/public/assets/icons/components/ic-extra-organization-chart.svg new file mode 100644 index 00000000..0b6f30a6 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-organization-chart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-scroll-progress.svg b/dashboard/public/assets/icons/components/ic-extra-scroll-progress.svg new file mode 100644 index 00000000..0d3ca1d4 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-scroll-progress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-scroll.svg b/dashboard/public/assets/icons/components/ic-extra-scroll.svg new file mode 100644 index 00000000..a88d886a --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-scroll.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-snackbar.svg b/dashboard/public/assets/icons/components/ic-extra-snackbar.svg new file mode 100644 index 00000000..269bba89 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-snackbar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-upload.svg b/dashboard/public/assets/icons/components/ic-extra-upload.svg new file mode 100644 index 00000000..105cc34e --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-utilities.svg b/dashboard/public/assets/icons/components/ic-extra-utilities.svg new file mode 100644 index 00000000..0bd84d27 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-utilities.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-extra-walktour.svg b/dashboard/public/assets/icons/components/ic-extra-walktour.svg new file mode 100644 index 00000000..05973eef --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-extra-walktour.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-grid.svg b/dashboard/public/assets/icons/components/ic-grid.svg new file mode 100644 index 00000000..9c7a38bb --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-grid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-icons.svg b/dashboard/public/assets/icons/components/ic-icons.svg new file mode 100644 index 00000000..7c70ed35 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-icons.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-list.svg b/dashboard/public/assets/icons/components/ic-list.svg new file mode 100644 index 00000000..01854b46 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-menu.svg b/dashboard/public/assets/icons/components/ic-menu.svg new file mode 100644 index 00000000..df9f13ff --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-menu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-pagination.svg b/dashboard/public/assets/icons/components/ic-pagination.svg new file mode 100644 index 00000000..0176fa99 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-pagination.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-pickers.svg b/dashboard/public/assets/icons/components/ic-pickers.svg new file mode 100644 index 00000000..b7c6de15 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-pickers.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-popover.svg b/dashboard/public/assets/icons/components/ic-popover.svg new file mode 100644 index 00000000..8e8bda11 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-popover.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-progress.svg b/dashboard/public/assets/icons/components/ic-progress.svg new file mode 100644 index 00000000..e736c5a3 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-progress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-radio-button.svg b/dashboard/public/assets/icons/components/ic-radio-button.svg new file mode 100644 index 00000000..155cce3d --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-radio-button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-rating.svg b/dashboard/public/assets/icons/components/ic-rating.svg new file mode 100644 index 00000000..7891a50d --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-rating.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-shadows.svg b/dashboard/public/assets/icons/components/ic-shadows.svg new file mode 100644 index 00000000..8fb65c83 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-shadows.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-slider.svg b/dashboard/public/assets/icons/components/ic-slider.svg new file mode 100644 index 00000000..6ded8915 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-slider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-stepper.svg b/dashboard/public/assets/icons/components/ic-stepper.svg new file mode 100644 index 00000000..d26e70d5 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-stepper.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-switch.svg b/dashboard/public/assets/icons/components/ic-switch.svg new file mode 100644 index 00000000..acc9fd1e --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-switch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-table.svg b/dashboard/public/assets/icons/components/ic-table.svg new file mode 100644 index 00000000..b11b4ce9 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-tabs.svg b/dashboard/public/assets/icons/components/ic-tabs.svg new file mode 100644 index 00000000..1eb82085 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-tabs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-textfield.svg b/dashboard/public/assets/icons/components/ic-textfield.svg new file mode 100644 index 00000000..9f6522c4 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-textfield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-timeline.svg b/dashboard/public/assets/icons/components/ic-timeline.svg new file mode 100644 index 00000000..e0a459fc --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-timeline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-tooltip.svg b/dashboard/public/assets/icons/components/ic-tooltip.svg new file mode 100644 index 00000000..2210cfa2 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-tooltip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-transfer-list.svg b/dashboard/public/assets/icons/components/ic-transfer-list.svg new file mode 100644 index 00000000..0164eb8d --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-transfer-list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-tree-view.svg b/dashboard/public/assets/icons/components/ic-tree-view.svg new file mode 100644 index 00000000..3e3b3595 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-tree-view.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/components/ic-typography.svg b/dashboard/public/assets/icons/components/ic-typography.svg new file mode 100644 index 00000000..db2cc1d0 --- /dev/null +++ b/dashboard/public/assets/icons/components/ic-typography.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/dashboard/public/assets/icons/empty/ic-content.svg b/dashboard/public/assets/icons/empty/ic-content.svg new file mode 100644 index 00000000..fd62b34e --- /dev/null +++ b/dashboard/public/assets/icons/empty/ic-content.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-ai.svg b/dashboard/public/assets/icons/files/ic-ai.svg new file mode 100644 index 00000000..4d8098a8 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-ai.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-audio.svg b/dashboard/public/assets/icons/files/ic-audio.svg new file mode 100644 index 00000000..329f232a --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-audio.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-document.svg b/dashboard/public/assets/icons/files/ic-document.svg new file mode 100644 index 00000000..5a53ca0c --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-document.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-excel.svg b/dashboard/public/assets/icons/files/ic-excel.svg new file mode 100644 index 00000000..cb80eb2b --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-excel.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-file.svg b/dashboard/public/assets/icons/files/ic-file.svg new file mode 100644 index 00000000..f5295c2e --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-file.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-folder.svg b/dashboard/public/assets/icons/files/ic-folder.svg new file mode 100644 index 00000000..01f6671e --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-folder.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/dashboard/public/assets/icons/files/ic-img.svg b/dashboard/public/assets/icons/files/ic-img.svg new file mode 100644 index 00000000..a95194a9 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-img.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-js.svg b/dashboard/public/assets/icons/files/ic-js.svg new file mode 100644 index 00000000..266b12ec --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-js.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-pdf.svg b/dashboard/public/assets/icons/files/ic-pdf.svg new file mode 100644 index 00000000..8ed54c94 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-pdf.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-power_point.svg b/dashboard/public/assets/icons/files/ic-power_point.svg new file mode 100644 index 00000000..f2d7f144 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-power_point.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-pts.svg b/dashboard/public/assets/icons/files/ic-pts.svg new file mode 100644 index 00000000..7ecbee0c --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-pts.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-txt.svg b/dashboard/public/assets/icons/files/ic-txt.svg new file mode 100644 index 00000000..1d34c348 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-txt.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-video.svg b/dashboard/public/assets/icons/files/ic-video.svg new file mode 100644 index 00000000..fb6eca6c --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-video.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-word.svg b/dashboard/public/assets/icons/files/ic-word.svg new file mode 100644 index 00000000..b112fe58 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-word.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/files/ic-zip.svg b/dashboard/public/assets/icons/files/ic-zip.svg new file mode 100644 index 00000000..f34001e8 --- /dev/null +++ b/dashboard/public/assets/icons/files/ic-zip.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/flagpack/ad.webp b/dashboard/public/assets/icons/flagpack/ad.webp new file mode 100644 index 0000000000000000000000000000000000000000..97cebc8d58d725e1ad64ac3f0cd0c83394544bd3 GIT binary patch literal 362 zcmV-w0hRtzNk&Fu0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlJcp`ko^ z_yG_OiE04C1&#gzu94Sh0B!&0_HLAaM#}#$Ku|kZWSF4N%k#Dzd4^}6aJKC|`}y)< zgRkbj)ByhWkTj-X%y0b-_%HZsn2L`uYTPArGz)%7WcNUFzDZ+z)opWpZMMr%f7T<+ z_#aE4$%t5c`BUtWUjxn25*pIT!q~Z?YaU#BN5s+yCd&W@=?hP$EpIUi zzMESaPaj06TN&3QT4EOB8wB)7i>i7As05Z&K$#u5J*zp zA7YJ&2nQl^1}4%mOYQD-pENA)V)+qv zk)hXP6eU-ya@cZvILcpZ6sp*NM2ENAPvPMYwgFS14AAJSW~fj%8v9*?PTu5J*zp zA7YJ&2nQl_h|Dlh;g06vjGnMtLiq9G%V z_^=WQY5>aT-$A#!Uxa*?qHmxF>vvi?5fM|)YQzw5$tNJ{;hVTQi<_osPpS%I!9mzb zE;D!qvCwq@0RH@|8UTJ8r{=NXAfXWz)%B{<9|z5E;5=|E2led#tSQgDV2k2?;QM~} z#llPhDxKArkIwz3#zz9r54URibJpln-@=~JGItpA$-9?dfqQGo3Xqf8zalFb1Y+sY zj58`XX8Hl>)BnNU;q>G4|H0ki^zJ@UKd<((%%llA@>WIkT&Uz=!!8*M&H;*$v%@Zy1^UVMr@J=a<_*Z>gS%FJ zsdYnUHgnE0k4M8s=c$tK9`>!-k*$y`bJfrKFI%x#e!mo$F6t$x*r=b1(wpu5J*zp zA7YJ&2nQl-0Dlh;g06vL0m`9}}qM^nz!ga(i)n)w@h0-nzw z7o;Apo4;WIKH(6iHfLMEi=KR$FY?|8lWb?npKG=E7XTKHOKcMQc)zrFZ*+;ELDQmtsh%UAb=x(P5ewkI$n%1pqVevCHao zsM3aX)EyaH4>$BzWThT2ONy1g_-^IWf8(;^cP$IX+M^FL5OmYoPB#i@G7AQ}9zaB| z$m4`5D~6XYx6|@<;undNASVmu5J*zp zA7YJ&2nQl4v-#TJd%9LcmO>BKV^L{{f$3x|7iWD9y4DF85ck$!{#3efl{K{J3KXyJXa=bvGYDqu537<<9S{Sn7O!b+C5u zDUs$}O|NX&0RAMu{~xP`xa7K87O&1dC&c9a_)6E!Q}0u}pZxo3eRnLul4E(qm~Et^ zq6Q>*ew6wC%tjaB%>zq?|HE72G0)V}0j){oir}bP5PZRX(e$X38@ubVqUm@wb5#cihRikK{x9zPUAL{}&I6^|}Z2dEOt2 zsf}TxqKqISux+IX{I4YE2`!6fzrqn1{VL>)Lcg4&Lsn5_k|5W6(Mq+)2mLs9kbA@z zR-6#{&Dc*^V}AR==tHJ9q&Ip}}? zybo^6{#PeDt+Uc&DuX=9`#X8g4qnkBl-jFJd83e7)&LxRYw1GiHZvtHHr!gj7{Sk4 zr{RrJ&{nmzT2Co+fl82hP)*JvhCv1L|DP#l`$q{+S)XM13%xnTIEuOEO&*>jCd3Qa wOekTHMynH|sqF!;W5eKNsU7VXMPwu8eA*nAim8yIxo?MeWZ)1FX0*(}0DwY=dH?_b literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/al.webp b/dashboard/public/assets/icons/flagpack/al.webp new file mode 100644 index 0000000000000000000000000000000000000000..92959187bcb012f72cbdab00599e42029678aa7f GIT binary patch literal 416 zcmV;R0bl-7Nk&GP0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlc>Gd~aD zu!{z8Rq%iS{`49{?m;hzMAsljqCfmueJFPK4A1|G3*tifkiXu_vR`-LE8ZN&pFI76 zB;~d|9IpH@Drzhvic|a1He86uhd*fsFbfx~A}SyBjUHh|@T^@Ug2e6b=~Gjoc{bze z^b^Ze15gY~-of@#j`H7%dr8;@{E~k>{%)*ifx;NNY6uf|Fnx1FOVBAe9yd#{E&PDSOu5J*zp zA7YJ&2nQl6aWDJ?o~ZxErAz{ z&AP@-h!T zM6dh40$x?`^f&)=S3Xtm^e&Z1v$Zxc8*{`z!rK>sDFpQvJ%h8`sIPVmQG0CF9kQ9t Osw(smIdJea0000{`(_;g literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ao.webp b/dashboard/public/assets/icons/flagpack/ao.webp new file mode 100644 index 0000000000000000000000000000000000000000..e2570fbd82bf9c73714d0e88d6b0e748d0bb5088 GIT binary patch literal 458 zcmV;*0X6u5J*zp zA7YJ&2nQlyeY5v2U(;(gLhf7d6SU+DSh<*h7Q+Zbfi|! zqqM(P`G4c6K#JM-K=K~m%JaZC zie2oT>u0^=uiM@C z=bz1)c8X>dA2n~ z93;Z@%Du=Z@oo7tIcJ-y`>*3Kz`yQ#dXEUaXYx0DqO+ AYybcN literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/aq.webp b/dashboard/public/assets/icons/flagpack/aq.webp new file mode 100644 index 0000000000000000000000000000000000000000..a3a91ab359899db58d951f77fc61855d03872ff3 GIT binary patch literal 382 zcmV-^0fGKfNk&F?0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjEn@FXjqM<6a zTmY~V31|Se`=Nub%=wV=Q)~v{4dl_u)pNohU+7A)pbmTtQ-{)==LUn?j?Z6Rsi$ALcVF6XH z!Qd3R<&#F%Cupyjr%-}zZ1;6;7d*HptPRi+EhL`fx=~N?dJ!+vXaAB&B)%uGTr0-f z0(DP%1O%f3+|lR}ziK93X*5<%eknPeE&R~QcSH7#7XS>FhW)17G>x=mUBUjoGvr?g z@M4MfY{IU79|%SrMrjbgo=_LQ9;E_eI8x_-5#NtNUc{;HiISV3^zNM@9@WWzre&-~ cE^Ienzo!6qYtULmBqA;7b}unG!5s&{07LnsBme*a literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ar.webp b/dashboard/public/assets/icons/flagpack/ar.webp new file mode 100644 index 0000000000000000000000000000000000000000..7f76fceb4c69f94550e4320b79f242fc481570f1 GIT binary patch literal 458 zcmV;*0X6u5J*zp zA7YJ&2nQl_h|Dlh;g06vjGno1?3q9P-V z_^=WQYyi76iOe^#{vb;h!vXqX>#L>#`hmcrM1n4=>D%d7n%@K}jLf>4vIcP4^w)PS zhn>+Wr>z%(PVtRJX1+ZYK7Ica+T=t<&Ss$zC`FNg>K{G{S4#HSAWg6lDO zT)>o6>GC;NZKnLcbiLLhTXrd{8#EdAz~YtcJt z{y0>Gi32j!1n)kgi-FK65`KCCONzFzX7t_vO;%yxlxUeJLyiryL~sxgu4{lV@;m`c&_m3X8I=+axOtr)&A4yA|R8jx{0QBd~ ADF6Tf literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/as.webp b/dashboard/public/assets/icons/flagpack/as.webp new file mode 100644 index 0000000000000000000000000000000000000000..af0c18006501454f78d56678bca26733e8e02a9e GIT binary patch literal 652 zcmV;70(1RRNk&G50ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl|*mVGN>w6ad;QB>%|C)fA z)bKyjzCX3He7CIlvSW|)uV-ud3kYdaK;mnq-vJk~2C`b%NjT>#8)^Um{`Qaqo}X)B zUpfyD`CeO#>ai!3;_5W(I^K$8$vKped#upXL7vJo(6hgpG`*v%gc`rMO#0m9B(=l` z_|UPP-G|~7fGzn)p>OtuO>-3`SNLADg+gj$|J6e8T!_0k-*4`k#rX_rZN<<1#5WVo zC#9q~vMwZ)FO@_fXvBKx^M;JUok*-wlD8&_XCr$In0$HtCAzpP#TACY*Jpc|0rKUA zliYutn5YD3&GsoiLk(5hlYh^8u?S-iB-cH7-%!kL3)a|!Gfp2+h;mIH7)6tlvB6LM zpvhTf9r`6~ZU?3rYbJL{G}dGKpY@nK-cG`+nbnFwfHtjwSuPQt7es(slMdsi0$%K1 zv*R!-RRBk`obTK&-{G0V7MqMpZAZQ zo?ynEZEDWUz<$mbUp%27W=90u;r$3JQMo$0&`OmWanPNNmD$xNuh>>73CLb6@y5pC4x=RivD7@?IB7ppZ&&L-~a$L$1+O* literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/at.webp b/dashboard/public/assets/icons/flagpack/at.webp new file mode 100644 index 0000000000000000000000000000000000000000..ad36affe110985a3c2c428878340c8e6369c085d GIT binary patch literal 244 zcmVu5J*zp zA7YJ&2nQlbP1)+pFXV%n u$A8bC?FgCu;{Sd8%LORh^{;{woq+7&*Ysu>;30xX+9JTWtB#Y{0002{u5J*zp zA7YJ&2nQlq>0n!mzySNt1IqV}s8$EcLEL511EaUERnHn0Rk=Q@{78{g(_iKi-$lP)K=^rr_uk*~ag*_3Q{_q+= zWCtaN_71_P1kIAj&A=(}ngKS|21l-HBcAdNOOG2wy|Q*cN3MmW=BLtS{i5rnzp-tW zd+VrHdc3GdWL4C^nW4Z1HG+;CF}G6nnl=09%*&5&wIG{^xxkmGZ9h;(<6V&A4R<{> z96HrH$EW1tynn?Ivf5t+!|b$I{h!Sma!iVH7u2Xf<5oNWPHTYX_BNWJw4J$z1K*r$K|&|L_w+Ff7ojPm|}O$x|r`oLY> zg|PpFg1YF#ZA25d?5F>%I!%Ck|J3Y!ST1irBkeL*PwkmP$d6s64N=dh_iWK?i4=ct za8U1voBsVv7U8Fjf*a!qLcdpD5>*@IRW?Q3HQbw#Xja8u&~hqc22#&_j-|W5e3)ar zbgVt3D%@|+N{5>2`sF&lI~cjFIQ@LT;%dJYZ9V{<$4+%rweEC3(Om-LP9Iazd zYdSBvx*)~VcX=nmAn0Wo5YBGqY68eQ+-)>KDlLIBFKm9iyM3z~%S#u^D$+{gc|2%{K$h zJ}E_C&trjRq=~!|#;Y4x_Ukq>c$MNJWo;AZvYW%3uF40je=9(}`Yiu-tos5$2L9v5jxq|}8rla_AVgLX^fxg`U literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/aw.webp b/dashboard/public/assets/icons/flagpack/aw.webp new file mode 100644 index 0000000000000000000000000000000000000000..b411d8f3bf070a698fda51a6fa733cfc94d1a00c GIT binary patch literal 384 zcmV-`0e}8dNk&F^0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQljI4KG+m{dk_VEA%aku5zcebW_eQ63|zd@MscHSHC49Q!qq?n`LYJrct|5R`S=xUxu zB|5*l_{|R3mpYQ6@Y39`gzEZ*bwUUe3xa$na zyX<;D2`pziRhDn#1-s<>Pu9nW^~6w@s+YZ6U;wL}f0P~V$-kc$WQ)F1ll2hxJPN!J zLL#Ev%ESH`6Dg5^8H6=4=z$6TcMbta9c1Mh%Yi^ar~(lo>m4|^?+1UlnQA^EAPh^N e=ad=)G}LW+VW&=z3rDvu5J*zp zA7YJ&2nQl-0Dlh;g06u**lSibhp`ko> z2mx>piEIF!Gn~aYyZoS2fc~5I-S2DrrXUZ}FZMsxedd3Fe!z7AZ~%VF`Z0da^}098 z>3{?`Tl|B$$AJ{d6(4VRfLV zaP-`?lXJCk{-Xc<-?#tzu$Tw#{1_S*@i&v2Lwwe+<2U|L-eW)l8(r@bm_nuMfYJQxx#s)-;N8lH_PbJF zLu}h~ySblwAQGKtuQG0FMN>b@y{iM8u5g!`bJC+#DDM2nPC+a4w&t6fmlxvwxPJd` zad-a~VVw$6%`*)?HE;fW(T^iA@@oAQ!17waDbJuR>OmLe#=_3IB)yOP74p1VDwcvMO@E=8{hRKl8tD1Vu0v6AOHaRp4vwM literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/az.webp b/dashboard/public/assets/icons/flagpack/az.webp new file mode 100644 index 0000000000000000000000000000000000000000..754bea39143baee2cf454c8fab1737d0727a4e7e GIT binary patch literal 444 zcmV;t0Ym;$Nk&Gr0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjGn@Odkq9~(` z`4AEbXaKkDFb6KxWk57Qc#i*o_ShJAdG0H3uvGiGm9%CiMF`QNHa+J>tUoQdo+Q0i z!p&=PQyR+VFaXqzha)?==Epu?e1F4wqyLhgQ00CMs8vP2hM`yg&cWq6PqKYhS_kW| z9K~Z{M8AQv%o6y@ji(8g4(hx2{3gZPHu(^SPQeph<5f*gyu%sp=lXJb1Nt?9FCQS* zLGaE#wkUI1tt@NtV)s@Q#DEztUF}_O{m8?T0)B@7*%)#_Ptbj}@B=do(uO$$27hOB zZI+DHI0Qe{l!D|T@#s%8OZiT=4xn&R?KKQkBz?HOFKOrBx;LXA1IQqS88*?$LYKBR z9|}fnKHq`;n?c88;0>SsmyUn)cX5>Y{l8l|RMV{fVnbS#?8+TBMqCv3-&f8l8F@{Y&eE?eeRMA3h&;S63u5J*zp zA7YJ&2nQlFcgw4mU)%i^9|P-cCLeDutpc;3?wq4v(rS0qQPyS;6S47vK{h4-OT%Bxk}BWzB9 z^>ny5M<`AW>Q%*0x`%3D3>MzD4T8{(wi5T1w~suy*b?T8u)5#O+?B#~GWxY#ygssK zK(&53c$Q|+*lGqM*eef6#?WEL{Btb$b4IrwMftIf%7shy3*zJ5{jacpBxhTm#*#UW zoVGW?Aew%#I$|bb=JS7H8T4fn?vQB4DfB*p8XCV6k literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bb.webp b/dashboard/public/assets/icons/flagpack/bb.webp new file mode 100644 index 0000000000000000000000000000000000000000..cada3b484ec1a1747a553fca64ec71aad0ad24f3 GIT binary patch literal 468 zcmV;_0W1DeNk&G@0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQloo-@nujPz-<^%zxlDSp5J$U^>`;VhGku4XuX=1)2HxFSD5i(7U5w z)#yTS89=GaZiKkdo>mO80092?e-Q+}xq&xZC)YsTsHP9xzyC7Z^etF#*aIHhs}28< zOWMSKiun8RQK;sV65hogXi!tX3@6^}dN-%YP1Q;LQFsm&p$U;Vdn^o^(&^&gfwus| zk95b{*F*wvk3xd1PDFRSpE@E2(iD7*jk;7{nq_YP9>(_e@E`0SiGj`h*s}Zr9PuwO zP(2GZ@KvGD{BP3}Y1;ddYChd-eC#eMfmO(LL(Pm<`R#tlO~#*PwX072;LVzR~hDlJQ9+B@IS`Hfc}w~AwyH`f8z zcytat#nin;3rqYf8 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bd.webp b/dashboard/public/assets/icons/flagpack/bd.webp new file mode 100644 index 0000000000000000000000000000000000000000..149536c41ea9d063ccbbcdadb2ec86de3be54689 GIT binary patch literal 300 zcmV+{0n`3cNk&E_0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlGl*j!Kc9?}yB y-S>HqUaWpk@_dAtt;KV(UbqzQ8~OcL>N{lw{u5J*zp zA7YJ&2nQlyv7wnQDq>Hru3{`=pH&~$BT`hH@Q zNbSV^?|TmgW%OO(vD2z@3XSDptyc4Y!~uG-*e13<|3L`9APfdCdBc=xZ{!*5je2=E u{Zz9PO}+AH@Vs3W>wr@>K?iH(1c-bEyRNkvn!@)K7h2vq9`0002IGhGS* literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bf.webp b/dashboard/public/assets/icons/flagpack/bf.webp new file mode 100644 index 0000000000000000000000000000000000000000..24b9c089955c6bde96e1005a5d996892874cc7f2 GIT binary patch literal 408 zcmV;J0cZYFNk&GH0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjIn@T04sUjnc z0U#0yXaK;oaIQc5x4-WEuQUa8EA6P3cglni1lEnfP$s)&^CxO<{%pO#8r;vga5xO&pRJSq;8)@}`ca$|8B literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bg.webp b/dashboard/public/assets/icons/flagpack/bg.webp new file mode 100644 index 0000000000000000000000000000000000000000..1414d6ab0aacca9ba98b27045a2405241af00d44 GIT binary patch literal 242 zcmVu5J*zp zA7YJ&2nQllt-l_A|W+M z0H6>FKo^(Z1;6+d790RS=!0dWHS&O&vCOZ=cPn&E@G8f}0092{cQNPkrA#<=K-Olg z??5b}JUrgS29dNZZTeQI^Nu<-PLkjVP=`*2!q?T(>I~{Qtvnxp_F6oz_{!hOzw<@x sf8#5EAjiyBR${mDb$cMZv!F(fjR7b8cC$i?7%Z3lJ(wbA<;Q>k01!f7M*si- literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bh.webp b/dashboard/public/assets/icons/flagpack/bh.webp new file mode 100644 index 0000000000000000000000000000000000000000..2818a5993d05efeecd1c9b33060acf6688004445 GIT binary patch literal 392 zcmV;30eAjVNk&G10RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-vGy4X z?H}LEjiVVfj{kzU`|QX)3rEClm=ymX^D$-D$fz8e#Y0bdRA$D(KyN_0{e;&4QbGle zPd|=ILG5C0&$jvZ#i0Po=BjjFwI&-W+V+NZxqfR)XNw$tgv42f12WI5W&R&hD!KuV zw65Vos=m-?p6^xglhUW6Qw$B1gl0RbxMJu*ffMQ|xKfT&L*#NbaUdDz-+0UCl7#E7 mCw+czn7v)6p)=Vw@1ync`tCP*upBl|@>ez079_GrH~;{2E2{PY literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bi.webp b/dashboard/public/assets/icons/flagpack/bi.webp new file mode 100644 index 0000000000000000000000000000000000000000..15dd9f885aaec0c24e8b8d8b420413c2dcf9c9a8 GIT binary patch literal 784 zcmV+r1MmD&Nk&Ep0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl{qQXSm)+@MV5Q^0=vqIc16}D_Ck=2T9rA|BrM_SGABS0@cCe;7)y zi=1ZkdQVz#!W}p8@{U}vx?Zs85|A`I|i?rI1Ff**;6Q-j2)<7Qed7>!}t?p#vHuG z{Pz}ur)$s2yC_Ne_}c%mn$@Y~TV#RCB9D+10GMDrVu#{(niBa9xTD9sKyGBlxiS1f z9FHYQkq(VzM1S^Gb}-Uc#qq$K$V)I7EYY|r>i`Ml>~{?e{xJg^rs#i-&xPY?#O{Qx zL!4?&<9*5v%EYlE>fdd7I*tyhke{#lEOflX>d6UkW_Rc^-l}0J>nb~N!XXKQJ3fO5 z#Q1jJzFhZ(=lZ3sNic#8AT{JtWQ_2grwaI~)HD28l<9LfjqAGt4vHh8W`NAFW)}bT z7})iAnr4|T^ZzFLkO%$~2h&Ud=*NK($uOhKvvNz(Y?`qbteMN65M=5Fg&etd@2C8& O+Al5qW?sMW0002xJaDf7 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bj.webp b/dashboard/public/assets/icons/flagpack/bj.webp new file mode 100644 index 0000000000000000000000000000000000000000..007ca43ffc1f3d111d3769b58bd07203f6223e0c GIT binary patch literal 278 zcmV+x0qOoyNk&Ev0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlziDCe|Fadb)8j*mg0LdiL>Hf62MKD|m>_J;E8Xzqc`>t~stvus9giIh}pu%J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(&(#OUymr=`rL6yO-(PWDIQe`DYi<=q@3j{cm7)}WF z{aIiu5J*zp zA7YJ&2nQlCeUE=|zhFJ0u5t2(A8q$< z5IezWifvDhkEg#|egV2WhCRO%11Rg;F5_1zOd1b&LnL|hb!N>+M^K~GEPIgC)93&M z0Q=Y;Ar~KX`#m#rm9=G-JF^&Qd#a!QJyh%^byR<;Jq7t-O4Yd+SFX|cXZXB`$E6E) z?~?P=(1ri;`nS2I?t;DxXuBctNl!lcmC89k(vYzvv*v&AzF zJ)3ao9CuELT^rD<^Z&tNH>?Ec!ewZFo4#6-BCq`LU+3M*YjCQWV5qj|in|5GhMT2A zQqg@%DxI~nYU?NvccNyHRw!&3?DVQwYiZ@^9Of--#w_^O!J8;#o^2n(rX{a;6(=Ged7 zitWEW!I9(ty42GgA|)Jv?no7Qn>BNMtDGW1UyZ7F9)Cqe4z4C|hvf}|QxMLl#Q%QK z#r2wx)EV_nldtCdv~hfxe2Iu6^38LMBpMQHRB^rL!hO5(e~#xh<)$o}ue96)q&kl} z!h6wa`%ho-Dfd?oU9Tk^H2MV3A^FB1Nsm&r?4iNAqQMT%tY$H!S|`OkV)D&Q>O?R* zF0bAH?>1&^;W|`{y@+|4%)4Cf_@!U7?yPTn*_!E{!4kAn0KvQ$*DDCGvj#KX=ZkC2 z_a%*x#Y0Vhgx~A;2$rpmo3){DFsJ>c5^zq4?S)bjY_E|ICGv}7Y`vOPYiVsNQ5%^W aZ`SLKc+MUWK*E3MKO3+1(A1}u9Do4ju5J*zp zA7YJ&2nQl-0Dlh;g06vX6m`9}}qMX?mRZ`&8XhfnA=;0UO8|Qlx$kZ{{}DY+kL5@J{`r0nz~LG4*?`=L z5=Le=r(g>Ygr8Q36m{5P3phiXxx@accss=$qu|f~-*Tfj+#!kdNCNL9WLdNG(^&Wf z+yb)fAhb^H_9xtD{rPbV0Wym{;2t#>dH)ivY&4zlkkT=0aK`l9TX}6yK|Htqipvb1 zmGksV`w4&FHKs7pReSEx_9hxcfsv$Majim>aADVN<1Y6fOf1uB_DvzX1bR}m9V*UV+XBz-P$=R?F@w$}A&{vxAey@M|;NonK&Ip=YEnvHI62A)RkLs+5 zC4=6odwT$qJWL%g5{IPp0TiYfbAgQ9CL_(IW+7eDY^YzKi2w1I4 z6={KP_xE*NvAmQ?ysLIj{WEPyTxF z8wlC!H+1>caCNcb)HWsuN#F$@dbCx29d7XO-}qHG#BrzS!z~nobb~`^DI@wW?0^;S0001m9!`D$ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bo.webp b/dashboard/public/assets/icons/flagpack/bo.webp new file mode 100644 index 0000000000000000000000000000000000000000..5702bd4bdd0b55dfa374bfe4261ddc1b21167157 GIT binary patch literal 414 zcmV;P0b%}9Nk&GN0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjIno1?3q9P-V z_^=WQY5=tx=%#PL56BLmiVyK-_1&_J{hsuh1x=Y`sxSFAze*2`zQ3%1)(F?i7b`65 z=c&aLwWwGLyy-9i{&47bqwK&(+Ee7mxS`Mg%nym}UqudoGWR-!FaEd$R{DmU=j1bN zS(4j;Yp%ZnfmjDTsA1xJ%s2WL%z(O8iNVe@bcP*RN1wSXx4dUYfXNcDB=-sNPx4e0 zk#WOZdhyaAF;SIyueyC({2Mu`IzNOR{9_zXgdLWVqeFKzZ}7@?K;&>q66>xxKEx(z zQ~&YX-!em4Fw%_hIL?mmzxt9la^G1T=i!t4`eoOiG}iaCin#J+fGyG@{nTP~7oNa!6i7qkREcW{tCEdnRC=25^C>dsUTN IoLEBu0FI@(NdN!< literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bq-bo.webp b/dashboard/public/assets/icons/flagpack/bq-bo.webp new file mode 100644 index 0000000000000000000000000000000000000000..479dbcd865be59406483403403c7f710fbba06ff GIT binary patch literal 616 zcmV-u0+;<#Nk&Fs0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vj8mq(?eA|W+Z zSOBmR32XqVErHg3>HTYw?=Envx-&9U{E#kY&nSMYO95;OVZJUtXaAAz2l}tO0Bh-D zdN5E*RtUYw{1EP--%jD3I6V(bU^nYFX9p)uVw}Y>W?qi=fB^pY?MAY;sC(?2UpzrWRf_rv!CyXxe(e7a_A zSM~n3UhxO2rQ#QyFZb)^%H5BeHRy`V-+anf_hJt`t0SF^2IPL`S)b``Ep{RP(K0(6 z?aIIslVdP`{r{JczeiMj&Vi=Fpk}~;aN6_PbYku_D=zC!gCZ;8m+D@NF7#pOWV+lf zJ^M=khX783Q!!&rIbl{q>SUyz^V=^|LLAI>3==xLvC(9GB7GT|B|6b~ju4IaMgy47 z4L=a8j+}7VjsT9oS=mhRM@AIoT$V&i`Y3O160>sML|$+1J&!WGo&v{r<32FLsPQm>g=c(B-pf~L|gb1r9#BkZ;q^;O(DuZMY(j^ zn;EW(=?@6Ln;v2kU%6{n^wr&LIl8N=d0001! C9UZd( literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bq-sa.webp b/dashboard/public/assets/icons/flagpack/bq-sa.webp new file mode 100644 index 0000000000000000000000000000000000000000..e04408e170ce48077e8a3e2d70a1a9d4c25a09ac GIT binary patch literal 690 zcmV;j0!{r=Nk&Gh0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl0&(y&k}Z z6kq`S>{DazK~0t|LV2E}LM0Mz`x1~Q*NpV9gg~UL??N%9Nk9Mc2Cgj8g+O#q|M@mt zn=U1qahHqNmm#VUhkgpN#`Vv*=G{CbKPa`&2!o7&(-Uw*7!qYb{(}&C3FV`Q>3e>; zY*h{pRz$vdSp%0P&7VL^B$7wzW()Ti62mV&=j||*j|FdPWXNh4mq)UNulyZ6a_1Zc zD1C>}yrM6YqRE0yT^YsPjjX=HKOYXh*^7+L!=;dS+*g;uuM=c{47{z)lxQNDYq@+r z+un34XY$$qpWbkFR4{gJA9EoU&Q&=htgUNMDj^gWRKV=k-XFdXQ!t#7Gc z#{ZZqQfx*si_@% literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bq-se.webp b/dashboard/public/assets/icons/flagpack/bq-se.webp new file mode 100644 index 0000000000000000000000000000000000000000..6c38cdaffbff22c62290c1425b858aaad120c89b GIT binary patch literal 624 zcmV-$0+0PtNk&F!0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlljD9x=PA&3877zJ19-DO`K+;zATvC3E+k9&A-+? zaT@$2xw!ZM{_^9(hmA&W!;}7WBB6yY33Z zw_^AZWxk#a??#H=Kqk{cJ9!E!%bIZ2b2#*44t788iQM= z4RbbHi)}l1-)|O-6lfl9J&ufAtn77TTE(TIFO%~;q<~-GqbuR58@EbK?;!H&vN(|NhpEUJ&{nfuC)21^$tGSkKR>B`&bZ-cMi|5cM%Jr7dT zm&X+{%?O>-+jrq5u(eh((FI2GFarJ5{xUXNd$)l~>_?p7gu>BQ{Y(kK+r!e<&f15> zf0+l$GP@VN36RM^FxVZm>Yv8oq$qLyDj_4);sP>>SNAnR;K4DIcnc@-`x>w1cXkqF zlbf9HzPIr>Yqv9`PbfeUs;z+)VQW-;CYXTvBikeb7`V^K_+o(tRN08e)QFAQj<&umAwu{w2u( literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/br.webp b/dashboard/public/assets/icons/flagpack/br.webp new file mode 100644 index 0000000000000000000000000000000000000000..cf9a3f6dc4fc06cd6329ceb872d49a56f7cce0da GIT binary patch literal 576 zcmV-G0>AxINk&FE0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjEm`J6gA|Wm` z3ox(}32XqnGe-4lmd+CD-`QQ99 zUXj(cK)(||Cea=PAOB4w-9Ivw^TOE8ABDQK+G3v?K?}$H$KCrJf>GRul#%}3&cnF% z{BufLeR$aNl=I({_w45rgaJ5NpzQ!f1wRlJpDFp{dihwMD=LD!u+b*5V8U$(F}Ie% z06X6m=R6baT_L$F`4SEJnDON7Oek~_%gr|u30GqtRA(k5ysqo0^_i^czB7q!=Hosmw%H)=r$p=p{jv!D;7Dk%4ugpd{ z2(=js(H6YTuyd?+vLA%_1Aa|5oa{dz0_6^1&3zZuqj%IVL)QFS3oBa_LYq0vvb}7R zvtoOGf;85*#QJO3a{)I^Y%~$7sw~3lQk+=WCiyM*VASpsW7~r?u$CwjP%uvqFz;Zt zK;K!mb=x>e#wUS~BmpKA@Z0S{o*YkBzvOVJ&EM_8T#%UDv(_|}&A_@71#ko*177VH O{F?^w2h+$v0001uZ~kTg literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bs.webp b/dashboard/public/assets/icons/flagpack/bs.webp new file mode 100644 index 0000000000000000000000000000000000000000..1472f82471265181b74b7956ee890963da959cc3 GIT binary patch literal 404 zcmV;F0c-wJNk&GD0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06v8_mPe%{A|W+c z3aFqEiE049alo|AtONA}^v~XtOapmnh_oww=z$ov-qQ3JZw{@cej-Fvfdi{8>*J5PQn z*0rr)7w`wtUypAj-ZI`CS&r^}ja%3cq)>`@`9tIDaN{01au5J*zp zA7YJ&2nQldJH${wSY6lJ^uE^1>1Z(qrlBz=}`vDL5bp8R0{#t33+`($n9uDg7Z@|N2LTF z6!Kj9ijd3{?NqzsCUVzqPKP%V_7Ah8`vtZ%W=)Z}}CtWh)c^3VDg zB48Wx_r=KPB1l$>wU|qSk0uT zK8*6c-09OaCWvr9!`&LBmk+j|YvdS8dsG2g$UVedCzc)wJ5Z*B;Yt z(^V}O2}_F_gI^84e87HBK1(NV;~git&UX_?MlvA>^Trfcp2}nyd=)$xuIHyvcj$ba gS(?8CT|(2Z&e%W2gIe-fdIZ&Qu5J*zp zA7YJ&2nQlJXA)!2Z z_yCX&iE04I%qD`*r2aF0D%NY{f$n$w1`==Ucf8Kv0*IIJuAl_f(S{2qF-|-2bEt(R zYrth#4XiQ)LS<_Oqr&K(bWhUhkO2PZ<#cDNIeTr;)P?-Bnd2OW&1|K2Q}_zRT<+@M zQ9nul?q{wD0qJ~S`<8xPZ~xoz+<60N?Lo3NXY4M2q@$kxNH8k@sr^0A$MyfS+ye|E zf454NQeAsLRk3q!AGQ%+Cm)UYP(d#}3`~#DWNe3>s}7J|;7v2~Fq|G~V;<|I)?V;$ z9y%r+ho2@nEXdmm~SFA5Q*x%jkijbjG4TiYfeET3h3EEt$k4%^VAx_ghlCzU+Z{ gt7*u+J-R)PilkHot#Ww<&De>616>g_L0S(00EFYhEC2ui literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/bw.webp b/dashboard/public/assets/icons/flagpack/bw.webp new file mode 100644 index 0000000000000000000000000000000000000000..db6d29ef05c2a1c76ece58a022a5ac40b02a84c2 GIT binary patch literal 276 zcmV+v0qg!!Nk&Et0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlFVgSbGoXLQ}Aoc%ceGU|L-Nk>`)DwZcV1hyq!_`T+N3eOtqjMfm0R7H#TAEhg zFdoS;JG$TgW{>C=O#;k0L`Ca={w)s%t@U9|0|Zeq?Jwp%y5@==Gt5{M-{ovC?^*B0 z-;0?Z*G2RgHF1(ib=GU-~o?1nZF!wt~KLf{ZzalNx2OmKC&c ahW(>=4F;jhqBk%tb5DAzA@bu5J*zp zA7YJ&2nQl_h|Dlh;g06vjEnn@+2BBm!R zXuuK)Y5=zU1x9aBB9nRUe_%crTkkvpy91t6{a-8smnm|kJ2LK6cJfLz6<|W2g%^N0 z>ft(GkJ+^{+Wm7t0Qq-q5@z@4*g$+9G}N{M)rIC*^S;ds!u#<-`~__GL=n3A-jsK= z;-(yo_~^v}ieHoYzU1rn)0M3g6u-(Js0DAN{`3I!vdKMLrt}hKe8=b-ffCIYZrp&NL#3Y!sF zhR>($g1>zFh_aHOtHX;)x^wYoBs@pT)xJab_~O8RNQjy<;)TlLOY=We%a5Md;o}Z( z;X^eP`;mbpWv?K-3;QJQ6OvEsgHNK}J&#gewa&1CFaUreAXBQ?S8y@m{S?>8hD}|r z5v2xyZR6(K>VL0b`Pj2TkUh4CFgDWDUnW`t#&+{@ibu5J*zp zA7YJ&2nQlX#yA-?_T+&tgb@Ly#IB*XOez!(l)4<|C8{(~phZUVW0y=LGmoaTi{*Mk&Q za&uNeY)`g{Jt160O6EGmnJs=>)hd&gdP+<7s!N^Z4|38l<#J$gteh=QdVRrnS@kTw zCi=KL;|cO(&C>?OuIV5F?0f4T4HUj10;qNoK&@L)nKk1q%LUBl#cfpUsdV;Y@H8v` zs_x3~t~hNM<%+EKNJVa|nLqpg{Vh8PQg4Ih>!RNX=EeHLdPMgruGnuV5;Z5opVpGj zLbDQq4Ts-M{To!_##3}Pc+c&zQY2jQ#)|*}>7)iK4VPyauNj~It6sdI&0t&v*YO7U zH!^B13g_}6@U2({X?g6z31bK-LrI?oRfx}ox6Fsxzu@!rGqAt6^IebsGr@DyiCS)0 z@JB}7z?jQ~dL3h$LX6*tv$*7*zH|CRpU6*J|H|c|b)7KT_w@y1a*7PuE>X5y^pxy< z2b~4tY8JJIqU1k7YH4QtQ~eu5J*zp zA7YJ&2nQl;(XdK3Tv{_x7g_0PEG-~Iznv*e4-;t1llxXeEU8&i8d zdm9PJKi+@y4-UUf$OSvq#zfPEcj8v+uNtbm2J4GFNL!(wx8~r zA0zY6xNbL;DfrR;si0&b>-y(c`_Rba{GP5sYx=+2P|2P(QA;*YwObSQFnZh*k@`RP z+Cf`f3;OH72Hz7~$rC6LQ6m5FX4KU?euFEIyuMHsPHy)}3O)B-+vS0v-R@7~wS$+Z zrUeK~gz}j0Bml<{jZ$r~t&#yw_RVchu#qFl%2Rb7P@gI+qw`GLi2pEq$;hKzP4vNl zEj-7QhE$_9t1W%c`1pWu)F#w(i#V|A!LBqF7l&*09GF2=>Px# literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cc.webp b/dashboard/public/assets/icons/flagpack/cc.webp new file mode 100644 index 0000000000000000000000000000000000000000..f95eaa94baa3daed8edbeb681d94d8a52886d476 GIT binary patch literal 498 zcmVu5J*zp zA7YJ&2nQlNWWs{=oVSFjCs=R2S zUO}Wj7WFL3$miy*VUx7Rdwc-yiP8i+vfq0ie@-;`oq%keURbtvT2UAw-$`4XL9R7NF!>*Xcj_E&x9j95`GO9y4C(!IOgww zy3#xujqv?ib~P?RPL5Lt*UJ_iqn!-;Rs^2oU2$WDB{qCSd(J`+F$Hs`+gzdxLp<0bO94u5J*zp zA7YJ&2nQlo%SrHW(tpwaCH$l9QRV^q0saH}2UrgYOJ%xX4zj1y7KUR*?^no*YZSThsB`pxb3v@;|_5(QH)H*bsD{ zL)+cX0gbJgYQP*4LuQ?i^tgKJM{|Gx${_~Pzh_``&D8H#RtOyW^QIrpEPR%LV|8?l zwoDZ=Z!T_t5B^x|hvR=_{*1;x|KI*7AzBdvd0uxNqIgKD`@CV+C6{=xejiEmMTU?6 zJRG(;G-tB39PhbA1M+{x2TBZr)Qq{afL<+vDLpR&+Z56z< z$Sf$aIw_P-7kTSjgJgpXm{hK7LDv#E`s)pz*7no*#~Id$>AC)~$Y`qW%JNjJc+KEiP65IZI79LT-;5jDI;QtEx`X8cVPvawr}YlSn_%IeDYA$opr zlIec#v4VzbfWZda?tK8Q^~;~*JMnDXNYDH~;2m9$jGf36!B&)Eo|!eZ9}_V|obB50C%=08{Fc3jhEB literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cf.webp b/dashboard/public/assets/icons/flagpack/cf.webp new file mode 100644 index 0000000000000000000000000000000000000000..05b3d02c4dce67b9ccb6615a47cb8dd6f8dfcecd GIT binary patch literal 502 zcmVu5J*zp zA7YJ&2nQl1 zEkyf8p5s`8PTK*QJ-X0gj`%0rPJW)6;LldRyLJCA>*5*#eGamGz<6pVA*!b5{(s51 zFZoF%jgd+eXGH5P7~!%~(){orX)tB}USIbBl^<+B=iIyMG_#0R9c~DlQ8TIpMTy(` zhMk9GaC^8^eZjw;z3;g<`*ZKU{?-JQnt!rf5cs~N^j;)kc8*y~I|80j>mn5oVa1w2 zS9x{oFGNyDQT}3>A`JbSX4IYd?ReDOZxR_u&b2z#WdCl4;bYfMVejrlJ}VD&=9(15 z+%}W5^aMS)qN>3;O)|tSF8nrX9S)x3Ls81zbc2 sv4xj+?*!}mEV1!^TPZ_XBPDTdA!W#I?oFXx3^aes|69B*umY(70H>YZivR!s literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cg.webp b/dashboard/public/assets/icons/flagpack/cg.webp new file mode 100644 index 0000000000000000000000000000000000000000..00dd12e2c03a5ef68de521870ff6d5dda8f4c977 GIT binary patch literal 476 zcmV<20VDoWNk&H00RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlum`y7-5WlPmm;uD*xw&WCj zUEu>#Ln?FkfUged+5srq7CPoB@!`Y^paA~kFDPk}qooGF{Ojz-tuOwvzD_*!RRbhC zHwx3?oqP}Cftu8wPkO&&iTtiqu2JK#3gApl~wH%1CnQZ zo{Qt&dz$ZnGg$v6Apu+Z1((@@ez^x@>0R6Yu5J*zp zA7YJ&2nQlIm^28$Bg|S=p`xm0092)g2EKP|A6zC ziDy^;{muvfX9NGUf&6Zypvc=>6loaVNU&1f_Sob>v+@yMaFk0fMsr| zC44Ev(n@^)HV@-5csZvaISung!52D6)3zUnHr%%sU_MOX#%8ifEPqaVwCvfsra$SD wn;Znv|JNlm86r~3^MtEtza-mXCxF-}lM{-ssehTy&a+!RK0@5811vZI0QV7@A^-pY literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ci.webp b/dashboard/public/assets/icons/flagpack/ci.webp new file mode 100644 index 0000000000000000000000000000000000000000..fa3def9e5559748e154391a73fb0f7e325f43279 GIT binary patch literal 254 zcmVu5J*zp zA7YJ&2nQl#Z?Oc3^4p{Zip7ib|e{ySuqY$p#T8XRSbC?&uOoge%GgP{D7FnLr?--Fb9;LU|y}(2IIO(LEh|iEIEif@jtcMyjB4MBa E0M+?nh5!Hn literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ck.webp b/dashboard/public/assets/icons/flagpack/ck.webp new file mode 100644 index 0000000000000000000000000000000000000000..bad2344b4cca9a9eca3f0eca057a42179976c922 GIT binary patch literal 832 zcmV-G1Hb%INk&FE0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlz>j3ls{fzXz_Cx)*{h9Wac-j00XSY7ia6XOp z2>o2>fc7i>nF#FI0pH@w6mV9ZkfHg3m)>z5c}&_7FxVTTMAi-8AbD6`X=2rROh&HD zZ6N>v`_OgkujC2HfRxgKBO^CC1)9DM)kknAVWmaL12P&o^wY`Ffy_y4T0#>6ra%)R z{rzA~e)*g?e&MhGkIOA00sdya*YD#(K|XBn1Rc7SHcdNs`Qa=-e7X1i;4@6Wy~_Zh z{ew?E{v0IMu&)jkRu=5$crS}5QUmP$r60BTf7I{Hn7rQO2d1$wm~vjZB{WkWNpqIB zNlNCum;wiZLsyzC z7QRK=&8kMDx^suqXW#aJGRe;p!M4CA*sEq;|M^dZ?aN}nJ44+57jRL_eLmYX4Ihro z#!kZEs@2qwcrz}@I{UJ4uaDtbYIM}275%etScoIve~4>=PsaxuTBb?W<1~-wAKh}v ztM}Zb^eAA5sxav^4oF)%^G20k@yI{V0o{9* zlUK9;>=a()NwL=oKN1}^9k4-cbto@{DV-zttCPTkWe}CJDVs;O1)Zlui;OQHh9BVk z6)u5J*zp zA7YJ&2nQlBD34N0ngpM2QRqI>gI6a6QPI9|z{Z@U41k2Jn!#1`8VZG>!|<3p(AYJDY{e znXyC7ZQZ5+|2UU{1CaK3IQ5ocp_b61l%o3JfBMLETSDQmU={O<)wssKWEAu>6~`F} zA0t5=JSoT5B}HnZn+dvV4yFTPZm1D#t?e(X~zcaA!7eV>;QBfM-&#H=#`q2NgP<&|GWqWRFkA^Fz3LLxUKd^Jw!7y=0 Ut||Pwsp1i1`Wh$4i5;K-0D@(ptN;K2 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cm.webp b/dashboard/public/assets/icons/flagpack/cm.webp new file mode 100644 index 0000000000000000000000000000000000000000..a670f9d39c2eecd7132077541059cae64cd0db98 GIT binary patch literal 386 zcmV-|0e${bNk&F`0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlhelUJBa&(Z-2nRI=p`V}tBZxi9bV%^e*M!{tIiH0myG`gixM~j- z@K9N1VlDsx{<*RQlFEux4$tR!p04S?`k9bF(Sc@nQ$eSH_A=bg>MnQjxET}M^(#Gb zs*`%TCu!ecb^w63ZZp)M^Ryp7Lltj2nkbF;n)R#??Y{T23Yqld;mMU2dN@?fSaq&) zg%-AvdiM!L&~ly{^~aF$31lLKdti!c9a{Wz3`8HYStvM=N_iLfCua$z>tyv)0vl(w zLMSE^F5sr6TYvCuET#RAdqV?GE$xtW0B%l`e4CCk($18i`8I{fe0E%~|MgRZ+ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cn.webp b/dashboard/public/assets/icons/flagpack/cn.webp new file mode 100644 index 0000000000000000000000000000000000000000..05383567e9122c3fdcd7e2024a5e1315d3d8cde8 GIT binary patch literal 440 zcmV;p0Z0B)Nk&Gn0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlc0?t1DP_}7|b6faM&k5OW zVW0p2{@CKS$c*cEc(6B**e=&A-Ez|$ld82az^O7mV39uveMka&c%S;y$^5gfo;A?L zBK?fja>|~6{aPRL(l2ZK{}sDX5PRn$E0>dNC64g{6SK=dt@t4o&Ma5+BJQ}V1J+0O z=`d55VBaXMPw{e?JDA6*5elS*Tjefj_i5OsbQAOysK*D-f6a-K2K6Nyuzc;k2VLlP z?70aEpmJ5I@ExILjBnTWv;3{~1CXWf(AQsfoh3~3j9lMKJkdO4*|4S~-4Ek5eAi@h ziaGc!J~Ua46C0_@hz{z}ELbt0(BjBfqHXh?IoL40OAB*ZVM+8)!fI?xY9Fpz+I@a^ iF6+&4s+AEaQF&XEqyu`Sn);nR^r4=!qWG&|0000+Cdae@ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/co.webp b/dashboard/public/assets/icons/flagpack/co.webp new file mode 100644 index 0000000000000000000000000000000000000000..766cebc448f73b94bd6f4590b1db251a3e0217a7 GIT binary patch literal 250 zcmVu5J*zp zA7YJ&2nQl z0$>seKp37~pY#kM4`2JV57kgOCYK&Q0EjIu97+k8g(k&xI{|?z_y7R@@3&!KKl>TK z|D!km^zQ!MANkwy2iUB4<1QviHi4-e$(fE+SS$Bb^sbH^l&R51({K5=$_C%_Z>GJa zA^h!0^>}>uW^}`EaCPT~r_kqrfxqlUpr0gmVzE`dIqJu#AEXZn>BIwGM#Cq70J!L6 AF8}}l literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cr.webp b/dashboard/public/assets/icons/flagpack/cr.webp new file mode 100644 index 0000000000000000000000000000000000000000..c6c28578a114b23d72c92219722157f6046d2a73 GIT binary patch literal 282 zcmV+#0pu5J*zp zA7YJ&2nQl0-yHUR$dQ7E`C zKi51yw>?9LB}l*j8^`%Bq+x9GP(Pecng4?H z*WF7?x`Z+NyZXL#ex=U5cE-4hu5J*zp zA7YJ&2nQl-0Dlh;g06vjEnMoz1A}p%4 zTmg_032XqnGfU*(ln$s3Ywu=HpEG=bT$%bhbk%hrdH{K9`yG9%`$ZJWJdnL~W)H-A z2QSW&m}!xU|Uvj*8|VwJ5RMI z$;xsoKbo^O%X9Q~r>7CnOrBMG2&8kpZG|oBrndL-x8UgyNOG!NPbmEwmB;`c+ zmus3%D|L;>sQGSf*AB?u15-t}>$s$N!5oXU=u5J*zp zA7YJ&2nQlg^g^=tIM-~Z5${GIR(3I=t38koeR| zfAIVE^_!2``_6;V^_T;*%j$y5ka~&b?u5J*zp zA7YJ&2nQlgN%FY{z zNrbpH`NIGJ{_HJ3e5Blb-4!|T`HBbf^N)-xjzO1*;N{7fTiyqVG6Fuq#(@;6&ukJu z@2e;5;7`B&79Fkma{0eoncJNmNYb+=4vie{@fZV7S-NgA?RPeFfJBHKQwM&y-G{G+ zDzTyM$ttyY_^sQM;)zEnRSUm+smD7dFw=u5J*zp zA7YJ&2nQlP02vUzcmB^0RF48;I=Kp z53AjeIN1f)InG;YjOnpbC*6;!q0)f$<(b>}rKlPL8fW?bxNaFA>C>T;4aZ9izsoXh z1<<@p>|){1=Jc#LkZ_a*VEroPc!cxZqx?*+J2t2PS}%C9-cif;-#_tu;!+X73b*mZ zepkCjZ2UIHD+hz4T!K-LuOCeD)#PdC)zcEvn>mt*rND6=Rb=L=C|b?9dORnR?Ap#E zUc2z)hnIgtlS^PnSCd@Qdw#kQryY zH!@_aeFUCmXKSjf5DG)tD=0P7?-DWG-|@ya-Y{W>J(pg`9U8@VP(=+ZdWFRgq2MIr yE(l`6ZN9H*jLM7ycS}rCq97{Uer!BK^gr|fykZuuwGg;J{2kxP-2!|j${+xRmO4`a literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cy.webp b/dashboard/public/assets/icons/flagpack/cy.webp new file mode 100644 index 0000000000000000000000000000000000000000..2e99fe12532c7129787e2bda244c47e7fecf7578 GIT binary patch literal 390 zcmV;10eSvXNk&F~0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQll){dO)zNKofy->ts(&u-wmh^>|Y z0RH@BMapO7)gtfOcRxh)zOy=YIGfWLb7hTc6J>!$%Yq%wJGVJ1#_~!a>gmq6a;YNi zw$9|L@#9WfB;!FeYZprUk`C4IpiIp3|K$L=-qv^Y`qC}@FAf&u0_m7Jo%Z5~zLn2y zj><;S@tODI4tdS32iG%SlS;iAm)`Cb%5zRKHyU>MozJCna1W{P=-bM%c`OJ&dlITT zz8dSl-uMYsu0K0THAsP08z-%6Z=ZAHHCTL&-{F(r4ZCdbd@a kjR>@CX<`*jvZpr_N2M(Q`Fj`ylzLQ8y*z#a{tii?09huj{Qv*} literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/cz.webp b/dashboard/public/assets/icons/flagpack/cz.webp new file mode 100644 index 0000000000000000000000000000000000000000..2f1a6f77b2d8d3ee4fc286df5fde1538eb054f73 GIT binary patch literal 362 zcmV-w0hRtzNk&Fu0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlpMOG z0RHHzKJo*+u-j?=Z<3v5y^dtI< zPkB;I15R98TKCSX(T<#tHzA@!uz`E>W{^=>VI%IoJ{L#**Am~#U;IpMekWa}t^eGq ze!*7P)mFW*UL)!z*QaC`*++;_xxS_%@w?luyoW)-d;c;I{Y!2%tzR^ArDXSMUHvuIBrtZ&!u5J*zp zA7YJ&2nQlS&sy{36qj`K$8wuQerd1b^rkW`4yJg0;Su7kDk}j z361<_<$6e;odxen6VKN1E_7=Q@zNVW+PFV7L&bN?HIYri58vbiq_1^;kNN(^T_u0a g{xaXZ3fCE0JDKbhe5ykomcmou5J*zp zA7YJ&2nQlfwF&}D|IRzz zliI&HVWZ2D2S?vYV9Srvdq^RM6l|N~KvNY6OeRz|Cp(P0$}6+8Dmlb2XL62qXjz-9KaQcl5uNnwo*i zJA~O?PnAST+6{prk(&8P-VU*=W<=fxrfwmYje`%F;#>rrm{ul#Ncs%?hI_Wf?&SQy W>gyCFIGgE5E8k_NBVSUPBY*%@uDIp^ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/dk.webp b/dashboard/public/assets/icons/flagpack/dk.webp new file mode 100644 index 0000000000000000000000000000000000000000..135537169ffa789b6e55494223788d9e73757cbd GIT binary patch literal 324 zcmV-K0lWTENk&FI0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlp%eh@X07F z;4klgJBHA9{-pI%XW9O;;Fj%*M}!^U|6B&7xw!(L(6`w0J7HClw{MvHLKQ=^7^25K z9Ue<(3=rfQ>b^?YK%Uq{ywe=eyHa)wwU_VW>9Zm$Xuni zblsg0;MefTik41ddlQw?PgbwK2ECsQsuu5J*zp zA7YJ&2nQl2+ecfr5zH>0J`BoG?J>2mKXb!1Y4DyNF{EA-J7+are>leyQpZIZ@D-9vH(7u&tz zntjyTc|pWz0RGuEa%^+X!qOz!YKEgb|MLO}s8FT<&3iXF-qTNf%>i|=iH@&+;~zGh zhLTaxJO1ofU|~4;>+DW0%m!%9e~#fK#Y(E>c@-)a7!QbtIPx+BIbhKL^k-7Wf*d*W zeR1cGww*3w-U!)){xkyn&td~r2aSaWvh=T9v~w*SQg1(4zIIr@ffsh=@%qP+?h&rO z%0N%+=hpev>P+p5nJ)m9uLjM^KB!LVCkSKr&xMo1U;n?Zdj-wR-Z|}oK+v;Te|4~P z0N1BqF026G`F^qPO+&X?uXIO>x9OJ2Aq_D62zh>l3IP9T`&~>Me<|R0?eY0O*0&?^ zo)iI@T1ghf-~wb`-jAJoyNeUMZ0|0SXsPJfv4@g2<1Hfrq}9NWMNq#PX^!9eOW_NT zFf!x%k-zgp&^jW!fAY|w7XtIi7JoOh`475>%T)mDvW2)G{qUNw0kHNoJ~jMz{b&E& z&j#^Z%*v>&>@VNs(FSmd&K{h*>KbTiyZu~;gJM!v58)a~jKr1X)IhU0tE#M!)eePC z2i|^in=uFoftL1;b+b!JSRHf}EpNS>R{8!+vdjB%S>AB^0&U^=%SUtrZSE_XVBw$? UX_XqUJOHH2>xiP+>YX+K0J64A>i_@% literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/do.webp b/dashboard/public/assets/icons/flagpack/do.webp new file mode 100644 index 0000000000000000000000000000000000000000..c1089845b940a5e5b739c646288364417a1ff480 GIT binary patch literal 428 zcmV;d0aN}`Nk&Gb0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-BmzQ21$>RBQjvCG-oxSj+n0f(uR(wWpv~t;RL;Ag8l3ci!}-KL&w@g-Dw7 zSs4C9$cLYnct#oBpMrj*Qd#%g?Ox zsV{U#>7gNh&30Vzp;2b)@-%$wDbU7Y1R=-gK5OY$I!HX`uaE+1@cm=Hccq*=^rgu5J*zp zA7YJ&2nQl0RRBd2>_h|Dlh;g06vjEnn|UjA|WG< z_^=WQYyiOzw1|J5{u%J*$u)KX=mGkH>5uGV`%&olOxjfgO+F1;51^O|9nX+6GV%03 zD?AM|*s=Qr|NmOtz@PyBxvVph`k*^bEZrP`{QR|CF!n!!fB3KA&%gVz-e+`vq7-Ht z|M)@AghY=8mmUPy`x%rhVfVA~)HpkM_!Z6qUx#`XK``4to4UfoN15YphlraGE#Lf@ z@05AWNAL| zZf;AgDMjcALU?*vpX1>06I_2KLniR;U$Z8|Oybs3+cZNwe#CKCKU-pV2?|mdH?V7~ z_eOkK0kX+^`}J2Qx7Djysc$o$itihBD$X+R`?KOW)NZ?hbMq5WEr%%3QCl(a&qvwu)=Gpk3?TY6vAvn<# kE*saZs3DfSiEX6Izl~UqjT`7+=zpe*M&lfR8c5%O0OXwF*8l(j literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ec.webp b/dashboard/public/assets/icons/flagpack/ec.webp new file mode 100644 index 0000000000000000000000000000000000000000..47fdbf3b9177afacfc8ec258bbc24424e64b50a2 GIT binary patch literal 630 zcmV-+0*U=nNk&F)0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vj8m`J6gA|Wx; zJOHo~32Xp^OkCc($*zUJx_bcI0p zPB!2F_xi8z>c7FA{(AS~|Nrt+=k+UDSnGN+Hkx>j@-W6Ta1i6}K+PxaXY*{%8NSclGUtpb+@dl1_B7{aQN{Jag`I);VbxQD z%&7OCRnkSfsL)2!ESx$9l{z?(LlAkjN_~%=L!SFGjhx-W_E#y4lLa=P`<@S^S+P=v zsOh%a%3$cO|Ia}Fr{Rvuytp6T;tqCn@g)L!ryV zt+b!_D;Jw<`GB!@`NH9Ye;cmnCk)Cb)=XQqzL1dNRIgb}{EBX-4OPh1-<1=-2`slIv&8TRH2-xja$r2&!FYut#fndnFRmEuR{U4Yb^)e!J$GCR<0LDl(nE(I) literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ee.webp b/dashboard/public/assets/icons/flagpack/ee.webp new file mode 100644 index 0000000000000000000000000000000000000000..d9588f8e276fde8bd41a7b831583a1e76383dd04 GIT binary patch literal 226 zcmV<803H8QNk&H600012MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlW?~o7(XaD7& z|I2^SfgD=`=i9IU%2)ozzigA#YL4j`fu5J*zp zA7YJ&2nQl>EGY+7(YGi5r--Ic zh(7@L;I@;uJ(Cx6MR>uu5J*zp zA7YJ&2nQl_h|Dlh;g06vjEnn@+2A|WG< z_^=WQYyiE6oWy|JJL0QQnnYq&^RWCBUrFX$p&Dwo$YDb+Pn*K1=w0B-TVV8kcPwe^ zf~hIE9XW)E0RH)5RLbN+r<78Z5rc`~gwT#w_mnFnY>4PUO{@RMZkxSpA?&s%@c-Or z|H#rutrvQXAq$aU%^i3*GN$-3Pk0Gj{Q@DAPZ%P1ePnHRXI18;_evHG(%>R$0L>`~ zzL=DBd-!5scw{@t-B#H!1USwG`?Gs)zU?EfQWh1Ae7~}K40FFVXV6Tu$y+syMz#^J zWs3!SQY&428wp-I)@+G6Guu{gv!#|D<_TqOJf?l0c>bVOZ%)OO=?4s-%Z$@tBv7oX zK>oQJuRMbB(pU*KmA_AEy)#4y0J^`QuG3t|dzB}pW8W2r%_fPnQs;Rp7xnT5navl0 zI?@&D!)I|grJ}l51U$7Os_OE4WeF)MC+JiQf_}Q6Q7k02_#eIl=l2CHjxJyb|8-sB zc8UdMt~}0*!FLT$mVW!}nE&{>WxCD(UEsVQ*W2Iz-k)#(2LG>~Y#p0_%vhPRUk>V6 G2mk;bLgpd> literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/er.webp b/dashboard/public/assets/icons/flagpack/er.webp new file mode 100644 index 0000000000000000000000000000000000000000..3b6da974c85cbcca12637fecd3c85c47f2153895 GIT binary patch literal 700 zcmV;t0z>^$Nk&Gr0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vK}mPe%{ETJ*h zZTXN932XqJGK7KevHYNXky`X-ybgCjezpFwvU770Od%j3fa5?F-D<=n^t$7D;s-o)sy6 zZV#*N1mz>(s{%&gy)3swJvm_HN~53WH)}o|cdKtT;77gt3ak8KBt4!lvlo(U^X1_I z;`ob`|HQ+0a*RaTfaU7 zEHB!tQ_5xs{bk9+=F!iqhpIfI%R8KEguC}H@Urnna0&Js^T+K^EO`F4h8@P(>W|35 zc!F*GUjk0=1E{x4{T^c< zWny|Ga$s)#6Pb(+05dvsGeE!2#7d!c&_~ii*V)d7HN&Y?y0_A!rA^jCCgs;*Rz8Q* z^D_`6r@ZUjff${fF89x$uEWw8|E;E%tqw$kzr-T8u8zSxR;QrX^BcymCg~Qm zZ1wuAyht%kQV4U@q+*FNo;XO&EeSVd2z~z$`BUL;3DSa@yqJ7Q`7!ksp^`P5?qE>(v0uBjD literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/es.webp b/dashboard/public/assets/icons/flagpack/es.webp new file mode 100644 index 0000000000000000000000000000000000000000..538f47a671112468a9fe96fe281f56bd976fc209 GIT binary patch literal 518 zcmV+h0{Q(?Nk&Hg0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjEnn21)ADE1? zBMRuGl+EvAQ1s1L&X@oI{`4cz;2+lp5>+_EB1nmhKn6%mvAU3Hm~~#A@F&Etk2?=@ z-(URfBV`mD--CarH6~25l0pCbMF^^3_ix~AoTJP&OwuMVt*GPH!5FWaM1c;)H-7@R zZ$4KhrR|?MaCW;fG0WVBThyAYuqrWaEAh1ItJ(dBsfKwP4qpV<*ZGpvAV&{gYfq?+ z3-U-^_*>OT0hFQI#D3C+3#+!2McKG|moxaDpf$bl$pXqu}GRk(s za@D&=Co^2bXl|mxYMS{|=3dr#dNsM%gd_@vGF6vV2ycn`wTXF0^SlqJKfu;eZSSFi z^sKK}H>bUG7tGp*CcAIy03OjlyTS@&Y4Hq@1BoV*W9kjVjE6-qwxm%WC4 InJ-bc09pR*T>t<8 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/et.webp b/dashboard/public/assets/icons/flagpack/et.webp new file mode 100644 index 0000000000000000000000000000000000000000..22e707a884e3d527dc25495f7b4276c50f97d679 GIT binary patch literal 506 zcmVu5J*zp zA7YJ&2nQl=y- zcoz*2ikH68?#EUddG>59yCg*_IAjobOA|3OP|t(_?upVEWpNgr?}D>VAE&eaY4@qW z`HBDm$udR$i@ic`hrJ1t19Xcdd#xV@gulwr{n`6nqP=xR8r&NuXED%S@1$kpd>y5% zUNVly4r`lWag$r^4rac{6)6T(U7RH+T>L+zB@Bg8ZaH>-S@61c`CUEdEp3Uw)M?RC z+m?#ntRSjzvJVme&o=pnftZdaAUSqgT!;=5K3BAhe=8Et0^!0Kr>7eQosNJ0D@cDn*aa+ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/fi.webp b/dashboard/public/assets/icons/flagpack/fi.webp new file mode 100644 index 0000000000000000000000000000000000000000..6f08baa9c4336017e89abd9978a5fa7d8ce38c27 GIT binary patch literal 292 zcmV+<0o(pkNk&E-0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl5Oa<-AO*^ qA4(p-xELDV9q6aB13AsmgN<-wUk%cg00}tUOv|e#N17Tw000146n9zx literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/fj.webp b/dashboard/public/assets/icons/flagpack/fj.webp new file mode 100644 index 0000000000000000000000000000000000000000..cbdd22a163f1cc3c799966beb3bf6c4a4a18e9fa GIT binary patch literal 874 zcmV-w1C{(zNk&Fu0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlzzKu5y3AzdsXz+X4E)>I3xys0ZmUum?y7pa<)xra!U=?T@6J$ZXJ> zxuj;2nV0z7`TN)tqnOf03+j&16e<&GBj$7pc<^&oKN5IlQq!`;nEEbAZ4&)cfrU;F z4aaZr008~M;v~9tZ8l~{?l>T1LUIPP$-xefUe-x^Pq&j>jXn(ZaX7tU%9xti-q%B= zZENv4tInvb$Kw3a{?Qlwp&;DFr3+{nDGsv>t1FV3hVK1)j-P-(?F-i`FGVDMv2Rhm zb=HzPilt$DAT7Mz%q~#^P2g$wvxC~4W zO!w2f{H_#7uxfLj!fwTH-#*HPq8#P1o=N|s;sd$tCYxIh!oH?GNvE!VY{U&#!hA7GY@=ovifcTAZ{@sfWl$)t7QX&sH_>wA1(*KbUsHQn}ztJLW?#~lR z`kFrCs$)=1_g~=v`Bj@Czl2mTpLGql?RgpL;e+VW!lbt4pK88Rp$=Xen+9TtKA3(S z@ZR7)3Af1H+WU=^GG8qUZd`wVoOu(1sZ%^l$-sP0?yK$93F^^?17m<$wwZZ}o?r|? z2>NRU!rDY}$R5nLtwez3a#g_8gsD6~rbVEZl7TohOKow)vv-^jm|sE=dm+})7# zN6GMh;?k+Meej#RnEk2U@6A4Py?k;w0Dj}zdTqpJslHna!|S}$&CO^~VRmdsx_Gyn z;n55Ct#~Jm5b4{MC4qh5d5ly8J1Xnbj&L3d7wF{~?$8H(?vxtnv%!?l7(tnKTe!Sj zghbhgJ(9G=!qZF;*3(Pa@_`~|-A%{DAJzD2IEyRr{odw>B=P-i(GhC<^g?GenwYJs z$qHVRaVihEh$v;ClkS^s41$-Y1H$G+0Cm9hzoJB_+n}-gTt`m-jc;8VDAG270QI=B A(EtDd literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/fk.webp b/dashboard/public/assets/icons/flagpack/fk.webp new file mode 100644 index 0000000000000000000000000000000000000000..ec33df26b591475b5b1c8bf18b1b9737ae2d9236 GIT binary patch literal 740 zcmVu5J*zp zA7YJ&2nQl}nxAOaY7akd+Ofxt10#DhMMQfDhLa`w0_2$*Ya5g2C_*jBh$f8ApK`Tzj?(t}Nl ztD0Y*W5G29Zw761sf6~9<8XO@HDn|zt8%jBiR5yZ**{P+;%}q+RZsklj4qy8ip@yVD!nO|Sv@%I-V` zWI@p(`#4jQH#}LiS(Kftz}y37`g}6kK}&rv7V9~+;to{`G1Ge?5qjMlambQ zl5t%Jp8mP(W8qZ- zsl$2dd9UZ&d&u97{%-^E?b!@FuBz9$e{pCZQy%Sir=;UMSPzw^s%~9-uA{#0@my>2 zs`noL`V-Nu?cT8ZR>`VJP1bw6S-d9O{NI=e+)C9<_lM`Gh2?Tffopr85g~F1^j?VN zJp*(p?Ss^x!zcp6qSfaBbn^uyFK1$B6!Tv@{80g3L>s8A6QJ)z^2OR$Z3e-cGVTkz W463T0YWu}JXt1?8T9D?hzyJVqscohJ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/fm.webp b/dashboard/public/assets/icons/flagpack/fm.webp new file mode 100644 index 0000000000000000000000000000000000000000..9b137770d1bbed21b2c89f07ab4d0099dc3e8175 GIT binary patch literal 390 zcmV;10eSvXNk&F~0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlrFg8{V+mXnnWj8J?)mutj;LDoFe3iL1t!t44^Z)?< z=XAnqODIA1DrxnfcK;9huki)$W&gkYgCD_P+s^=4go-Po{TS-FqQ&h2mcUwR6@?xG z`Z8)=7zO)3l0SwaUkH@Ng6nSC>MTHi%EA+vt!Elq1(>68MCi8 zm>j&h;*0bkBz=1#p7_^A5fcBLJ<@a8Ar2078LXdJ^m*Up$UtK6u<=n%ZiZYTqUOP+ k><8qXIAt!aI-ddDBJ`&bGt=YaRu5J*zp zA7YJ&2nQl_h|Dlh;g06uv#l1HSYA)!2Y z2mp`|31|SjGm}B@yKi@xxtIsOy#yX3zJ>p;S!MsI6@U>yABJpD3RhC@F@{_}Rnv5a zvv&4Nv};8%a_P_j{_RJTk;VNF_3QXt{Y`Qa49JDvWzpmN{g;6JUex}b&Rs3gzxP~u z0;&T|l-hMh5Sz5a@Hrc;8)W09ylyYx`~rp?U$*{!P7+WH|B$y=OG9WFMEb=bC1ldSZCx@Ix5WMl O2OY6CL%KBd-~a&4S(|PE literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/fr.webp b/dashboard/public/assets/icons/flagpack/fr.webp new file mode 100644 index 0000000000000000000000000000000000000000..da3c514032228c9d7f7fe8d86f5a228a4431007f GIT binary patch literal 244 zcmWIYbaQ*dz`zjh>J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(&(#OUymr=`rL6yO-(PWDIQe`DYi<=q@3j{cm7)}WF z{aIiu5J*zp zA7YJ&2nQl_h|Dlh;g06v8-kw>K>A)z&0 zTBx89iDUrGPn@Q2!ntVQ*f4-UU_Jlt-~g9Wz1?0#$xs4)rASt8+H8c&ve_$)mP3AD z?u1BgeW;4Y9smIS&VH%;e7=5B$9jFg{uN-fMm4u5J*zp zA7YJ&2nQliuGX0RH=@P;yHBly@DE zmC{0(I#XRd#o4Nw+#R5v*lx5N9B^cC`^`4g1>N~K_)K5uZ`uD@C*pPu{OSBAFZ4Ii z-&`-^b`8^=(0&)5+J;Q%_n$=n;+l`6Mh|+6*RMz~{bV@L^Jbd=9afL?W`9aW!7(1z wJ%$wAG6G>bS9ergilIfm@C${3MLB~*A)ZUv{Z(0;;Ix$F(6FvaPGVpH0N81NWB>pF literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gb-nir.webp b/dashboard/public/assets/icons/flagpack/gb-nir.webp new file mode 100644 index 0000000000000000000000000000000000000000..02edac17c71662b9f9d1ab8885dae6c57fc9e470 GIT binary patch literal 1126 zcmV-s1eyC%Nk&Fq1ONb6MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlUu{K+@w&-K4?p71&VKfr$(^K111`e*6`_@DL9_8;i| z+CQ&;%=?)14gH|&4fFu=*7j5Vq5Zt}bGuplUq^%hN)X8b$(ziC-Xk=nOq<6q=0EDa z7XRAy_5HE-8ylk@a(|kG&6e5pBl5%Tbk;+aJhEbb><^84LpAesF^_^FOkdMD;e14> zw4xnzXCxQFWN7gC9{dEaei~JlU z65)CZ!2V00#gce%fvzPAsazNV8=PYtQ(wr zzP$7O)M_T-Zz{=^1{b6kYxeUiXc>7w5|ND|dr!!R>MKPPa#a!iTk$=-z;8D|DMx6A zI*oGOSm+M8_sAEAkcO3a>}4VUhj_1!WVBfa+=ilwBGVg!r-jgd|!8Y zt}Q~yJq*cB_1~F76kh(QUbZ1=4)z~|bfmpjhmg>gIiz;Um*4v zSKjM)h&db~V7Q(1cluJQDi1sGzt#12K^@FrMp-;S2G%ouAN(3CUOpzAHJi>=ur66e zV?`TS8x45AxxJ^m2^E!fkQtaS{vLRd?IJ;c|52IcwPdw(J`;UB;-&_{KH>K$UH_=# z8yS+IR#F)7p~;`Fn|7rQQjZ08F00Dsv)WQQq(?F(fl}3uj#aA_ws*?I)GrVjNO<15rVSe2;VDY`Zvh;d@!WNFX*xR*s-RZ7OJr!TtJ%i-H z6Yy6AMVZK`oCHT)gN}y~Hfi3$Vc*F97C$VFjvfw7N8(=sKDWr}Bkt_Q%S(gO21ya) zZ8+BI(5tja?)IrZo7>N|*T2rj|0dH@-nT=?B)vzincZ{9T-S0Qq2QP4f(^tt)qIX3PrU%kv z{?-1<*ED9a5xjsRToG5u0w$Ec(JzIDKDe_U1Wj;f7ub}&NjYixyHVE*zx!{0@N3>4 sLtzcS)*iT@`T$e=bW_jKxiT?7C~BA1#L3&?#dp`E$GxA$1zi9D068-v6aWAK literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gb-sct.webp b/dashboard/public/assets/icons/flagpack/gb-sct.webp new file mode 100644 index 0000000000000000000000000000000000000000..636cb81145568ac69672e4a24a1acfc6de979ee4 GIT binary patch literal 738 zcmV<80v-KQNk&H60ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQluA897FwPs&e!zdKT~&Pw|8B=> z=7aJiz%_l3DRB#qMdfIf33CKmqiUWL)RC`IP&aP&aJFHgW|S|qkl+Zk?Kyp*0RH`j zb+L_qbFX6Uul|aW`9In20k9uzt(kvWt{wUA*BG$(ga`OKd(oR{-N5S`V}z(_@ms=r zChPWr+@>}z7uD~adxD!L9YLhg%!x37Sap*3v64%4DKheIN(0sxb&qf8sTXXkQBdUb zW_I5(a-W{DONYelW^cX`{gEcDkb`Qq#wQ5mTjpx(>X~A)3+^`v34Po>+mUxMZ?ak!ze%Hq0+svm2OFx=p#KwR}eyQ z9I3t+Xr%ksSDCF^gORH)LoxkT=JiReQy~eQ5e{4`sTg4bkAdlYK!CU}3%XCLep$NY z7s_;Q)oru>W_V@0yJB?}OH4#0;8!AUYCRBpLWi(;{LW*SzAf3o7&eF6-!&|>LUraL zSjzN>cSUhb^!#(ADBmbUu4voXxx+|K*|N$GeWk@2KW;zZYUJd)Ue?{si(iu5J*zp zA7YJ&2nQl-0Dlh;g06vX2mq(={q9HNa zngE~?iEIF=Csm2ho&G>`rg0R0RHHrvtYgpv^_#5U_TSR&x@t4-snSzs<{{Lti>V_Hd>hMJdAV85qm=!DjWeJtO~+ZNNS zb^$y*S;mPfN!}CW<&qt#o^N_^ot6}3oZCBchCUJR70bWdbu_Cnvtmxr?~`~)f uj#ThlWaGv^tq;k^nPtC>QtFR2!U-bLFH$xtRM!I#*#a$o#`X~y5`X}ZMNbR> literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gb.webp b/dashboard/public/assets/icons/flagpack/gb.webp new file mode 100644 index 0000000000000000000000000000000000000000..02edac17c71662b9f9d1ab8885dae6c57fc9e470 GIT binary patch literal 1126 zcmV-s1eyC%Nk&Fq1ONb6MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlUu{K+@w&-K4?p71&VKfr$(^K111`e*6`_@DL9_8;i| z+CQ&;%=?)14gH|&4fFu=*7j5Vq5Zt}bGuplUq^%hN)X8b$(ziC-Xk=nOq<6q=0EDa z7XRAy_5HE-8ylk@a(|kG&6e5pBl5%Tbk;+aJhEbb><^84LpAesF^_^FOkdMD;e14> zw4xnzXCxQFWN7gC9{dEaei~JlU z65)CZ!2V00#gce%fvzPAsazNV8=PYtQ(wr zzP$7O)M_T-Zz{=^1{b6kYxeUiXc>7w5|ND|dr!!R>MKPPa#a!iTk$=-z;8D|DMx6A zI*oGOSm+M8_sAEAkcO3a>}4VUhj_1!WVBfa+=ilwBGVg!r-jgd|!8Y zt}Q~yJq*cB_1~F76kh(QUbZ1=4)z~|bfmpjhmg>gIiz;Um*4v zSKjM)h&db~V7Q(1cluJQDi1sGzt#12K^@FrMp-;S2G%ouAN(3CUOpzAHJi>=ur66e zV?`TS8x45AxxJ^m2^E!fkQtaS{vLRd?IJ;c|52IcwPdw(J`;UB;-&_{KH>K$UH_=# z8yS+IR#F)7p~;`Fn|7rQQjZ08F00Dsv)WQQq(?F(fl}3uj#aA_ws*?I)GrVjNO<15rVSe2;VDY`Zvh;d@!WNFX*xR*s-RZ7OJr!TtJ%i-H z6Yy6AMVZK`oCHT)gN}y~Hfi3$Vc*F97C$VFjvfw7N8(=sKDWr}Bkt_Q%S(gO21ya) zZ8+BI(5tja?)IrZo7>N|*T2rj|0dH@-nT=?B)vzincZ{9T-S0Qq2QP4f(^tt)qIX3PrU%kv z{?-1<*ED9a5xjsRToG5u0w$Ec(JzIDKDe_U1Wj;f7ub}&NjYixyHVE*zx!{0@N3>4 sLtzcS)*iT@`T$e=bW_jKxiT?7C~BA1#L3&?#dp`E$GxA$1zi9D068-v6aWAK literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gd.webp b/dashboard/public/assets/icons/flagpack/gd.webp new file mode 100644 index 0000000000000000000000000000000000000000..24596c12a520490058c35e4620c45bcf73c1cf15 GIT binary patch literal 724 zcmV;_0xSJeNk&G@0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQljwm_V7VTQMgWR;0$@qDIJ~XNZ62t)-b1{sr}`>7h*qIS za~~yn40$b@FDFQJij*)MRSs}J=FXPDESFP`Lik`I8TGys_)ajRz|->G-U)fa)vMf0rAE3qP;cJ8cQwBz?7!TNR z1Xx|V{BO|!z8~k5dVq3a7Gx7~H_an?jLEqY&vb(hy4!&-{#M9*XJJAhTc;fq{XgUK z>c7$<_J6(jmi}}2OAFzk-ne10Ofg`|+ArkyUORBInqxkH(&jmfFN=NXvdmnJhf5Y6 z1R9W^fA;t{Mzh9j#7SjvxxX66)wnz(Shg^nH%fK|{#o?>oP0Fw_@R<%7q`=T%IjS8 GfB*n53|xf( literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ge.webp b/dashboard/public/assets/icons/flagpack/ge.webp new file mode 100644 index 0000000000000000000000000000000000000000..7863551e1fce0686fbc1989d3d0582f3c242a517 GIT binary patch literal 702 zcmV;v0zv&!Nk&Gt0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjMn@Xjlq9La^ z2_Uc%32Xp@9h>iV><5Ymr5C6T=YK#C*zYJ0g9c~^fGpdm1$hUvvwH>w8Fv}PuBOwQ_IRV<--~wAnrU87NS=9|-(peEd7kf{ z)#^ojzbM{nTjq3YQQ`aoVZiV;GsUao-@3N4*||HOPbI#Bfu4tTV72Zz%T6oSK_BAq zd!N!MQ#k>og(1$lx=#P}qb>izD?3T2M5WBJCr--*8 z;xp{B_t07Y|55r&#sfkAeRK{m8Hw~q;eUJao#ySVU(>n=wZd(0SeyHiXSmt=j8B2w zzXPxcYL}cvRw}lCfAg5$*d=J_C6F-IwWL{)TVr_E`s%Th&$0>GURUp=N}x(WXy9if%ZjJ=s}E k!_Su>YDR`7e8~~?*Kl!D-(Er*HBuSTjJ?RGQD6W70B~$liU0rr literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gf.webp b/dashboard/public/assets/icons/flagpack/gf.webp new file mode 100644 index 0000000000000000000000000000000000000000..d36154498415c5a0aced8da81e7254932af67766 GIT binary patch literal 398 zcmV;90df9PNk&G70RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl11;$@s zsDeHeG55d#{%b7Orp?}b#u?U6Hbwoi_9*W8`FP4gNNr&c|5{7dCB(mF$Wy{w- zQss4w?YckIFSe$Uf{V8DzLi##VI48U9yCAWS@ODB3kbRg;L6vX-0HKw&cK`qY literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gg.webp b/dashboard/public/assets/icons/flagpack/gg.webp new file mode 100644 index 0000000000000000000000000000000000000000..6abd48e7dfeb65d353e5ab137070f2d5779fd166 GIT binary patch literal 588 zcmV-S0<-;6Nk&FQ0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjAnMft0BB3WO zu&@#dYyi76at4Q-@=a?IhFxcUyY2(p1K8Htf8#&syxl)a{rNk>yVBMXTcqubSZ+~R#i`!W_LC$R)v+tQ}PcQoj@_C-t(0RH}ZO}@e3^?SY`vK>b^ z!Pg^ZmRosm+ghh|HI>I#L!=qqh)eblynH(598d|9PrscP-4mes^380)HYR;Wn#wRu zC^g@I6`1C?(8KFieU(fZ5eU_ndwXI2R+f!9eRHG7gI*sI;6pQ|i9%4aZSBvDOc)9w z?KpdN{N8{`roCm`$a!pisvtFBYfnj=3~bt;_^{w6t&cSQ8v~jHZXq!FS*}$2QACZ8 zBQl=gYm)zKU;U+&)765)?Rb7dP~M@|z}BV?I2_s0s;PRK+c&fNDgxN?w`)DB;#N2! zPwbFCi0MH+|HJkQ%~ksMy7ctGwJp~K(!bm5+aU494jy(qt-a01V2^U3U{$*2Z@UM# z^@}~V{|q`;|J_GZfaGje44LhK;IJR;HRs8^NG)kaS64*elA%@+$0O9&Zz*@6(DK4a z-5ZE3J-1~zKfED`a4jTI3rM`aD6D?8a%uS4(EDd#;6GPa`;}+`$t*SVRLMbr3)3Mp aV1BAly&LUtr2iYD92Jj+@8AVM0002iBoQP4 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gh.webp b/dashboard/public/assets/icons/flagpack/gh.webp new file mode 100644 index 0000000000000000000000000000000000000000..c860a07389b505d57b8d40b7355e37f44562d999 GIT binary patch literal 410 zcmV;L0cHMDNk&GJ0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjIno1?3q9P-V z_^=WQY5>T~)xsyk{vb<$!5#g8_u$h2(*Gs?C3RVleU|r1C9T6MxiiQnhAxA$_OC9( zWOW8A9g*^Dw6$6P0092(h0D{9C;yyt$tVA~ixwQ}n!0|%V;BFsC)+2|(Sn7)jTktm zHn)+u!}>ZdOtrW(BsyP3+IFQm{!H_Q?d*=5Ar3*A^1+iSm6D0c^=*W;WmJ+uN(97f z&SnrswlJ)jjeQU<*W&=Z-#WUP$J(x7bd(ndyMG@iGeFJj-*AFaKfX~XqVAU+T}2pm zqg35CitI=VBBHL6!5{cu5J*zp zA7YJ&2nQl_h|Dlh;g06vjEnMft0qM;`( zu&@#dYyhR-sa5W*exFx;1d z`#iGqcyprX&cAJ1u4?OB(r4$?>*^vS&?!9z@-Ry)&8AB9s_BGpOGwUYa@Sk%)Xl)U zE8L^zIlE*D0)q6cL}Xh3U895~U%M$YU~Tl!IIFm)FnX`Q?@{@)8vW#891xy<5PHHM z2yx485WFD2xXU(X{C6d$b6ox2`zfMF?En|CNof{~IPb@Fn*YaL@9kIoiK`b2OvG>S zRO?l98h}ot|N5^r-|XbeH|HV+yt~Z=rI_pSQ(|fc5Lw?HS9w1WP<`F=Kl$n51a(ms znD(b~{S|Q`EnE1W=J<8^iGiGJSaXzZ;q1l_4Zk{BMFtxEZ|omQmu=>6CHbp?A8Dja z{!3{f7bM+AG@y77C0M!g><^a=Q8&cP-Y}T)Pvpk8!ZHBO$IpMWlPue14R(z#489|} g(W~~_W09z?sM$wd8rb`~0yX~Y_DI3x!{c@U04}%#t^fc4 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gl.webp b/dashboard/public/assets/icons/flagpack/gl.webp new file mode 100644 index 0000000000000000000000000000000000000000..5c4ff67ca59cb33197a3a5368850863731746c5c GIT binary patch literal 414 zcmV;P0b%}9Nk&GN0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQll+-`sVjLimbgt8)26#f#G1}$Ifev{kF3WSHiESigN4j^o9RY3nx z0RH{=F+JVt?FYOxFo_os`S_ZG_Pim7V8d(zOVZ{F()!ozq4**B|8vO$bZ8BzXksys zgeWRn9ygWnu=oye>a)B`#77(d`c0iPPJpd6#b*y90iz(ggt}1YFwz~oF1NW!KV9bN zR>Av*s$wEValT~^_S8=AT$>w6NRWB4x}{t7ql964eXTUVMTGO`MJ>nSGFlY_km?%B z_bLe^j^Rch(Xz9EW!>_xOZvWhobz|}arZtcy1jbgvE07SFrA&Ao$yFK_KF*?dm$gK z^G>?a6I@@Kqnp(-0xi00Lc1$j$Sx^h_R1Se0>)?GYiF(d_5u5J*zp zA7YJ&2nQly6PfEo;_jF1< z%RdpQi!ST5zi7Qs_HgLZrkhl9^tzy~5peLffg2Ao4CKR7G<{|!t3@RX_t8r;4uJO6 i0U!M&Gmf){ldtDdc1HG7-&_G7gS2O1OuKXDQvd*Yb#e{> literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gn.webp b/dashboard/public/assets/icons/flagpack/gn.webp new file mode 100644 index 0000000000000000000000000000000000000000..6773f86e8b9bf6b2dc68f03697454d98211ebb3b GIT binary patch literal 266 zcmV+l0rmb;Nk&Ej0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQllSic}A)z?g zC;!p#`Bz~_02T!?i>u`fn_C>+6 zz;|ily75ha=E?n#{awf3_d^xl7fSWw)cPH?hLP26{XWwg0L0jk!KQ2YyxZymRxlao QYE#zC{-(BWrZV9)04g1ED*ylh literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gp.webp b/dashboard/public/assets/icons/flagpack/gp.webp new file mode 100644 index 0000000000000000000000000000000000000000..da3c514032228c9d7f7fe8d86f5a228a4431007f GIT binary patch literal 244 zcmWIYbaQ*dz`zjh>J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(&(#OUymr=`rL6yO-(PWDIQe`DYi<=q@3j{cm7)}WF z{aIiu5J*zp zA7YJ&2nQl_h|Dlh;g06vK}mPe%{A|W+c z3aFqF32Fesxj}vb&#kAeR}5yDH%j;bJP|7*#leo6}ArmN?&lct#-LY^kfEsqpa zLl1vUqH=v#oIC}@fB^p4GTnBcvpC%U8oZ+hqdTBnSvA9V;&Sm-J2z&E z5OW09hH1||u{EaMws;5_dfnmbo0csTl!JD^dQ->(rX5ZX2&dZi0rq$W^{At{q3@;E zc6X^h#wF;4JW^_CkydPc$@M?`m#G!m4*51O=T}`VAiY^-^Gw~lVR%2ujGke*NgA${ zE48lQhln>XZGwKHuKappYdrgj0YJ1yqSGm?r-)m_*eRX0001n*1k3X literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gr.webp b/dashboard/public/assets/icons/flagpack/gr.webp new file mode 100644 index 0000000000000000000000000000000000000000..12ae4ad212eaf82bbccbfe72362f85ad05c2be6d GIT binary patch literal 488 zcmVu5J*zp zA7YJ&2nQlY`OalYuk zZ{KgP9PA#i;?~#G-x;cW#AyXgx@c8|kDWQ?zO^(?IMj#d$|$^p6V5&7_`jsL`0W0( z+nW|)8RB9beE+~ybzNGo74a6Sx5-R7|GAvFU%u)Tr!BkSY>DwyOAfZlFK4v{$3&3P z!yu^@{@w6-VH5X|R~L-n%iZpE@wW|r_r^EO{S!UqX=eXH-{cwNNV9+KDBf`HZ1_CL e{P!$27|BgT&Zy}wNWiRC!K*(0q^L100000Ns^Crl literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gs.webp b/dashboard/public/assets/icons/flagpack/gs.webp new file mode 100644 index 0000000000000000000000000000000000000000..01caa5f8c1ed156e621c5e0f733409ac7751ee56 GIT binary patch literal 886 zcmV-+1Bv`nNk&F)0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlYw0r29{LAh0Uxuy2|GV>$s#LZVUV6_l z=Ir1P@II}T`TYplL97nM$UoFErHF2<%c zmuZ$}DVOnj&hneqL zhyMDjrC1s>pcbAikPuXF0>gU0tE)Rd(?8pH-R;YNxn_DL1?@pTqHciL%u$m%PyVOG z>+XXQ_%!pQO&D3qI_dPk$H4S%lKL=Bf_FE&GH-1@v+ZFN-dJY<1B+lnJ(}f6%Fh{Z z<9)*7{!Lst$Ee^l(+E!{UyjVBDysd(%Rpuf{2W?3X+vX%a*|4RtHaI$Ne*V&G^ z-~Z0;YgYN%7WM&2HOUha+`$$m1E9#~z``1^Egh<7oXL}tMw<8Q5jl|drec}+JznX; M-clPCA@2YH0Gq$L6aWAK literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gt.webp b/dashboard/public/assets/icons/flagpack/gt.webp new file mode 100644 index 0000000000000000000000000000000000000000..a08468e20adbcc23136b5dddec62158c85a0cd3c GIT binary patch literal 418 zcmV;T0bTx5Nk&GR0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjCnMkFhBB3LW z_^=WQY5=XEKsrr2Pfh#)+<`gAoQ?YdmH<5(Gzw_jk=XKto#{d_Y7|z5OhI6RyF+ho z>~pI@E>FU^{Zs$|{!-qHsgdbt596PWiLveuKc9`u-@G672(=w$Sd!*7a*}E$7{lq9 zeqj{SwfJdp-)KW@VtL>n>SVGu-6fTsvZ869$#9R210zTZ#BW0j4F`6AkI6qdX%S$7 z5MbU1A1NUwmIiDZ@ZLU1AZ}s%-8YI1>505n%arM^ClA*s^~bd!E6QkE#&& z$O}-6it3A#WF79xeolU4dFE1r;L?I_yV-=du5HlKrrcH!JLDNGb(R9aHhpHRBq9a) ziUV+|kFuf!Y692+ce=>RPXwv#5 M6hX3QY3R?u0FTA7(EtDd literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gu.webp b/dashboard/public/assets/icons/flagpack/gu.webp new file mode 100644 index 0000000000000000000000000000000000000000..733fbd4a307c9d6be02ec0f68b3ec60bb5685f9c GIT binary patch literal 662 zcmV;H0%`qHNk&GF0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlg^g_+RutMc-0BfFInyvvrJm z5q`||s(#%1MxCZdSWye4|yaDGJlWZ9oq1)8JO zpUa~B0092Eapho9j9^<) z$=x#VX3it#!=>j^j)w`6KMh1TvEfwe2DgV7&wPzV@yGj~sBHvK5=rlhsA-k{ks(6Q zBR_8m&7s^tqgEneNPxD}Y{R%IQKtsnX=~Uyhoi*-cG5Z^tU)NmLJSTG8^U+pO-ML7 zz5a&;R{xS+bEBnK#@vmz+NYyifiS%iFn!jTufIIS#eOWJisiVmXKMB4V$tv~umtNd)oA}aKlOY!> z(fOY|Mfy(*HXx9W9`KmAr|B8IBGc8!EKX>tJ)s>6CGpU`xtDAo3F~2qxo`QUD#ABO z2XCA5z0yRbyT7=9@XQgt1cW7U9Sh+6IlHQa|D{*IfZnyJ*yQ?B`{m&>I=5-u!7GpZ z&6&GVeEF534X!{f(@9s+s4bzpId~g5&02z5Y;Q#;t literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gw.webp b/dashboard/public/assets/icons/flagpack/gw.webp new file mode 100644 index 0000000000000000000000000000000000000000..2aabff06766a2b96a2d4ebdd50d2a6aa8a5d4c61 GIT binary patch literal 340 zcmV-a0jvH}Nk&FY0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl`_UTk;$ zJ^aPXj5BJMrHzd@RcW8)rpQTTXuWhizuKlHkZyj(viuS?_*O3Rx0lPdmGS)~vJN+S zXs@PL3I?gLkL}L%k>k&Zob6a&s5UBvj)azfS3{@<(fc3$B+YX+x9+~kv9I>P$*cf? md5WKK+~LSrCk(kETdO-65FagWZf-!30#BCHKqlW*;s5}V2$fR+ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/gy.webp b/dashboard/public/assets/icons/flagpack/gy.webp new file mode 100644 index 0000000000000000000000000000000000000000..06da8e9321fa721aca853a561ffe6991021ad7e2 GIT binary patch literal 652 zcmV;70(1RRNk&G50ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vj8mPe(dA|Wx> zYyhwl32XqJGUzwosPdHb4&WPLJiu;1bs6%&d>MY+e%t#)ouGfkTaZzdt@onK0GU2~ z0Ko)Y#r6H7Lv@f~+3SOcM!x@_VKycw$8^S21P^CVumJwjqXYQz1O7PQb|@(X`}IXA zTwT9~`)>_#K2Xs+Kc8gj*GwB_LTDelsXp7M{>O=hc=F8_VnTx_<$L1*bzM;XwQO;@ z`XYky9Aq$%NTMtHh|?%}3^>kq&dS`Ep3CkeY3RM~;DCBhw1J?+wGJX{>fNz)PM)4R zL+9bJvDvJKt6~4WSh-ZAL;;n!M+_4^laq;^RAB;bHmq53~Q+TAW#lMm{6mAqsAdkyUQ9|Cl-zGX7cU<611h?h0jhfiX!r zxe@c1cGrC#KS*HVKjC!W(>?1CU$4+TY2G4`Awx$2(fqG3*xxp|XnEGHwXNmK^Ap4n mKHE#rpZ(={GQyP2uz3K@6788Z*}-_N8RC7WZRr)qn7{yL!ZywT literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/hk.webp b/dashboard/public/assets/icons/flagpack/hk.webp new file mode 100644 index 0000000000000000000000000000000000000000..b233a102baf9124f36f099acb6d2459f257bde66 GIT binary patch literal 554 zcmV+_0@eLeNk&E@0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlQ9^PF4{|eNtO3ns-Q$PRzeE|OS1N+bq zlwcQr>w(zF`Z^#A2!py~(x zh;DNId$*UAXMNnU`}o{%bKEK!h0sdEMXerGqMhJsL5 z%QkDNKEa#uo9bQ(;-~h%u&s`I{DBx}q%s~zd9JIR&V*@S!54C6$-Wrbq2X`EDZoVe ssv@~T9zgJ}Xe?xDWAPYV^_Reabf2iaPwv0|b9r%&gK0a>`>Rj@04TTw7XSbN literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/hm.webp b/dashboard/public/assets/icons/flagpack/hm.webp new file mode 100644 index 0000000000000000000000000000000000000000..b4a10bdd492883a7053ce88e06df375034cb9604 GIT binary patch literal 908 zcmV;719SXRNk&G50{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlq>0n!mzySNt1IqV}s8$EcLEL511EaUERnHn0Rk=Q@{78{g(_iKi-$lP)K=^rr_uk*~ag*_3Q{_q+= zWCtaN_71_P1kIAj&A=(}ngKS|21l-HBcAdNOOG2wy|Q*cN3MmW=BLtS{i5rnzp-tW zd+VrHdc3GdWL4C^nW4Z1HG+;CF}G6nnl=09%*&5&wIG{^xxkmGZ9h;(<6V&A4R<{> z96HrH$EW1tynn?Ivf5t+!|b$I{h!Sma!iVH7u2Xf<5oNWPHTYX_BNWJw4J$z1K*r$K|&|L_w+Ff7ojPm|}O$x|r`oLY> zg|PpFg1YF#ZA25d?5F>%I!%Ck|J3Y!ST1irBkeL*PwkmP$d6s64N=dh_iWK?i4=ct za8U1voBsVv7U8Fjf*a!qLcdpD5>*@IRW?Q3HQbw#Xja8u&~hqc22#&_j-|W5e3)ar zbgVt3D%@|+N{5>2`sF&lI~cjFIQ@LT;%dJYZ9V{<$4+%rweEC3(Om-LP9Iazd zYdSBvx*)~VcX=nmAn0Wo5YBGqY68eQ+-)>KDlLIBFKm9iyM3z~%S#u^D$+{gc|2%{K$h zJ}E_C&trjRq=~!|#;Y4x_Ukq>c$MNJWo;AZvYW%3uF40je=9(}`Yiu-tos5$2L9v5jxq|}8rla_AVgLX^fxg`U literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/hn.webp b/dashboard/public/assets/icons/flagpack/hn.webp new file mode 100644 index 0000000000000000000000000000000000000000..112fc457e3853151f28599c2c154b6fcc434534c GIT binary patch literal 478 zcmV<40U`cUNk&H20RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjCn@FXjBB3g^ zTmY~V31$GPEdV-Lv5mf>f$uVaD_Z1p5(Ym$sqtypSuH5Xo@0S-LGq859ROgPSnt`f zSD!uDESg)U1PB2B%fuYm$#OvXMDwrTEM%|_l%i{8rT)st|5_jPdGWc;2Vnd8ot)50 z7&ac6RgFPR*IBV}pMt=nVFD{B)<%$m#0PumSy_1?S!fN7LUw_!X1Sid#9^~Bz#v=f zgpsqJK!(*%!`s+ccW@Sdj@iLIW< zn4VTdC$Dbnx9clq$oW)ZKk>%i)X{#j?C)gv?=~j4;yqkmcGTpju9aX}z4OLzntun^ z1k(MA+Pr-u9}I62jdu)3&~L2R(mZ+1{*V9pfLITqNBvK#60{^iv)l0mFF0KV-qu5J*zp zA7YJ&2nQl8TA*xy-9sbZGiIu`q}z1mQUyb<&W%}`$g#hU;>!0jSryz z>H4o4PB1$pejA;&=t6mW>PX8=6{zI;{J}zo`@W0092( zlx*nT*7aA~F=UoC)$~@ZiD@za;gSDCFf)Y~qm}&(z9*lupZ}20+fbdJM7omy_o`7r z;?s)d)4-;Wax8)WpIhtQ7v)3YoF7`><<)S5wQ-~@GAQs=D*B`Q&Oc&gd?0*Am>v-% z??tU`fkd3u6`K63tB&$5zpFqi(uDW0B;!SE$0ZlUbeOMInWiAZEd9gvS-PR>;vt$r z&_m^K@Cn<&K}RE1{xDMRSvx3iG2@b;*cFpZhO-+y`5A5$Rs0%U>IU(;H^=PzjXd`*^&a|i+lWo_6`2sI#v@{ zfOHukM6=bvQHrJYr2V0E*D>Q7(~iv&GmqxT;D`N~F`pr$q|M|9fV9mBI(^am3qWeK zNo@sJC^)wDd%4@ZBYt~*KAqzY0uCyd^mHzaUL(2#qh19%PQP30AX4&lUHA400+@Wm zzF0@7tyJ-GS`$$$WqS0L*MkBme*a literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ht.webp b/dashboard/public/assets/icons/flagpack/ht.webp new file mode 100644 index 0000000000000000000000000000000000000000..e826e67e55ce34ee01b46862fe4059b5d956048f GIT binary patch literal 426 zcmV;b0agA|Nk&GZ0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlYtZY7GuYz^Om_q{m~_8iG~Okb-kR~ UMmZ*hCkeXJfnYGm`e%Ru0EE@N$^ZZW literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/hu.webp b/dashboard/public/assets/icons/flagpack/hu.webp new file mode 100644 index 0000000000000000000000000000000000000000..d32f8cf01999531bdab5065db6cd6b3cd1bd54d2 GIT binary patch literal 266 zcmV+l0rmb;Nk&Ej0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlA)z%& zsGtxDWB|VNucJT431}D~9>3sFRvA-{*v|^Wj9t$v4?os%_C=Jsn$_({z1BGQ-~j#< zWuedgk3WnE!&Q&}@n+y|@9By)d?o+v9sLJp;~UB(JgaFNLaoYp(sE22d)T^)P4U?> z^vII~evHp>#0X|!!SInqT3$C7kNBF?wlFTOJ}gj<&1Orliw3O6@X3z$-nOk&E`dqi QoC_syW)J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qkr#sw!Y%n9HbTz@W-tH_>W_hw5S_MLi9M4MLm_5<(#} z4aELGaQCS96~1s}_s;}|e{ba`meot&y6tB9|JN4#p9ktcH~iB{KV@9*ldbJOJ7t1` z7W?1Fuh(CCzw5MhAN$V8J&!(KZZ*D89=*rR`v0CkIu179cNI^*Yq#dLPFrIG0|Nln CoJ=hM literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ie.webp b/dashboard/public/assets/icons/flagpack/ie.webp new file mode 100644 index 0000000000000000000000000000000000000000..179c65786da08dfad3ea69ac765fbd0c4ca5d2c8 GIT binary patch literal 268 zcmV+n0rUP+Nk&El0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlaJJ-3S;cGxsrCu)5YmEHbl$wzyR)tYt1KF>iOLKTqr90 z@f8>L-~TB@zgc~8dnRk?e&&V~S6k}&e?H!wPg8zCCI$ekDFv?3f-DJAzr&!gZ}Fsa z6!Vh?|C!&Ik&Ez=Ya-L SC=Z4WC?vq>0DIl%cmM!c%4tCW literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/il.webp b/dashboard/public/assets/icons/flagpack/il.webp new file mode 100644 index 0000000000000000000000000000000000000000..74c298c5fab0c028edfbb41f90e534b521cdcae3 GIT binary patch literal 424 zcmV;Z0ayM~Nk&GX0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl#|2SQJ@31aP{FCt>D^M>hJEKq+I7+0xUY(Rw{0 ScmK2=2sSyiTYF3=xBvh^qqEom literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/im.webp b/dashboard/public/assets/icons/flagpack/im.webp new file mode 100644 index 0000000000000000000000000000000000000000..c841455ce05d60b5b348c5f971a85f8c3a61274b GIT binary patch literal 486 zcmVMNk&HA0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl`O*D=%pZu*_=;u!b)T#bi%RiqEg%7mbm&pV4Qr)vyu;b^6wC@BByJ+xfK3BpZw5EDO&5t^M6J}qY~!- zg~o4YNIXpq6Hq)$ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/in.webp b/dashboard/public/assets/icons/flagpack/in.webp new file mode 100644 index 0000000000000000000000000000000000000000..df5763e53d90e7a7d7533507d0a83af9497040fd GIT binary patch literal 416 zcmV;R0bl-7Nk&GP0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjCnn|UjA|fX^ z43MxA31|Sf@c=&nG~E6q%BtZYewF*|3s*eC1BNt3Ppk#kWQLqDf>Z@u%a56lJ--^b zgB$a*LS9_Q1_1y7{;y2a$vI$ODxa2Wm%HHoe{t!bqBs6P(OOt#*o*)Vd z2-z*svR@_H0;-IENZn67ikVW@xaP2zJPW-WjXZxwD|xTvBre5yulHCZg`)plvR_$H zn#L(Tcm|2uzj$XnE$D1Mo*zKY*9oOmYbuPb%NCD0sx(B_+@z)NW?bmnf#mP$s?0?J zw|NmU{I*bs=wTT%{vU4dy5O99)by}kCgxwq0=S5I(_1S@RDwRn0nGyWV~I5=8Z>z2 KUqjj$pa1{|B&@3d literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/io.webp b/dashboard/public/assets/icons/flagpack/io.webp new file mode 100644 index 0000000000000000000000000000000000000000..7ad2711029557adbf60fdfa97eea00a798720810 GIT binary patch literal 1366 zcmV-c1*!T{Nk&Fa1pok7MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlFYyh1ygn{q7d683}yXy#(zQiXX;#=nB`e*Jt_A}H6>Nl$o`0v;ca2|jk)qke- zmih+%vwC3rB!1ueOx>*gL%<&PzHs(;h$KS#)BIP1mxVs?vOWEq!JlAOAN+&F`{v!= zzs~+Mdx6G3dwhHPtA7vT`{^Iq4}g!=Z~2{xeH4FfN@j*Bq`35qbOj9|oPNNJR*Fef zW%oO#V+l5-`yJQrCH+L#Frz!O(4SPx^B`OD!EnQQYqL?n0R5*FaXYGkq0EokqXLlx z-v^VnA4iA$ull#gE09=jhj&$_3?9nT){O89>2dW8SDs4 zB^i%IsR^ENg9Mb<&g7NkDg;zlQ^9)AfyfOWptT*=l^VR1W_;7K)qSD!6kfr6s&k+J z5D;qf(_4nBSJ+y;{w)#{W?bFhwg(RIDBd@%cgq4-jUuz3tU1c z2Izo1Nq(Eu^XAFMK9+GqT`?IvIvH|s(IGTqT+rrFDkMJxflQ9cwc5R8&q+P+9eSn4 z#l7dpNukeBly+xg`#- zZ<@DXW&&jz3)!#1poc$*G-_Msd#+6V^&|sX_94I|mv1w0DRciA1e0U9q0w%49sVzP zgY4Ra26ZeJ090TwLhE{>2rDUAqV^Vo)BdZpJCdgPMx<^3&v<9~1mxs?R4DC`UmEWf z^cfx4*}_>eF74#@;6oti+HMH_-xg&Hn>9T9N<>Xb9`5d9(wsGTGnY?zTXE~J`1_@Y z7esi~J&hlSmC`)%T!0z%S^d<2alY3UNJu$IP0}`QB}Eq;39k$OquhdMyV$P%Yw2-l zB&lcr*XH4uS_`X%xwc zZ$>mq+Yq1P;EDZ1SPc`9!jmy+2Fz1Jc2tBnbuh0@ozgGCg{Xwf@?jqvGZXpQg7fBh zzM(7T{`at=TUH%)wn?eP!n~9Q^RT~`YAP)+$~_l=ucN&NjX<+OV&>wO3Uuok^`I7N zOJgav0uxKOI*piFZRkLl=4>Nqx)mjQ)`6u3{4034IyF3g<;U!8D(8Annms>y(wZ2z zQ<&om!>5CQB6x;iud0U9!@G^sDBnjqa zI6%>V;UJx~Xj(_HeHdfQ;;q=2+3fT(3-CIA&W!5n`-XPeSvgQ70!y9<@b~TQZ(RN0 z)M-y3RG(s`fxOSZ`=!OZdtqQ8uXYR~Hwf0}Bi z3f~{~K41vogG1+o5|w=mTe8`pn07EXHb^rhX literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/iq.webp b/dashboard/public/assets/icons/flagpack/iq.webp new file mode 100644 index 0000000000000000000000000000000000000000..731e16df432f65839694a846f1400a7ad8e6d53a GIT binary patch literal 390 zcmV;10eSvXNk&F~0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQll}Du`A|bU% z0H6>FKpBwIwpQJd=_)(L;}^@H_DDF(m8nE(I) literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ir.webp b/dashboard/public/assets/icons/flagpack/ir.webp new file mode 100644 index 0000000000000000000000000000000000000000..0f9a5aa52faa2a51d9bbfb7798e0d1a720c688fd GIT binary patch literal 574 zcmV-E0>S-KNk&FC0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl%kHkCw z4yNu&<)q4QmI}lNN=alSEc~6W&U@)=zD6%W&7U&pa?NI)pouqnaVZE5(|3@h%&=QD zF|TRXx_DyvU*UZb;v3J8Z@gVc_$P0vYIYu-vNVTB1{3(c*rY5B+Z_hG-S*(jw{4V0 zd2_Fzzq^c^!2t;RpbwQ=dD3~i_hyAx6VPC@lL?tqKd4X72F z!eX+n+PATd>^GVWcJ5olRFjle1CQ0sm*UKMH9|`w`TNO$t!G)M>WZ0wKS^f%p#pP2 M3*Ytc5Ci}K0HwGTvH$=8 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/is.webp b/dashboard/public/assets/icons/flagpack/is.webp new file mode 100644 index 0000000000000000000000000000000000000000..76fa677e0560a6a7b4f592be6842887897407792 GIT binary patch literal 456 zcmV;(0XP0qNk&G%0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlE$s~H0GxC>8 zx*J}Iqhpe`iH06xh0}b%0RHgU*I`J)_|?0(Fo{neixyz8IEpauw(s%(BqS@am#i#4 z{m?)Dc?ai>drr=KGCa@!DE1<_Hb!yv)RPK@+Tt3j8Dyl|gL&nwZIaFVGyN}J6(cnf zEj&2{%$xfi(pdOc)0H6S`eAq9BYv_;%=6YY#Yp}BUauTq+xziFAvD_1PrYVMOEVAU z3eHdU&kwAWNuT|uDBsw-?1q+e^9t(0ugRiJgLO9BfS39ahcuHDHo_8vbtYbr;<05L zfa{|gacut+ij6dpf$77>{C7T4lXbQ#7SRj4HHPP-Ut4zOk|Mls`1+K+9)e15u5J*zp zA7YJ&2nQlna31R@aX#g|;Zvcb<^Z)@&eY0W$BRnBmc9P)pIKTkzhilCzWNbG}&rtkls47(s zF+!j6mGi}Sm*f)@!1-&KAN=w)CC^|ei7n$JRv$LcSrq$sAy!dIeQJR0wV`-PK w{G0#lfYzBz{Qt?ndtzCeMFLlME)tu7N({b<`x`Tp)tlhkQIqrcNT6^403lvq`~Uy| literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/je.webp b/dashboard/public/assets/icons/flagpack/je.webp new file mode 100644 index 0000000000000000000000000000000000000000..ca330e5c11219cc9b742c60d85c2106283632d92 GIT binary patch literal 748 zcmVu5J*zp zA7YJ&2nQl=)C0^1@DJ^Ow)`L;>bihE06I=TZao<8XjXIK z2V8yNcpIb&W?nL%5$Nz-pb=GUSvqpf>;!}G%-Jf&TcX~VDw~E`|LMj zoB;m(<)MZ|FVxs*UeV^3^OMN6WMW+g6-xTdz>DZ$qf!!ag9c`KSwFcKy%~&vEKAFGq<$<*G;EK>PerO=1 zsF0sRi7<6I`(NAbFlEjXqqZazh^=ii#9XymQtcVX#Pb=jnxAq?yLqcq13&S7)Y<8} z=e+g*NAT}FVw;lFrk)~^;fw?S*0<3YSlIM~RmS|7BXYQB)ub$J7e;&P8b{o+KkK+? zF>@pXnB|c?r1$!p$wiFWd=#D*SY#;35qtB9*$)MTpS+8vVTrT7?6XBj4W-?&y-)<7 z%f6@l-2#Gcn^XtYo=3N5pX>6#9Ri!385xE|4RI>!gw;Y3m}V=m!S#)1^5oZ|Z>`qC z@M#~xy?7^phKq?j34mJGYwXz1i^`dh$QWAMckAHv3c}~H~TfX6u}^)&XagC z@4{1@+=cq4Pt(5?dtw!GR=cONHYJ&uV$PW6tX|CH)g6KaOq)SpUitwO6 zk#rt!7_Xlu5J*zp zA7YJ&2nQl{J-wGW0oa%uv(`DJ?`5PSnDC?=<4nzlGkrOb zR-q{F0FJbN#H~yoY&EGE5HWNV=R7K8uLVTA;UK5Uj8baW!fdEIf6Ff^gL$30E|tCL za;lWW^~nm4Pm!M~>*D+%H`J?#aP7&3;;TNUUX<;$q0IP+l}0rSQ2Z9N{=xAZx`IpJ z7e%2g=u0vR7?~ZjfZooJhlU`vvIk?|#j|a+7_C`JRMpHy@5N^sHF_ay6E0fhe@FK# zC%#@uF6)`vS~B?#(Kx~oWd;^aQ)sB~{bqoFI+I2;Dt|ZhJF+Yn^J|K`konIojdRO( zF=^h?%B$d}x#JT_x|NPSKGVtPQ9{r9v^E(@B=?VI7o@IK-R)T#ZdHSa#Gg#M;*V@M QTat%VZk2j!k)8km0I!90u>b%7 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/jo.webp b/dashboard/public/assets/icons/flagpack/jo.webp new file mode 100644 index 0000000000000000000000000000000000000000..30b6e0d54248686d29d9166c0de5b9a68115bc50 GIT binary patch literal 476 zcmV<20VDoWNk&H00RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjAnn|UjA}ua7 z37Mc032FepXb^huAM^m4E88XgfcLuS%*i+MT_$K7B|XzjFcbm&!E#XSB{!O3no6?T zD@;7n$-vHFV)4wx3{ijp{`by{WnWdf;vg#u=E9hUB$b)%+L>0S`_FwLwDxGf&j0dl zBh?G?diZC$15p3=4kcVs3=M@lP@Q5LPj#GM=rDC*3sGI~ok%_U>!g|Q0iK)5#+?n0 zikU}>Mf;f38NWnZLWs0cbLEX zS6RWrpq1DDL75Kmlkv$!HJ}8lyMwQJPBH>j(94}ZJ_SQTro4oetyr~~pj{q!v=lYHR~4fN;kJH_$CV zbd~?^fOl literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/jp.webp b/dashboard/public/assets/icons/flagpack/jp.webp new file mode 100644 index 0000000000000000000000000000000000000000..948ebbefd9976050ea348166f01458031df92481 GIT binary patch literal 356 zcmV-q0h|6(Nk&Fo0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQll}Du_q9HY1 zSOB09iDm%8nV>R&I3PcOZ~%0o`6`sje0tL6w-aICexOwpYJN~?+9+0xA+x9-9iKS> z0RH}ZMz0c>%BB_puAqx`=2Xj@K>aj6v1r%syVF-p+NA^uM36XY(5jbBppq-kN=)2T zEsCFMNn|Ae14mc1JA zfotB|?uSWc?aW2DKeVt~pa%@|jcZ--;5qMa7e91Euu5J*zp zA7YJ&2nQlHg7{9r~{h0hgHRBZ9Jo#;bY z#>}h@)r1F4LS}kKv!}{0w;3y#JP?QEjJ|D@t>6Fv{`{*;Ue{Wg{_J1y^WsOzI&LH9 z#OCF7!ye#*z~l3jAN0oGf~;OR+wfI}eU&+<=mqSdv{26>%%vwcB;m$+YW z)ri2>;2#y8n?DM8>{TD7qvN73=a$$PH4yHrc*zwoyP$MfEO&pY;EhOzSm9566_Ou7oZq{E6WacwdZfl(IG2QxQHLL6T=F3>(NeN<)lq z-BW*GplQTBeogst)wXF#pdO z-~9s~qK74v|C)r2f6_*7Wjy=6e&RqzLx7zQ;sYE^ldBNQIVtZMmY2riNEVO5AM;b6 W6GngJHuE7?6(JV-$yfI$hyVaFof^IX literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/kg.webp b/dashboard/public/assets/icons/flagpack/kg.webp new file mode 100644 index 0000000000000000000000000000000000000000..ff01c29fab5f960d30ed564a48fd56ce4f904b4b GIT binary patch literal 474 zcmV<00VV!YNk&G}0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlj<23z(BnLZt8=VAch?FQ-cQ_=qdy?a643{0&omEGk(+wUTcG*giwb zE_WaR0RHqN&j1oqaZVwsZswp1YsE9aX=nbGkNTE>e{VdZ-z^Mo?s+U{_aRe>1sEs= zbMX7%H9Syi9V$~-LDtuGjymGIUVm8; zt$6o3OHz~p-h5AuDrfN(cXT@B)Ij^(lJyrOVPIskn6&S=g`?l6`K2$yo4f9U-C zo9LK|Fg>Q!f%o-tScjw!HBicf1RjPtBpV8s{qE&jY$<`F zx4#5unA%=G)idfIhBM5S6Grs)=PF6!1gqDpgR3~&w#%$FH|}9^#@Fbc@{cWf8wz}N QX<4T0``pw6LihUs0Kh}qp8x;= literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/kh.webp b/dashboard/public/assets/icons/flagpack/kh.webp new file mode 100644 index 0000000000000000000000000000000000000000..b082bc50fb245b70094a4242dbbddb4a441153e9 GIT binary patch literal 474 zcmV<00VV!YNk&G}0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjAnMoz1A|Wm` z3ox(}31|SWRRB53xRU@{VE&tglk2;X0p*kI@7`)XWcK$gn%+ z*aevxa-%k{rynV&6-w?N`j`wq{aW_O)!4wc{u88k$NdSXISV(68dU}UdbJFc0=feH zd46`K!IhJfetV|)&guP;eVB!;`Fwfu5vv zUitJEW!W(c<5N)PC_%US^L_EkStIn>qUqMd7ip#N2NLXozF9IJzuF>{KaPJy_Kjk8 Q%}qS&TAfyN#xNiN0Q%q8>i_@% literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ki.webp b/dashboard/public/assets/icons/flagpack/ki.webp new file mode 100644 index 0000000000000000000000000000000000000000..a2398dc116ab1663fb90341a7588ffa331f81ece GIT binary patch literal 776 zcmV+j1NZz=Nk&Eh0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl?O7JBo~A&Xt5bUf}sPf^h!7Rvt^te3q{?9O>4yAkNVSg~*aB zUv#xERCx6HBIslD5c07f2Cx5lO7k_5QOuiU7vLO}9~6Q^wf<{8$i5gmXBI*A)htuRjsLA44QS)&GSwwIo3!+ zo)V=U8qjiiOJf}++cUJlHTvL}^*|p&o$Qzuje(@29^g}hRZE)%zO#l9@9o3}ACsT6 zd7H`$SG?Xto_G3a(eybqtC&dHllUP# zIr4$**^6A$$cWEF#fR3JFt|i191CS)yPXXlxs5#TtlOHvUa*+OI7wy{wfxF)L9lY4 zSQ!R&I%0*?{+hq8B~MBIT234JPnq>D>WmImC|E&NQf6@tyIrkR6mHop0oR$)gCp}~ zFNxl#aC|EPuhMF6m9w76=z;yZ GKmY(svTkeu literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/km.webp b/dashboard/public/assets/icons/flagpack/km.webp new file mode 100644 index 0000000000000000000000000000000000000000..4cb6b11b934da9c40de27dafb04fc4fc9713bb8a GIT binary patch literal 494 zcmVu5J*zp zA7YJ&2nQl0RR9{2>_h|Dlh;g06vX0l}Du_q9HNa zoB*H^iEIG18=->Fs_&XdSEdhIPLKSS!X$wCTmek4>cAJSRyP{$IRPxwr$3HF)+5Sw zwVT%#$AoFNHQ)gLwD`Fb1`GI-A4*?UNrv#ZfzqP{h0d#v9FRvkjso~nA`6p+95O}=D0;{1OFi0BpsvB zL$js{GvUVUw$P9|KT&a9c|I#rC&!twTl3(#^vwvUfT&0FH1?jvqBQq%d9lDH;l0#+ z#zlrmXqw{loYh}E*!qNJp>Y*EC7Y-p@PE@|FKCdjYKe{y*XYn2kPVenPM02nCU^Z)<= literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/kn.webp b/dashboard/public/assets/icons/flagpack/kn.webp new file mode 100644 index 0000000000000000000000000000000000000000..1ed34fb7be81fca1df46a549ffb02a979a25a606 GIT binary patch literal 792 zcmV+z1LyowNk&Ex0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl<=YONKo*-e}`_8d!!d=cJ#X$$h<2W6KczmwoT@4Z7q*sSgf< zam2?76h(`f1+m;)_D{#(UzxHP4;k>u&)9?bUu`jz^Mk)QzCC9rz1Cnq)s^d?ZKZjn z9*f2zjD&{EZBnnpPM=;c8?bly^EwKj;NtL8{hf_PbKg^k*Xl1JZ>wH5_Fd(^`Ov}( zsMnV_6Xyf{d$P>3B85EuabSY->AZ(EGITawLA)YqJTgG5Q(mT!o8Z%`w!RK>BRz5(Tb0N7aomq|MY zO82;AqQ{0)={!k258)bUwDW|G@(G^n-e8hJvl6Ka5O$N^BJeu)8)!8n{w*SEZSO#m zd;eA~@%Rg(c)zW8*}MNk&HA0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlgoN2mt=*?1Ue-j7VfE&y;h%{{rDUmA|uo3%*&vkX5FouhqS4*FOaQ&Om?vP=2hM z)|)9Q+|)%^{Rp4KGxD{Eo4y@??|-rUq`7rcJ#GbBDO~-f&n2QP4)Gf+P9x)~1bH!U zCqjlT*Y^86|9&F>>WF_?d*aJ~(73|dZ%aTRw74La&UmQ;HgBBW;0o&w6dgiAF1-Fz zj7D{_Bp>4I2%(QQYj2ncq^hnL$ofAXsLsvwH+S0fk2(lFgFsd#@H4*61c`46{ z()KrUE~LVQSJk~v9xF0YUT{Au5J*zp zA7YJ&2nQlqEJ>an#&&F9! zk%8wvOjOgKGfP;+)H)2kV}C_hBhj_GhraP<=2K~fcGrT?M7Vev1_D@m+5l`S|H1Dp zq#{|)u#93_V;+d(wk(kiFItXiTrzd|1Nhn_7Te6DLV1D z3ItXc13W|gEww)$kfNfnd6$*to+NbOlc{w3^v_VYf^H_-4b6e|1?Mwsq7Wy3tZu+K zI&ZxptZl^U&!c}r90fc&^Oz{-j4R4pczM_kdZMm{Z~HWO?dP@X)h6pkHX-!`mwn}b z>>_O-ob8eQN+7~Z5O73JVP9N|=oat*T)1`#20fdZBf~daD|tE>DE(%v3&1XZzS4mH zCTgFFU#IMd(hZm#+-Gy8i>hb04hSyz=Pl175X!6( zG95B&p&;;5uEyXVOjjs9n#Ap->m_?eCf5KY5xlVKZmT_&7_bdpeH7RQS^Ob*1+NF+ zLxp#vJPslGlj513F`)`xb$$u|$ku5J*zp zA7YJ&2nQl7hLh<%Sp*NnnI1Cvc^eHT>Zl6;RuTE)@;W2k4G^)jo`lRqQwb{_{@z zSSB0Z*@Q~9Z4fKm=d1Fo*E~ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ky.webp b/dashboard/public/assets/icons/flagpack/ky.webp new file mode 100644 index 0000000000000000000000000000000000000000..5adf53d504c48327c93a5e485117fa8cd87760bd GIT binary patch literal 874 zcmV-w1C{(zNk&Fu0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlL={aU=KhK@E_nhz&!vzV?8c?kw0z! zZvFv(XDI$--~JMuufg@J>6UoD`UBV(r01eAkjc>;0xAdjR-K`2-)qkWyuVzt&^zxg z3@4~wkco63Uug9QG1{?a&3{|;b|*jp``oyj2Oo*9eVZ|1WdkfSLD?-D{zB3h5V^Xc z&a^*J{K6Mj13miPpIGHOnI6JsvjcSbz%se-{r+G7AFGA1q~Y))l^CbI)dAxd-m|P! z-~4oczapK`woh~bx+#bX-qJxV9ScoqKleT}Z?YX`1W-`d{pSuzX`-Kd!-?rW9z zkK{w+CnrCT)FtkId|%ug{CJv})DuZ=gaiKMBUVsps>{$+qg&skWskAz)wYYeZY&bj z)Uq~>KwswHTPxW6_^cO`^E;=`zA6Cz(NM`_F$ zt^OW>Bei%cVM*3A{~$nhtMX<-1#mWA(tH+|*xmXHJYs*)|1PV#n5eE!MqrUb*zd>v z?}ya&a?{_bfY4CpZJ{>0|Ibsz{G}=#WS>B3i*#+cffvg9rasNMa@yCPP{m_6i4K0( zlVK&ofl9woUN3aSZENTM8)Wk7tPIEy<~-kvkwqbr8lI3I5D=I$TKYs@xq?K?W0sVO zRcgSBu*WEKb&u3u&``1N@-aAP8-1|D)`iFk$IJpVVI{nF->WmUEURN7m^c6c0N2!@ AEdT%j literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/kz.webp b/dashboard/public/assets/icons/flagpack/kz.webp new file mode 100644 index 0000000000000000000000000000000000000000..92766739d42bcfe10ded5b1fcde32e69e84f4998 GIT binary patch literal 632 zcmV-;0*C!lNk&F+0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlb39q>zC z54hsqM@S2;u>U&V{KkC{S`5nRiLO|vNg&lH1p129gs! zZ=IQ$q6HZS@Rm5#qZr>r@h>4*p5%ba3NwBAPtPu%PAmX$Hrn~XQr=73DupWE#4E!> ze|!=Ur@%#LUCw1EhHMPMxCqQI_0W6iEd^bXtZnWfeUEOAlcuJ4plF+Y?FW@UZTPTx z*c8^hNDyj&echkhGbL)*Y;v5&)2`z{U$A}fKYQhdbM;wz^t{1U{Bgvc9iQlYP3lnE znY=xce&jM9OC(*fPW`xIf{>ugZ*?9n;C}t8Vu?Ha^GTtbyc~>KREeLC@*>2PbC69> ShNNMRqYM8={hN>hxBvh%;U&HR literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/la.webp b/dashboard/public/assets/icons/flagpack/la.webp new file mode 100644 index 0000000000000000000000000000000000000000..780a29bd22af461d256f7eac2cff835cc5db6d44 GIT binary patch literal 330 zcmV-Q0k!^8Nk&FO0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlYsse9N~&2~l4fZO2}w{}l)>9N3sWclZP!*}`o- zRWwjw0RHIU6Hi^oWnKm+Bx`*M$ z;yAcumODps_4jRM(<9~tMql9L1KlM`e*vessZ6jE3VL^l?DQiG3P(pL$lxH~GA-=%>$^q2nVsg05m8f1 cQU$WPT?E8E-tDD~^3HQWB93haJ)i&p0AyE(5&!@I literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lb.webp b/dashboard/public/assets/icons/flagpack/lb.webp new file mode 100644 index 0000000000000000000000000000000000000000..3664062cf6a9efa61c2f259ffc5653a18407b1cd GIT binary patch literal 414 zcmV;P0b%}9Nk&GN0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl6l(G3+(nRC&)amcRf2 z{_?B(kN%sho^%3`<^C-U5*;vAn>YB7zwse!y6t|Dfvf|y`azCzo8;p0|Eqb)*)6}i z2Pb%L=$8ElM7S?u7Tgiv`W={IzyaJnSeim&H8JFRUgg{Q4pT`k zr;WY7my&oJT I)P+z008hxaZvX%Q literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lc.webp b/dashboard/public/assets/icons/flagpack/lc.webp new file mode 100644 index 0000000000000000000000000000000000000000..66a000a1790d1f6f905833ff31ae9a13abd9ed56 GIT binary patch literal 412 zcmV;N0b~ABNk&GL0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlKaJ{14-OAQTlQE#oi z`vM#&<|2py{_oI(lxCbcE{2jJ-e8`w(AJaFnzSoXL0YvTcuMHMZW#SwLG~9GWlY<7 zX8)5ds(Xkw1h)Op_HELmNS+DP<4Ito+@f<=4eIpwjm2&BoXyHpG2RI&{r~6HZ%3}u zg^mfKynUV!vtp06acx6oRgWr%^90Jz%kh=t+zLRcq{lcEX6xt-ejoJuY@KV3>yVu0 za_d>i1^oq?0Z8rDzr}~q?s#=R@##B#H^u5J*zp zA7YJ&2nQlB`QGV$jl9`jJWR?lR35CT>cmTK+m?xonE1xg8v%Zqu|IvHPF;%YbpQKI$h!%n z2ly9d8uV}PJ(NAVv`EqitN;H6f#rEEcS`JkQ$Gg}gD=m@nxuLk)$XtRv%!OuPn06a z77eiqAzfT^C(d*}?j85M)}vmKlB>ju7+r9+`l8e!nm}(iN9XfNLzsW%5C8p}L~?@d zp?W`Q_SJjo)2)}iDtP8F|3yMWL+*whCRg&GV0@lL9j$P`N|zl!%msxqUh3dzI1{J; zn^ay6^K<p0gnGmFWhV{Vd6| KapvF0KmY(ll)TOW literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lk.webp b/dashboard/public/assets/icons/flagpack/lk.webp new file mode 100644 index 0000000000000000000000000000000000000000..587b281e8d210aa2777f86bcba5ab0a6d88ba575 GIT binary patch literal 668 zcmV;N0%QGBNk&GL0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjGnM$Rjq9La^ z3uv$s32XqJIYCrjI{lCF0|t9@D$Tqn(!WAy%~#mN(66P3?VH*Fnf#e9pcx@+Q1Gh5 z05BA{QlYM3Jh2X8sBtzt&YGO5n~R;tJYQKU+kVtskN^Pw^R9mraPXY#t{IOyzTQhU z@qXlz45O~{jHUk2iuvD}0qaN~>BOfx98vPE`Kj{#9&vrMK}F#m02+xnxpr9|HD%#80??0p?@8 zFfkI0%<~Yte~su+_kQeqM_p>p>veu#GbY)KzqLgwlcF1Uq|w7+sDhj@!G==8$wl+NOp%j8`jf~46h=v zx4Hvu8O9xx_~0#MFZT)TpT?ZKM`CHB|8Nyoeg4<(eMXZX`5ubs>z(2K8$L0ZezYHF z_eF)iv+j2HrVGqpCc>~RSAu`JP%DzyqMrr7(9-=`(ZW9Afo)D=_d7H~%Q9TLfB*o> C0yLxm literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lr.webp b/dashboard/public/assets/icons/flagpack/lr.webp new file mode 100644 index 0000000000000000000000000000000000000000..a4ec59be251b644c3ef16ce1b65dcdbb07915ad2 GIT binary patch literal 464 zcmV;>0WbbiNk&G<0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlg%W@zo#nSX4GY%EB^(ge#9Nc*8>ciVjkf_EFEN# zZ!C4b`&SUG7YQ(2XXB24L(v&n9>lck;=BT)5x<`x2e6h0-b=s&&^aQt!t$w={1D(f zJkI_V-eM5DoNADU!8{;zP}<_%#@pn2AX_hYS6te%243tzw7TUwG7g7TXth+*H^C7B zVpu5J*zp zA7YJ&2nQl&oL}TGKQ9IEo?HJ>*rz0yj!x> z6S+VD{^;eRYt5GS{*K?~I82}N9gFn_f90X{IX(+!Wk;@AwiYUHd=>r zu`pDB=+ZUQo-To{s4%pWmf7ldrd;^pE)uHUl(4K zp3C;CjVil+bV%z(T8)2=aw~e3CKcPzfFPF>)_Jj#-LxBP*av0;@Io4DiAx`cKN2U7 Y^n@RfhzH8l`^ii8E*${Iz?=X80Ncu?Q~&?~ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lt.webp b/dashboard/public/assets/icons/flagpack/lt.webp new file mode 100644 index 0000000000000000000000000000000000000000..9e441bee203b62a859da0dd317de3e065f228232 GIT binary patch literal 264 zcmV+j0r&n=Nk&Eh0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl5T!s{SBM9sdD@f%>cO{sUX}kIJO0y>|a80e&>W7U42A>AP-k zMIbBhte9W`{_nw$@fuf@?lhpAp~42j`*~5hV>1$^lb9u1&GPX@olkYv|EO?nyRrNr zk%tTudozsdlMYKget+OvH4VBG8Zt_gJg+%i#7r0VK8L*CM{aa7K(Dnea+(>YE(hc` O>5I(E-vh!GfB*o=!Dnv( literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lu.webp b/dashboard/public/assets/icons/flagpack/lu.webp new file mode 100644 index 0000000000000000000000000000000000000000..6e8ebfa40243c08258c2296c5497266820be5a8f GIT binary patch literal 256 zcmV+b0ssC|Nk&Ha00012MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQll1HT?p`o=% z0H6?wWB|jd05mGn|Ltdj0s8^({sC@MM434&wYGCzQRPX}<%sey5jqv%008;pBC-dk z*)cCe_Z}^D>?}Y6M4##m|K*|h6?64I6|lG=!ReS~xai-KV3k^DrEUtFe;QNU z8a>#cy)HDAzGBZMI9+x$hM3P4MHM_lsb9*;=hzgMIK$ G0002TPGpn- literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/lv.webp b/dashboard/public/assets/icons/flagpack/lv.webp new file mode 100644 index 0000000000000000000000000000000000000000..f9dc4e3ffd18d84ebffaf9fb8cec1499fafdbcdb GIT binary patch literal 220 zcmV<203-iWNk&H000012MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl z0PqqCKo}X+01irqWO@DtFLVA029;ui7bE}x{_i%CD*kY2rAvGN(3Ah6C;v&a;S`F# zeq8XBlBk+Kc-Q~C2XIT~o~9>sz00?EQszzI{JH-r9&qeE1GwUwdk$gL*+?1R$T8oW Wo2eF47EQE|I@e!d&P$v8Q2+pg98^32 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ly.webp b/dashboard/public/assets/icons/flagpack/ly.webp new file mode 100644 index 0000000000000000000000000000000000000000..77b04792b7ad09b45de21a38b9986c0292b4e669 GIT binary patch literal 376 zcmV-;0f+ulNk&F+0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlXV+gZ5KmZEO> zC|Z9CKAZUBW@i7N9yAyIRxH>v{}*YM(1Dp!`f~Th(ISv;&q3*S(4qTcV$={&TKWrC z(PR`xLJ#P2=IPBb-~ed9@XEFZOW7Z=o9XJ!vX)gOW`rh5e|Nhp?)6*WBYRTt4bu5J*zp zA7YJ&2nQlw;!JHYWyE)=;he(F(TCD&4n7rfqpDpLN1)r?#F+tww| zYg{vF3<)Gcw9bXE2k>3Xym1ZA{-Ee!pLQVDvJpKk0F73~MH3yZL^!7))sCPYIdZ|N zB-O>sdNfzo@C;ap$ruXOC+1zos{w)_a9TY2M24K;jkJV6-BjDst*w9SMrrZ_fhd7E K2U<}Acz^)Mp_W(x literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/mc.webp b/dashboard/public/assets/icons/flagpack/mc.webp new file mode 100644 index 0000000000000000000000000000000000000000..163c64eefd8e13ff0f757bf68561d943979c4a10 GIT binary patch literal 204 zcmV;-05ktmNk&G*00012MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl3Pt{=SZEuNVL5N&nE3|D@UQibY>P zE_g~>wEUeJJelDQeq8u5J*zp zA7YJ&2nQl>_y|Nmu7ulu~pt7k2{&}skv1M~Zv|HAcG-;F(!f9m3x~acn`A79~CFHki+S{t*t}IuhO?zz~x!cV)4ry26ehnty8i?qsK&!Y} zU}N}y>rf3?C@;6y1b_ZfwIlo09==}PArvN>(%Y& zIWMkc1px#oM+l@`hg7l?6aAi{9S+9VI?276LKkj_v5t4yI&#)^X$yOGpNrvcSh_Jm zArd+)%?6r_6egsH4RU|f*X13;{pAiz{<&+KkdwcEQ=RlX-Cu@^l&Ih>5iIB^{eTrXV^F&#%seJu zbOGg7!FWEXsgjj?JH|jO$1fqYaP$ks^e0#Ulgb@P;7N04d7?-ReftjKASvcJy%e>f z3@97ow62L9uw&G6vO=;S?-Q$fB^cheulfF7q^UqBdtSjcCi7V;=S^yLZnAus0002_ CkT}Nx literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/me.webp b/dashboard/public/assets/icons/flagpack/me.webp new file mode 100644 index 0000000000000000000000000000000000000000..4ebd531e919631bad5d8ee0ed96ae6925d5e4076 GIT binary patch literal 536 zcmV+z0_XiwNk&Ex0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQldTlj)2f%19IYrc5PIg3pLm z=Gw6rPMKi;y0iy=VzTex|JFaH097x}R*&t?QcG&IK98wj^tm?Gg=`Yd5!FKh&;l!b zel&9ej7MohUBOvdGPEqzx0j4EK{DjOgPLgO!}|eG^VYpBZt!K9`53Ve`sbmLjMtQD zKLN5ZuIA`tEb_4XtGYca;u%HdfA~RF=BqtZkX>KZ=zp|*4>PCo8~NItXs1V}73Ezj zL5*z2*CMPjz;56F2cXt!pFl*vP@~aD$@IDM4+t@)zThthNi!Q;+ApBmBp4t^W~jN< ztZDw&;};Ky#CqZY{&8NG3m6ypT&>v0{DEQ0cEXGLLwN6nSq&vW)wj3bj4wGGO!rBo%{5+ym|W2_7= aZ5+1Xrw6ryIJQnn(&8h`t6ohnxqtxrYVJ$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(&(#OUymr=`rL6yO-(PWDIQe`DYi<=q@3j{cm7)}WF z{aIiu5J*zp zA7YJ&2nQl{y4l>5y z`>LlbB%BXO`=Q;j=5_xcO_K3;$-nq6i1+%Nd;=Nm${{7814mGu5J*zp zA7YJ&2nQlcss-hMYE%WPB zgOvp1O}?S_Bk<00^?XcnP+UW48#SJ>yn{bylK--h^Ii(HXzrq%YhDll{_Fc%m+tDp zms{kuxRYruNfOc~{Z+?Uqtf>ROjPbze0=jm?#qpN5Q(h@Xr1~06+I>1MsGu)y$~~B z{cNx5yT|t1@z-z1_HUyl|I5uB>9Af&u-G=UFXU1l45j1QewXiQkc1{z)Hx3Y>9_*tIwszI#=(#?$n zrg72Lb`>2pyEapM`M%B0t3fjILqsl+0oLZO-$?T#QJ;74$VhS>qC69K?w%q!{R4ag zd_wALaE7CHx(dVo4qPhQCWC#FJax~p)aI$QiIRmoHD!548LioQaZ$~M0ipQ32VrJN zOX_|NIt=|iu~2tNZpzhKzG?PHN_g5VbE}q58AYoJsmt4`dvXHjQ|33T7jRZGmrc-1 z9j8SsuR@QAE6jHD!ttuSH=*y&tN(~@EEHIU|A`Fbl-IBcE@Xfb`jgPy$jNn2gC<9K a8gfc<8RvgE)PSPr1LTiIR5XuRkN^OvJw*xt literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/mk.webp b/dashboard/public/assets/icons/flagpack/mk.webp new file mode 100644 index 0000000000000000000000000000000000000000..e4e81974ea70c51e94f432584d0d4debaefc55dc GIT binary patch literal 932 zcmV;V16%x3Nk>0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlKiMyE z9)h3Ex_~_ZKUh6Ay^}w=|GM;;x#{?Ul+t@;fusqUO+FXrSunPQqw{s@MqRB|d|%SP9eN1+Gy4J{vLiN*9OCoM^xR{`M}<0XeS9?F|NpU8vb#{nY7A z+5Q%tqt>Y+LK&Kc=jz05ug>Wg-^z7gBacq_U;VpaFpN+EKF7+mPHtbD2Y>vvMu(ie z=*2}n_YCvH`tKQDT=sr&^X(|-5eJ{ejMT8|I#fteRKu#1IM1|QmJil^UOe7w0Bk z>H>3C+KSUx<_0osgZ0f|jOR^wOqgqks%)d&FI7Px@5?YlF?U#+frm)8O95>QYtd7u5J*zp zA7YJ&2nQl{+@Qh zWsh>y%2-oCmjI{#=wIk-8?9&|u5J*zp zA7YJ&2nQl_h|Dlh;g06vjGn@OdkqM;*< z_^=WQXaK^q?P6cWU&Ict_v5Q~_ze=?EZ(>pU>nUOMntZwZF9zi+ca%a0LlRhZ5@2pMeBWn!6qJ|U*Ydu!AG)A-$yyc?`h4u&?u5J*zp zA7YJ&2nQl_h|Dlh;g06vjIno6akqAnwh z0l*RoYyi76FLIx^{zZNj@@E18kOP?m)CWKZP{8ycv1>}Pih;C-I($02b%9SBtC=bv z@H}@cl#T0*lh6PF{`4cx*a9#20@zTpbjG^M$?Gq}b>RQoMfYdg01f|y#TvblGfRZJ z1)a6_X{Jf^7b-3R(AHn6f{R_jkn`m705+1G*JcQ1yZPwXot;Lnc zx2KHH_|vsnF4}sH%8Pt>Vi*BPh8f%A2J$rr+dmcBBOJ7~9$bijVk<`L{5~QxSVH#T zz&wP=w-7S1@+gid*Q7@8WeAUvb3;b_<-OjBUsllRjdN6wiC^yo&~Sg>%MB>^mt7k8 aQS-KNk&FC0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQla1jz@W2T8x|+C&h5a+&9JGi?gyW?RjSwhoI3-b#i(B?N(^ z4gZwA?XntZdm%L?GsiSD?1e99Oo$U;0092E-L3Q$pwZGruBrOPji7qxDRK*CPQ?c2 zPsza|3jhC~nck1akx_Nx+hl0`5PUVDpKTb*epcvEv|$I^6DCSFU+c96{Zc_{8I_TU z@h~Xcwi6|v;4B08mpD0KG$yDqY_C|*Iw7myow5nsPd%UdzqQ$hM)T14`Z_Ji`Pp^O zEHdsgl~)tF^U)B*mFn$-mfZFR<%^_R?Dk`o0iH#;7q{~nuT$x8P%)P_Uq8i_CYRtG zEGXjvn8W032u@$cnS36#ly$K&z1uT!Ia>3P7r?-`?_qL~b2V^v`&dY;< z^%`&*BR0)*L`U%d)h(c8IwMa4Y8c$Z8G3 Mfu5J*zp zA7YJ&2nQlNB{u+9BKM|7oshjmZQ|WZX1*ZLqi%iUX4t2S6_nzcyqoy)J%W+O^Kw9RC2cj zKag^uFaObo-qD-CV`>W6H6?a@4EEUnf_7W$@#d7RscqR=iKh)o)95kl#NDj06vdR2 zi?es|QHam0$5w3%oKfOO1RaboiP()z`CLw|vp>l$nZ_DYqpXC^PE}(78#k>!h33^g zD4d&ff)42P3=&DgPx=;=jRkQ2y*7ORz|kkFWc=SbBhQCqQxuYNnovh?l0S-}5iH!G z;Sz)L`u9#QPx>ZyV&srS3-2mV+yH?fd>MOeVvQK2h=^5Z!*?QIPM#jHa4$`JABNxW zOY_>If*FZ5Pl}HYHG@iJJorp(!c3u8`htl~yh(&9ecD@!LR+olDbqjWG?K9eiuP z?-`v>s;oMI!SJAvc?KG*R4avd@og|44J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(&(#OUymr=`rL6yO-(PWDIQe`DYi<=q@3j{cm7)}WF z{aIiu5J*zp zA7YJ&2nQlU``=Qz_I?E1#D zp(PNDa3w$h{_F6;)_a?y|L`BgwKcGAr~m!gKmYD5L@zidn=k`M@#0^d&~R&4*fB1G zXvb65C-6Q~_LrAE-0tgMaQ~h`y$#i${BvZl4*2dnvCQ4z*fh%H_00}!30;hhRO65J zBLM3OM%pB`x;CYeYKeS4rY-;Fc-pbItd?VNIS{e7DL1U(uSrl-{>H18g<*|BE)rCu z9ywzk3;G34ATPPp%H0~-WucLye*Y!!(8BTFbRw#V4PHaGh^7YhKL2vEx}onI$JzI*8uZ{QKk2h UHAh`MRM;Q|kTJj4yg(2D0J$Z+8vpu5J*zp zA7YJ&2nQl?4w0M_d5PRAPjd*OUMN`^;8j*N?W#^XzO6eY{xE<38TF z`a6v+n|#$S9X+DkRY0NoFj4WCKlL+@)usa%PC*H=nPci7ZeO@-|Ks&=w;Y#3Y%rAc zC+Lf3t6peJ-2cAcHTkwL%${1+kX>rw96xC&kaH^w+|`I^4t*-0oupr0`e+Qj&C^AJOLR0Tf=|b=D>J4s4|B34TR9*H3_Ze+8WpMw>u{e zF)vqqH{05X9G6FzQBxfp!MIL=#{e^YCnf9tQEmQJiL>ywL}f@7Pv^i;HO>pKd|dKB zw(I>}SP?bh9j-AJ_$Z>kMKa_pH+?}HauqtGuGiG%!>w>xjvvA*IL@TfV3{%z^xu5J*zp zA7YJ&2nQlM8Wc`%Jv8Iz2?gLK#AB&%w#5%WYhgSVgfB)4L+zZtga3ufS8##%nDiD}l>tEYy z^>^Xg*E3s*pgaVXi@&UpiQY~X?C;}9McVh0_dU=4_z%Acc4-dBXseoQLK%c31R~AL oMEEEb@8Om0ondiNk&E<0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vK@l1HT?p`kTe zs;Hn531$Gr3?_=2zxKfXSAYTU|6~3Idq$U1N?P`ms4wWcRUfV$+ay>6(t~Xndo}Zr zVFZme&h2DXS^xn4;_ZTsY^(k^(OoS!-D2W-IbZ)^@Bg6YC>qG)%w0Fiid$)!*i{^> zE$0qKrSW`wA)O<2%!^g#dlx<(6z}Zb0i?=T{hR;wL9ZWq@R@sNTKr@@?(ST06Jwnv sr(+e=lc~{0L_Ot$rpwb71e8eJ1`LY+3zU<07+YIBgM_avT@k9V0L*)Mxc~qF literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/mv.webp b/dashboard/public/assets/icons/flagpack/mv.webp new file mode 100644 index 0000000000000000000000000000000000000000..4f691cc213e71cd1601afe5519c60e1e7728ba46 GIT binary patch literal 352 zcmV-m0iXU-Nk&Fk0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl)A zvXhp@U~5duYPj+b75|M^NHymV{=wZboU5_nm~B!ETPPXIuNHKzkXiUzMEbswLVvR{ zm)jojxC+SH#FnP4MV08|TS+w-+0we*7rAaa+(sFyK3lwef~+^%a0x(Z>$*8Iq(USD zdhZD_l#T*&ziE{HXgF*J=TM6jeO{DS{QZu$&RxY10pQB58Umfgco`%eTMeYwY9DiQdH%bjlPNgvqwkZ@hY?Q2+Hl<0=*J3~xo>o7$bGa!MF0R0agrAR literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/mw.webp b/dashboard/public/assets/icons/flagpack/mw.webp new file mode 100644 index 0000000000000000000000000000000000000000..0ff51d1a610d1982ca9c1041a90095f7824df3b0 GIT binary patch literal 344 zcmV-e0jK^_Nk&Fc0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlCu z$c%whfSu5J*zp zA7YJ&2nQlBXb~>1ZWR`2>X2x{4(ki_4_$?YSZ@bo^X?!@iVR6@sw{paA~( zRWK4b`jLA=LR{XDvk6vVVyB*WBgaVnV{N5E{y~l=i=qEtv)%?Z`rIFx%^I`PW?A{G zS}VhqXxKhJI%7D4tBttI(@Ed{U*i$ZHr;9TEBxOiELA@D&w#!7%!L;2Xbu1(KL^Bz zP1sgu+%UOvW&O6>{l@+O$-n=8(*1z^H2eR_zx=(xag&3iRPaqYmb9FkTnKT=YOtnx zDtczvEHj^tW@}%>9C_#O@F3z|kK&s1ZQ#YaZ;;7Xc`o42syTe`mS6c0wu=)M&!$0j y)se@d$Vn0~h_<71?M6w^B$md;XmXP3t`WVk6NEVj60mEjQ3m5LVDKAJ4*&qIg1V*v literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/my.webp b/dashboard/public/assets/icons/flagpack/my.webp new file mode 100644 index 0000000000000000000000000000000000000000..b93cc694d60938c4ca3ddc9ce66d016323a227da GIT binary patch literal 530 zcmV+t0`2`$Nk&Er0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl z0I(7XYyil|?Rj712M!U0703SV_5qLs^{?0eOassZ%RBWa;Zydb_Gj8c=B&^H&-s?YLx4>Wk{<}#!NWzh)(fij$W=Pz+-UVJN0uh{MnQF+FhGzVTmZLok-LZyDIJ zf4z(C?2|qAb&)9NiP^pocdYmtLJOgMx>+-10K6iZUTHA8Mi{F0u;sUi!MS@PKa2jM znPQJUYJzt$#dvQOZ$~}`?lpD$5_wKG5By*C49r8at((P-gINFik3g?;XWw2vSoHbh z_zyQIKc8TA($ucUHvw=cfob28Kk$?u-Zke*R!syapyyzZ`+0q&?kvnmih?DABmcnz zWj)c^FFU#IoZr9yB*`BP*DDXkh@g{zm&K-rf^1Q8)hHle-(IcW^_D(~yQF&tqwnCv zbvl5&S}f_fF28Fm@~+hLq(ch#xmQlR8eyNHNaFoVp#(u5J*zp zA7YJ&2nQl2?Q&3{*Fstu|EgAlZ&c#N2a-{KUITdl`sZOabxtSMs^bK={dYoO6yT*7 zwm-j70G(x5W-7?7fZ<@2hp?EtsC``a0=M|T0V%Ks>oEWJ=52Eqgc#@2=c*nC;Qx2E z8a`PyYR-@U8%v!fOaiIAe}=;tZ@TXJZK?d$FjTPS){{!p_wMJc)t+sb{%u|0#QUh= z937aXvYRK~2lfBHdE63>sTUcwG@`D`oV!8+uHOER{mNEv@(?`opA$HJt7H2h3n6@m zmHw7D=Q#{&+Ic)97=KjMAN6D1d+EQ=eW3?Ah_`|L4hDt%bdMKLAp)ky!`u3MyY9Et z>p2Y;dYb;G+UJ-Ka4Y@fHTLlB`y-5USo5UvK_(TkkG~!2?qd#U8~KiGo7;Z*|Naes sZ^OSI{yMu5J*zp zA7YJ&2nQlsD4I!9n$}_eg*th%rN9%^<66bNh?uSM>fy9^GWb*;rjT~ ze#`Fv{4Z^opftSHgn_5-OKD=wfj!N?xi#N;RJyg7IlK!n<^cI#F+GcKbOzf{a#8X} zZ6mt)J0oK2&miQz!u^zFWt)+$GcD+fWlEs~@c=V%$$D!l8dLoXVcQM`4T^G3qlf0l zgzbVdUo?-(v9`I*ZU2&mSj6yF<|Ej(gAG}xQ0Hx0gskb3_rvVYn?nn>F4?}$ZTd#E zt-ntxP(4rRsnMjZK3V|v|4wn{rttD$Uw0n%>0x%T_B0{Z)zv*q3ih5?L% z6IIt>OnjZ9nmAHDXhymD_*^n~$GoRNA-kmtCEBb4MA#p{49VXpg~h=P{5~?b3992bUCp5A#`n_d(%>0)5lOTM6s2HZSSNyT|%AvRN1t zq?_F_U;LPX3$uMzx?$FOelvGt8QQJESF?^R{B_}P^Ud~Dil|`SGYA(H8DaJ~B35R= zIVxD*2bp8YRaJ<8kn8nz&_Pds-d{1V)~Zg0h~cR*DQUk#7A+Vb1va>dac8F>W%X{Y&(w-8dnHq0`afQl~H8% ze|*INzrz@;Pk;qKnG=3{P~uPIz2w9ce;>VzmGAlXzv4ZXJT-qX|0h0zJ`UTH4n*UN go6gY-!=%cK2Hh+gKioB7>ia-)uyMdn7Hb>;0P;qo!vFvP literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/nc.webp b/dashboard/public/assets/icons/flagpack/nc.webp new file mode 100644 index 0000000000000000000000000000000000000000..6af8b9eedb3c87e45a274913246fae2a9deea0ae GIT binary patch literal 238 zcmWIYbaQ*gz`zjh>J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(*(#OUymr=`rL6yO-(O`=EQl&+T7Pm7P76@>rFdQ@L z`)5#R%uryrS(-g^6;DM|en)5I&iWPKb8HwG{(V|k|35R?f7$ycy<*Lh7Pour{~vo7 zR$>}hx|wu5J*zp zA7YJ&2nQl_h|Dlh;g06vjAn@J_3BB3WZ z43MxA31|SZB|%r6oj(fYRdhgjs{X)x;r{^X|K9)uR4Sfxi`A-Y(GkQSj1sd-^Wwv7 zqR2+xeeT$fW&i-XXIyMw{Bpl~&w}0$vHfL#CmE;QFutzdTweXOKd^CpJvl4&bKAi( zS-Er&mWxK(luO!^xT#Lp34lyx1TDtVHKPJ(dm{y0KF@|4T7DwmP48}IdSbC6=hExV zz;Gy!mB#w=3^oP!huiSt*qSl?T47;tAeiC~Bf3%62v*=To{DD}$Q&eENUE;_Vr3aw z?LgnMM|NOW>%55J_i!6Us%g1{L{i4u>Xr&Oqb5e9VhA&5d@RX`Y>731C#;iPC!bJQ zv!u3M3y7b5_OSxfb@c)ziS5z@@z*!Vi5-F+7o*g4#LS_u5J*zp zA7YJ&2nQl_h|Dlh;g06vjMn@gpmq9LP+ z0I(7XW&pjB!2SWxt&F-ejP2WZpaJ*`mqBjQGSdoa%4J9Y4b2_ZnX7Mrv4Kw(fJ=K{ zXHVnjLDBw#;{o*iqA&0O{^LOw4|^ZE{n70Cpn}2%UO}zJV#_o0Db@$A{xpr>9pZ4c zI(Rl%;h6I>T>vC82g2~ruFxF&rP-U_V>(3bXRij#tU2Pr_{A}E)h@N z-Ur4M>+-~QG`XLjdPv|&ouRrx&|i)Z^&zfi$Jyl6dCtoawh6lMN_H|tgVtATX{0{{ z;vvPe*GtW5c+(^(0uks$gD0ZJpJ+j#E9vg$gQ(xW?|3k3A*oBD-k13j!Xzh$&}|^c zH7^3b35NNn;k(v6b2M0M>R2oXljYWul^bza$WuxD2mlD>vL$)ATZoZ`W%{wg3Z}?o z`d2JOya;n_gi3u5J*zp zA7YJ&2nQlna31k4p3Z+lQzkm@NBLskS3%~&W*)ZLzOZ^F?xVzv{*|AEf)_U zO`+VVf8Bw;21*6nuMIsgp8d)%CIzdYF_3a7wg|D8mI6KZelTLhQ8u5J*zp zA7YJ&2nQl<(?xo$1M&kBwjJmo@g4mD_y5QM=~!lfEsHY<5iYm$S59QF66UUy zvc**`wq-UslI8+_{L1R^4iEqU{^Ktwg}jWohW0x0s9q0eF2E%y6~Ft-+BIwL4L&&A zQ|9Pt%KOi&xpP_qd34j1!Jdr}>ifTZjFtTP)8?@KLZs+O8zui6?s_+GdO8alm89$PHXo!*uerv1wp_+ zzO26CcMb)H@BeC`8zIl|9mx~TO8to?cuM|? olBEqv<{xsLNhZ&ly3_lbvh^pZ1%__T?;hDo?kh_+^GSdJ0D0`g^8f$< literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/nl.webp b/dashboard/public/assets/icons/flagpack/nl.webp new file mode 100644 index 0000000000000000000000000000000000000000..deeb5455cb38db322f318f3a797c699eb52172ef GIT binary patch literal 254 zcmVu5J*zp zA7YJ&2nQl-WnS z-}{?FZg~`%pZ%qu{iUDs?@<3}koN}EKiVWO3y)cZSP2jn{p`CwdBFZW{r5cZ%m=IK z!RwmaZu@dUdciE2q03rr!!$2M-KiJ$t4Fh=xpxzXnRj!p8NPQQnG)VOU9ZF1X1|Si E0D$>x+5i9m literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/no.webp b/dashboard/public/assets/icons/flagpack/no.webp new file mode 100644 index 0000000000000000000000000000000000000000..f6d301fb4a8386923a87413eac1cc8b435fe1093 GIT binary patch literal 438 zcmV;n0ZIN+Nk&Gl0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlJXA)!2Z z_yCX&iE04I%qD`*r2aF0D%NY{f$n$w1`==Ucf8Kv0*IIJuAl_f(S{2qF-|-2bEt(R zYrth#4XiQ)LS<_Oqr&K(bWhUhkO2PZ<#cDNIeTr;)P?-Bnd2OW&1|K2Q}_zRT<+@M zQ9nul?q{wD0qJ~S`<8xPZ~xoz+<60N?Lo3NXY4M2q@$kxNH8k@sr^0A$MyfS+ye|E zf454NQeAsLRk3q!AGQ%+Cm)UYP(d#}3`~#DWNe3>s}7J|;7v2~Fq|G~V;<|I)?V;$ z9y%r+ho2@nEXdmm~SFA5Q*x%jkijbjG4TiYfeET3h3EEt$k4%^VAx_ghlCzU+Z{ gt7*u+J-R)PilkHot#Ww<&De>616>g_L0S(00EFYhEC2ui literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/np.webp b/dashboard/public/assets/icons/flagpack/np.webp new file mode 100644 index 0000000000000000000000000000000000000000..31837e653318abd1ec6f91a356e0d464f541761e GIT binary patch literal 544 zcmV+*0^j{oNk&E(0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlD0NVHazqA{dm&TB-fs z=xivJqr&Z+)rlttS8gN#0RHZ52HrxT#MF>n9l?HsS)#(o5}gju?1{&e?4@FzwCH(J zlKwZ=``IvU*j?JWkB67cVn2R4E3na!Zy9&ZLcBdODod-_NM>!V@4@5ZbpTZa|8bIv zbR+laCx0Z2CjIK~F~@LRzXP^x1=$dg3XxM$_r(SrAx?gFt~0IMP~E< zdtg$hdN!%+zB_rAIgfl|tUB7W~`NQnH z+FTYxfG{9}yw@_AorqWo$|3Xma+Paa8z!K;83v(r-T iT`tVFGTGM~fx7_X9Poeh73}`v_raEh{Om!Z0002E82l;# literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/nr.webp b/dashboard/public/assets/icons/flagpack/nr.webp new file mode 100644 index 0000000000000000000000000000000000000000..cc781f38733a3deaf345582d12ffab10acc5c7cf GIT binary patch literal 406 zcmV;H0crkHNk&GF0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06v8>l}Dv5q9HtV z2m!DViE03@Oc(pKozJigRu5halma~ei#bbRIr-*30u@ZPNjE{Kjf6}x2Zipr$nrlu zjSXSJU^bFBN&o=<_kRC8@)zOIkNXjpd|LnWG<(KEZ5K|^=y?T4)3hR=;jxPs_(XMA z_(gA!8LYWi)BSTd;{)HO7tilEZT}L_-PUP9)YtVp6N8np@AEKwPjC9NH^Ai-KHbO6 zIzOIKCd_Qj@-xp9zXb}!CDz-4c#Ja1H$>G3Wi<=(euMY)Ycmyc=V z&Z1O19c6^fIi>1W_g+yC_^ixu9^ZJfWrCejnQifS($SuG%^bDhS!d&toxc6B06GV^ AmjD0& literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/nu.webp b/dashboard/public/assets/icons/flagpack/nu.webp new file mode 100644 index 0000000000000000000000000000000000000000..894ad76f80278754e47a91f911e79ebe0ed782d3 GIT binary patch literal 966 zcmV;%13COsNk&G#0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlR~!gpUOudH8zZbshZIhz%*TIPt&q*8mSiQiS12uhWe!x-)N7sjw*e z;DeSZUI=9nwA61?=y`(6wJzOCQ9uCx&YH$ppy~!s8TE=C+dGlu(SIDwXLAcWOkS$)PaQ`r~7sIZWLpLtZ96WTU4U6J!78<|D zkbmNX=khS{Et}};uU_Z>&G{3wDTjfq2Rd)^npA)Jtt>x1zxnu}hO!$sYw78Hv{oXX z=DF!TQS%?NYuEY%VSGfZBS5!6qfPGq^s@t_{=R!O^u**G;X{mMvByxb5@^5os=++% zqLk5jD{AYV6$q=_wE$7qZ9?Er_n2?5&+votj^g^#-)o0WCQqnY+Dt>n@#6R|^H~Hh z@4Jt|y}&qLn?WJN&HQ-1U(Ged1r$FDZ%61S5ke2`r+^l4Lv5WAkCE&J#Le=TfY&JO zKQui)_De^vW$(L`+ugZrp3C+Q;91|-w!ai39m?KD;HPj|k!YP-Qe z7~ZIAl7vvdWHb}<#ZRu(3~KT~O8+zdnh=p>W8!4legk0moGifoQfb(vxbHdGs>(muwMM5GxiSVOzY1#iyx| zfia%k8B_D;FeNKOaqV?}SuB^dyE|wn0tDLo1wR?uT;bZa zcM=o=f-LLEEGe86hKjr4SJ>eL9^=QSwHtnFTs%tKBp}F98zo`odI4$K?5!A|jt$ z@QT9;B_y^BM7E5EhOPw59cDZH#Ao1>xxgVQVck7qMLBKMd-NDN5fmxID_i$`$r5y8 oTL2Z)>CN@Amnb*8il8u&ZC1H0FLf2cWdHu02Zi$ww^ABx03PMhX#fBK literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/nz.webp b/dashboard/public/assets/icons/flagpack/nz.webp new file mode 100644 index 0000000000000000000000000000000000000000..d5bd620018fc76ae039d976e4051e6338bc73d5f GIT binary patch literal 954 zcmV;r14aB&Nk&Gp0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlI2EUtOL*k_E*yX*w^Joy2VVj8&qjws008}{$&aDEfd4W-YaZW^ zL?(o(+cbLc*Oj%=OC%`FJ`7c7Mk2#|rFJx-nvXQ|rVJVr7{ES$eCU7qLiYXyyuZ^l zwob~kaKf4w0GKReZ9n|hYiJ`xdP+r$_Sqyg*Ea}hq^*Ka$1^*wOc7I|pWKG3PyhTw zlJvtlwmOS>wD^!e!{;U+L2y}S0cmue7iT9NH7+0^FIO4C%AEA zjS~gJ`2pUN=jPvUNsW0Br9~nLA?DK6-wgW=gAymZ{hV2w-AK;~ z0DEaZQhij5C%*C@Y2O#?q9Xc`E!_Rx@$nC zUh5<^ITAI=3K{c1z4s;a83B80-ttC|ZzSS+BOW z9Hg<@c+4CS2S!oBJCp7!sWRE;sBj&Hx+|~Ixxu1qE8ZRD$PN9&nQRIytc)*$s4l2_#QN*ofTs22d3?o~>|Yr%WRWEdg<=#G4%Cj1Rku5J*zp zA7YJ&2nQl-ko&2SH{h~)nFH^Jr5_HtSi`L@FlGO#c>9=W~VFp zG8g}}=JP-7CT26=hEKkR{avFHb(1ycWdoEc{|V$j<=5JLYP0_cSP~sqZ1SG^Bma}u zYI_szckU1=3o}x6#awv^Q#z%-v&K&Crrs*3t`g{Ke?RDVe>1uh8{RFm;nB3eyDsdz zf3ElS z7dQG!9Zf@z%dLu^2?HPhkZ0`ZRS`mRZwbgpfW+xgGwe7T3iy!hE8zA0$^XU6Z&=sF z?J*u3|3B!r`7@OkztA7_ykqR}&UGh^-6l|-t=m)fDdR4i%+}&Pc+uycJRsDtF E03ieL?EnA( literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pa.webp b/dashboard/public/assets/icons/flagpack/pa.webp new file mode 100644 index 0000000000000000000000000000000000000000..30e9303d96ee8d3f59e9a043ce8596a818716ead GIT binary patch literal 402 zcmV;D0d4+LNk&GB0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlmq(>Pq9HY1 zTC4C731$GhGzBGAR8^8AItCJcaeizXpbin}s${#g9@cfmHV<@1{(&$i7gvZHaBuhG z18UJs0RH@UtQAR<>#%ELFFP`1OhFlL?o%V~&1KGua6DO5xv|$VRytDJ%f>&e;?I`Y z4embluul=JGj~S7vi)xpUX@q$IBI2Ar$Oym2CQdRUH|r!r{f&Ap8SLBi=~EiEzNEA zwg24k*6Gj#*0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjEnMkFhA|WG= z_^=WQYyi%!05z4lf8wtU*$BRXE5G+qKci}tOeZ!2bQbkn#H=I}FllOFAUEDI%6~z} zcYq9wZL!=R1;7CQ^>3>6&$#B_|G;UzCs$JR7#1%7AaSgsX4u!zKm36AlIE5lkRPzd zs(7!##3*zp{qF51Tuxs}2dnS8c}Hq%ryxqN{AhBHu)|Br4* zL=`>qcGM;KrI%cUzr-qqDNteeUsO0@b!8ZZwNjmUyFpJ`Rs<{{1K^T#d3P{V3yz;d z)tMr^ahyu54sk}@=N&!0z(8J5;*ID+T3MPm{nHo|CUE5R0r|=QN`Sw0=kaIxm6lB6 zL#la@L*@H_|1yOch)^N>|NbMm?dR(W5@UaX?+TP1DH3aWC*S!o)j2W#NAEtv&4m+W IW1@fn0QU9JN&o-= literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pf.webp b/dashboard/public/assets/icons/flagpack/pf.webp new file mode 100644 index 0000000000000000000000000000000000000000..74eb4345b8e46d3cf0fbe4464bb699c20777fc7b GIT binary patch literal 472 zcmV;}0Vn=aNk&G{0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlKxB^4R0R+0RHgT{&=RZztwis)tCQ(gtbsy_y7L55Ba~x%Kih}uXPe0aheX{zd?P}MR&!Yet!wp8N6i@Qr zz|AEESV0N7D$sI!gHpdP_h^>|A&wmEx`S z*4ZMik=Y|18BTS;s_Tws9-0!kF1Un!nTe>B zmICq%AM^cw7u5J*zp zA7YJ&2nQl}#)>*^wz_VDFZ?`t3%5GOU&7b=AD3FD3CKmps;ZbeMd9{>RU@l$!n7xpha z>!#I+8p>!jOiv#t+zyLJxD3%sXu3-d_PkH9?qB($|4zOh=4dU%+$A(C%RO?+enG>x z^9HADFy##xK;ysT|FBqHNGfQOS;>I!fBMz~s=O>V-4f;j9j=)*_}-!mU4Fwmi5c40 zOp)%1Zxe~G-ERXlA%U&ak@oWc{ z1Pv+2e>p_V^`ALEF1~l~WcF@7AB;cxilKF{tM{MriL_h1j z{@C0xl}nkBO^}>9yLc~~rWCdoU-M5*>SRE7Z^2g6X_vJvy;h?4mipVz7%1-54wWQ-XGZ}Z zdY-&F7znME6sIifNciwwHcvsUAP2;UaOe3x4;#qDVpS&|5fD^Plblf>jjsoLNwA={ z-hn*Co`T3;K>SIm^hie_6QLpB>H2<~m{E@AJN`YoaK|aw`bkEQ@0b@qv$mKVjNk^h GpMU_PZ9K66 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ph.webp b/dashboard/public/assets/icons/flagpack/ph.webp new file mode 100644 index 0000000000000000000000000000000000000000..454d741031f0e5c50a17838fe39c064c062a4ce2 GIT binary patch literal 502 zcmVu5J*zp zA7YJ&2nQl_h|Dlh;g06vjInMkFiBB3g^ zTmY~V32Xp^jbMsj>r}ut%X7JDm-+y7p8ngBwr#)+&DB3$GA&?%6eW{DPPML)k558( zGyi}X+E=<%2(zC73DZCT{+tqhrig7f-W|B(M;GL+aMl;j3y zRl?!@1ij1g_=3Dmqja@{_fDYJPWnSKymyQIc!gF-ie7|=D6=LQs2T9QW=zdW+tuB* z2(<#IUA8WpG#mX7)C_66Do+1o1c=Qexv6u}n2gM1v^u4H_|!UXdZLMx7%mwx;=a;;qTF-%mVk6LQXAv-KU+XM s;b2bVsId~S->$Xpl$oIZ;or;ip1rcK`qY literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pk.webp b/dashboard/public/assets/icons/flagpack/pk.webp new file mode 100644 index 0000000000000000000000000000000000000000..67e40a7544ed2341ca28c576c01246c318987d81 GIT binary patch literal 410 zcmV;L0cHMDNk&GJ0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlz-iTKfDTn`{&r$1Y2Z{jUOo&Ha7^biKl^x+*f!OnaUSK!IX%VyKu`ew z{(Cbh>yTRmWj+r7WTl2)nIfL(yz`oI$#2tb-FY@XTlX`#OifY}dUtJx73@2K-Ra;J z=zQSQpQZ>1Qopa?17%php7`uHAnwHv=%ghH+Tvd=Cwa(CcExM__DQR!@PT_N@<=9P z?{(h6NEB_1);(D#zmvRmNdFjA20|jjaKLJ)dAFe+9f;np!6@M(`s!7+2a_22pDjlg z{*=A_S`Jw$Oj;$>7$9Ao!Qo`t2t7k4^OR9~q(S9Ol1oQnew8K*UU^1;uW0=`7$1re ztW?Jcn}l=`X1!OqVE_jo+;yfsg+}KGnpPw14Ce7x7ptJ3ib1oqn>CQbXj>B!*_?p@ E04M{ki2wiq literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pl.webp b/dashboard/public/assets/icons/flagpack/pl.webp new file mode 100644 index 0000000000000000000000000000000000000000..c38d0e6332f630ac8af2a97bbc0f6c5a8319adc0 GIT binary patch literal 196 zcmWIYbaUIoz`zjh>J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qkrys`|jfFqcuwfI*ePZlcvpkL8P%6!olsFnkc=bdY3^ zVcq{jGXGHXX2$8uqTW53@u5J*zp zA7YJ&2nQlGKS*i?pf^Ue4S-F3x_iQ`>0RHl>fB$J?Pp0pJE^{e# zght-4|Bc+N=xUISI9@u5J*zp zA7YJ&2nQl{v_%Sq0Y0_faV7V9bwT9Vn=biz-U9MYP45Ht za$M1_SPkUs$yevUP=Ematl-WK)#EvtAGte6@~&GRiN1FCSTf}*#Qa$EoL5M`AT5mXFP$ zyZ=~5q^mTeQTyet_(;;P(oJ*j*&YNmf=n`-q%w}!vnXBT7rSfL{o&>ex3yXOA-HO( zbO5Ew>tB@N*8Itm0e!Q^IO?n~ox*fb2lW122|< zhmYK0!NnAY^NZFGbu3VueaWiZa7<(0&PJ($njS=Km#62tRjQ;7(={CS{MVo<+H(+i zViFt5;T3zxN`CIVa>tR+xbtG2EWhgSz1z@YIcGgdLef!P>1M--0LK+X_+$|)9vPpx z6Xbzdy5oRtcnHaAvHy#rXQ5zUzirfuNSpnVF1WAODBDY38pfa+3NMR=g6V(MhskOIw@gLQ E0G)u69RL6T literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pr.webp b/dashboard/public/assets/icons/flagpack/pr.webp new file mode 100644 index 0000000000000000000000000000000000000000..2e17875dcb0d9ab70fab74d3c0a4cdd6f0ee0f4b GIT binary patch literal 484 zcmVu5J*zp zA7YJ&2nQlvR&`n%|>)0xx(=mFA+`)~TI?95Xt@tXC~ zD)YSNrPlRSDOFJa9tAei#94KAL&YVc=a>Ng>5#!V)%JpYl;OO2o9p>G&O`l+SjXTV zUo(%Q&~Kmzo5836ga6`UwkODPlHUHoWsbe$Wk0?x2W}Bm7}jsB`pu}LPs<_YjZu%p zDf<&}eUQ`YyYKc2#%nMWl&j&na@@xM6G!AOEV)bPxKK55DGF0O=2RC=AIUAyTlL)4 zXLmS>e7ZW;H?x8F&ZQrv!^cQVM%wx1L*u6ZwuN~iMT(YPBKz<4?%trH?qkdYP*O1b zWx3T9zWPKLP8@Svc<|{_;FOk%*v)M{MynIlOOdVUc~ylCB%b?QP>2_(IWtDm<5q1KA+ZEQ5ZFhl*y%~ah`vAmTi(9xc89L0001i5$AUR literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ps.webp b/dashboard/public/assets/icons/flagpack/ps.webp new file mode 100644 index 0000000000000000000000000000000000000000..d02b0bba6de17530fa672d5d5a99332d152a8bf3 GIT binary patch literal 358 zcmV-s0h#_%Nk&Fq0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQliRUl34lrro)~mVTT$8K2rqx7YtZXQQJ^8-_SCO$iCJ*kmed^L+jzL zg;`PV?1H&;UQY$}`vuiWF94H!{=2x*`7WFGi-Z*h=8{a4D1UjT5_JE+;Bc2zXwhXr zGu{&-o!0gLg7G6DTatGQcS_KZQN5dm#=;&SIq&Hjmyygh7~+vv8LxtD#DXhJ9fbe@ E0NlNqssI20 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pt.webp b/dashboard/public/assets/icons/flagpack/pt.webp new file mode 100644 index 0000000000000000000000000000000000000000..b2b644691d2bd8907a7c5a9ad419a057c2a7ee42 GIT binary patch literal 564 zcmV-40?YkUNk&F20ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlYY`VtP&vPK$rO|bj zZflOI!EMhIORNuG585IC0RH1IC})W=987ZALNi7gBm(#M7f0K{gQp2eIGd=&z{XI` z1F=SwAODoEV_n5FX5Iaz9+~9X|HYlyR=fP(@Q_nhAPqIdd{2FgUCUVR9QxnRs5t5=xQX3AebjW+*1&i{)Z7ry3Q zG#z1OMc?Y=HQ7I7>AnnSYH4|jnuH!0`n^?m@;34t@ObXm8&Z{0qMskK?^_wzCLf$k ztk*;)3&?kLvtr_&{B29!YTD6(!!5!aM*vot0W?t5Ia=+=A@U%rjQK9AGUh|1MdVZX z-{bbVl_P`IcmQCMoZ08C*%0Aw9R^3XfK5+;L_4uRGSbn807C7;Kp+G)(LEj@0002p C+5*`C literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/pw.webp b/dashboard/public/assets/icons/flagpack/pw.webp new file mode 100644 index 0000000000000000000000000000000000000000..66b4d6a218ee27282d5e3c872661bcd504927855 GIT binary patch literal 340 zcmV-a0jvH}Nk&FY0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlUPU;SaDEL~ZVML;FNLc#9Bx6x0001zEQz52 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/py.webp b/dashboard/public/assets/icons/flagpack/py.webp new file mode 100644 index 0000000000000000000000000000000000000000..9866931b65089c365610f407720adfbae4436b18 GIT binary patch literal 414 zcmV;P0b%}9Nk&GN0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl= z_^=WQW&p3eKs4ZfDz(5rRekkF9-eI;eG-8RU(7JKkkOe}>U8FP290Tr>b>jdLNi0# zs63^z-~jpKDueexDt>zZ*_n9Y%QW?y=?5mWA%0wSLp|sf{-vE){R5gkGyb2v^XTac zHHX(+CG_mkGqnHT`)XlWt2S$j>z-Ga{pKi{-(>w7FQl3WaP(Mrj4?{bN$APrkNg8B znfnIsI(_D>CpkS_VkO`aPi@18q5o_vI)!lXULB}7%-NPx@#l~g zk~#lBN-=9?UTM8$3f}rBE1m(1pt!rm^sWH7NZEOCY&z=Qq~xza?^7>;Lk#A z2b%Ho>w9ZoA@IHB@!wu5J*zp zA7YJ&2nQlm1*j%a{d)EQ7FEhCq6L*17I49jF&eW5ti~U&myT(-(vV~?y^o3@ zIP_`4I#d7v{`?cuLM?Ci3k4Xj{?(1NRc+v^9NFD={NX8ksQ9Z zoW(~h@)~ZtKlSsZuEnYjHE`bnbslnbQ1HJsU4edmrS<_f(=~i;`I{FR!t)olK5XQ% zZ7IA0X-(8PBtj7iu1*a4h*op^Kde%L8?c~5*#iF^|FB^6&-H!1X_FOy`apD_vuZZ7 z4I&RB4BgL`Bg+Z`h)qwZ)>Na_K(9Lcr5u5>H9Bzf>kb%?zhTSx$vpalf_Kg)KV-C> c3Vu3rBfugOuI?=KqrE5qYZq3LV5>NQ0C-NEQ2+n{ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/re.webp b/dashboard/public/assets/icons/flagpack/re.webp new file mode 100644 index 0000000000000000000000000000000000000000..6af8b9eedb3c87e45a274913246fae2a9deea0ae GIT binary patch literal 238 zcmWIYbaQ*gz`zjh>J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>Qh(*(#OUymr=`rL6yO-(O`=EQl&+T7Pm7P76@>rFdQ@L z`)5#R%uryrS(-g^6;DM|en)5I&iWPKb8HwG{(V|k|35R?f7$ycy<*Lh7Pour{~vo7 zR$>}hx|wu5J*zp zA7YJ&2nQlIR64vN3=F{`4)Z431NI z@@D{1BB;H>akc;QORF2lum6KeN1NFB|L|}9O$;4fp_*TOJBT086D#E7;!n7b99}Z7 z-1Z7~^hHnrJ8iTMMuITsb*{`Z?99X-8jOnFk|z%FFk*jtG~aajp=(*AFtALbw~zoi Whk+jM*Bkw5;XdiOB&+|(0002tmTuGl literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/rs.webp b/dashboard/public/assets/icons/flagpack/rs.webp new file mode 100644 index 0000000000000000000000000000000000000000..8b177db400fbe74495b02f9f486bd982e9c3a081 GIT binary patch literal 596 zcmV-a0;~N}Nk&FY0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlKgUxEa`#Tk;pt&6y0092-qJJC(4eoVdJ(tw28jo)`e#+o7qGC&J zbLmb6|HyDjT&Wv;AmZw)nhAqH#`R=f|NJ3eKPgcTA^-Lc|M_x7+yC$R@xSc<9%#;t z-+osu&J-Jz@@g)%Dj5FVW#U))+3fG-(1}V%|ArlZei4vHLU7-28)}iOnkPaf-5={N z?&rUV?v`YwWf8d$gW7m`5^OfI;&cUy)BGQPIl+_R58ATlg zD~M>}h+|rarex?GnON`)&)#^?=VnD{6BY0u>vQ*Lm#ILV&jhkimUT^pyLEC?inM)s z`f;B`idFQ-8@PBK%z3z0U_D7?T?(ptik)s8-WZj{;AM$4#U!0*BO<{>09VbqL>cx& ioS!wTUlQaP_qH4mo0V5!`)_aHW1v+@vljq$fB*msTov^I literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ru.webp b/dashboard/public/assets/icons/flagpack/ru.webp new file mode 100644 index 0000000000000000000000000000000000000000..c7bce9f74b553e3cb27b2d21fe846b8b6cceb46d GIT binary patch literal 238 zcmVu5J*zp zA7YJ&2nQl0000G2LPP`Dlh;g06u{-lt-l_A|W+M z0H6>FVrx%SiE_Lk57NJX`?XL%KYr=BjgUGsmrkJ(3Hjcr(n$m6!iW;U0RH@UG;8zt z^Y`JPWY^Dk9KOOLf%%CqQ&$z-5V;J~Dn(E###u8ck{^`U|C9%xC-1SiP6glpExSuU o|6pj_GY$*WH_Hdb_(n1jdR$D4KEL+6R)^sd!m&QVo;n}^0B2!ZS^xk5 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/rw.webp b/dashboard/public/assets/icons/flagpack/rw.webp new file mode 100644 index 0000000000000000000000000000000000000000..d5a1cb8d21aab0994961c6c8eca5f031c386409c GIT binary patch literal 456 zcmV;(0XP0qNk&G%0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl zY5=ej32FeP<-q;{&e5)Vf8orrPw*IkKY)Lh{bu*1(*X1<@}>Qi_*nD*2gdd@`8%R2 zj^P(RtdD8)(Nsl&sk>5;W5U|#?XLCH*_`VCDnI}L)QyR}s0<1$bJ;nW;P!gi(@4V) z8b{1SZZ{F}=J^ojg1n)BnZ+IDOSpjLUPZr{(Cr1T2h#fa(97QZT}S zzuNJ}0-C;H!3pb=!;L6iu71eEQB3-#VLcaYFB8~G+{6_@^2cJ?x(-%IUZ1232r zH*oe0Ia!KS8!fq#=7Tdhr|6sGM&`N9#*NdS#%x3S#@es(>t)@_UCi{WIega%RkQV6 zCz$>q=bmXzSl=W=h48~`f9d}?lHvMVda2S+a(f0+t})~H)#+hvGFdPvG+(OFc-EAl yzy9vogFUw!&R=BClYjMki!Lv<(ef}i1w{=0*1aQHaX@2HIOecygOU{IzyJUZqT5~o literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sa.webp b/dashboard/public/assets/icons/flagpack/sa.webp new file mode 100644 index 0000000000000000000000000000000000000000..562492c3d05e710c7a71aa6c7436e20d0a9ac87b GIT binary patch literal 536 zcmV+z0_XiwNk&Ex0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vL0l}Du`q9HX{ z2mqiF31$GZvsH<$_clwVcp;eh=zFoD-36P9Cl$9?)Zr+d$#@7*HYfCHMQ|G==ND|! zmK(Ogd(C$@Bv^m|{7s=VQ{GF-&$dDOfr9sru;0P{?spG~QY^`<?MI%Ut&Z9} zvp4_quz#jM=F}9?D*x_o@67jyA0ivw;L#kf&z3zX;jwX=L@^S*pfvV*ZNrs=dK z&v^TWYbfry39gdGh@0Trrah#qh?&Fpgd-mL#T%9Xp(nHwQlw6=Nf>&`JFxq|mtcUo z^;wqA39rfizkbHzJ|X7>=N9gX_S`#RQ212SK7F6jN+2438lC%E?1-!4r$K43xqrAx zta-HXSyHvR1tC!z=SBe%p2GR3Vo(z@4%wC3%PvXT=_w z;ete*91(5FRdniu72e*=;1dD-LoeJAoKST#z9-4GIvQVk^*nZ+9z*lt#^IgRk2QiF a@Yfx=K%sbB>;!6g6r*{4;oYm?0000M$o)eA literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sb.webp b/dashboard/public/assets/icons/flagpack/sb.webp new file mode 100644 index 0000000000000000000000000000000000000000..fea0fe841774219f0c005441d1ba2190e833894b GIT binary patch literal 694 zcmV;n0!jT+Nk&Gl0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlHXu2>Niy&+X3bSpa=U8P!I4OKpgu%#~->Li>3f3S>9AFMCT1a({APZ4Eh-N;Y{Qk>JbZXfDx8Hf3YsPj#&Q} z-+hVfE)D_Ark{ER;e2lsx7AkZBHzVGO0@m`L+5ip$VyNJKf%#&{zhrY&RnlQt5Ujq z;3RQvfvb_KKN|5opYt#4K>u4MU|*|Ny$nSTS{S}xm11XBlj(1#moID=qs4#xJ+u?g z%>C>0x39Bd(%%I!6=^jsDJOTVx1h1}9zpJs0e&Tso71(Zg*N+KtQ9dTXEHuU6TVOCjDj87pW`C%Kr z!c;+YP{T@wjz?|p+F`r1y1naDiQ7i+ZRLu5J*zp zA7YJ&2nQlC0RG+m1FQqkgUe&t z3-+V--`c@F47D_YGa_k_15Tm1(AjcqFizLLrel;HD~LgQ$CdN?i~rKSQ>})_msJ2( zBBy<)ri(BD{`nP~&Kj_jTS0^-{kEd3q7VN)D+;-kYc!H9K3DR0?YX$BhLc6zF?Iv> zTUE8-D>D+{#~Qt6W&$su5R*sY98?mgNm(wB^Gic-yQ*#PuFN=S9Nt#oRbtYd=bifz zqnRGYi-|{RXGN`^1M;7;10zGwPGci_K>&(T1lIIgZ$3MRRv%oc1I0FnMm$Rr)v+s3q&KeCao7^N#M#~h1JKv}I`IMoBvM^X6s2#HA9 zFOyE=EWs*T?kB|84geA}ov!R3eypqLE6Zt2ZBtpQS=}-Ka9Y%~XLW2dw+k~4*k-m> zEuLOa{dUHb<)y$<9s1&lI@uGfp66VL1q=2hRb*G3vWgb&e$?kJ#G3lXe=wXvaf5I(8vZfLH^eUaJf( c#&yUce|tvUF@i8K5k+|2G#vR3F)@Gu0L>^jX#fBK literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sd.webp b/dashboard/public/assets/icons/flagpack/sd.webp new file mode 100644 index 0000000000000000000000000000000000000000..e599e68f6bd56c11d0e3ad49c0dee89b91f41e6d GIT binary patch literal 350 zcmV-k0ipgu5J*zp zA7YJ&2nQlfgpTHP$J3D8S9vloHou0iL9Q=lR)uL0Vd&xI0091~ z=B8n$ssY)mOKj8dP7(ZMgD$Tf{l8 z8Ow-+mBBvWR;!;GQpf%e&hL}0608c6LgM$d>o;~0Jr^ScjVqSBmUuy|H&V%mMyl@y wro>aJ+w7_TL06!=_}vT+Qrh&w>4F!wNu5J*zp zA7YJ&2nQl$`e6fEi_AcKM0!uA|gWzXpd^yE&u;#2c%N>IYkxq0S%3 zzvYrF+T3UW{^KoV%})b~s|(*3m4^Erzx@c#jXvPs>)iI=aBu!0`@wnK259`bCea6` zo-oY^0S&h0IOuiL65#>{I{2@9UqRPDiuiB-NukPjLIVz#za6Il@Sk|h?vg9w4|rFe=_G7u02C>u=l}o! literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sg.webp b/dashboard/public/assets/icons/flagpack/sg.webp new file mode 100644 index 0000000000000000000000000000000000000000..bc0bd592e0fb991621adbb5f156dae7bd38cb5cc GIT binary patch literal 386 zcmV-|0e${bNk&F`0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl^0OdVdL=zTlWo>VG4QYe0RGt4`boEyU{`&C zrtP~Lr02s_xhUQU*Ig`6%yak?YX|sk@tMbFuj36itT$dTCAT@I*?@|CQGOp1OSeG( z=qdGzohK3}M}PfXkkD*D!QFkk)cWJQ+_}-W?f7%P^*XoT^|dVEZU+O-mD;nBAKI4s zan~>}9nswUUkEzpJQ>j}ue2YYkrzX)A)pkRJsm6btu5J*zp zA7YJ&2nQl|&Grj=a18fKC2JjEi4ge2857R$PpJPAU&q88_V{B`{)`n|(H z&;TPdUYgm>6Y2-JfT>p| zOZ{#&gvQ(7HXep$12P5e?`3%DRO&|1W}8DyYT2p5dytiRV*AN6@)GR_n*@w+tu?89 zBx^=*qpIkB`Hp+G0AaBAb7EO#!@=`7U?|Ucl6K8NGNbpdiB-$i(Q!``zFjMOEhKld z%zEwP*B+`1nPAagWCh?C4u)&~J49Z=`&!pt^dVX=svXE4u5J*zp zA7YJ&2nQl_h|Dlh;g06vjCnMkFhBB3rc z3ox(}31|SnU?<|UzymQi^q1cQ&<5}Z@+jh;tTo9M0$r! zaJaubpYuF0=U4V1XnNLP1^w2iqgV_?6CaK?cm0dbQ9@8ZMkcb}U{?6;p&Zfm$PSljFWI+qn$&F-&QBm4SM+L4J*;+0;>{nrP4{{?LS zXE4<+QQi&2*oJtybvj!54(YYIzkcCdNCS>}`N*(zTqD0Nt2+zUuv$>%MX>NXJZJvt zJJRu5J*zp zA7YJ&2nQlJXA)!2Z z_yCX&iE04I%qD`*r2aF0D%NY{f$n$w1`==Ucf8Kv0*IIJuAl_f(S{2qF-|-2bEt(R zYrth#4XiQ)LS<_Oqr&K(bWhUhkO2PZ<#cDNIeTr;)P?-Bnd2OW&1|K2Q}_zRT<+@M zQ9nul?q{wD0qJ~S`<8xPZ~xoz+<60N?Lo3NXY4M2q@$kxNH8k@sr^0A$MyfS+ye|E zf454NQeAsLRk3q!AGQ%+Cm)UYP(d#}3`~#DWNe3>s}7J|;7v2~Fq|G~V;<|I)?V;$ z9y%r+ho2@nEXdmm~SFA5Q*x%jkijbjG4TiYfeET3h3EEt$k4%^VAx_ghlCzU+Z{ gt7*u+J-R)PilkHot#Ww<&De>616>g_L0S(00EFYhEC2ui literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sk.webp b/dashboard/public/assets/icons/flagpack/sk.webp new file mode 100644 index 0000000000000000000000000000000000000000..15917b92fe76dd30caedcb5f7de2aa70cb63363f GIT binary patch literal 504 zcmVu5J*zp zA7YJ&2nQl!}1U5WfzBW>jP6wV>4MVsxfz#P`4p(89;J^UVx#o@l literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sl.webp b/dashboard/public/assets/icons/flagpack/sl.webp new file mode 100644 index 0000000000000000000000000000000000000000..b4ee9c7ac18c117a74d3c008c31b6b4d9ee38765 GIT binary patch literal 264 zcmV+j0r&n=Nk&Eh0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlR!SGjbPYZBnwx z0RF?kHaxDqbv&;J0TT`XFi+Sn`FZ-)X!Gmt#eSo`l?kmHdn%*szUxagS-KNk&FC0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlDj0XOp};?s8;U9h@0Ew2N8m@FQMeR;q6`F_9gP*=b2&;G>&6V>HxSxBU_>3C_ue_csh zKc&=FCGXXbEsAnz9O^Yy&P8G>S7?hBAfUX}JlcEXUB>bwxE`{JT5*Xv(0fy|#Y-$d zVJtWhjBg=1k8ee3cv@$Lkn1FF-2=;u?El)|ek!nIUnyr+(F*al52nxhHC}UAantO% M@_`yO---YL04H$)AOHXW literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sn.webp b/dashboard/public/assets/icons/flagpack/sn.webp new file mode 100644 index 0000000000000000000000000000000000000000..07461621e0ffa22a90cae8fae9450c4f212cfa3f GIT binary patch literal 410 zcmV;L0cHMDNk&GJ0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl@--fL)II0Ccf`&LXTOl`f)*9sB3uu>R?B)e!ZtJZ=21 z=oiP3AZLI8{`gfn8@`t^iGSEf0B|C*<`IV0CLrkO7Ow>Jo`JN>#WmFjEj^l`hRhJYh*Azz-3|?J!iA>ynbMKY;zkZ zfu1$6zHN}3Tz8(&^-Z-cp6u5J*zp zA7YJ&2nQlA z6JViaXseGbN0=jtGUkmsRdvh7ew`RF}p6vbmS7}H~oOWinsFub(xx67`&-|I!Si~ zAjmpu9JV(x#Eqw&@thKT_e+u|s?o=@eupMFQ5@sMu&;1pOxO|!w*V)T4*MiyY|y4_ IWkY}f02Oq7qyPW_ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sr.webp b/dashboard/public/assets/icons/flagpack/sr.webp new file mode 100644 index 0000000000000000000000000000000000000000..299e14951f50de401601a766c931f4747b94efab GIT binary patch literal 436 zcmV;l0ZaZ;Nk&Gj0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl$xcM)c{^N8msDJ?e%fuYne2?jH+sOPnQjbWk7218 z)dS3LYMc@VuKshQzV37H2!N~0dw7(x`4sp@5+;{7biAk{)&|4z`!y&5V}r0iY{B@~ e&Rd1Mm3Q~H`Pd1=^xp`7&1hQe99alw7ytl`yT+~n literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ss.webp b/dashboard/public/assets/icons/flagpack/ss.webp new file mode 100644 index 0000000000000000000000000000000000000000..2d8a323b29e872d1f7b790dec0388581ceac56fe GIT binary patch literal 492 zcmVu5J*zp zA7YJ&2nQl-0Dlh;g06vjCnMtLiC7~*{ zTmY~V32XqrYqW#svF~p8Hz!|#UuwTfzkp}}??CsR=#uIH^Z@Ba{iGv%7AXE^ks<$v zH~S%cFsk=={wqN(_VTA274To{4?dk}(GBSG#ALw|otOar_UXFa507)&2k|>N5v0ST zbQD4qv2Y~eVb&abqQCd{@|G@I2nWnr z09tt_ZMchB4CxN3W0-IMPLH|CJ;|l_b>(tzaa9_|x4(oqBxI5vv3x~_Ztb71ZST|y z{(N2>6zp)_{SigWuK(UH1qlza_B93HI+^7?X;FWq2kTIiMl!FJ3Z0DerNhFw^4d}- z!}{QNZ6Ss1k7gFoAvRyPM*HK9)4GdyzgJ6$a`dCkn-TX{TCKz;=j7*jO@u5J*zp zA7YJ&2nQlu5J*zp zA7YJ&2nQl_h|Dlh;g06vjAno1?3A|$6c z43MxA32XqhAwhlt%dLTS18%Q)2fj^{nGy+IAOz_}jj}OB3n~b;!y_Ptr)T>WEhl?Z zqX}iW2{_FI!T`!zIEr05o=-k4t@*b@Z|E>f6W<2_!$KV^=&x*RTg#I7t zHDrJSS7|rngYLMrL8f=8_4rZz)fRq{tIqq=DS((_LAK!tmp?@)44}|oBr|dSQ1%}^ zh8;6Ncs4u6Lj`AG-|f?@n%1UqMB|H}zIyx0@Lw`51$ae2%;qLtE%$Jv6hM4mm|Am8 zSSJw?=h`u0^Xbj?4|EV7{+}%6@Jz#6ai5#zAPB72D=hu-oKbp%)P;wU<-5U9ryqKM zPlv{SpbdBG%~Sh>8mDo>x+NSyx8o0*$$Hk;_(9Oni)SUbtkkw-E%+cE#LD-_7Yd4= ctx=qWv_pK~0tPG+o_K^+-NqfT6k=ci0K_A_iU0rr literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sx.webp b/dashboard/public/assets/icons/flagpack/sx.webp new file mode 100644 index 0000000000000000000000000000000000000000..86780b0e3d5125a650ba2844aad8e1b0c6ac089e GIT binary patch literal 566 zcmV-60?GYSNk&F40ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl51 zcbDahE%ExK0!nC)5TG$Dh{f2>9Mdo9l6?QK(e}BYn#fVdyuFWIKg_ z>;Gr!VFP;n#|e@8gFLm5q=Lql7WL9;I0N(?fQ&C(iKOFix77`K2Cgm>p&xFbFP$%B zr-$O`^w`Qz0yTd*1x==ogVJbMbPq^%jORi%1+sNwMo09q3&0=q-h=T;gldK49uoej z$~~q_C*x^{k>xu+TZ|(~l{BStxKw1-y|o?JNNu0b$2dgqeTP%Ny7_uP$-t3#2dh8L zElS*I-j`X^;#h&Bskp=Di4lr5)8nS*?@xc$EgFsuR^;u_en{eR7P`Y*1BRV05FPvC zaRe5|dnMg7v8KYj177&Z03-UE_k@dlG|5PJ{+ E08aM`H2?qr literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sy.webp b/dashboard/public/assets/icons/flagpack/sy.webp new file mode 100644 index 0000000000000000000000000000000000000000..fa46871d8108c7b6f2b428299ea61fa414243010 GIT binary patch literal 368 zcmV-$0gwJtNk&F!0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlFWB|m`2-R0RH13WB=IE z{Ok4_g(B#1F<<_+&it)2Ul;%FEdT8+|Cf0)`#8A%6!j1GadG1stvTz#p}QwQ089V_ z(}~3y&l+0Z#eL#{l;+c?U&mnXOHHon&yZd}hIIDS1bxd=^c=p!hco}xmDHm5I=r-C zpy8FX#J98UGaK|x^+hXbp7%Q$X-0`Oxg`hk3Df$leP)p~ck?!9v7`iVTm6gE)jPxL zf1xBz$fn6umF_cEEXg~%?Jc>vpSF$w-fP}*d;^<6N}OIIDRggu>fNqvq}l7aYGb-y O>a8`R`O((^0002Z6Q$Y! literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/sz.webp b/dashboard/public/assets/icons/flagpack/sz.webp new file mode 100644 index 0000000000000000000000000000000000000000..43d56b23621a8b759342474b38cfd3e681e368e0 GIT binary patch literal 700 zcmV;t0z>^$Nk&Gr0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjEn@FXjqM<6O zSg;ZaYyhrLasls@emZ^?^(Jr!i@u;g8Sen|0s8UON6I^_1JDD@FWDFOAeuGga~axs zV5!4S>`2MOqr`WjZ<_CWy7r^jeJJ;X9b4>5k z=W~@YgywVpGmxF03ZjiL15d69XtVC6{zWK=940D0WRl6S$M1QAcE6jW5x48(i|`D~ zWs}GWA2xXv{{}9f!O}?%95Jy=8twk3G&@IK5-ddBgrCe-pyK|br$lJWLEZku>;3$G zuLVBf{(p-N?J?@V0N)ahil=(C%|dT?#qfj|fzNbuOtvU}m&WdfB3`7)1t#tuNV|sg z6YU7IUxtr@8j#(B{?HhmCs&}zXK;TSbcXKRkMASlxe-6AN&!mdj&=$B3o}x@D=Hsi-F*`O&tLEi7){FSxu1u literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tc.webp b/dashboard/public/assets/icons/flagpack/tc.webp new file mode 100644 index 0000000000000000000000000000000000000000..82dc3ff5c41f3ae819d369d1b7a6da614a65529d GIT binary patch literal 668 zcmV;N0%QGBNk&GL0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjCnMoz1A|ft0 z2mr7W32Xq!j2d~%B+t|blm}P`pa<+{rQfmV?T4gg9{ha&xvqS3pY(^YFGvsA0EZpi zZHC|Aa13KH9KU3Et=z5vj$uO^l)vG&xB-nTRnItOPsPFozySNwgH3a*f1|O~nF1Mh zGWzSHTcfztrz6c-2;ATE{!leZs|qCy1iKX2XZ4-x^Y-kSCzd|J_T~GAzy3d03vtPG z)aSXEp+7`hJyP>RUh~)X{BR!)0%b$bz~WEz2Hd+zO=4*p9_Fk=Ky&F-{Ouz8_tQXS z?to*@|G{Nny>j`D;i!!pt;5Jm-6UCm`QQl0`raG<-!=om%|qO$uxuuJ@Zl!Lq{>b2 z7rRNME&%=EzV}_w_fkxHwfREy^6#^^1&LC@;QbHn#F)&flNidY^+H*@?Yg%FY;irO z&&3lj-PCkDU=!qAHyRFaf{H8jQ!YZochnKLAycY4?R`#MI@bl5;rt?_jOtA$36mio zP8MJ6vr|{r=_B&=E2RJ90TtkrnCg-HpWPMIY%0C-{OtL?U{}RJ|36NuyJhmcbO1~_ zMQ8C|eQ2`rp-(-a7qfVjkf&AdErTEYZy-W;=NzbuUO&E0q-&i2zRg|1XBM2E<{Zk6 z^iSe>&r1I9R(6lxI0C$2f^X-GH4YB7^8=B|L%Edv@B$BtQ`bf{A2lFmzUW9tw&*D1 zS_!ef*mlHs%V%A(l^LUM1|WWK{~`fr<}QE7ZPe}ZxfJLt;gX#%pQW;t9Z%r#-oOBL Cphda> literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/td.webp b/dashboard/public/assets/icons/flagpack/td.webp new file mode 100644 index 0000000000000000000000000000000000000000..3231c390150d96a9f228e8f914ce8be269f9a385 GIT binary patch literal 256 zcmWIYbaVT`z`zjh>J$(bU=hIuWD5YXJ_Caa1B0VafQKxQ$0)8K;1P6JKB>2ZgIy_i z_RKjaxn=FUU(`?X)@Nb>>QmSPR5gK(VJ@SV0fQ=oU8TW9_mztk7h0TPG~nmVU^r=i z=2!jW$>0B5Fsm>K8f81^=JifH(>D9i)JGlfzPXr5Jz)6vMR&W&e4f`yTTZNfQgHOB z;K%y^D*ya{r1}4AyJ}YtrvD%K{w?pP|DPg;kTstKoHlwbxwhkG#m(rfg{y(d%9(t&{i E05Y6we*gdg literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tf.webp b/dashboard/public/assets/icons/flagpack/tf.webp new file mode 100644 index 0000000000000000000000000000000000000000..ae0e0ea751f7ea410c893df4e92de302a5d1b837 GIT binary patch literal 534 zcmV+x0_puyNk&Ev0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlT|?f9`5DVnJvu;nf9D{6pl^V6fPS}ivP)z>`ZMqJL4*60V1Z+i+AxVt zP3^mTWYk0dgltng?U)AYO_}*9w3;vT6{-LL{_^SKjScGK<>LDx|17S0lAJ~@O1s(@ zSUMfXQ_lM8|Nq3eyb!{^B(`tufsQ=}-~QXKw)|58;yZ=jul!R1>TyJlp156@Ym zJ>WHu;r!nQoC{as6gFQ@g-o6}i0m?tuKF)gHl4#BH?|o%X?)>x67V_xaJh+wJJ+z( zYB3ZV|9yYNqWO7ubSY>2#}0vADUe}xZ;cJMD0iyLQQzqr5m@s{TiMH7K;X8gt_))=otH|)Q{y!#1p$wV&Y86BDu5J*zp zA7YJ&2nQlwdPM!b&{_DQO&5RtTfazgSEiD0K|lWB-Pw-Y639vR;W#TsCrgMAAdDr25zK%;4g3W>cTG7NEmH^I7XnLn?S92?X zF(u5J*zp zA7YJ&2nQlFWB|}Z$Kr_f*kLF*NFBhV}Vz(L=%UI(tscK`o-1^(;0%FSWji!UWWLY*$AhRCxa=naIp zzXu_qcv>Q5i@G)a`yucbzWaT!f@i#lUWJw}M(OiUqImE=hQId=oK? SycwrI>-76tas1=*Az%O<>1wC| literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tj.webp b/dashboard/public/assets/icons/flagpack/tj.webp new file mode 100644 index 0000000000000000000000000000000000000000..c5261d83ba51319ceaf66b496da2dff69f9bd64a GIT binary patch literal 392 zcmV;30eAjVNk&G10RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjGno1?3rJ^H@ z_^=WQY5>D+06I;x*JIwnl3T@B_53L=PKF3r1k`jV= z6RC`XZ4?s>%q_Beyh|lvLcc~4Orc!PukPIZX5^&2hIUZ%5D2*0FgUM(&!rFZJT(>T zn}hjfAeLhYqKzH9c6s23G)ZN<-xfh$HP0EKtinUf{edq6KGcVRL*f}YqBBYkM#thM zd?@ku5J*zp zA7YJ&2nQl>8#Lx7+rK=UhduWE0;e?=%ahu{biXj@54o!vu_vpF7$0`y<%C zq`fqoTPm-g+kc*FV-m;~a$5+XE4XAl1EJF%+xVJ+7@Jj2L|$RO9TrTkFdyw7w=R&e z|Lq%h$6B}0?=1fhLtoR{`od&MQ>G+}srn&X-_Yazdp&xt1QeYULhkjhlU<2=Sq9l< z{fzN+D)~2~F~Y-KuNJ3jsWqEpL08SVSBRoYoiVKS=Y$*A)m!*4OTVfO8d{cpnuCA| zOitn(wnQBKU>dwXfiVBJ7hFGsf})}Yl&hV{%s&gy;6~=~05c$TZh55Ise=isiA`1M zu+bISvCny*zf2Opi&1Aw>Ey_KBz6)=@$dXKq(49Q_tP2TMZ50*znh!$Wg-7*=ZQyz wM!nl_T&*$P-Pi3Bw5zY1tmspX-R^GAW|8gghtY>0B($m#_lSVXwBU~b0PFPwK>z>% literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tl.webp b/dashboard/public/assets/icons/flagpack/tl.webp new file mode 100644 index 0000000000000000000000000000000000000000..39647ba3c616dc4b8ca850b5b8fd1a5beab5ff70 GIT binary patch literal 562 zcmV-20?qwWNk&F00ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjAnMft0BB3rg z3ox(}32Xqx5y1WdsCU(3Ky84~!0G_rGX1zM0W!e-!$WQC7*JAge(G?A1>`Y9F_T6j zUIAM3K`&$$L>>SD{_P&rX|sq5gUCn6KfF>nW4W#x1x7~({(pG#(5;3*;)%1mhu(_} z-?SvpGJIios%~dw?K}-RXcgD!*RM>w9(5g9CUg_oeX<`W*%^$VwZGK%V-$$>pE+vG z(}@=39}GNCG|K=qxuC1lt7|}e9y48@@%yHsUy%kT+olm)+gLAV=s7<~Aa9Qxu8E~x zqDyxeLvC6XP7n!Gbt#s|QbT6Z#j)p^E5$#C{hoMOf7|Oh>IPDZET>QtO>Xct5Yn%F zR|;hBc44JuZqjD6g#Rx}^oi@OBxd0ODe@LE&=n%ib_;ULjm%e8{R+=DsTF$`TDZJx zgrHz&vZUGOdvPLYWJNHtRB(UY8yd8Ur^oCH;88r;y^{BolqIl#7t6Qpd;n21NIven zp_}mg+O_gF`_Jy@6qBTS6YipgWDcm(w*f@!f%hKkD%%$|XHii;K^!RHL?S7_tRrrS z-@K!XQ9a}vBCszU51;=g|DR;}A0b|TxL^Hl@V)r}049U> Axc~qF literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tm.webp b/dashboard/public/assets/icons/flagpack/tm.webp new file mode 100644 index 0000000000000000000000000000000000000000..51afd4659585b30948f609fa7909a01b6f49ea87 GIT binary patch literal 638 zcmV-^0)hQfNk&F?0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl{V53(dGSdEs1^+aV)6sLAcdBd#z;C02O0 zS86D_B= zm;7_zrOh3ryu*RR*m2ScBO73RNxa*ERMO4>I;|bFT9sP{a>O-d{Tc4ob*Ve@1ZKz> zFYv0?lAMl_Jpxcet)bjBbj9X()jNZ}EvAMxxFdgSnYIXXp!R`m`JU-46w~Lq6{-Ti z{IjA*3@_vN&MT>S-_7Xq~=5&07*nTFycaTtKl zvcPr+Ge`{_?ySfn}&qNdySBDBkR;6C~+Hkd)P`ygmu5J*zp zA7YJ&2nQl1rmDWW&X7`^w^Ylci%UAFH z#zXZyw-{%6N>UFKgfi?8Z%UIPv78OKwlk_3)_Pz84Qj3yobk7?D=kR1(dh*epM(z8pVW!+LYwR+?;b;<_}#CndS@hIy<(vK(V z?L5JhJkt8^aDVNslXoY4v%eRA)MmB!cjkO`4SxS47(=ufzb?%iQg;6;=Dl5BA318U zw;HZLk5%e-$8;sw%I7nzZrrdZLz%8ywr`Dr-xwXZJ*?F9!GgW=d;#C? z7B=or^DKR|!ppt$WxY)}q7Ia8rtbqZ5jMLWZ<@o7rXzQ66l4jYV~1rprtoxk2KGLq W^C<3MIU~U$KCe7u5J*zp zA7YJ&2nQlssWmV}4z&?+hZpSw}`g z@RMzkes_L2G~h5pp$_iYJ{aHlRfJk=XB4*vF4ECLq`CIan=qke&f~_Nh2y1k+dBQn z-;&_h{^M-Ux5N0wbhMoRalCdG>MY|MzH+G_`5>==bHd-|t`F9?^t9n&xwI0?DTq}0 zE>U3-@>q8N^Vgrm1HUwxeBV;b)&HzQ*}hqMou?1}5OQMUg@ewLgpM7L-aYF%N8_`0 zA@hHFYFiFmpTqO$f4l#~%QQus{q_9HzmDUoh0#J4#spz1ZN|8_n&%z#m;q^E0000M C=DFAa literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tr.webp b/dashboard/public/assets/icons/flagpack/tr.webp new file mode 100644 index 0000000000000000000000000000000000000000..891d31de8630692766ea6abdd1fcbf9f9dd9aad9 GIT binary patch literal 468 zcmV;_0W1DeNk&G@0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlp3`Kjuf6> zZgr1o&1*v4DyDGwOM7%FO@p%e(fO26X~8(qA?mL$J5=Lj%CIN3Q2w3?fyhjnQ?2^~ z+dIo{UpiB8fBEU-`MFEm%2pBTFMFu_Mn*MTZu5J*zp zA7YJ&2nQl-0Dlh;g06vX4mq(=|A|Wx> zYyhAUiEIGH2dsPt$Ol2b?wNB44-gKJ8Xz4Z`^7)EpR8}1%g^ur`V*QeCVgIhr-lB& zJH#wnnvBvDfkXa0G$1K9=7b@vi+h1`B|a~cY7vU?0RG}{0(YyLp%)iN&dTFUW_uF6 z95APl{H$Z&dTfieR5voi#9=u#9NkW;l?;Gcd?QDFkdE_YPd)e($V+9g@T7>gWQ!lp zZlqJJfTzduVcWVHRs12oy1erk%yu&<-{e7b$RChH+us-ip7q^T=y%7l=XyQG!O=yZ zVbmtt2H_v@|J^s5qcJ)DtJ5BT)L&j9?;=d)0caW~laA9qACiC4nfk8-yjpPlX@tt0 zXk1c>CvXTPw!16^f#PB?-s#rd`LYtqK)fy?j1id-De@t#F#bj^HE6uh;3{GB3FwiG zpQ{qm%~>7Sb!ST`caV@kyh?bB@sB)nyQVB71QbLoYyQt*&-Q>mu#PsQv(YQPYuvBj z6kNpji-kR4{feEVZXJif6^}(lziYCA$F;OOPV`6Whz``m*F;i2fm|?hP6t+g_}zK#{k<@-@%ys1%jc2?QUfP@#MJqeMqh({)B^t}fB*oBJ^&N| literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tv.webp b/dashboard/public/assets/icons/flagpack/tv.webp new file mode 100644 index 0000000000000000000000000000000000000000..73407d18d04257cc83fd5227e822e265eaf0563f GIT binary patch literal 916 zcmV;F18e+JNk&GD0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl5B+Pvtbo7HhyUdj8J^pHafBJ2uQ0$(%-U?!#U@8D z^^g8*r<8a+7%74%B%B}ho5j<2&(0R&9mAN*TYYd&V^a@_|Kbj<0J&P~qa%f8TS^L^ z*YmGH4D0{@+WsUGH`KRUE3j~C*Tr@3*t~7;ftd=GcyTjaLZ<0cdzAtOT=vm3>`Bto z9F`vY{MG+i*L_14$aVelCp(h=``>x?2thRbp(Ywc0{{+LU!r-eA4pQipU301xT1|I ziG0`t_~wZhBKy{I(nG%gUrO8-Q!_tKQXTQ{^h*D-|JG3ES`^H>7becOp0i?65z100 zl3L97E0UCFLQR%w+GB$2d#bOyO9na52&b)Szid;(Y5r9ARyloo|B3w99^NMqHt75D zX|wOMonK)347RD<7a!*JbkqFfQ?Ced*V_(i{CiaRc@4#$fqcBYwvoKdxVr<`P@cc? zto72j&w2PB??@j#&$0TF1QzqB_$NQXIVd^IbKM5zx{+3A1~XM%jbVk|x#JUu;GP_$ z_vqa!M_T(Qv)ib)-Syd?*c@cb7XhOiu!$qGtJ%v^gdaOH4U|}&e{UEvi0Jr`eOzUR zGY5nc==pHOP5@DQx)HN%y@dDHANDrfmnWE0w2*!=p%9griw{fs&G6ETz>se5(W1=16B$uE1#lo#!cV`j znQGe_$aOfKRX1Tg78iA&{CIEkCwtwpF2mUcp$R6D-X?sD`VLtTZJ=-^d(rvVf6xAI qa3bOV{ZGwjhTw0QOfNoRE}jw3+-SG8DIRgdBDDt06_s1xfq(#|F~73_ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/tw.webp b/dashboard/public/assets/icons/flagpack/tw.webp new file mode 100644 index 0000000000000000000000000000000000000000..3190a68d52e9ba52e84f5f3060e268311164635f GIT binary patch literal 416 zcmV;R0bl-7Nk&GP0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlD^=Q<+@+nWlf=dbu5J*zp zA7YJ&2nQl_4A>Z7(fPVn=0s7thE9__Knd%$d;91Eiz& zbJ13hjz76x_rit=nD>f$5G_6Y)^(Jj-RYkE-;Ja@gHyTvGW6Ydsg7r{Xy*or!;lg+ z!FB%fFCK?tO;fv5tyGv~0091s>GMrA$fy3{-~T%YF1LyY{|e6Vz=1baFq{et`HE!n zc=pzCg)|8t&tsv7!mfYqnFytIU0e2I{Q=Iv4#77+zH!&k5TTnaA+@W4{V_O2&{{Wt zdL0ppWS%93I$m055(|`NADU0rd0mJy=(Cf%LOZy@?{#G}2y`)*X}aJ9)szKj%LO@j z`luazO%UCDE$-ALAKUj{4&0jM1mZSl!M0Ekn7Q-VDgWJs-9&N9iOe9I!Rb2ubO`~$Kj_){S)44qzVF6 zUYry}WOGz8Bifv?&IxXjY`&w`sh=ntRR3{wPJ&sBex<8X7LI-a;}L|c(?fc!%_%qF z=LZJs8UWjPP~iAAcrF$0;%NV8L~aq=Z`kdUnRdG6?hyGI~pB3(HxP7?JaU&?Hkt(wjwSC(ItPkrGLS^?&vXp q@+^sZ{eksAQiPLeD0`BeENgF%2iM@7axv4!K2dx!AnDoGu5J*zp zA7YJ&2nQlykm8wn{xYYC#SV(BgB)a{akV)vm#ldcjW^NBnd_+c$YX z$&<;mbzA)o*SlB@TLK$HCu5J*zp zA7YJ&2nQl-0Dlh;g06vjKn@c65qAw$h z0pJn|Yyi76ar*Cv{y={K=WpTjFuxeN_x8_VAAmGKe#3h1>40<2`zMm9yq96*B6;+e z$6fTn%GA#c>{wTz=>n*Sn130DNQugl&&EXd}f9(L1-y^ta8BFLgrEQK+mVco&F*4R?CVj;G(lj^kxzHlMyuYjM zf4NngjG|V4f3#WXUMh{<9pp_8pE3lGv@uuaSorbc%+`1TKtByN+&lwbq2qoZ$B371 zAE#zi?s-n=JHjtO!-QZo=xU4Ymp=(Hn%cO20;|RL4S&j^TSLI&;3|Y= zwX`ij%orrj3T*0E1vYhV1}sR+rvsQ$i!H)`^W664X)}L?<+q}vH)|3aPEunrHM-ne z_Fym5sih)=b5Y;E|KWY%(cRYB)N0&c4Mad~0*(8B6Bw`K+&>4MGe@6x>H@f`=FLG^ z{moT_@z~8WdO%qIc@vG#Tb(v)x(&eb3QsliP}ZN8Gzcg2#%}axfE?`qArJ&8Qh*2! zO&1A0QdIuB=n~?;U+&W^3o1wOPLcTZ*pQ7cvhZ;8kIsWft%I#MWPbN`4=|H}08D)lp8x;= literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/um.webp b/dashboard/public/assets/icons/flagpack/um.webp new file mode 100644 index 0000000000000000000000000000000000000000..2f80afaee91752567fcad574493670ad52831e42 GIT binary patch literal 668 zcmV;N0%QGBNk&GL0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjGoJl34qaiA~ zsaUWQ32XqnGj_`#r|JLMTig%bo`b~$^;h2$OlzM>uQd?P0ACryCDqN(s-YjNK8n6< z!IDN7kk90T`vTiVeW;*lCBcgGOTbNV_-{ZYOs*6?(`ZBh0RHJItn|0V*M(_MKN0jM zdZYt=bdb^>%E@C0Ua2b?R(BQwt~tg0qiiTCZ|~TbJn&uW^u2pQSBx&RXK3E_RkA(G z2tYSmmp(r<=ICNV?k*K9+8$T-EMD&3N{@VaL{L|xQ z*(i&^U-b9IE=ys#uwd_yE}W>hJ>$_bd3@9}FFOO}BW!f+YS+Ho`Ill7->RIK4RiG5 zV*_I2h%L^c_9H@jK4bQPKj&Y+ytwMF3z*QK+iyePVK`Ir$KwBd8Ira1as5Xlv!E85 z<3QFP7>5avy5{dMKfRmzSiJuBU-VY1Pq0LF<) zUFhQZjNdev&;JiM!q)2Hk85=^ijKn9`i}weOa9WV18_TP&Zz#ZGYH1Z(CH=s0000H ClRgdr literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/us.webp b/dashboard/public/assets/icons/flagpack/us.webp new file mode 100644 index 0000000000000000000000000000000000000000..2f80afaee91752567fcad574493670ad52831e42 GIT binary patch literal 668 zcmV;N0%QGBNk&GL0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjGoJl34qaiA~ zsaUWQ32XqnGj_`#r|JLMTig%bo`b~$^;h2$OlzM>uQd?P0ACryCDqN(s-YjNK8n6< z!IDN7kk90T`vTiVeW;*lCBcgGOTbNV_-{ZYOs*6?(`ZBh0RHJItn|0V*M(_MKN0jM zdZYt=bdb^>%E@C0Ua2b?R(BQwt~tg0qiiTCZ|~TbJn&uW^u2pQSBx&RXK3E_RkA(G z2tYSmmp(r<=ICNV?k*K9+8$T-EMD&3N{@VaL{L|xQ z*(i&^U-b9IE=ys#uwd_yE}W>hJ>$_bd3@9}FFOO}BW!f+YS+Ho`Ill7->RIK4RiG5 zV*_I2h%L^c_9H@jK4bQPKj&Y+ytwMF3z*QK+iyePVK`Ir$KwBd8Ira1as5Xlv!E85 z<3QFP7>5avy5{dMKfRmzSiJuBU-VY1Pq0LF<) zUFhQZjNdev&;JiM!q)2Hk85=^ijKn9`i}weOa9WV18_TP&Zz#ZGYH1Z(CH=s0000H ClRgdr literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/uy.webp b/dashboard/public/assets/icons/flagpack/uy.webp new file mode 100644 index 0000000000000000000000000000000000000000..0c45363d1dd8ad6877bd3eb546956572f1a28c94 GIT binary patch literal 488 zcmVu5J*zp zA7YJ&2nQl_h|Dlh;g06vjEoJl34BOxlf zsaUWQ32Xqt^woPMFb%LA`1)WR`d-Z+@>%M?gyXT*Gdw#=n_eVZu6xHQ*r#-5P&m4KqVZrm(Uc z0;~FCXK?j^#73unoI&act z>yB3{h}Ni^e(_aZJMa#F;Mc5b%WwUv`OaQfOiYEN8^6~{IuWLQmW3iuw?oPmy^?^& ztA8KhVS>|z?W&cwxs?M74?Vpd@1;GV`iczkOWzB1tnzz$$@wMZ(d#t?O3=c}QD^CM zWQeweo0CVquK7V;T1+0pSJ`4K>`s`0`d>ny*@#ay`(>7>Vj?dH^GqRB}M5{MC0n08TT*Ucj5kJnFI1~5>*Kr(D>(}MQNk&F60ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl_h|Dlh;g06vjCnMft0qM<6f ztN^eQ32bW#PU9n{8{4pZw=unRC-}R5z++GEq*Atc)yV6vgz#*XyeX-Y3q!V|Gia;JbL>CGb88Vir`+`l&A<^2h>J{0_Kuy0 zZrgWVeEK_%dkgJc+fmbiG07?Rjir?qdWOYLdG=D>nyRNFn0Oa{_T%}Zt0C|6N^_Yk zAJp5wk8U;s;{;u)Klt?nU4M$(>sgj;D+AShS6$sl(T0l4;^sB;Mn)3ZGE8iPf%wjJ z`=t-ilL3-$wwODoJD}4lCl@(;hQ1y2zO8{YUMB%>5WlyAGY{iyNyv5`|M*QmF~>_< zR{LM3K}c(^TpohkwAdx00{-9wbYZpC-q{h@sDS#4BR90`YybG#AIJK>;T~)Q G_y7Pz@eMWr literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/va.webp b/dashboard/public/assets/icons/flagpack/va.webp new file mode 100644 index 0000000000000000000000000000000000000000..0b39cf264afaa6b7778140e8a14a46b6b99a565f GIT binary patch literal 490 zcmVu5J*zp zA7YJ&2nQlA{s;(y;is~?UzBk80HUe2W4QJ2-@71K* zpFF*3WwQKseUcE)e_#3k@qc>7`a;j?-z~xe1O+p-ScC?J@s5+M4z`CWExGwO$*XTf z3I^1Kd{;3hv{pW4=G`8C>Q6NKQo7E|Ak^-iG#a7c&wRQPVz^_MV%p@q9Cu@`YGSc&e4MtH7+Y!rbcf_*MMFc gU(``Wk>z)E5A!5d_Hg_XeEGE~`O$!Gse?0JTHjzyJUM literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/vc.webp b/dashboard/public/assets/icons/flagpack/vc.webp new file mode 100644 index 0000000000000000000000000000000000000000..19fbeca6967750d392194063310b33064eba1da8 GIT binary patch literal 440 zcmV;p0Z0B)Nk&Gn0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlbxCcPI@H{tTqle~nmI z>?)g&Z+p9|E`~~wr8o>u5J*zp zA7YJ&2nQl_h|Dlh;g06vL2mPe%{q9HX{ z2mqiF31$Gr2r&9@;!Lq@6<^g~e(SnYJgXT-uR6{ zPBnW)V;DH@)QErp{_}J7UnlP$WZfW-|Nq_Q`%gz#_-pht5Be#84SrR$zyBMg=v6ba zsH@#mfwb64$~IqMW8LFIHTnOxU56zIC=or)y8F5wV7WEThFdZUvCzv7xF6EjJu^PM zZS0h^{h-Kp6N)ui@(eyWKGE|rL}!#_$V7bS2B3xvUyu~uq{3N2zBw=h-;*<7Cgylx zx8m9J8qdhnmEL#g{e}>jm5$fMb=+5r?(Q6WpS!Yplh!@re;Yr- Wbx$0o+O1GHAS)IxWCJzu0000L0lXRj literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/vg.webp b/dashboard/public/assets/icons/flagpack/vg.webp new file mode 100644 index 0000000000000000000000000000000000000000..482a90373d4b404f0f0652823e054983a7132128 GIT binary patch literal 678 zcmV;X0$Kf1Nk&GV0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl?4w0M_d5PRAPjd*OUMN`^;8j*N?W#^XzO6eY{xE<38TF z`a6v+n|#$S9X+DkRY0NoFj4WCKlL+@)usa%PC*H=nPci7ZeO@-|Ks&=w;Y#3Y%rAc zC+Lf3t6peJ-2cAcHTkwL%${1+kX>rw96xC&kaH^w+|`I^4t*-0oupr0`e+Qj&C^AJOLR0Tf=|b=D>J4s4|B34TR9*H3_Ze+8WpMw>u{e zF)vqqH{05X9G6FzQBxfp!MIL=#{e^YCnf9tQEmQJiL>ywL}f@7Pv^i;HO>pKd|dKB zw(I>}SP?bh9j-AJ_$Z>kMKa_pH+?}HauqtGuGiG%!>w>xjvvA*IL@TfV3{%z^xu5J*zp zA7YJ&2nQl-0Dlh;g06vL4m`9}}qM<6f zuBf0932Xq$D5|<^!>EfS{H z<)x-PLe5)`Xcu+8|Hjy%;9wJ8$-l2f>_jHFOI^jhWMA1BpMwc|9!n z-lP3>i87Q|ufNKS_S1E*@gi_AOBi9mk#LLI5LKRG5f?dPRtaNtEj4Lx`dr3Sibz$8 zV1AUjzT2L5?@Hbc?g{g)n`uv9O>yQTOG#rq-}vJ*AU~=!SXk!AWWqV&zqUB_^u&?l zd*MxWB{V>xWM9={Chxd&a-kQEs|6!+t5i3p3e0QIP|&_$QEz+`?HaLtCH*Q+wsKxI ze3LTjEg<4D&`Ay02H$O9uzGYOjYrc34{BHxG3U}S)7<-=Xcby8D)fP-N{RF|6_CU` z5=R_#DQNA_7X3IIVl+9w6pzZm9dgyzYMFyHBw(J@mnr*9T@DsVJtAJ zEXRCAb4smY1#_OTCqNE@1efX0apD$kVyUxAidjRJukZK;+ utRTJ(ax=xlyf#*fY4R??l3@@5uh#4Q+Qei8L89xN_37|(24{#BFaQ8`3p1Ml literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/vn.webp b/dashboard/public/assets/icons/flagpack/vn.webp new file mode 100644 index 0000000000000000000000000000000000000000..30c76bec902728282a3f86739d1e5107efc74c2d GIT binary patch literal 348 zcmV-i0i*s>Nk&Fg0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlUsqdv#O=LGR1p9G{_ldq z6uxz1Bu*%L*9Al6QVM#*ZjE3mseAN`3K#@9gj8N3X z9wD^>Licj^wGS+`j0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl145owQtuc?;ks+VS z(0a+n!4jhAYfIgcr5Jo4-Tmcy(in|Ncf_dKilA@_so-gO0tB4YDxRU90092#@Yy55 zf^@^5QyUHtis>|tzrB&KvNXk7uO56S8)UAQ@?+PIcDG$=>JS4dgYCTn35CErxvm923WQkr&6n zH-#!Uyifq#Ez%qwR6p5@&S1)foTI#grj0XU1TKLlM5qX^v_1O}d>hD6;xnhNP6W+k z_L@SIALe&3l2npVB0$@QW~H;S0b2-kWD0il(nEUKFAx1txi!?)r`tQRzYBrJb)ftNPQl?gs(3}CxOz8HeG%Q6Dh|2ci8yn`rG8w}{MDXvy=aseW1EWqKr+{yaz9M+kI>!%`Y9TP+ zAzhj;u`TymdNTuuJ-mW3`2gtw=CM9SC*059iWp5hYHGsnK_j-O@Xuc&Ja;EJ-|mKY z%gNlnyT$MZh_UE(Qcsb>kAbA!iG~@mk4`m+?)>tdWGb09{Wx4R+b#u;S{*FoOb-A6 E0H^Ly?EnA( literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/wf.webp b/dashboard/public/assets/icons/flagpack/wf.webp new file mode 100644 index 0000000000000000000000000000000000000000..0f6aab1794fb776ed60be7e7240fe3c4690f506d GIT binary patch literal 242 zcmVu5J*zp zA7YJ&2nQlGKS*i?pf^Ue4S-F3x_iQ`>0RHl>fB$J?Pp0pJE^{e# zght-4|Bc+N=xUISI9@u5J*zp zA7YJ&2nQlA@1FM+AQ>0=LY&EuaxaZL|54`vUYYQaqnF4D?F>@MpyhR=r$Vz@+ zFF}J?NS{$RJUjpRhZL47dc8pMj^E@xX7u6o&b~pBuA;ZuAqIh8o&Sv$zDX#rH95{{e_v+daLMP%g#9>tN08PSFrMMXwFX S1(n4mCK|;$@Ph?nOFRGrw46Zz literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/xk.webp b/dashboard/public/assets/icons/flagpack/xk.webp new file mode 100644 index 0000000000000000000000000000000000000000..b544db304ad984d77bf344ea1da8c285f230ebbb GIT binary patch literal 466 zcmV;@0WJPgNk&G>0RRA3MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlQx69`gIR1@$@Zy0XRjro7d!HGF<_1%f z|M{9e^L|^Ve_b5!`V?%#04)6l>|n#r3AIn%JIq+pxp19Y zW+;a~@(|xRH>vbt6J2X8K5GJFTu36!Ib+uqp0rKQPz4BHm?LExeCNChtP7XpKzAU0 zA=d_$e2aWo0sqOj!Wd^qA$(+Jf_Y@s7-U+Lt9p+fY(J-OdU9RgkuQj0C1It8AesRN z`<=nvsw3zBiee?xqpF>wH(LcryXna&_h2C{E_uv8kG1XtEy@@%sb3aw$_>+%E6Q@h Im<2!p0DZB<>i_@% literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/ye.webp b/dashboard/public/assets/icons/flagpack/ye.webp new file mode 100644 index 0000000000000000000000000000000000000000..6f2f6074f0e788a70d63dc7e9fac079c159a0b97 GIT binary patch literal 222 zcmV<403rWUNk&H200012MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlqZ|BC(WXZ3a!r$i1S YwKL6@Z@e*3l0yfQ`sYS<41$0F00;h5IRF3v literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/yt.webp b/dashboard/public/assets/icons/flagpack/yt.webp new file mode 100644 index 0000000000000000000000000000000000000000..d233847b2030675293fed20611740807add92259 GIT binary patch literal 962 zcmV;z13mmwNk&Gx0{{S5MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlGRfM|f|0lWdcja?J-e+GO3dT9Hf(r|<9y)b0X|3StFaku&|H9rUQwf?)( z`_K6W9M_;Fj5=04w23&6kpFy^Ch)dTtxEPzNn3e_gc(jsKIU zghT@c8}&s>|8^Jj+o+uqTDSP`X#gK21$_RjD*MOv8*mhg(N%}sGJ3!H4R(A`Z&s_Y z5BOXh%0E^3@5r(5mxk32f!*)>xtHx2r6(Hp@AOUlrVZQxFn$Ja@v4S^oTRa;vYZBEtxqL!QCzZx$o-_x7 zcTi;!QW)17(aco+Up08IU8t*;a~>Wsn509W6m#APw9TSl3v=%p7ySW6(2q`jW1mAn(^oh_Je}vap9j|$rve;ru9?krC(K9$Z0grfkqtxU8;08UN0S^xk5 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/za.webp b/dashboard/public/assets/icons/flagpack/za.webp new file mode 100644 index 0000000000000000000000000000000000000000..d5bfd11af52d72e6b58947ada8dc6a5f8f8f8c79 GIT binary patch literal 616 zcmV-u0+;<#Nk&Fs0ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQlJN-@aE8F0A{m$k_tTQimJ!)BA=jwjwXQqAnV4)ab`r_3)Byzzs61f|8^`hLl3G+i@q&s z2-DJEul~MhCEoaK(CkccIvAPwmObR+4*B~EuNT;QEW1|N{L$WSC=Bv9LptXo>A%ud zjq)iEyTD?11xr`bf1C&Tz1RKNk`s2b=r8<}XmLUaxbQV;IOEnMO!{LVK(Q|wH(6gH z6QIG4+Ozoq?Hr8HG$p9#9qex_{Y(>R;A|$BG1oX^lcM;&Fh&VrjQ!RIcJofvco{|c zmo*;n-h&5b5h|9h`P3qDbcI$=HbuB(ezp6;vm9zBSW{Gx>G0ZjHU2*TiYy<#WmY)t zS#zhapbt0l>dr4vF~D9htfOpJ=dwLaJb%Um^K|QF25)5{78S;EBR&mVwuf~u5J*zp zA7YJ&2nQl_h|Dlh;g06v8{lt-l_q9HX{ z3aFqEiEIF|AD9W3pl^vLP?Gx0MQDI{hq~d%<+%og5OYj7<0r69z5fC zhRy^!iB+qjKUM$$?usmum*TN&QUCN|`1kbD<=^-Iv#W8ie8hF=NkPVPc6o_-%BGh! z{CoB~^1OpWQl)l3A$Z2sUBbj-al^nSZ>lWjR@c7jKEa`!wn!;&T;H=O_xB9v*CYxR z&6WUY;XcwHtP$b*X!pR@*SDR7zod%X$uasn2y%!%=LKA(d%yCjP_rqKGe774754A` zJz>^u8&&iF1~=LIgNdMRj0odad0pxvehbhme(C&HOxRtB5WnVWLowO=&pVv92TDT0 Ys;FFH4#5ddL2GhU`JGev2bMqp08N#tFaQ7m literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/flagpack/zw.webp b/dashboard/public/assets/icons/flagpack/zw.webp new file mode 100644 index 0000000000000000000000000000000000000000..51ba5379cad7ede4a33ecf38e2d50e79163a0405 GIT binary patch literal 652 zcmV;70(1RRNk&G50ssJ4MM6+kP&il$0000G0000l001Na06|PpNF4wG009>u5J*zp zA7YJ&2nQl-0Dlh;g06vjEm`SChA|WcZ zTBxuR32XqVC!70Iz8p!$0;4}*8*w@1x+Z#)_m@173;z-q*TWR*r=T zjkcgT&WQQEXzfC1y({wpp++Mxqj1hy`Xkbr&d^bS8UPRg{l|fK$~j_CTun$SFxAoY z7Ykn*U*31HXs-;1Zs@6TOeRf6(`#;HJ)2W$;*s<>{%$ieu>4*Tx0UyP5(NtJGjy<` zzBH=-nw9zN+^OYK@2{F};B)U`>6a7mnz)2??wyQUtvEL}hin}B7ayP&|DD5pQm{g4 z+sI#{@|1iypz;RSrd6hHbPE~PM0B7Lt7}?_Lmv06fJj?R`QGy#pil)q4C&&F<*Dk! zO&rAr+SgUN$RP#(%L3hNHEmikoQ9V2xQhiRxJkj=}Y$yX6N&a_&@`{i%Li6 zw7jt}+U0v5Ab`o_e+$vhKuX|%4TH*NfgNV2bEds*DG8Ad^tr7(mY)58r&EOzfFbpT zxfE+V;a!&x9pXY>$EE1v?~D3MgY(Vo2Y{S>_<*V~wwf3W_i)RD=0o@os&^!cA2@?BS>LQdv-DuO~O9Fg|hFq`tb!T-yWgIhSoh9Dahh7+&& m7YC1iDP%+^24uz%BAcs72|7>24jz>QiSW;lx_xtE0002He=1b~ literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/icons/navbar/ic-analytics.svg b/dashboard/public/assets/icons/navbar/ic-analytics.svg new file mode 100644 index 00000000..a0182209 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-analytics.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-banking.svg b/dashboard/public/assets/icons/navbar/ic-banking.svg new file mode 100644 index 00000000..8e1934ee --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-banking.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-blank.svg b/dashboard/public/assets/icons/navbar/ic-blank.svg new file mode 100644 index 00000000..3b21175a --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-blank.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-blog.svg b/dashboard/public/assets/icons/navbar/ic-blog.svg new file mode 100644 index 00000000..4d54ea9e --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-blog.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-calendar.svg b/dashboard/public/assets/icons/navbar/ic-calendar.svg new file mode 100644 index 00000000..e24979ab --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-calendar.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-chat.svg b/dashboard/public/assets/icons/navbar/ic-chat.svg new file mode 100644 index 00000000..2cf385c9 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-chat.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-course.svg b/dashboard/public/assets/icons/navbar/ic-course.svg new file mode 100644 index 00000000..22b1133f --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-course.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-dashboard.svg b/dashboard/public/assets/icons/navbar/ic-dashboard.svg new file mode 100644 index 00000000..30840517 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-dashboard.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-disabled.svg b/dashboard/public/assets/icons/navbar/ic-disabled.svg new file mode 100644 index 00000000..ac241ab4 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-disabled.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-external.svg b/dashboard/public/assets/icons/navbar/ic-external.svg new file mode 100644 index 00000000..fb726f77 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-external.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-file.svg b/dashboard/public/assets/icons/navbar/ic-file.svg new file mode 100644 index 00000000..161b0a5e --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-file.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-folder.svg b/dashboard/public/assets/icons/navbar/ic-folder.svg new file mode 100644 index 00000000..71595ed0 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-folder.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-invoice.svg b/dashboard/public/assets/icons/navbar/ic-invoice.svg new file mode 100644 index 00000000..1f68e967 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-invoice.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-label.svg b/dashboard/public/assets/icons/navbar/ic-label.svg new file mode 100644 index 00000000..0488f1c4 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-label.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-lock.svg b/dashboard/public/assets/icons/navbar/ic-lock.svg new file mode 100644 index 00000000..ebe9002c --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-lock.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-menu-item.svg b/dashboard/public/assets/icons/navbar/ic-menu-item.svg new file mode 100644 index 00000000..f3ffb176 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-menu-item.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-nostr.svg b/dashboard/public/assets/icons/navbar/ic-nostr.svg new file mode 100644 index 00000000..2100b9e2 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-nostr.svg @@ -0,0 +1,3 @@ + + + diff --git a/dashboard/public/assets/icons/navbar/ic-parameter.svg b/dashboard/public/assets/icons/navbar/ic-parameter.svg new file mode 100644 index 00000000..289e44a1 --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-parameter.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/dashboard/public/assets/icons/navbar/ic-user.svg b/dashboard/public/assets/icons/navbar/ic-user.svg new file mode 100644 index 00000000..261a3a3a --- /dev/null +++ b/dashboard/public/assets/icons/navbar/ic-user.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/notification/ic-chat.svg b/dashboard/public/assets/icons/notification/ic-chat.svg new file mode 100644 index 00000000..2b1afc32 --- /dev/null +++ b/dashboard/public/assets/icons/notification/ic-chat.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/notification/ic-delivery.svg b/dashboard/public/assets/icons/notification/ic-delivery.svg new file mode 100644 index 00000000..f7960c65 --- /dev/null +++ b/dashboard/public/assets/icons/notification/ic-delivery.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/notification/ic-mail.svg b/dashboard/public/assets/icons/notification/ic-mail.svg new file mode 100644 index 00000000..6183ee9e --- /dev/null +++ b/dashboard/public/assets/icons/notification/ic-mail.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/notification/ic-order.svg b/dashboard/public/assets/icons/notification/ic-order.svg new file mode 100644 index 00000000..568193a0 --- /dev/null +++ b/dashboard/public/assets/icons/notification/ic-order.svg @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/payments/success.png b/dashboard/public/assets/icons/payments/success.png new file mode 100644 index 0000000000000000000000000000000000000000..376587bdb80a3786e64fd8cc470d07032c1ed53e GIT binary patch literal 24151 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 z zq6&io-i@1I4u=wUODQi1FnSEhUEQVh!>pApOsJpwpu+1k8%0h}c^rl1vSTA0rkgp@ z#3sG2%CUa7*3fwcdy_OlLU!)t<)%?~xMqrU|6uW}_T!6i3O&kF3MeWyqPo4vX8wF^ zQu!Z6z+s{#fgTYJc5CoXJw{OHI=c1bJ_hXkwIm*QSJ=&+A{{w3?g0;DZ9Y%lD$3L6fOH8sr&+Kn# z&fbW}DMre@qD+9Gi=FUJw~sNS7vK~PTl0P2Zz&0!je?@3B!c>?bL3k-uf(MJ#|*?& z6xgd=1QS|;3C}y6LZww4(DFJvD4<;Qzq&3vKG<0S=L89KlenxOnXGiVjnS~3)}o?2pBY+z5Q(2CT`7~;dY?QZ`fKb;Q`McY_j0u{MHMGhHd zS^u>(*@(`@MfkSA=G=G156(VC<)?}R)|?iDB?x72w_VzZ?g$t+Z;O7iQPvT^v?L1% zxuOT@eJZA=A;u=Vs?Q>xbtqo_wi^xf_(JJvY-V@g*q%XTwV?9x^UpDJpGF4U%+Il% z7T~ABrVFL55R~9Sg+^UpI!!`Y#jY{lFIkj^#*?wu6-0s%Acw(}f)Ud?#pKui z%F1;>o1L9`kt+6-00k8!6jM>O<#AY*yp@>5$);o4Jvg>iq9n%rDTwx}P+!wdNq-xv zaLT61oCAKYt8ql7z-cF^rt)}dd%V*GYmfjXa21_@A;RL>#$@L8k|3g0#Bsg3a(g+o zg#sLwfREZx`c(%XwyZXLV%T^v*K^gUd*&tQ(bd4tC;YhwONWF#h6|tHpqHc^F6RoK8eb?Z z=O7(i(o#6$O6+X4t~glvwjC-pwI}ZI2Gv-0a4_vv#S^y>WYCP4@mF8QTNYkmDdMWF+!h1ROLLHK-ICp%{N*7Jp(Woe~NMzs0 z;pJ4nhn)G|GrW{VfB?82*N>LmTp2}Q1PONA%%oK;$RLHofzxMss7g@o(RaKe}f0XBiN0tiNVuAv=*wTIl z2R~ALFw{f_md;?NRn3YB4WQ)**BJoY|V_c_?J~C0{o+wf9E+Ui%sgjepP`Q31&MS#e1}E34V& z{I8`du~=3(EyUBqjq{OV>K`sF@@#w6`A~?BJmKfvEe|CX+))zA--2PopZ{znmRGC= zbTF2SpY7I!350f^sfd=!bHbtZ2_jI)ZQ|s;avAE52U^@Ys*#8mM5C~D-m%(w3>0<7 z+mYuWm~<2P-!^!E4<_)Xw_2gV;o0iSl$S0TtB2ItPrFv(*S9gLQ?Cvaz!gwb%&@i| zM7C`LlLIBt;Wz69q&I$4M3@!Jqa$u2U;?kDIR<+qq_~Me$q}S3KO8a?SYthAe;X@Z zhHDM#L#Y`g103<8THMZvv;?o$0=MF9P(#sy8U<3?k?gbIrfY)dt81M zc@{a{?snqlp&_@p{N#)a8?K!u_7s#Ebg(zHPmxQ_#@$wWT0$e+2jvv8Cz|LAA!Mby zg@N-{%?Q^7u2HIm5vEZxba56pv3c030Inv9s(kB&1>Z!=WNLB?x^|4kkfQo51O>Jy?=;264Do{{REN%Z zRGW4=1A-wcc#1>90&k*vGC8@$YcpbB=OqZTbbW8Rbvn;b3U*?tCf8Pejxj+zBU*fu znqx&)M?sycxF7~BI95s=cc7yG6|wf^>p}J4#>;sxW5%rrirL#Qw8& zIT|roV4}m&mULC|vLwgYjtT8_BkH53^DbvBV4D!e%{9dHa7?Mc%Xv48+|H7Sc z0eJ()tZwytE>RkSQX9VP26kS;1(HdekuLIWhoC5-Ngl`Z^jOK#P1}V&XgL0**uhu+dgCR`oBUs|Ps}9+~-GJn}3w)2y9q~MVDp0ZseSa?p2mHE$K1B6Q zgWr!dCtt8G72A~z0m%0{@Fx(13XSV(0ucE?UgAYSLt~(&=M{Ra+Hj1zCfI1C__

    r)>9#1^jQ6`Udi@}$@?TN=$4xejFs=8X5)G< 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 + + diff --git a/dashboard/public/assets/icons/platforms/ic-jwt.svg b/dashboard/public/assets/icons/platforms/ic-jwt.svg new file mode 100644 index 00000000..4085270b --- /dev/null +++ b/dashboard/public/assets/icons/platforms/ic-jwt.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/platforms/ic-supabase.svg b/dashboard/public/assets/icons/platforms/ic-supabase.svg new file mode 100644 index 00000000..ac43e170 --- /dev/null +++ b/dashboard/public/assets/icons/platforms/ic-supabase.svg @@ -0,0 +1,99 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-align-left.svg b/dashboard/public/assets/icons/setting/ic-align-left.svg new file mode 100644 index 00000000..ee0a763b --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-align-left.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-align-right.svg b/dashboard/public/assets/icons/setting/ic-align-right.svg new file mode 100644 index 00000000..c915aa12 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-align-right.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-autofit-width.svg b/dashboard/public/assets/icons/setting/ic-autofit-width.svg new file mode 100644 index 00000000..bd9a6c90 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-autofit-width.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-collapse.svg b/dashboard/public/assets/icons/setting/ic-collapse.svg new file mode 100644 index 00000000..5902b8b8 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-collapse.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-contrast-bold.svg b/dashboard/public/assets/icons/setting/ic-contrast-bold.svg new file mode 100644 index 00000000..67cc1d29 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-contrast-bold.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-contrast.svg b/dashboard/public/assets/icons/setting/ic-contrast.svg new file mode 100644 index 00000000..9d190320 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-contrast.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-exit-full-screen.svg b/dashboard/public/assets/icons/setting/ic-exit-full-screen.svg new file mode 100644 index 00000000..cb9b60ad --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-exit-full-screen.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-font.svg b/dashboard/public/assets/icons/setting/ic-font.svg new file mode 100644 index 00000000..91abc012 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-font.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-full-screen.svg b/dashboard/public/assets/icons/setting/ic-full-screen.svg new file mode 100644 index 00000000..f7dfe887 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-full-screen.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-moon.svg b/dashboard/public/assets/icons/setting/ic-moon.svg new file mode 100644 index 00000000..f8519e4d --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-moon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-sidebar-filled.svg b/dashboard/public/assets/icons/setting/ic-sidebar-filled.svg new file mode 100644 index 00000000..d45bfb69 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-sidebar-filled.svg @@ -0,0 +1,3 @@ + + + diff --git a/dashboard/public/assets/icons/setting/ic-sidebar-outline.svg b/dashboard/public/assets/icons/setting/ic-sidebar-outline.svg new file mode 100644 index 00000000..aca6be99 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-sidebar-outline.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic-sidebar.svg b/dashboard/public/assets/icons/setting/ic-sidebar.svg new file mode 100644 index 00000000..e2375da6 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-sidebar.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-siderbar-duotone.svg b/dashboard/public/assets/icons/setting/ic-siderbar-duotone.svg new file mode 100644 index 00000000..46f51d70 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-siderbar-duotone.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic-sun.svg b/dashboard/public/assets/icons/setting/ic-sun.svg new file mode 100644 index 00000000..6863e5c7 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic-sun.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic_moon.svg b/dashboard/public/assets/icons/setting/ic_moon.svg new file mode 100644 index 00000000..b1d85eb9 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic_moon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/dashboard/public/assets/icons/setting/ic_setting.svg b/dashboard/public/assets/icons/setting/ic_setting.svg new file mode 100644 index 00000000..f0dfb667 --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic_setting.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/dashboard/public/assets/icons/setting/ic_sun.svg b/dashboard/public/assets/icons/setting/ic_sun.svg new file mode 100644 index 00000000..507910ef --- /dev/null +++ b/dashboard/public/assets/icons/setting/ic_sun.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/dashboard/public/assets/illustrations/characters/character-4.webp b/dashboard/public/assets/illustrations/characters/character-4.webp new file mode 100644 index 0000000000000000000000000000000000000000..685d7ce61c0b48f9be286676ff6587f4eb8e268a GIT binary patch literal 7008 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/illustrations/characters/character-6.webp b/dashboard/public/assets/illustrations/characters/character-6.webp new file mode 100644 index 0000000000000000000000000000000000000000..88bff2bc37d218aa49590401f17523d5c57926c3 GIT binary patch literal 8800 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 Wo{1=xL$E~B#RQ`0`E{nC0002W;PdeS literal 0 HcmV?d00001 diff --git a/dashboard/public/assets/placeholder.svg b/dashboard/public/assets/placeholder.svg new file mode 100644 index 00000000..bfa46208 --- /dev/null +++ b/dashboard/public/assets/placeholder.svg @@ -0,0 +1,8 @@ + + + + + + + diff --git a/dashboard/public/assets/red-blur.png b/dashboard/public/assets/red-blur.png new file mode 100644 index 0000000000000000000000000000000000000000..a0df012ff218610a0e478cdb624410f90c36198c GIT binary patch literal 12348 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/browserconfig.xml b/dashboard/public/browserconfig.xml new file mode 100644 index 00000000..70cb989d --- /dev/null +++ b/dashboard/public/browserconfig.xml @@ -0,0 +1,9 @@ + + + + + + #da532c + + + diff --git a/dashboard/public/favicon.ico b/dashboard/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..00d3e7d8f83acb823e9ccabfe858b88de7d70430 GIT binary patch literal 15086 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 LBoe&kJ-qjSZ!DWp literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/android-chrome-192x192.png b/dashboard/public/favicon/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..9ff5f37b007daa12d0ede28e1da47a0f223f7dbf GIT binary patch literal 13299 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/android-chrome-512x512.png b/dashboard/public/favicon/android-chrome-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..d68188b175cc2235753ee60a7a40593d61602738 GIT binary patch literal 41694 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
    7!p4ZLf5OM$USwbETFUTyZU@W=W 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/apple-touch-icon.png b/dashboard/public/favicon/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..42a42c19b7f6644132ec8fb6990969807b3d337a GIT binary patch literal 6068 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 Ju13}>{69r~n2G=Z literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/favicon-16x16.png b/dashboard/public/favicon/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..8ac913a6834e9fe64203c05fabd6cba892633776 GIT binary patch literal 940 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstU$g(vPY0F z14ES>14Ba#1H&(%P{RubhEf9thF1v;3|2E37{m+a>CLb6X8W|fH z8XFmbjBvIy2=>%7G&FX#H`p^-@xns+0C#-@17jy!!`J}b%{@wAcT277RJJrX%8%8q zNY=8mG7R+4-`1~`8>4+?vE2J@(hV7!SC_~=SR?D}s_*Bfzp-1XB}e1!R_Qw{Wm7_R zPR^0Pw@UWIcIm0*Y7uqUHblNS${YE z58I^Q5+Ex}u7G_4P+LX8TDa8irI@uZQ zo1*CMXb|M7=VEX0|NsAlem^l_a0{0N`318j-TeFSR?55gsW)!_x$`08UOIb+dPNaX znlZ`S-6eN78^c;4hrPtp*OmPR2OGb&)XR`EU7*liPZ!4!iOb0e2`NcpVuGT=>`Y=| zW^8P3Wrc}?oSudoIxN`LnWyjAF=b27nmJQu?AbG8gM~SB|Be|=izaRATD5A{uC^H# z+{^)u%cgDXTQ{#|U*p0lJ1jg7oH%gf$dxm94jtf7OUO*kP0mi|7dI#gC@U!{D=aN; z=dP%zs{F07`=ldl&EG%FOwCQPya`N-)4nZCd?=_jah3sN`-&GcK196TQ4zR+Ve^g% zr=*}FuT@1+Rc#y>5`7*WQgHW{{F$D{So*2#}#kKm^o;1cU+>C7?iEgw#sG zB%)|5lSQQwfgpk)1gn%H*A}!=#WH9IDORA^N{em5V&mg|xX*X5wfDF7@U6WczFjVp zM6GwmIs*XKi=qW`JCa`dI*dIE8Y_nEux1xe%md)!5trv`$Cph_v|J285gh>iK>(KR zCH-Rn@?ikxQ~+>K0^pfjXL~ag00)aKPARkxu>Y@yqHL7SMiBcED2%Y*jAm68&||j1 zfdS~=ojzZkA^v8=THd9yV0KQj?~fPpzxHCE_F(5P;fm9|H*=A&5M)ajeC>qSFPCwP zz1XiU#P}G9!$G-0XhIxR_YN&M5Zxw$rkV(sOytmDgcpj`6w^A4J^l8B5#d@q>-#|S_sy1O8*Hj+fmZ~RL0&NjHn1! zp33KO2Y%)PUJ}V_dXK7BFk8wfwZ$}vkoBOM&{Ihc@JB0h89#U9N;14>+VNr`>v}b5 zvWal_Eb&o0K1l+_30e2g6K*$b0`{w(f3Xvp0Xh=t@5G&+b#*S4&SHg=(C`5T`v&e@+h3 zE$NSjnm)+L6v4mnmXZ^bwoQ#s&N{?D&UhCHN~xH^zb2n;FiY;;g4%X37e!pQ;fi~< zD5H@GkGbNa!j(U4LCGtBW@W8iDz$v$&NlbX7H`k}k)ZI2#W zQZVR7T)|>@G{dVZVW+>nv8P2-(MeOCeo6C&2 zI!CRs8&+DFebnU^Alj2iz z{Tu0h1wT(@Y215R4gHhp*W79hm=JcWThVwK&`iq;K3C6EqDDRNA*a*_9yVTIRP>Jr zE$pF>&iU0C@_fJiD13KgOP|}nW=2h(veyPveskGi(*;LPtyFa74GpyPUD#gct*7_m zh(k~Mbxr3&RxDkeOP?k`%WS9qXTvbN@?f*IWW{V+s$akF^fp0FDdq#KsyFNR&GRd6 z$5fy1JXET9J-+nRlj~&@%k6%2#+Us!SO+cqMo|Ey9*$Ig#Qr;WA<}fhM4eWxOXF(xrr80YFv?-VK}$*J&n>KwR9Uc+Q$N`4p0%=^_DekdV9vF9$K+pM1i=lKXNyFoJZw!tM g;s@6b>!TZDATa0os&0|*f5N^3h=dYB8((Gk8+vM-{r~^~ literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/favicon.ico b/dashboard/public/favicon/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..00d3e7d8f83acb823e9ccabfe858b88de7d70430 GIT binary patch literal 15086 zcmeHOXLyuV79QK~PyJ0uGU=0Kk}09L6cU0IQHo##lww&xic&0(fCZ2y1{47mMb}=j zV9?#Tu+6e-?;@_Et|%g|<#}K^`@ZLXZ6-65WRk%@o98+Crrhs4?>+b2d+PXn$N5h1 zg~L8v{l5E)e7;^jpU>~N-k;+0?ZIcK;L7hWI??C50RsXUgIj!)LHu0*3eBah|5a60 zzX1&dHG$p+{S1<0OuvBNd!SoEwV>a&g`3}FTruc2(0kQ z@=o@gU;Fb9fNf-=IpFglpwBXnJsOoNQu;Fb68E0wodez%f!^rEGuwv;xTC%MNn~K1 zR7E1VC+&H>53H(7xSjyoka6r5){=Q^#J~Bk5}a_6nREJUaR)H-oaqDNnzT=b>5hwp zC3w~)(*5y$(rxFD(*3c|rR4IPB{HBIYY|R|_cy>?2U?kN?9qsX2M?3nJ6@4)&Hs_C z9p6j0=YG&@UeohZIqIBr@bey?t*>MhKXtxWZz;U?UJLUf#mzZn?Kp(B_({Ku_Uvi) zb;tDSU0^@hZv1>U*V-ZMLC7}cd4hdfHf5n?J+)u5p7UbI8elDQ?|wr*9sCNL7y>inn6SWXbvcd)VU_XAu8L$$n^$ z(PPMudyqPi{oo!6*N-r|WXlQjExlx^WIb~rq2AR;t1wm5cxOmofG`368%o zGx(_skg_G|4zERhTd#3n`jb?7# z+lqf$=I}R;g8W_ zai3-ISB#r-Z1Fe$C`F6!Ql61P_2S>SyS3g>H?WTbGp^Hdw8j1{FU5}InC<(eVr&NS z<1Ej9_*0L}j18h6L)|I9;x<BWBla(-9O8=j?kx3owIm}>?OkXbWlDAiO~OBDFIPq^P5ow0R?SL)A`|JFHXO#Z{h zO7}-U^Wdlaj2$L_p5J9>&ydjQth96IPN~Hl%FdmsV`B8)o`a1)Q~nR+ zSD6sM$FAQ0p#*ChWzOu`id(Ed&SUPJ+4@~J#w67r%Aa-_w!!hEY=5M)SK=Q&4)Xsz zPW~SJ@E3y6^~>hXl_N)v*zol=KjYl8A4rA&E2%jBybR%oPc!^Xjr&~vH`t9nLw}zB zR>~&Mk@~t?*|lqz96fqeY4`5kQeRsG{kc@fP}j^F*!u|2q5eEU{O4v4{|JL$b=}rm z&y{<#@P-E^g0-$6JXjVkm@kVKE|3PyCxke`f7_p}bN_p@=P_SrFDU*m5ldzg|9HrM zpJk)GvS&Q8Ct9pE|7n2fTfpG+So>*)hV?!*WiTRv&7lwC02I!7%XvhmYD$|(LX zTH)uppTGJkiS`{J(Vo4eaOpj|9$XVw&yCI(ExB9ImcYy#tnaLKB>u<0(6}LE_z{zk zhgbf@o_qJ}8s{>WDx11U{b27H^*=F=F;=(^wix4z7i_?qm|TkPe;fbEvoa@ttSx;U z8=Ir^@D-}Um6}J$x%VAskJ@%tV|C0scs9mSH{k0PF5MPuixvMq)zOT}A9*GRKlt&y z49r}nc<5Ue-1u0mO!aKSIE*b`bSv}*u{y9v5wjPpe4;geoDG#D#%E6c9{iMP(UNWI z4^v*H7cEZcS5im(8+TdpvB?$Dht6C7huFDN{u#zk+d>;dOnK{HFqojrm9Pu+lg(ar z&sDyszZ&DyL;jI|gVd*PrT@r@(ne-Ve`woz{xRPWf-h7R4r?r%zxJ6}S=xGoEA!1U z`841U*EERk6WBYQGi0xON%4;Ze&*J@IG+q1q5n=fd-q|oRG z3x#VN;b*_7xi8uXwJC@l`IMPy91H?+Q76U-Pty8*$FqHdgmGbfSYgoMPQuVfKz~0`{Ju zeI1?y_5*b_FnguRN#HDD{8~PFp3wz&jlKN3^7YriJP33=Xl;k_6QAmERL^(XsNzK% zVOy;_O6Kvi#(om(sJP~VUQKHb#L2Z7Py_$7|FO_{uHjptlDHahH9p&u_8hFWNc;Zw zuNQ0Vjb7~bYkbZ*{Nos4NOvE+32Z}byos*(p1Q>S@C7JcK3#p^SHQv=d%HSlFz!T9 z4-n7RmqFiw+GnS`X3pfrx+wP~>(i{U>t2nQ`B8pwjnDTBueml+YH6C=ljRUXG0Cldf%RZ;+`?Wm> z`ljQ_A6NF3y$Nd1eTm0dzJJO5CfCom{J|8@WsgHSXgTO;igAf~+IYc-xt*eGwyMv} z_^IrI1t$J&8w2%$zG8A7wp^2qfqz|g{^d@+l72g5LG~P|@0}V0^_;$TV*bb{&|i-B z>SO$$_;K(r7^mcHdkb@SeO2b@7>m&lWX;(2%@goBoZvHqg=<j(-;I-4`{|N1Rwi<8std8BcOeShq_%Zw&tItI)bKdTF{n|C82PS)(+)E$BnI z7`YARdKnwB=J)J(5}37I@dair)4Xfv_@gfZwO!7O>zaGlYo^Cda}(n=&eb>_F%G}a zU-OKvSMZz}nltJCQ-_(-%e6B0?f$N%o(~cOq=b(PVI!5T! zG3bk-K0ptVlS>xswu`@~uc903$*j?HT^Ug+gD&} z01ue@I%};?z3z|{pzg~YZ}C-|U0tyGrY$ApUop-yx@h8c=0BL5NGtDT?QL&g0(<)ykNUy8diW?=wS1YZTCrSe>*`bnu1q}q z)6F}Q|IoO;2y35}OubUptX$#L!Pcx=DJ9dcGJDXjy;J_3$r~zv^aW^L-J8cj&UO0L zvTn_4hd*B{f8tY&*8Dq@_f!4}>iW>TeDrP&ZfKCEo7T$ub!(+=)L8K&Z>l?=`XpAL<=-lX)_`mae&d@Yj4O=F;YQW1oBWmGk%1mG%5%z8dzYZ0bT&BcnVl zeJiV{x zia+bp*h91<l`<=Sbg#=f0gUqWxk1 zkvfpq^n%(*$6v7Zs`WLo{{_Fz_MfP8?0q3mlMh61A?9iJcA`8o{5I%<`flvwY|YdD zjQ$sMHun42D}6`!4&~_YuT- z>+VxsOyO6?&Li3UOsrQ3{;wsK0q?csz@A^m80}co_VB0N8KyD@8VO=9B=vpJaa-5g z9Gm)CjP*v7H~;XO@h3674obcjsh^n|ySbOo=DZniBC3!5!)FB`>H}k<#QP#W4D1JI zY|U7&*vl39gOm3nlhA^!!eY%dc)#uX*W}RxUVFilyr}?8OZY)fp5jEjiTeZYlR#5J zjM);e5$zmx)s+!*4i|#>dl25se3|!q_ciXLtq9xkl{=34E-!v<+)ZiWr37WoQ*T8zp*Rqoy3{Vnk9R!V)~}N^W`~TKV18* zX%ktqWWO%^1=(*`e(o%NMpC=4_nWvb_s&<*_di8@r+7bOHuiJUZ{c1~Xg6@b9T)0+ z5tHPh&prVAUp&7_;}ZIesqZ&&Ro0G!l7H)qvTn;(Y1(j$6g2Hr8PMluT%C|VWzD#Z z{qm4k0pgtv8#l@Nt@lX&#y=VUdO!L)sSoy=*;i|=Xt!xg*y~>k?D<>%t}#XK9j~g- z%h)IR{fJ92N7}i-jO*1VGfriXG;4=C|M=e>c=rmwc>9m7|Su1W}h&98=Zga z`cosY LBoe&kJ-qjSZ!DWp literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/mstile-144x144.png b/dashboard/public/favicon/mstile-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..5506c5d58417eb220fec1627e2112b11e01d8d2b GIT binary patch literal 5659 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/mstile-150x150.png b/dashboard/public/favicon/mstile-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..42502830a3d9cf150816f864212332ed6e7dbac3 GIT binary patch literal 5875 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

    G+in6 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 a`_X>8+j}>%wC~Ua33 + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_font_negative.png b/dashboard/public/logo/logo_font_negative.png new file mode 100644 index 0000000000000000000000000000000000000000..f9f6923b24672414a38db2a787cc1567f4dd616a GIT binary patch literal 75354 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\M||%X>K%IByW@4n|IQ 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 + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_negative.png b/dashboard/public/logo/logo_negative.png new file mode 100644 index 0000000000000000000000000000000000000000..e9fb5096697d3f2438edde4dff8aa96c06cbcc5b GIT binary patch literal 149273 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�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

    n83X28_VFnhOYuh~N(Z@o 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/logo/logo_negative.svg b/dashboard/public/logo/logo_negative.svg new file mode 100644 index 00000000..360c0de6 --- /dev/null +++ b/dashboard/public/logo/logo_negative.svg @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_single.png b/dashboard/public/logo/logo_single.png new file mode 100644 index 0000000000000000000000000000000000000000..58673a0e8bfa13f9591b06f33dc93cfb78f66ab5 GIT binary patch literal 105191 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_single_negative.png b/dashboard/public/logo/logo_single_negative.png new file mode 100644 index 0000000000000000000000000000000000000000..dbce4e1ce949c4fccbbd1697d2887f196f66a6bc GIT binary patch literal 105314 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/logo/logo_single_negative.svg b/dashboard/public/logo/logo_single_negative.svg new file mode 100644 index 00000000..70220bee --- /dev/null +++ b/dashboard/public/logo/logo_single_negative.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_square.png b/dashboard/public/logo/logo_square.png new file mode 100644 index 0000000000000000000000000000000000000000..9bc47d618f0f446da92967913d81a73489e0731a GIT binary patch literal 79480 zcmY&g30#e7`+l=!4AGd8B}Ijq`LtLjCq+zI8Ywfz64IfP&`xT!9K)zliWr5KF=lE; zQPLu%j-^d0CKREgB6P}0BuahP{k(5#`u+aje}3Ngyzlee%XMG(bwB6)y3A_PupwiI za2z+xVzK!T9QVms`oF=0@GpzvW<}xued4~@#*5?hwCVqpeEu@^=C}!*h57s+eWK+L z=eVwOx_I{SqJ38e9(){mXolE%z@LYIi_q9zuNtf|KXTDcxoY%%ZIOKYq^BCYpN(03 zZ-|BX$&Q~-Kgtg8USpc{Q)9!$Z*3;HjZWSCyGBk;;uFs?c;))CnQ4hSAvz&vH5>k# zhJWBV#kcFnj8)>eoM`9GJ1rh{SL=Vc`KHc)#c*~t=W{bGPoicp%;o5vFHVKjbe?L^ zS!HWF*L4o<4Ntte^A0}Eb-0eb?-CKz8Q^e4XNpC0!pRudZ-hIl8eiZBiGRAr@P|{f zI)~@I+4iC1tl`4}^m**iKX^TDIU9o##$@X_iQ8|!q zkQ{KoHJIaM)|O`37O$crHOEXUUa+$NWd6gS>XGR>3udNOBrTj*xwhTgbms?A&6T%g z5>Dc_aWi(IaEm`_>-f#|+10g~AI>!v=8wwLWFPmNW}Sc=la`vDnDTB?^>{q`;movq zNAsremsM$Ll2e%)@1{nq`+Sqh6r-2#TmDI5&*r+0gkay&?@#RWK2bk0UHg=dk;N;6 zVNGcl`m;}W-Q>+aq;Y<^R`Cvx>v`FWJtOOFJ(Sty&M@}zTgRB$y|+5N)^|%dc_R_t z#-A*6y>4X53m8svX0_e4<5PU?qF))2*}ospzrLGoP5l?=&F7P1zsvs8>fO3>i?bI4 z{E}4oy7x~k z*u&j(hLYL#OdHnpb>g90HZH{lofOeK_<$-bW(%7iwa?J{)e@DRh}RHo;suq|QadVT+oZq~^k4_DVJ-iN&UOk>YTDqZiJMbl?;%@mK|KLNn z;*2a(SKImVuRY*vOR=t46n`?tX-EFE)C>pxbq;S{zKG{TMbiH%TbCF1q~jZU=vL%~ z*nQrsct=Yg|CGK?FL4|m5TVo9kk=fMbH??ay{Y$y3x9{vt~i-uG$nyCvTDW3^1zro zN9C7zj93}OZg5}CQt-$LX7SL_^;aw+g5K=-l3nzfmYj%ymDGJRtjVOz@AoW9U4zCZ(Af-mt_O29Wi-na0$e$KbzO`W}9){Yx27FHs+m%LgM8v3MW?8#O3EJnx87}jK195i}N)6ad@)mHg&T~Tjl*uJ&UOI+I?qnRDB z?ngdGQvz9xs$tWU6BGWm+P}Qr%Z-wUH>o&}nN)wHfBrMQ;_4Tpx=vYJYy#@8;4PYB znwzMCWwh1IOtXn7#M?uVg&D9TELpyZK*#T}^X66^&D62UDW<^FheC3sm@;4Z{pP&6 z!NxW}>r1Q0)yR%hjldH8buMDNvfBo0BduplzaJR#X7f;Xtt)~Bw-Zu>5AI(g-)xOY zJgXUZ+Kk;$Wy?Ms=ZHXvfU9Pkt64M)Nn7PYC@l?~Ijl*qSl`0x^xCSZ%*H7#?1Qr5 zzO#pMT>J8m;eEy1#Ocl6`}RBdtjsQ405{5pFEz_v`f7ysDSOWd2c&nJkdqHvFV4n; zs&pFy7ORA>>`sLZ_RExfVGm&ImDYd7tjJ993b?Ul+v^|s+?zLtP+Y3Y!h7Pvg`MX@lJsnO5G0Ga zha&H$*yv;>>29#@i$v)Z1F|AZvt5z(dc_tVLpth=ijx`(!|zOFX1UGh?Y2UyE@wyE zswJcZTBW`}@3rCtd-}Y;UY>@_B{$%a-|D9=T%2@f7LBgi z`JsK8kkoBd@};|v?=viUk(C%y`?*RoGZDXraA45PT zlK{GxddAhKUi@Xx+vSzvJB5tf7Jd@ORu6XGJj=%RxY1Wuk9~4bj?W1Y*kmxXA19fU zDWKdhb*=vmp&Wio$+N&W>S4^=7Z%sPn@KO0Xm6mn-nC`yeUsv#qymj)PnzD}o6FXu z5}iK%?%F<g-(pe~VcuiRT%(N2(*0mzrv--X)SW^<1sm2)&YnoYX z8Llh?Nq?nWoabygW+Z>BCA3}L&c8gG-~)yI#Hg8&4|EtM${*X26}^mspYc$ zRLzLB>JNU3$D(?y+%rTL&giQE@Nwk?96s|aZn~cT>FXOsgS+l;oO2yXg9lpYoCStT z%)psu7864nA`dy7)O8~3^bPiCnO7DCTn#OW;OuAp9Y(`kdIF=tS15~O{WHm9a|1FG6pX8nr@a%m{u8>Bi4CCWaa+j{uK6SYEbCE;2&76~M=LApH@YO3D zf$6-`diJF=uDi9}BS2`9dT!`op7OpU6p+h?wup&Ue05UnVn#Jh(U{$N=3@V_s=gtg z$55+=F}LUOfDVy&Ttq2q*J+;kiSwzZrobV#K+7>>=3hFm(^IdzA_)-HFF9{cuo*TM z#7$Du0Ybb$@D>H1dY1F%Rm5?Ai0;>Ut|2LQS%<)J+~pKO(p$i!$ok09V=n6%7jGHL zAbQ?3!X(k`kM*OUUv6A>K(w$Q^%=wh!miIutJVojZsu~YpP)>_zu_q@M&?Z7C9}@c~R9lp{_7rN_f9iJNZOTpz(y*hGvn^5uRwXi|EOs{#I2$sx zDy;98KBXDevYS+@C6}gCKe*gkE&nU2 ztFM)3^C#cXMe@rHc*(+P>C_3*7@vLOm zpp|%1ix$P{7XkAmF<5eJy;;P0d^qn?+&=FW!nzi-u(AS@#)7k_W(*KbD7Pq^b8--U zRxzDc{X44YPAqGa!+@MW4<`)@rAu56M^X1B0DNYmsucL)UKQ}-eT%^M#Whr8iMOsm zik`p!nQXAhlq_5qa#S40EO`c{g@v*Y( zJN}OvkYi3eYzF*(y-#||waHF~D3Z>AQDhhwQU9N4?s&?gS*4O7TGQTPfIRGcQb9P| zkl#ewkdH^>{}#6Dyu@d_N{6Gb60%4>k{-SOHqoHUZ}s-$@^!D3)_?m89bc6ip@u9U zI5Oqk2yJcg+n8%3`Kn`gjbJ$U9@UMxDS1h{O6?n|QBLN4U!_dGC&oI<=0GUOFqeC` zPlkHOP=?xpRywcjf2y(ebBWu3iKq8Hra{Q#038;n?*r8Lh3E)8NMhSS*0gh=9IH8P z%o)l$ko*EI^=8RWjCCq#IPJ;siBWOZl-tZ6T~S0U+QV6|7ko(7y~-+e?2oLeQYceg z$gC-vUzok6MY+8Hr?IdH7i{e*i8PT!hrt{E6b%$t#~ubsb_!sYvSj@#Wx(XxyQ@N< zT0Bxq;C?i+@Qia<$#cq-C5+&Ucfy#HeDP{2N@`C4=rPo=h;ZJVY0{C>)&e^Zx|E9SV2%YeKK5DvdK*;wkicDWB4&MBi52v^xJ@*6Fh2Q)z7b z$;QGCzNAUMBR4JDL=g=heCH@9|E)o%A$D1RvR2qJGFDg-))`^9(P4n%FRO?PFarM6 zzoEDa1IL2) zHHtRXR`vd$v<{ufJG$H=c^@WacmtRtMtEcwzxXE&1zKYNHoE=+pAXWLtUOC2ZS1C9 zT=FX8;y{T`;^hYah{Rgz>YzEjr|K*zXDpbumHpHcoJ;_K$pkF&Us-<_5&cC1rzm{d zIR8s#kNK}qQ5av1y>r+E*uizCA4VVu=9=#bbBTkNqU8X3p^}gU2*^_IaJ2 z&OpDI+&rEsiL7#PIZ2u*00Id3e6kNN&8J*@w`+$oH?F1EUK4$&8Fx=YF`Nv#iP|A8 zh<13h^TP^W&63VybVfEB_O@VgP$={Czr^+>P9~fchal0IcA+Fr{Eu{^NT;B$LN=Wz z%Gyt~aEiq!p_!?Joe7OkdphKao$CJ zfY|RV3J*iT4&O-klhx>A`9gvA`=^pr)1XZs9=9;+$z?yE3R=7~pUN`eim7M%j19Bm zfexh)6#MA`iY02(shRG0p~AHlcty1Kc5icoC>3*W5mK)TB~+`@hbDV?-4}f8;dhjE zS#7}MYMtTOv#fF5*}$Xh&2kg!{D`(D*w~)DkmRZ)emSRa-I66!Rx5rX06{mc&8;u6 zSZVFfP*FaU)YxqK~Si~Sxej3t+#V8BCtxGtOmXigX`oCtj^!D*&@-D#4PF4k^ZI@#9 zc`p|}y;cANY1wMiRp%Fb+D7*Sv$67g)Em8d^m1aZUxRZaIerAeY#&0;PMJZd8o^52 zq+%P7AzWw48(2>O#y|>t_uJTJ>c!C>z!5I6{y(ieak)iX{U_Ce=X3J2hjrcx5%wzx zu~Zd7bR6nB(2Z+f*QYRsoj~Pt{}HBkfPDOwm6AmNO>c`K^PzNHw4n#vIKMOhQHctl zQ>m9MMF+YBs);t&R&BHLlnw1i@)?p%I-i#;pmGl3a`wJ$behK+u8cA;cmPVUcv=6=u2z#+=xeXHsV6TKzew%RsUL>Q zCRBErh!hUdXaeWXOBefdL;45}qHS!0$M&@yghbJw%aHdig3`wXlkS@z0( z5L9yY$;b!Ugfsd^If?j0zsic6Jt}ojAu}>#fBt~GZTJ3TjH@ISyWa#nE`7C?E+6AL ziA2o_F{-}jM3SB{C!LlRz0Xj>(0P|d zrkdJ|MIEFqi^kfTmL2Xq&rGFNoWlctRUldMoNr`(B_h2l6(M5If*|+4pqizuK=Fhu z8vQxBdk#OL;Csv}YZmnhXo+<)v7i*kkH9MJA`Tn&LuGh~PWRtr%k0>FZ31zwvZkUN zhUTSEM~yzWpq#YN0D)$*N8nrK8XvXA7mjZ4ZH1 z*A415f^?>!$fhjqqpryf84i*8Egr4d$w`m)LH=wa2C`XrpY^M7KzG$2AKPPbCRHk$ zH0^?hMVoki^(S|hTMA>cWoOn2opN|IWdX9FL2#`rnX-K(TstZ2G?{YtuR^Gpl3=D# zgH0@7EvFc|_2eUDiQo2Adt0OA4EYUzN;|UrZA;VLQiCQWK#-F^jVrd~u9$A@X{}V?4&TY9Q(3M>n6Rn7_ zqxUU|Jsb^{Q($kmX>up~AL!h{`Uct`MolxL|80oBEwXrHy#-BRMu&$3~C>t0^xP{g|=s$=Jocj6KD+r}kWq+Ly5y zgb#pJ-`j>rn%GJm!FgWs3-b=!?&j1q>Te28VO* z&-$3=L>(hNOmL1Ao(S34RG9SWliVg5hH=@%;&SrwKt4Ss{Yg_u8Q6<4GK7r)GCsbP z??k{7EHn;BugFBQ^+9qUBMSX(77%1CT$z)bE4A0s7G(1%L$}>}pL*4rz0Aqtso>d-J2eG+eZMkpMT-gMP@)x`y3+MSBd9td7&h3yKfO8NK=X? zvdDhul~MJ~d$OO#9*^^-RirfZ82XgqFqcF1F68{G|A2Wi4It)S5|Ct{FCW=$(SWRZ z=O~zRN?!bn;+EPY-%sA172R_d0Q+pDLML9tCeVRwJAE2HKc>ffn^%UvwdneuP$Q+6 zGx?37@EQN_$Hcm-7g5R!UlM(4QB!ugMwqMuzU}KHiTKTBpTeN5Q0L|T83?&%K@RD- zN`zP$y;~fg#2b1s{i7nt3hJaxkc2?Xh6PA+4 z!s9C9_&UXLP$}Ohr6`ltz1LNS54Q-Qk~=IrdY|`Np3rq>2_m_q95ruZu_Lp4uWTTx zp_(TSe4yidHVhwK`y={o`~{ZM7OdgQBX_C>b1L_cr`deY$llWX+7|b|ZG{(T4LVZ?AbWn!&5{2M>E&=Pyf z3z|ZC$JJjX%RKAtpk=FxjJscW)T{-h^oz~rKS zD146J81|Ex?dVk*f=Ws6UgYpWNlx;Tcu$|)3?k)`P5AhNKJL|5#oPREu%k6T^8tHe zH?$Pckj^wq`nwB(Q$MwbeyJP+LQs9a^S)n6kj~qDqm;LI)if9i?s;TwmJR>oPhv)> z?9CIVymwE!Au`&|S5ZGg3PB(dPi(V?sxmlDX$&yNiHuCpQ5WL@Dqt$DI^DJuEEuc` z+%@Rh&A}4?H-RQWO8T{v6GKo5g3k`SO`$G(0;o(WZ^j{?Rg0u^*P2f8BF;5#dqeja zcHNO(hgdc)W@V6cZf`x9DAWTroF0+pW(N-slbzV{L1g`^h8#IDvf?HXywkL;dGxHX znKxP$)gj;XUwk}n(ZdN@Q$`ei5*a$5L!%8EOG`;&bam7e@! zq4c&G*81qZM2R_5fl4Ed>lJitR@^zPo;7mC?S ztDCfH?dfXqzmW!P--RC`H7+0=^o`J$<^>JbI3QF^kJ~6+76VIiQ)0BKdV~e%+qcT-1pLB3=-u z(*@FL7n-&j6^BXw*>b;GPwVV?guV5nw)A!{6^h4L%*!SADTD2`eSS+Axi`-Npb(qn zKX4>n%tf~$u|F3Y3>R2F*kSHhMlNvYOCtYC&pVZ=W&Fb@YOPdl`Nn7<*S6t#rWSp^ zlV&+#H{CsMnwyp-4xrZA1>pI<2HCVB<+C{6jl3B&Y zuEfHdNs^(IT7{ccRWmgvTuw~Vs$GJAmtS^n|A`&V>eQvT{B}+?=i3VJ;i?|T5Z=39 zolVY<^P)v4rT~J}&pVov*-szO$PNjPOC=*jGc8nN3Z5*hvPBr3XVBw* ztu@yXw$hl|vF7eQsNx)VklK;1htstTVX6&@!R^Npm%H5SZtKz2!ZN!0;&k$p+593p z_(iz*fA|cSCH7Re17Diil{mti-&c5N2e(I&sZv6NckqUGcvtC`_u(kc=+xYH|OG+H5tLdF|DH&S68-(s`^W^TE@|8 zC8r#4ty?}*%N2IrADcVKJBGb2IM{`Mn>r0${c2K^9VuUKr#&>(3Md8u&bff}D;3ZZ z4U?oH>&4a<$5HLmDpgx18TaGb#MPCrCgVTwr;?9d$I`BRv8$yN0FMEGrH6P{qW%S9 z!{?Z-U5O2Ud8ca2a?0z=YwdC=xMZv07z6LP^ZmOVRKurCw@Nh=Z#kavF$jhiJfqjJ zAzeZ9L}QuTRPBwC2!kCxVUTf;fkTQL!c1Y0%tF-ABX$KBo>K)}V1F_26aG5LBBsr! zSsX2|NPFmF?pMk-3{WfQH|&pSlvKXU;zKFkIlD2qJ(}5#WidTQ;!j~xnccM2_b?W+ zU08@XLG@g*@DO&xTJvjVCmI#gmsUSqbnR=S{#@H*1jlsVZu=-2uCCrUtMYL^w!7e( z{yl)YvK7;f42-cCgXqNEqX-Pkn?mC6*3}|pqa~QV?-MAV<5bJWc|EslLCF=MJ^9P0Dc>@P=_G$91Ho)C749O+`7>w#C@$j5IO!EDSXV242 z-~Z*Dy#iJ#u2^-T%Z+Wb+jG4d@@wPN*S1y(N(M$SUg-Uy`xdIIc4s?hBib!3>`G>9 zxf1G#!yH=x;upa!bwij`ZoYja$4GE=M*`bKUi>0%Xk1c==IrT$A&YG znEzd0J(wF!^JP)!0+X-<(bpwTr~lPPG~T3lex|zWo-SwbI}ow1rO}_`EK6%be<|x$ytJiH~n; ze!nJQfADa&#v1FtV;VMbTs?BC`>JV|ue!t30i3~fAeHp*8|@+R3S5u_jFyjx+JCIO zdjJHZmk6YdrbMEGeguoBYQ#F(;CHlaH`Gjx2M^(@L8oa_&*|Hcm4$3WI)REWvIh4Yc)jtNe9$J`x8tINxtR*=yw29iOD1f7w|MQApb!`)IoXA1`bQ zF4K8uu9q{8(nz%zqda?z zd-MRS&p@>e7};;09<8Q*7bUw!NpRJ|YmV3?is(*%U6zCWxc;*b2tg;Ur}&U6qOJOi zZ-+hGeqZyF+kICc+wxnLsUg83D4C>3ME&% z=iCVCGf~VSX+1&xmPK=C?hkHHcQ$rAcXh^_^asD>4OSMf?+vq1)RMOVn!xskS&vI+ zN~1tf42-aT=>>4Nq!Sryor0w1>lR*v@lPm8jM_i!z3=M^)Q~MX3pFmI`_OpI$19iG zg(Q!?Jj2Al>GACB{@kFpw&$0p1An+bsiZkq&GjEUzCA3yDMPho30rQ#%lRDafoE{e zpcCS;qgq6Uvx`-B|9T-TSRWfPNO8fJ4xVeIVx}djBmAy7H*|QU%!X>s;3>*VQ70S` zOAOy7b&ho16TSgE`)V^$zehy9q~Oa$y$+so&aRdZLIJ#h{YhVgk+uKusfk&IH#~oY z(AVn+HI94w*aT#H{dE-Cc<1U$&!Z?f=k^CD({g^VaHm^1$pCWLQa~)~QEoCQG$S6- z>)NkRlHPiCXC>5;0|;NsN@sI9IM|Sn^~S(}mvcm40-~ZaGW~T=$OlISQ^`Y}>Az<0 zVft73ODUom;2Ua-I{$d@Sgy4-gV7zyo{KkBaA#N~-cx#&Ct?L>iEy@m zMb^(~X2lY>NIPl2CR16dh#23`9uPa3r&O-m3ioO?6{)1#yQy6hI@glY>j zNg7YYc6r4iUODwC!S}%#5S4Z%a2q#h zXYYeV8t~;5?0Qr0u8ThTM&f(1oVn>R+@u~3HVmvEkfdGfMdp2m2Z3+Uwkk-VEp&vv zZ-hyvd0|jn|>pBnt{Epv_sIj7DGt;cm-#!`gfCI?1EcF6GrnTXu%@&4YpCPn%2 zjJ1mxsULmwBO8-$ryE)>@+?X_vnQy>?eUV>Tqx;XX7U1a`TI4*3zN`1gfmk2YmI~( zNgnq`E;0+tE}-wDH~={7@jO;3X5lqZaV$pioV56}tX~kl zi*T7|eocA!aanb2*=OrEQM%HO3>zx&j6Ec41Y|a{K(@b=_R!WmryR~!`bf*9+W~M~ z-rBvH_aAG1v_6ci#u}*Y>lFAbCW38J6J!z3)_d z0^aFO{@@OrSdVX*WHtyWNnYzo#w82T)!CYN9w)^3Y3nu>1EWkne`v?Kjyz;&XYA(@ z?DydT-N-IZVNK6)v$6v=X`jJ9z(JRalqv^T)8^AJtMy9u4;=B<@$CMm{{NkcG6A;DfhrX92>8s-P5_v zvwB8eQK->Nyj(iglmV4O$+^Kh(6JAFKC|=QAcKK%e3la()9@-X5-W?26MkqumC+YDAbQRbdHsH!3zx!mWx zOY~?Z;XajoK!c(gYRx70OY}P1=mf(AI@{3haU%EVdF1&&0wGs&dC&Swg&L|8V3P2t z^Y4%0x-Hh~?=u8Q^H5tu4>Q-!C)Xx>j8)CXb55bYYSmJ+JNhQdZ6j$AQL6eL{TPLn zZoSmB^`65b>1c$~uRQ+|U0Hip)M>#Q(@A|CInUhO zubAay5Maap?ZNTVkf~a=hIr$P*(PYu*Jmtz%AIoO;fF|cL9?E*L~SkKifu!A9E>^> z6hU^2uZ&|8<`9z|&Eoz?2QbmLA%k6wnNrlfI9UGc*s-grm zMLT+5D2{WTv;F71o}O?5Y9WuBDQqY^SNBTQ;I2PV8G~0(apI&0^`grLF7}FKz)K4j z*MMU}qdDh%-*u#F9&J8EnjaJqU~m zUOf!9SL*>~-mB%VR9z+mVMCi-fB+Kx8RIop@sgEaQl3WN#77WN68o0d{cw|XKBY@g z8XDJI7T$wHOJ{54LcWkngcf%w8$PG;N{VIdqj|a1y(;PQ0>z?wFSby1O6{Sm{Bk89-!RZblod!n-y-9yn_=4Dn%XMnd|Tgo?tK>uA7&EwW1rh#FiIc zOC}FbsPn{C$r$=R0@t>7ALuD^|as6=B>0;0~TVd zFEwtpaa<%_J@X^(kHDt(?PNh#8V7qCY#Qfw@oJvUFPTS_qQXHHh2qpeg{5E{YZVU5 zM~vPBSkT@W6RpIVU7R*md2}fYK>jsVsA+oqo|g)!KOML1W8m_Lz-74tga|T$b}Dbw z3PnDB??Yli7LTvx#SeSvTV{Mw5%{R(0|FIcGe>$d4!7wENQjK{iD9K(+(lOTC+iJ2 zq$>|l2!l&@gU|8Wgfx?_;yh1@_9Tql5-AkHQGppsol$)r@zok0A%-G)LIeOfqrbXe z&N^y15u}VOa?5uJM1!If91Vy{3GT?CM6rq>;>ZUcBD6hvLe;H{P|3YGk8AEX;Qg?8m>{e5CML$n3(CanB-Oc z{2~zz6`sdG-g9eubfpBr+f&ps20g)kIA3yO)D&em zuhU}X*a3vAh2r1v(Eb-+jThyO95wq@`AN|eLVMQE~7 z+OS$#6xpS)7LWm&cZ{)xMh2o-8$3cDI!7@cR&4Bc$xGe~Ih2Q8FW68bN*}A0Rc(7u zlw-oZudz?@ToU6ql9DY|Vz1cLlZi$De$0})1@*Xr>tINKs)C|#9)u5X)s|^gDG?#k z!0a1TB%hWL(yv7Pq4_U@{cN(T`{DrOpjpgSaj z4vfBu)(z!JVs3XHrAFdQe)RzjxVLH1yrT)NLrh5lp}HD&td&UUda^}lCf|_Y#i)x+ zwx=S1Nf7>`=#0B0@U0gUcXihMGUHROv=9!1zCG_}KF?#}QyBm5v0-5=kkqOkF|e z_MUv&QY$0PwDp~ke{Rct_1f?$U~BAm0h%WwGazm>LfinQQ0{xbX~#{*QOESw;$Xg( zCzD33@HckL^STB?OLF(1S9jI^w_Dqz&->o$qQY-S_ZsvR*f8TYxHu}2I1W)+?uvCk zEk+Q?NVr1X7}|$G^P@5Gelkn!%j^FzvwU=38_httw$hi-7{%^@EKXmb`4LGV!{T|Q z(#!w>!z)VZyMxjampMmjK@fMUk$$5OA0H+bNwO*VH;Yt9lOwgyOk$RGu#_}{p5#3M z6Cg(-`mB9b*khgO^K=sViAH~4h`1o|P@{>~vc9L?Lk*gge6T1D#p!CLCKshJr4OUz$YKRvB^Zx>+Rn*O(#@HYy0avajgLQ)QD8Yp)E(RF8Y%( ze}6*TYoB~0e!&YGzU-c4aNtD#o}P{>RbcA|*8aK;G@PUpsa(g~^M}W&pIm`84t-Ye z(n$OVqnd-LF1U}zn;-zVe`!7Cb^xO_E+1n1Pc9-!L%fVW9(0bCXj)58p(BNxfz&)Y ziz&Hk!|Jn4x)O6mmIyF_iE%&Kz>hDIevZ~aqD0fXRBhQZ#Q$)+Ky(DK-sHOHe@+9C zh!N{i1P7z5%6TKRHBlG0JDMdnEI45gyf80pt=knZ2fm4;GK!{AVVV0mB4{Y_=Lv-b z6Ix5F=b&#L%smAhh`(-TaQ2SEz3BWVx?e3RsY0`?oH?5g4xN_;!-P4?G(BQLu-W{FeFH zXcQdB6vKI=dghZ=q!CG4-tpKK#Lp^yMSO+u{TS|+ZZDdRcF@dnH;3dx(+RpSgUC~$QT)`$97>dVcu*Idgv4Jy91VKAO zH}Ce~m7k|<0b@r!KHw8pC{$^qlY>GfjOVg9!~+u0!dGR&Ta}Dq##|QR`3CI!Q9a75 zKLBYQ-_Xq)wZTB8p4Tb)=l|r&q(OHsk!c^jV^5!9WN7F6n399i&;7>b?TB!D$a5iQ zSdow(p`v98P0(B8$7wrz;_d1u-%P;JE0Zx-6Y`{>xXL&r5UV86gDC{DOa(j56yL-v z6K#yWZGOncs-oF^iGEHzF)EjbgQ|pt<-;`@_XYTj;Q@ocBM6NhrmOOMvk{A+Gqc&@ z151W$y*g_LvDg`DhNF~Ko=v3YI*J`!dnY;&Y>N*cCO#WFa*K2#(?xS=HZ0BI5tS^k zvxj+?u%RSAFZH4=mX@RDK;4qx`x*}&w7qWcSa*)qjbvgV2G*v#R_8}kf#Rp_^N>_1 zQR2G{Le{fy{^YvON!nNjk&yc7(!%Llcae4Y>t?W;3uywa#jcF&D%6}cvQh1(Mm{Im z9()C*!487UhaTct6#|SsKMvW?TS<^sw!n<2(;uDO32^_Ccm2@Jg@PvWmujV4`rVs;Y5a%*T+pV(lFtF#}f;95c)%QYtCzEOi zF;&n+?qeqlG4n{c7|Z05#taf)qqw_hfjt& z@S}jqjZE_}u%&|5d5b@pk(Mx0HIcpS0OEPLC&?Y{8`vH9aEu2PZs-ki&*sLhM<|Xb zl1UXi=dv>~cm?v9dul%>9PMh(HKs=J&-W`q`9r5M^!f9>_vvub&}T8b33A-Oq=);J zP%BpEVer3R&E+7E7fjbtSo3u7BvXdV39=4WC{7IX$*m^ATzrvmvpp8R2b5Rs;mi8z zV28@$Bre;y2xWGUCOz9GuzCp}c z+zZ*@F0x(G)^KD%Fs;F~w!lJV)8;Q8$p^8vY8@~4wX)BLQxgL?Wh8<0p2&2#XO@Wr z5zz{w-O}(if*`$*ffcYsL4!*?n23s z2wkId26ol+AVFk?+vm=!&}L|5go;2xCjI+?Q||(nWjs3Kw23Dm=U#vD9Ud=ZzdSPf zy3l7E?ENV3fru)y`8MY`d1v&$)1#k=7ow$L;$TUcfjW4?Tt-m&C3rucsysswyFQAc z{MP4U0EkJCbOd4eK0%aup357DR9f4azx62!8XI??vj9n0%l{peb86 z>hVnF8ARM?r1A3}^&_m3hfwOdFD`LEzUSR)hW_+F$jP1T!e%wbYkYJmTuy?~Lei98 z#wZ!zCy$~Hk3j|3JFhKEhu<%;VayrWq)st28b0+=CBLWgW|O6}Ayfn5LJOr|s|f)KjUN*9>GIA zY#(g8GOo3BH!}d==8Y!h9V#bJg$AXt0*3T##eqg_(lUe|Y=3S??4EyU#5U&Q$74tZ z#D65`RtxE{o*-#ck=x9u>5z- zab?o30lzs7$e+_Me&Mp)gO4~3vT1Hyw`EY$7zf`CsglZ?$_ZN=6XzD47N0E*ZcsA3 z{jh5DhoSR_eAzXoG4)O=f6UFBE!FItD+8!-$PRwbb3Ue{XBL zO{+2cEbtzn(9&ew=&E=# z5bDRIwbVo__8f&QhL0{xb4^!=Ok3W@Ktz2I*)V>i>iW$dzq7@MX>Y`dPP`(NIp8Z^ zoan^Kdd$V>6zXUkBXk$>Egt`l+v_rDoUho!K)NEeCEr3cnAM1KR%Jean6~CDTG7AQ z3r0N-IgG~}jA1*tbMX$%k@TMch(>OA9-y)dYAO((2C7`tX?8;Eg=_?qnd0-k#>i(e z409spCcbWU^&b@#D(IFswde#Wo+~Y9mtMf9aI)eD3jg^Hu_a>DIdgWwbbhQddnwM| z@jNtM$yEFW-JqMeQaD(vuxBq0IS{!<{W#i~RfM{KED*WS*VvSqNwOFOd}%yj{U41% z9l`B1ms^PRlqb}%zV`zOlG14O(O{K1KUNNhhC^rfw12AHBAnA+Ppz{g%ePMLwff(V z0JP9;G2^+;d^S}`>1Infwe!r;5G42~l&8N}tR&5~J)Ey?-Gq?_t4^?0=kVSKvBDDF zSwd#dYp?NBwIu z$Bt}Hf*@zI#{3%Enw)DOo;Ade&E3}Mt|F%yZ;vHmoc%slpvZ+N4Hk|w85FRvZ2h|^ z0%ti9T&_J4nTQ_1WL4$x>fqIrFguJwJB|t9vHP2dHgph@ab3?dS5o<-+cK%lRd_mg z4x`IdTe)0$S+R;rDW7$&YuUk!87wWud1PE^B!pZ{bz)0^DU)$dqv{evgOnOLr)rn2 z=>x}E-1!~%w?L?udJ!NFh{+VrK1&u+Xe(T>y%HFCwEnMa|0x}5=3*N}6z__D42_(#T7I+e*}-=s0aV^44aRQi zbdtmiDr0sTn8~3t=lhGVUkvamB4}x&$qJWK3dq0=A@)>b&<_6Oglf##0F0rPiC)J+BO!IAPbP0XuSU2b&rDRD>cbew&4XYV;BztkD zPx-Z~16~n6D+e1n#$xBQTC7&S1_z~VyIv&6UJkshs9((oNQ2ON2C3aDJzkkS7R{pUC z9%BQRmMamW|GFj<2U@Tv{#zED*d+1{HPL?I1TTEkkkX&lYj75M2cR{%%0~}Y52SH_ zb}`^W39~Ijm{7O6?aCd^XiMk|7@^yq7!Ad<*E7-<>PGD5lzc?{(FD81ZaOHUjfF!` zpDc~k2fNp&7E4kIx|j(k4+Vfk0h6_7BQ=1dQo%ALXmjh!u^RMGekDjN>VQJ!@eES& zw&g@px#ULM#3x$D{c@=Rp1cJ>qbz3)WfdL9;uP=sKx+?UOd>5hV@-7GFPe4u0wSka zz~6y(ALqMkr~?@J=5FOA)CaK%T}m03aE68`ej#L~+xIIcJBML6H=KBg&&x@dXAhsb%e*XUPT>gC0p)(8$+&RC8DBGX)X)!&y}nJ_2$ zz-*ia1ad}U4U*29%7C%q41acn6U`($9egS3JRLiSCKDsm!DVut8HJIPNX}Ia7eb97 zT&QFzh5TN-sG3PWcvNi3!q~`dH4si(WOd*YJRo~VbwZpcRQO3$$iANyn;7c*K?L*{sYfngPHI@)|Dlw z^_?*+349aj+a?kGG^c~uKBrOvpaqx+cVx55gwH!LtiGDwb|qv^I>V^g9p0RdPZ5n- z+E_25ezvESmlJ*Z!-`>L)nDLaOiBAd6pIULn%Q|Vb`Fg>7=M))s8Nze(U*-lksso# z5#04>2C%QU`F$U8ti=SivXe1P%d1!r0Ik!eayUQe`N~LT%D2bV8fe&{it&x|wc2i29H%gL!Jia~fPc=^mXpq3gH}XZu36*;Rf9xd{UITRDJvpST;jpdX#v5Pbe8nQ< z*-ERwr+v@YYxZLb(%0ZZqE-2i=v)e&^Esq@rBdhE?`JhLn84h{Oy#>elSbJx23vpg z#0@W5&)ivhwWnQ~LbQ-jJ$ssB)6dbDAjE62NPCK5zbhCJ`@BJaxA;vwRxmJ%ik!v! z68%gM_w*hcZr4nR#R~sBsQMN0sMmaDVYXbi&Q@%qP(GnMF z!!*xhunQ8Ge(r~pmAkIdRlBD;LiN_0tCK0oezH1{ZL}s1cN_pG+E0zH%XkD}jB zI-xR;$P01VvSw1?Xm4r8Y^QM+Q?dy?H}Bs>yh|Z#8{GH z`1qEdvjA*w->|(cfred|q`Zr*XtQJ04UJYg(t*zKNl#WGixrv)Y~WyPYGQtk=C}(H zOdX~4!@5yM*qBN_T5(C9PsJ7+*t&A~3I2?RwlO12Frw@w3pq`JZPd0TF4TllDR!6@ zn_gwcQhWlVZHgH@8+uA|G+b#DGUq%yL*hwY0cTprVC3eTtHJ?aZFEuqcD%xmHAkIE z01~}G98Ms;NUp`7luQEX95qq#HBlogz9%K-ZMP;7VG*oTrlYrv8bD0S0%hp?&5*&P> zLPO5?Ij_;@(CY89UiKhswtRFMgoq!Z{Rj?ba{xX8|0KZV)>r&hq2bW@{xJ@T(+K(y z00s$C`Y(el;Snw`S(1`fDpgx1GBl{5j1YSh;gpP_Qp$O6z`tD&6Swi$b~pAsw!@bZ zu^Kp9aTqNEX~MopRfN+4zm30~#FuJ*H?~HsaWZg2p;&nBCGSD2J9u`=rz}|Ys2_G* zWU#9QBP+shuhXND?yIPC=H&OGXGDy@><3dHpkwit#ac8vv$R9{Q;pyoD{s-wx88Yk)t~>ShXYp5CqxB*OGr)h+X>6jg!hC{-I$P7G6L|@ zBZL(x)_lfoav4L_e@^VV(I-ezFj&saJ=Z9VNF2R^KOOm9*wtT`VXF&SwUVDGVO5;2 z3+K=e2@V=VO`_D2;93xa@cW;9Q*iUmo<48Nz3-#Ca1`O|-wQ;` zfn`!_7M^W)JaFNU1iKgA5f7vwKtp{Fl^?ZF9(js@P6MP%+w7BTwvwJ{u(c<6*l|35n!~C8jJoor@z1_5-ftKeZja%1gqK}d{S=<)JY)f` za+%T4sAQItfh40i3=w!=RsSvcvf3Nd>9oM(oSu)Q7SvaPUFe8a*U- z!dXo=WsGk~yW@Fc{N?#1pjZZbwe;M06U}|sK=rTs#F5*9tanO0Ct|-gA~D0UQcU2; z0pLyaUHPKB1rOjLKi2EIliUhAx2XwNAu~yX!?c0(>uXsU@n(@Ndnjs|e-t!|Ka8dg zWJ0?mGuZw?agcR$v51tQE6Md-d&Gf}nhxm1#`Cjl2gD4rW(8tJeMnwJf7uc~v+g2f zdA*bM0Lpc|w6>PT)JcdVXmg?x5)MyfbO8J%|JP-)SBGDPk2Wz>`w9?Ep0e&k7*{0X ztPzq_!jo>xe017J#$Pts@xgt(RS<`7^xb}?&Z@f9m4(G}4|P=#Z-lnc`y^Q1rX+V_ z%Qym7au$&UH#7r?D7L)*AS_{&n~Q%M6S)CfMZ?1mofO^0EJ~Tx%&7ZAcGFWCpE_hk;p_isui;c49t_l=&4MPLPao>E02+>$nQJWH zTVykWRSNyT+z*|%fhl7LOl^_JOq}(YK@9z@8fP$t6+`AI9PFhbK+#>wUQSNmA%zab z_l-~gX$)!<#9Cf!S^R`Og*V5d%rd`&n|oXdvlVhw#NZ*xZ6>u#-+>~kxY$<`dk<}Dv!O;mZk$oQ!sQ5N?CM%}w z`$~se(^}6lD&);-l`OgJ(g;zIdraXBNj7of_ida&$RYiw=o%d4Dh za>M!EEBJKUbg)dptHFFhPyC5B(83E!zhScpI$kiRD-M zMbGj5b{vgjEt#x(>6Wq7VGV~d_m3NMTAt|jTia3K_vrkg^63|``Dq@35z?^m8D0(5FzUSPFc;xmM6co zK#$TxJ!iYoqH#enoq4o8lSkq{9u>;X@oYJMpxB#K_Hvf~is`)f&!>mtTTCDre^80Q zRelYgd~mbv3T_R(fP7J5i69NXm$oJh_=&JY2gr6>6ufI}Gn+dJ+py%+@Hr&*lzeA=2$vrq9mJ~ap-c*qp& z!u$bMnc%L3MrFGLCd;}W4wHt1J?5p3<77sD_|Ys**5DHTeu7yqvteac9L_+w(A{!`DjQ)w2ap zoYlhFS#$#ROnx^hVZ6kL9n;~G8$P-u<-p*;CMAPOR+Q#)C6*tRZ!j)9I{q>|mJ-H) zD@1F`?Y5f#JfeKbwA88E_(dVS1K;HX;N&(xPu!1H?qzn*$z@LNyJ<(J4g-Mc8zT^d zTToD81-ynbnt9okHA8;CC4beg=Rxwa`%5V6Q|R{%5Ihhz+xS_m&m8_aJS925qsPf0 zzl@VgAFxc7-~A_YqXVSkajNWS%^xRNiRtFQE|DF*aKN{%xc^;oT4=h^$m{K5Ax-28PtlX)LAtUgHnH^8ay zj_>A<%9_P`non4$6{T-sOoSGqRcl5HLcPdO7y7j94l`{1n!R?i!wmwzTCB&)hu7QJ zPt3t){$K(33g1!snvd3Ts%3BCUcNzxbADvckOyT3>?Y{CE70^*8dsw?qa%x)w9Eb5 z15*KxYz%=8sePl}Spl^e%TF=ogRDDI-W35fxO?-ljyKApVN4rD` zNC~D>{APAyFbMJpmqBgRryz}3KrQ^!-+5(RaEr=SFn%q5$vyjy6eb4}GnT&YqUeqZ zB{)8RJq(P3Z?0#^h`dZ@(yPo}J;+NFA%WV9lgZ$x=jb z=kM>`vnN|0Cyk4yvoh?|C}eE#Tk4V42r^gk0jJZe(pjx8V2I@IGYaDOC%vG>qQ6HX z^ne8>5$V>f<6Wweyd{#B?pf^sOtXwqT7MqgEZyq zDu*`;vQQT5;3hkKd>Qg&?4xuhcKpRO^6ij5tWve(WzQRf5dPN~Y*-eexd-3R>8)Ed zQ^7Eqjs|h!**yCYc1|pFFDJI8W>c(!ZwU*q}F zzX9WklIKvbDchL5&|(QGOu;6lT!qkU!EpYf8fEEr(UOkVW(M{iER8KId|4f#H3(!{ zhbKGAr7S*2v-o^|k#BC6@QOO-p9m2)%aEqIXPtsz}&uHad7Imf7JT-tz`xLxfrpHE&Aa`;CMgLbo3Dx!=bnp@;S8?X;U(7|u zB01sF&A0_B(G#CZj3g8-Ao+ea-Z-enQA)YOH!X|`dLl!^sX8@ z=*P7^LTP)u{of(pIRDdBQPh+vKia=_qLxN%SA$DuYku>?qQKl!!J>}p?k4&3ZVgqB z&r}PwyN#4oZlUMC2qVi6>hKB*Q`tDbaxD$(fOS9>#lvpH&_8h)164umkwd0@x3#K= zX1Mkr<)`wp6HHyR1F9y^^w01u3;gGf=V#$pPXz~uB$x(hOp3{`tJ%uMZ@aVQo=*21 zoUoTAu;5Xs@I`C;Gp(TqC0E}p0V9_O+ip$w z8Kb0d>COhRg=^c1aH-I@b>zQbzZ*wfK0C+%`P2Us_T~XKXaE2BDsI;g{BDB%IUm6T;<3>fLh@yQ{Ny|+tSG%-tm#+5GzAxYBIj_vj=l9Rg zAMdwuU$65z=eazd>p5pPzpcfnt8%)h*gDITS0uTY{&X16SSbD6tH=60^X;Wu@&L-0 z=k}TaSRe(Qzr-Ha=PLi*Z@sNHw*gpg{i68VG-y@^+%rj3;^asBz>^#=I1YQw z4es02@O$}b?uekb?Ag&iwg#&EMZVK`G8_^xg1Gi|c4O7(HkAwV$4!Or#vDs%2vMn=Q)1pE`;zT8iDtOft& zp|W<%P2{_YC}XMj_;gA6@iqfVN9sXs>GO$(yF#2qM0}^d44cjl6+YE>GdnjhFRPs8 zF@3ofidlZU&v|N%@gRF+uRK4u9K`<{w3f2+&0m2tjLwo86i8K=%Aa?cep>}6u+4K8 zyxZFSuigt_%pQvUI>LEh=f|iUhIK)0E;|ZJBKWAc@n9f^$WqL1&n?Rc*WQ!AhbsJ9 zs5)8wLtH9Ia@m>REhNr0jTN-)xVUEvNTjFbuJ$2lt1%6p9r;xK%j81I08wuWKrXTr zbr?XQFdS5edx52>Ig%@;Tt?YVxN` zxWYiZAI+$$^3-^j2zf?@mGUB2Doz3z;=8TjaLnR03u>+tg6F!!+8pPrpKMtp()FY3 z=YXGH++9yysh@Rwr}x1>-)M4vve__}BxJTF;?aA-+#h-3=tXG5;pye4gS{iHcaT zyNnQ=n~1QqP7EB$=~=1%ax2ukNHBIQ z8|>;-LgVi<+$UwC6hD35sujYb-fLv+(u70x)@kWv$bjyMO1dIUNX(q zVtV!b6&QvOw3fqJyaRdz@R2$A_?F2JJ2aGN9(&kQg|q`|*{==C#ZPIZ;Z2f4xNV2X z8g0F-&=&7U2r(O;Dm>cth>tdJ5vs$>D5tjy7b=M}P32CxBE0pP)v1?fqA%9uuJ@7%emWETb@r_N?<;W>b{$7y z^tG)b>>yL(IgG}!vl%U;_#tTBDmyKp^!-a zeUVdq&6QWt1#dPoSc)t@gsobD=Zt~W67a?QZ{Uk3?BCg!Z792nZhZRw+{cJK5#FvH z=n+S~k|`^67YX$kIYuLT={NhOETN4e`R7IA0!QL|{<`9#i+oKZbh-sWtiLt;Rp`Js zcS{@YQFo#6{#6r{esUh}c#Kn-0o){@QJ)qc5FIUEC`2yjXXq8Tz}G(#Is+gSh>0hu zhWq%Uy&@+9l%>mg8fD(;ZS}{}(~HRy@exfANzcpRU61A{FqodemEE3nR&l*C2{CX(EfGKTw#QxBzva0LUD zca-y3UGO}R_`52W!UWV@O)ylQTwjH%z3?M~pOT^wM)@Y?Y#hpKR1rqut639d_s4&z z;eIvApxhBIMTokbZayB+d~_Htt+i1>GxxxRwZcRhEhOdkq=SoA|8Jouy`H#OzY6`P zt6_wDR)p{dDPsCv_&dI?>+snR)Ao@Qa2I5((&=5DhBa$CAMVff!rx_1YKSN5e7gB#kewWg=MMHrj~M5VR^wfr z0x=TCpGmfn369Y!2T-9EgvYsbb1^e_t+E5et$Z6W`{uZ9j&L9AxUArLT9k*S4TBAV zAQttiQk5RP-IpkwPjCL#Z8P&i5qOn}Ga$rtpH}D`(e*qr z+iKJU?tVN1YT*`*PLmhHy(q-=fE5#TmME7s+&4qZy~n)-4`)UvxuI*TIrbX%K^#;mP3hQtWmZ-Rw42{H<&nRydMktJrgo!{!Lis^~=F zeo5!NtYwqGHqpjoCA2DbEg7tK08!@b#q1J#G@(l>njmm&j*=%7{V77b^$cbMtn4i2 z7yU1Omuus^jFmv&6QO^2<#rc*d%o%?9)ivwM|s+h?)n zU7f1GPCJ9j2m{*D5BtIV8Lh7axb#<{)^N$TjdSXu5lU}z62_qT$?&7n? zS;zt`VZ;IeAw~R~>sqsmdUfI-RUkttpZrCPA@t-hBVx07B?oeD*rpW=&rbn0HjsSY zfWQ_+gAoff^P+%^XUi{(vZ(Gf_m`VQn-6zk&8F`hpeTU0a$EpKX-rqzW8Dna?+O}F zY&F8!491?dt((N z5I~cS!S+SgGRYpBwNjt7Zr=oJ%pxbJ&KEKXj|~8;jF}U$O7t6{kq}dt@3oRO(p7KS1M2|h@6naqG`fIN$runaqLao(8_z- zinGbUQU1k;90QbNfK(kmz7f9%N&o)XZnPa#Pn0C&j|dl#?lw1f*PBbRtG}!Z21o$q zjleBlMDSgWMV5ph;E6Ml-79;eEc1;)`5UJ#A5ktq2V*1_LOKyxcuuNZ%zkaK8FROJ0KYJC5+EI^U(RAH8$Q zHf=8Rxj1m5p1_=l>dUFQmTM@=bHLTdmu~vqKoP79jgwLBr$0%Vb9k9=7t^k%N+ znnxmnt$JMTfwClWKw!@M!81znXn0@0BCERSTcn@WV~|t}Trwmm){1jHRMjH&q%~-b z*ghoTJu5^~I>;z8Bj$B_Md}9}TMc)0zNwpa)oxq`?`L7LBCbHd@AIjMHNnXQIvHt zXyK8tmtvnq)~*umsE3~)K3T(>>@NZ$TyuOCDsJ>yZ6P}rUXM6~g?TW=6>d+myOM6M z#q29&@nj8;!zbTxJ!?_>)j!_|1KG<0CDQ(~Ua9LNaPaklAGBZmg_jBeI?!4J>z9NB z7-4CbUBgamw}6h8VWz}*qNHG=TPX6@o)3SgeH*07iq zF=3t-qz?kQ(}G&sG5tF4h|y9luo*^0@q*IEr=a@u9DJ%4$^yFELnx;+^$;|vvHk>& z&!My>4lvfZs<9&}0s+~2%}XkQ{ zGP?4+7v^45Jh!sNwTBH>s?E=>oSze%V)sfHM=wmLQu2hoD9gb;;)gLNnAwIcpf^N~ zRgTlpQ?xoWp!l|_t8iBh^~kr14P~GgMjwS~^PO?Uzk5ou7ybt4-tfT*y+P+%-e+yv z!`4h?+Hk?gt(kuUdQ#XeJ^XNp#RcyRzvM;p(ci+q9*OA*^p=52T@f;QYl^Y}?x>;$|fF6oRemlHxA`~Ugus8hPRL##w_ zXg?+I5jRMCVXVI~^tYLrBtvoyuMeAxz}xa;x+TJdLE7-*{Tp>0R5sToUe z@{Wh67WVh%-%Gu0L^cp=;-ockGD!_Wg_v$!8 zh7mrG{`sgv1O`zjskz716CB!88q^ib)kD9QXbxsrN*qf2!Ea{G(cGuH$fJ6KFJ<*!6)Re`LQ+pg_Rv*;=V&j$(R>*vq*$aT-?! zPr@utFr&#?;NEtk$UISzVeGP_H^{t|b}csZ=GDxgvF;p!n1fy0E{?;fLg+?0$kcYs zAuaNY&`VGCaPHvK&-8=@lRt2?#Sh(;XM$HJq;wPxtvu3ai9BG+W%!kRJ$&dZzyX`w3b@H zDmqwCA<`%neSx3_Jp0O(;*_ZZxZd(7$&z06Sw}E(;bY#eFaat$BNb{Yg&y|A*Ys4? zfbsq~lfdgoOmeM8HS`x6&o_<(00Xra(>D1U0MMsIe|vdb-`~eLk^g$)!;5ooYYTdQ z>IwBwS4kLvXBi=+W4>xUmiHI?``kA)D?vw=vz6K0mC+ZOUIs-M;GtEh7Y(j^n3#td z>S-K5r^NOTXodlgW`&O>>PLT)1O$FenRGnlhynRPJ-BP0^d=2EH*YqnVU=s^mc5Talq zxn-WG$nXW!Qq#T$i&1n?>NV*tQeVr_K_YYu_rx=v3_Yr{a|`B%32odX3L|drHJR~g z1~*;GSr>Bd5aW_ zHW0BzaZYn22Jyg)9N}*mq4H%v#dDp6#N@}hxZ93CO&}HU$0(3o+2{R{SDUnkUEzMc zEtN8f#r5WWU=I@g2%-l^l&c9Fd@uoV3)sOZcT?Ew60f+_i|$A@#-$5;IW`3p|O67Cbq$n%Pq z*?XgRkL)JgWKFn`iHuxVyXlX-?Pt#~l^byZ(=B0M*L|@?1FP`hcKprJh7qUFXMN^% zVC*O{%2bl#joN;kTVcflx>EP~qae^%ar9ADms{Z2m7T1zoVBKrCqQf4DdBLl8Ne{^ zaVEM_=XwYOv-3;)XM}03F@6y`#={^m5gAygyJEGqOdRMUsy_GD*nQSzdWxAwRzXrH z5TzgUm;Ve+OjpB3 zf)C$DI=Bt%()5=IMTYQ{Ji0SYzB=*Z+!rBUJC{F313=^m;xM^1e~9c7`r|1AF%k^h zmh$PsJ-2$vPyI{|^10ihN*UH}kRIR$VSQ$$G8?iFMinS);B1W5jg+DMNHh|aeWhj% z>-lUB#rl+njU_oD+)sT#Ttt`8W|u%fbF3e+yI+^Nkf?a$iqZ=-88ZBeafg%)Fw&^O zfoTFNlwh%gT@3%((tW4uB9_<1OlS?TCo`~sk`XJxxZ*6+o4mQe_Bc{)7CtbEINm*F zQ6(QDtE?53pVV?>xCsU+`3>tWK1`T6uuUTJ?6gJ=56ibKRc!U%&4A#c+)Ee%t8tWd zVB5jS&k9F|4eXaz-Zg=px(DsZFW6yDA1`c3`|K>imWC8j{Od3-uqdJQq7+QQ4Ab?+ z7w?asr+g_HKvvzB3YXvCACM0RZv}=$Ko%pkX>|!QJ}V;D=A95_Js`zoG5vbVM%L2F zBS(?wDpl^?v!&p(41_B9UTT6kHMp!h$t{%Y0P}k3c}kS^RRNDndIZ~H++qi&9MGja zCy-kJvwC;&SNNbXZdhPNDTK)G6yNq*N0i6nT~iH@(VdDv;8$7Pe8M<3QrKmaeUB>$ zllFZbHue(Eh(-p7L{(NAcC?Z%0ojZif6KnG^yJ8eTB)@gm$#omW02T7bknWJbL@SpI9+z-HtQU;Yo@?)-KEVG2! zL{p9PG*(b+0zc;*X1hMgb}XcicQUpILQt5IP$7+m+6wArxQ?EtUmf+{{X27{E|1 zAGpDwKhoj{F^qt06PvcHJ)&8G6%dF}#fYspmaJIRyO1sM9+FZ`L5}*n*Ge#`Ayx zUNRNa`}a-v;;c1+Z(bn|1g-L&?)9Y@0`_cnULD_tSOQK3X$Tb|+pkfxI<)s2$dcDr zH-o&5Q!sKRx&ana3t#Mx=Jf;f$X_-AtN;1MyL`UUFZB|uOg_B!Bo-EDEG+FLPV2!} zOAZj3FI#|r?2A+wEsQJ??I^C{3GEF+tC?v)KVm9rVIi!%1Bf4E#W7MlDN3wr1?-KL zkSE=)#kW^#$MVY86~yr^A>_sY#BD{fF~)%m4FhqE@rq~b|qxDuoz^paBVS>k}9$E$ybRsHu}nT<;c%b6YU zT**eLIuZsLHxBfIP-JFZCx3kn+_5*paEotzAS%<*YOh2q5<+2hDXJxh7evVUk^`sp zKZ9>s0_!42%YYUj48RQ-+y`&tAS@xZ!g?qM9Eik=Re{_TfPoQKCG(IcC)8TtU(|c8 z?1|3dhpPZYQLqaY3E0dtH>!rlwU7RHHRyH+f=Dat{b6o2I+mAFmGyw@+q0tFj+}BP z$%B}Nr$bLqsO3Pw?9(U>Iv>?e$}<^J$f^K5XbPa$XS`u?-I-W%@C6f~KQkjWJglxc zBYWbaV#0rCTMasSaoQIB+5*fm1DP>uf$6Zw&$1?4;$bP@UI7WmvPoSe1?HG`46l53 zoFWnYX9oN&paKO124n>@L<{}a-$T%Uou5H0iNyym7}4$&W{MNJ z!bd3Dvf^wr7UGfpijq$t*W_zL88a}!^L^lCNM1Y!@@|e>F+pfxxQFxS?IC3M%vNN` zsNjMa9bJY13~BaAfa&?vVbx+RW)d^!?f~76;KQK~Tp{^Vf>8NuYYaap8ZsYHm#2yt z0)j3&!a{Nj2lpq@JY!(_bk+c{ZxJ=o3<<_c(vu2A?D(Ma0=Q5?>M~gvYP^P)jD)3f zB}g5-;X}eQe%odXrVA0V%aNSr0MLR8@jH4DODOz*7upPQ&=!dUsvY^o2onsMMGfP} z!b3F{fY-ZjE{X(>q4D@c=HJ)`{GX4Z|KR)&zli^xbrX{T|9x>e`0s=ujseNP@5Ts1 z{+%pPkbhtNfKT07%rUqs?EhzA%c%;yx&vfooM5ESk`YQJ8FmXLg4Uz4S)^Q$pZPwO z#$j@e5lZC3t-?Wb1BL-bWLjdeV56%U5cB7cBBr811#p$*g+a1Gx%-_4?SK8bw{^>-b#M0#)`H01>%6PF}CPL3#JC+s!|+0)b5OwyJs^D9*-3QK9ZsI zU;bJ)fIeyZ1ER8>43L}?c4V?Y9m#QmAV@T27HcWdMaE`6Z6iIPGEgKQgubg>L#&4+ z5m=Lm-vNW<7Y>loiFpY|n5S!!eh3Hof970o6|AtU(ktn1_n3w3ntf%3lLOBbk zMOm-iRDn8`n@HWfmI2SJ936(Mu7zHCn!wMbc96QJS%4<@2_|Q=8@HP*>R`M+>U{uP zbqTcavKF#{tfizvM?oUIe9RgsP&K`^cdhSe0BRolM|m4T-;5RjL4#U zx=tl>NC*#^^?y1ywzF4HgJ>N82KFT+Ac~;MFMmsnl4%Fc+j<&s0}e7b{iM&eh@_Wb zA$p47#Hn}RUc`CO(?uxkmInu3y%T7o*GQtpB5qehAZXlOO))v8K|~Ix!S7jmh;55V zSP7kOP!nVAPysPh|C$89|BLNH;Kf0P|7P~%N^6i_mU;H!;TMWG{`jG#O}0{ zqO2XreU2Ow2bgT@Ug_lsmraBG;Pd#1#&q<6`y(zm+w^rFZ_tMxAwO=>C|c&$_vIl$ zRsRgG=HQVq#Mc0CRpU|(E^Gzc+9`efETbk%@8kg zl4Ke5SLL2;0S600DxrPSkz;Kn5Vw;`BItlTJZt2YjBV`=s_M!BkcU4-xDS-E8(d18 zC*R&p?c=y)|5a-Xm7Wa9l>bxMUkP(Hx|>Ych#LRin+MW?UL`$^-OaJ!nEEVZ#Db^@ zR&~jR7r>8pWXfoFGxAz<1IEk=PKpO`_b3?&lZ6bsbEqRh&gNHjUY5=*z{BpZB%pkE zdeEfr=jns*QY1+808cJ9KF~ICBTVc+e$&~>ee6!;jm>()2!)-}@cA(EGdps-MEn*q zfFgf-g5`fcISamjgbW5CJM^ufaRFvF)N)4~;WYGu^0e|p)fZ%neLn%YoereEn zSe!P6$E{m{sT}La`It=spZNPX&?|bwU=k~LxWaJdkhG_zoI!yzE0eT!uRw4TxZ>yC zxBtM=psB{g2&iiSL|BdVP}2<|M1&QGpn1-Qqe(5!gVgOh)Z!Em!5+6CQX5eND6O<2 z;XJvP@6iMdnfY_#CZ2BqIdG7Sn-n;R2<6(z&`=Tyo0;)`xB>G~)gTIHAkrW+oEC4< z5;}Awf_EowTwOtax|)oaB%7gq0o-n*hkCwrm+TAsG?D3qmREfIA0b;96j9I)Z;HX2 zrO?n6#MQ!IU3@(XeRbCxS}w3#_KOB2_I^UHIDC3B;QIhys~ZREC9Of!^A_XxC>;46HC zJd%?L;d=LdcDeryYMqKhH0DJZ!@EKUe*YfQW_h}F+&nw|HO@qpr>K2|(gtB=BNm`~ zyeR|fAVE(H#x6182g2a%&Mya0>W?;n6Jyj}Sg@h#sVb@e!rYP{scvc?rgv^FNJDU# zW{s7NzdoNd)*Yce7~jMcOlTJhA-JKt#fpd?YAO1N5($u4@Tk#B5A`rV4lGh+Az-# z$ldzgA7u-5C!gAhJl;0d3m|Y47Bkhe!XTOa#P<}+RNBzwS)cqT-{u`^3l1!|coo{_ zoeKN&iFMdDh+saca_WmS1aEA&KvyP|q*7$v1VC$_SmD&BCwmDi^KlTXSnr|xc}f!nj>aEjQxy8*le5CTKt zQ!yBqtx5edcoo8Zrnp3M;A(AwT2TR25TN23X76Y|#Od*Gf)K@nUj)SQdHTHTepsc1 zzp|MA>eJz?%mSjjFa>M2Q1^siR2eljB0sa4L`HGYV_Op+{|czQK;lXBy*H)pgG*QO zVVH6l1^P>1MvITCfeT!D=Nko5myA1;P5J_}LP0s$0!)%QclRN(qoVQ-6ipzv?bE#Q z02KakzPkS4K5(2=S9!Y@L`b2l_KE%o^nK*{?<^tT!4Q}UvaH2R)Rd*u@M34r?uO!$*9~3VK9zuu#ss#Kz$hI8@QA|V)fF}Cy51Q|Sqm4N;HhJqUSOsiChuKSNtd=bpU=jAU!QhFNF8dP0K?8%?=JrF-GmX!w=i zlOGh$<~{}rxB#a(S0&Mpv)RX&(=N1e*Sq=*sBe*}b9}BS+>P#Bc2)s?p7ZeuEDZOA zQANmj&95dh*;*X(yVN4}!4V&y4d?rssww_t%A9Qcu_?{&N!kfNo2sjqq~eg2F@c4O z6YT!Vz2*AX$urEnk_&X6qvN+Jo}v^4S7AJgI9N`zH=Ns5*FPoStB%FN8 z^YCzQ&kFtl)a?ct1|pkuiHfaWxqrQG_F7nYb=4FCTg~bJohF^eh2F)JtlYK%y^pOjY#{zve(-ag|C`t&^*Gp zDT;r#r@EKDKfZx*5>K31V)F@0ZE%XcJ)zO>*pO{y7sj3WvZ3Rfe}hlcyehl*%Lc!? zL$Zm(aGeu4MsV5}nd{MP&;!~?%u2F7j}8OJ^`})sPP%)Bm1VB>s2#7^K`!kQxwIA? zdx*hiD4qda6Xxv8%$rj}DI1f+);m&H_b$$w%!Kxc`MSI6LPNu>Ez{)U$P!=M%Wes3 zlFm%7b?V0Cd{?U-NVE9NI2Z;tkS|eKg*F_Od9!^S{!X7$WUH;upzdkXn-IgbY1VF100euJ zt-tALP-#K5dCBD(v#;M=uWBlt~)r?+&Noj-iHe|+?$bRd#L9wrYH6(^g`z} zD~|lUTu=>9X^~nn?bY+ildF8{b4o0Xo4{N#8c1QV0(!lP@uTYwXvNGOWU8&pNHX-) z98PS=rrU4em2d$3NTryND@wq2fT|JH6tF+(Xx`D`UdqD$kUH!6Qy~R{lLuv`b>{4u zp4+X?KF&@6$Beae@p&m)Z4I0x@h#PPt|KwUd3CY=t4ot7nZ1TFd$_o<^mHsG@6L#MU)A{j9DD3w^x@;|2-}Xr zpZUMG==nW9FJm>8yVv~lEeqq2X>X^TzY4NGbm*ucijn1%j=p>#X3vTZoqI#BmY7hc zf`mjxKeS|a?PIrH7-?K5QaZjqrx?ozz9t$@0BMmkZG-XvJ$YV1O-!_<$obWo*Gk^w z(o;j3?=S7+w{qRvAA?JB<79$+TV@PD!$MudGrY|C)xsmLVu+s8q?2{ZRA;~VaDjfB zr{C2zW3{vaJq?%^D;E1fKW4;XHz<|(&I)KZ8!D#+w1d< z6Lz+1d1cKlzZNvt}cm9mkl9LIm%fAG!hRIG|1O>CP&%X~j2WKa1g zw{Wf{Q?Ds6=dUem*6ttgS7du(IF(GUZFD$p+C>GF=rLo zuy{|}FhFCtfWd^RqZG&3OlJGETEMK@o?p(Xr%P4mzQjz&*Dw+EO9*kYx^Ff0{8WFv zZfek}(^Gpmqbbi*?yyT8O;(zcQ?U@lU6_BkFyF%Xg*Kl^$y;D0^4eb0L4h=Jn`~G9 z`3xK}8`vH#RnL&-p5FvN936v{5B&de4op=`o@bC9stGDUXOpCh0aa3o^&{xlR_VZF zr+1R;>T~I90vCnQEU3?jg*JKQQALn#nMWO%+!$!WWuL~$>%~f4;J{FQh9JBllF@%f zopiy#F+~XkN}Hei3~JkrOef9EWejUcS5?OQVY>q1R{=JD2wNAVwyfWCG>7-Gfeyj< zW@rg95`_GbPP_!0RcOxiN3Hu>lB}{m8#6&yvlLfc`11YJVX4@&lV6TLKs_e#ZCwN20%p(1UaVnA+b&KEX3j9h zJ)SZj?FwR}gvBJGz_(V0AEP{^Bt?Bg#}UZwE_61$+h|5q{=0 ze#S0mBJL#21=?w)$7+D4u3MREL)why}+EvAotHEhhng;|QXB5*3lcSsyyNCk#y`7+)`Cecr38 z!9&d0qm1M?9C}rcb*-Ft)O&N6vFwe=%sA?Y<;%DWEqbi^P>5_W0^I0_+^o3`6K4?S<|-GndXHSP(qqql8<}%QP+r zF(|}*xHR+SM8WuI@rbnc^+E_5vp}Q^U}>^!vQq$KLR8l=dxEuQ>SOgKM_p*9bNF0U zpMi-4q8PLX4M*PsbPRsl)C1?wU!CT4=-C15D%9WRd`1*0>I~N8>hZ$p>VbVNHeuX` z1P_(d^6<O=ka$D@=CAa!*Fr%C1S)Uabi=gDz?cmI0Ywd}lURmJV`5b=};SHrQyDh+q zzXV}_5fO}wiNU$m?sIQJN+g|=6HUZ7e1K;Z%G>crE}&a&h{?Zo+b%`QA|a(rb=@-Q`D`0C!eD|$bO51<@5Y}kez>FN8 z>WKS-YSICLa~4aJmI~60Nh=hDeLmIN?Qo{FYO}AenC@*NNgULGc8zS@Fu`tU)VIy; zOHKaHH{K}BQ)*PbIs=jm*tHBI)l{jT{X9z8im9yh=^NilTV`4P`v?Jg6fE7xHVvq! zi7#gvdszx}Xsv~~tFwb+@NaVSr2XQ3A*@y7*se%ActPDnPgo?#_azMt)Y zAdu2~w@r9M2PGuPR~JpYd_4723_7}*P{ryscnH?2i3Du}hr+fl&drGfwmHH-YAvdv z8{Xg@d^`0^TU&#Gd?*;7oQ*T-+-)+%_?Pe6IElB^bG-Mr3`&-Ju(m)Cfzo(Cv+z^zqyzMSgbNoxg+h4qsWr$bEltq@8D>;Skf_U_mH z40aQLMg{4Bbdm&8j^TIGt6mMC(sg7lL1XaVYJveob|7}qO>}E`lIZBup`T^ppNmQ2 zf2lW?#`sa)!+$yn+Ivm=n!I6|s!hNSz*UHfF$+7|yNq{V$~qgyJ!H?fvpECw!N=Xz zKy(Q!8eZ4=+3N&6itkz^lB{DVX>KpZe__L7JAp}VkD`PVzBhYe&FbL3(28zpn5WEV z$@3o8V$L>!iWNItUc(SD_>MssS;aLR75fot4Fycv>=cu7{%SA5=ms@9_VdE))sVPV zK#SuXM=-nX{RgbmaRNECmco(C@5LbY|fo(@P`v0L|z3@+JI;vNc#4x2sP`OBV4j~ zBXE(#9`>x_%UPc#*}x2rpvvLlZ(#i(oJv$&&Io^{HJpO%Il~N#%Mk!nKj~slz54?$ z02D-$#4O%ENxUF!`QGvVOZEj)20DC%xE+&g*!hX@)BYDRlJKbmRO#p%p76Iprqo{@ zJ3l2z$zNU?93LgT8`>g~Ev0Y7WCva|@iIdAt!73DYSicIqt3JWQ8rf`vx z#r1GQ#D@W?sR`iXDnH^w+?Nq(%_3Z}J2kSG4aO0`JfJMdl$EA(H-F86I{=*RlwJQk zBk};mHb6OcfN*%rSrNeqKmbYxJf$U{w4+<}rI5Mo^T}Vs`W#P=u7nNe$hAL2lU4$f zTePh9vjSSdJWC&Hu;u7KOz2SB0?gQ=|d=A(IlMC|aAU_fT{N8s<7nVN|mc z2)F1n^kneNrYz*n{c&jn1Sn+}?h~bTO_U(o?hI)gBI%&2HV-RpU&~-@&vGz|xC_Ux zWqZh)B~%k2CvAAa&)pSbhD%okSk0luoxj2q9B`sk{xZUDeMn63jp#5J!2K!G-_K|P z)zXn|w}i(gagQri4e;wttzCf`(iYZlD$t>qY;6KD>-dK?tRT>RMYbbWBeLI*x;|EZ zisz`ET1e{Uh1V*v4!X^}RI~49j=ZjqMS(}o+v@hW1j=#03)%_eIA$O^*AE3y3b zLH%t1&Kl7JuN_SkvczT_bYPr~*xbPGC4faT_kA)I+%=Yfm=pq5>rh?ZNqOW(XJhY- z?&2{vH_@gCTX>{|XKKaiL|&g+^=g4wiSbKHl*tKDGV>g*Yhm2WGuQY;n(H&5-*JZR zIpg4(_2UQ23hh=&gB7On`nG6l4S9@gN2V#{89;ap{(Psi z6h6KEaGV&kWLAR%f9iJ9PQY==DYSts5ZpM1={O{XK!%MW$~XlYhahkASGS1T$ZQ!a z2*EAWBO@)eer|DjenGBvosX*Pp{!yryO5E;B|dekuEnbnnyUyuUuY``rbr`x zct;7B$4JD0feGWn&MX#RcIgGiC_uqSVcuuqauDavQh!l&@BCJA>C~vIxAL7M@sO#O zobm_BI=vN!_%Cfi_Ac4~{-9s*V`56Ebi{RM=ZD;5>FtpgMTb+xx8%r3X3ZorcKY~*KapCDFltG`*$>OCK50ocu3)%8V%0}JX#`(D> zppS@bcR{*TxmL!)pq1w6K+=2XC;?c*=RNZa(j&6t{l{7r_F708X;gYXR+H z(>Bn?flFcQ*e~@?EAOCy<3g+??ZsG*> zBc4B~PAP#h8M_`hLdY4GJJ+ zE*|G+Rgv&IEco2x+)QD;H=6N1KGU{@Sc%imbh6h$+A`@dHlZeu8|IzSVO3JdV}W#T z3fLIQkcv|<=bb*FOGMHyP0~fWfc!}Z^-S9~3E3V8aQ@zYd=^cG<)#oez7l)h2;CjH z9!y9%1V(q?@}@{**Hs?x#0^di=wV1?9DzK_5_k#{DO&m`R+ema_}&X}cKt;-(Sz84 z&+a>o_D}~ufv{g2W*rDNJ0Ol64Egm@AFBHZ@w1RK?YU(NR_hp)h+&EnQgD{q5+FvA zz5$T)5Clu~nATIU|4+DAC}{~*+`lOI4Dk4HEZ+J>#pl1Up5hx0-2ud*IXlp7=3x(M zrRFdhot0wwgKwbkE62mJxuRK{ph#oCwB*Z9a3NT;m>CrCm_^Zi{rMU~`EGiFbGKFX zB&?+rw>_1H1g%mnBOUD|2@`+!-uvs<>kd5xFMu8hKu6G9p>(K8Ltf<=AJGAMHOO`b zj^p@~K^_I}r13qHVEKhoUMKj`!JtCUft)JtiefmA+{o_)51FChyl*_d&g?}JNo<0F z4_{_DyB-&%9zr>n4(~m1nf4g4Am-X}a;CVH#Hv7{Yq>i?6_-N!u+xumlnD!mNy_1= zb`<5>tM-q?e`)3;Mus4$gS-Y}wmmZl`v-2=RS#CX_=jqMtvK983NbZQ#FGwxk8}pf zcKlXT*MWA_=iOKNN>D%{4H6>TUSoUCDZ!D>Y?v-zDeM0;neXuhX9SBLdPWmn#8X{0y=o;HIEw9+G(rx`vpK`x`|3blw4Qlz=R5xVMax_dZ~g9*m@+u%IFkJsQw?S;cFFoNK6MbgeDo(UY-GPJQjKjN6DNRQGTT003B zanDfzqIQBeUq{PD-UR`5O4JPPb_?+Ioi>M;D(#QlPN430*J}{pvz$brRJv8LgxYlh z)~Yk$92$UbTkti5tA*x_(*rvTa(WmWN6?qpG-fZ!#_vIu6Yg_iNORx_JDE{nGZafo zAZ$`(BRBy^2R4!eM!=E!uAlzVzk`b?vNcS~8Mf?$epKLOpP7xKWd(@q;o%g75M7u1 z48ym`|B`qJ;v9UDHAtvF1TZXqh_RvJ9kD=^{1sOdPA`wH=7-!VIXU`mF@Ic3xmP=6 z0I<%gLXi@~%x0W>;E~m7Dd!Uagi3Y_C@=y&MQ8Al*H{zvIXXDn1)!iIFnrv9<(@W9 zI8Wjn?aqS89>z8l=*o7g67=2QnGI9-sY59xGV*1KS>&yAMR2P$S_UQ$c=XXZdjr6# z%{rtb#Q4SaCU<$L(twz)APD+60I7#85(B&`z|^0NH_K=D2c08r3C=t(Y8vM9X+;$6 zGE@LYNUuBT;3Auq0o!o469zeth9YJh?{R@OphaJCVPfaU?QoVa)f3`9V(=)|ScUQ! z-oOvADfU7a_!cA^EoCLFAbhQc@O5$<9*7SFco9Yq3Xm{~zJ>!a_}cGy;vy3;6j)9Y z+3B}YApv%89Wp4qgaFqIbNj2)Y0(4t{;_a?@70eKeu+l7ei@6d$Z;H->Vl*9o!J)J z)zd~`{%j7A-!R@J4+f3&?ir#k$|&b@t56u@VXgXC#6!3=z(0azgt06Iyu?B8-OTI+I1cWgW&eX11VaJA5h1@s z3*h-=5Khj6C0op=cHmaKz^~BNY4Wc@JosJC|C+&uf^LQBr>_;u>y!uaKQlWH*)$h$ z-m`$ld+@p4*qLFpr^fKZPcs*gkzEm3{FgA80Nj;J*9U7gc=n$lP04{QV{GVFhEfWW zas`~FG*f`~;P!tK!VVyP;1eMbiKUR(X^SDxCR=x?dV(k|0SI5MDxZn6NN#$dT?7^P zlO$11+Z4lP*EEIanh0JbSPAj&Vo%;5S_Jx&*tIILg&oiS;Ix}D5yU0I?d&HYo|B`M zW2YesXOlUT@dyn@hX1u%fGAl1qj1_au=pkOPQ(1@9I7)q^nt-ZTz=f|eNUQv3MbP7 zi@Vc)z`BXjI`zr$n7izgx6au@fB=JJu`9|nY*8&~*c-Yya}M@LBWB~h@vPxc*qq~x zj=_%tFmpYzXm+I4fx~Win;+wc29GV{*qO8d`XbllKQ0xyyPbXx@UB?!98n54GM-Y@ z9!^J@Bl?e+$F;kkU^oG6dStF_6?cOq11#p$6ywgPh_i28QYI3|N<0^vJQ-q|2L9;V=d z&Wj{=21xgJpo9-xT^~R}?&#r@XCGiX6Rc#ME(^YnN+}~Zg}|nHQIJh5zPJM>8jd?E zOSoo?jsM{s>I5rSZ*d0Iu@lr7=h2OebYQKnwiO~gWK~-Ds{oE8JVS(S~8WOaoe!0%-uR{R7SfJ}KgF3b@X}xBIo56OkbmK<#s2^{-i)_|GPQ{UyjM z7J&+Yy>OxxdIkWp_UPZI0Mu|r==5$RQJb$S`nDL7)iYO{{SfDG{&lFl_a45rZW|IS zpx;Y=x-kNQA~A|S+Vuaqsc`of+YR8d(-DDKq9*r~ZBZJ@l*}3=^moRgfY}fx z^A*DZJrTY}=ElZ3kot)wd7-xl>KOz-cB?XNbwycj|7h|!=Nh!sl8*sFkpIOnBcTP# zfQ|p)Qwk7zO{5iwGJ$nU{;&Q^{`Oaw6MY3<$=1k9wL1G`!AW~6;E2;>jCBC-EA{P( zk$;^_;Fv7v8o|iHHGp*Kt+10l?QVEFAN}#7>w_2@KsxSZ9f}b7G#=fr zhrCX{iFVCj3bQu@g7gI-kHw}Fwn>y!Emj*5O97Opw#UR{FCXFts0cC^!gG`|t+rmN z%X8;Ts(X6-(dSj0d6gTh9hQ6AFYWh>IJC6*{N}yXlfIjIm3V{upXeXuapN7$6^|C! zM-Li3{Ji%rNA6(MKnx!d@xfl1;H5vV1@HIL#4>iQydE@FYLcxK(gN?~aZ)Y$BI*+i z&8RItle_8-h_EE?l5qnFB08Us4XLt2unB6*2)TKW@410^FF6e66623}f9R3KtBviy za1~_O`HK6__6(2)Dn3?)b44rqgcOU`GaVG|EB) zHSR5UA*kBD{TDuGYa16MV49CJO=U+!XrLOZeS!znR-47ZIAp3sd% z5L%c+gvRr+WIwrnp5SP;jF3V=;m-K6p})D?bGHH)m2V&}4!(kYNcH+f1=2)EckK`R zV_vBaeA&T-&q&~znz$N^5^T@5G;B!3l#iw)_%T}aC~X)Pqe;6O`Dq#yAPTG7ME`|k z*d$O}yqE2cf&v>wthWnhZ}g2$$+7fwX{yi+#S&|tY$?2#c{c#TxHewVd^cpH=h2D$ z7vPRhzyI~No96l;C*6bOPGs%0Q#g3U;2-28_CVqCO`D-7?ocVluJ&X!6eR|=AXi*~+fR4k=+G2Y*8l1XL zUfRwH57lb#dZk)RYef|#vDw!xJ0W{X@7&IgMgb{@++w;g3R^KfKJGdcFbuF!2~C6dOxy^%U+D4ndZTSq zMu4rvCmhAVtpqU9L;vcCUQ^i@NSiaC0U?&Rg22>btP8$bTfDv88RUNlToSw?-hYBN zAA<--=31yyCGwpR!YCiT2HCiUs%h{Wu&t5Dr^Is%cgON__Bcp=!ufqZ>GY67XeG=| z@kyk?^-B$SDs){3>v~Vf%fdok-{@z9*aB6Q-_=og2u>ds|F&U6dqTNtub2yvwYP_u z^lz!7ARgPM0kLA>o-RWyP}a^TL<#Mx=}94h93of>X1qP#zlmZE8h)V*6u z8FfMNzw6+HLuw{`alzc(sJI*46?yVjRyj+#m7UeWUS`O~J+Adgym}r|23V`dvFV?D zjD-ADy#H-C=dNXh?T9iPRyN-r+jd4B$VWwI%0qVEpts$fDMw1D;*+91h~2Moci}kM z&?FWu9~__)I!w?X1D9T;Aqm4uJ%bOUa`UggRC)`gpX)~`a?ln0>K~P+qAZHm!$go# zHA}}2?WFWBGy#si5(z1xgrmF>;}SRzHXl?`4AOkap3saROTL@Y%R>?;_ZL8*5$tKY zRlu)(Y@O^g0*IXmUlL!bwn|OG3B8bECimxD#AX0Lfx5Es{vlw5k;q*l8D$F$ zm`QQvj6Fdx1ov0_RoRCoE+ZKF*s$hy!j|tobk<(!y|tG`!fJ~T&W=N7mHd^nvtP_< z7j{g57F~Vib-TSGlg5xDq4o-iU8-1nA&tpUIX$zhIJseN+y(EfRK|)iXuUgzmqP@S z0QU|C`sJ0X?w(P&YAt}=5u%SS``GCE3N$!Yf+LKS22sic2T8Lbz*n0UNYGocKNg3S z$8G=Uyiq8q@hm>Qm(w;2M@aCc-IW7MiUT2z#QVRY>wM0%MzsXI%o}0)0d`-I*}MtP;N4HAT^yBB!z0w z^9-rWYay15OjA1R3JpmxHL@cQy}k35s;Z>^ddOs{%0DSO(HNFAhaqOt5u3+6XPCW? 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_square_negative.png b/dashboard/public/logo/logo_square_negative.png new file mode 100644 index 0000000000000000000000000000000000000000..93735b09b4dcf15de02180e81399defad0cccc44 GIT binary patch literal 80081 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

    C?z zT#zi`o7#Zh<_B5wrb-~a4+e!F7paC6!v&ET*3~#!JB)yujhyeaAbsmrP=WRh{*cMH z8XveN4vTzWHM}R}(D}&Ha!DBBYdO?(^>^D=`TbNfF#8IHuoU#bzV%%Nb60(ys zX50=@b+Z^33XW0eK1xUSBM3Kdw{r{1?5DhXIPtdkM6@Xn;z@{3@fInr6m=ubki6Y` zV$Y%df(T9CQMyRFbJX=zFLNoCN^(&jY`NJ^9}O3}dwFeFWhE7<>~~Xbqx5O!7QW78 zjuBW0N)B=zvB62j8agr}R zi8!J^G}5@~cLbv%uhtk7<|GEpNN!k{aFP36evZA7oLliMhmtgA&1sk9+k!#AGOj(a zU833sIPs?a?d3yjao#izX^-yUziNacF+a`1!un*oau>u399JwE*Cj6)RhbAjqttL+=V@; za#I7ET8*We6Zd9=u>8$uN*uq6G9Zs3fU?msY zK-i#|;{*z00Ot`@g6ymNxv>j$eN;NHZdgF>;YT)xL!C^;@x)SiE>#+Ov?y1wt>=1a zMiv=UY{aZ&H;x%mMF&amm5JI~D~&N!7a5o7b_(89UKs zU1%V}#oVdt`Kc95X^j*F&}QaPD^sTB3_nO0P$Quc5L%>M=8)tv#{*9AX)|ESD*tTf zys9aY?7`gou#I_+Rs|cfW*FnRBt<)oC!i=Z$J6j|ho?acgVi@O2g9^Ff*s>4p>)5HtKeAJo=X_VHXl@XV&Ts}FG8Ky41vyr z=e;t0+R_A4PL~~F=Q#61FJ`|LA$#5QZ&G&x3+K=1%Ru=3rv*}54h3cBfBL3T(NdPM`6`3(IkTE_BeD^^l#pS zn5*k14CsNCi9M{OoEO)XeI4PxF|g&|OBS}+dUC#c6D2`LFjQYdAyGA5xZ4!Ov^u_< za#??B^{`IW5Cf-FwK?Rx5UUO8-aJVBltQ|Bv&*F{l%tS^ICbPclbPpiaMT$kn~EPn zUF`9Np@e@_u{;7d1yK`(Bf4I^gC!HmO4glyNXQCr3@~CbVz{{OgNR_M02;6Qsg=|d z8!M2oG*lpsNGKa|Yyha$5yH2OKYaJ|!3KIYE(Crhgo#3^(%3T*t|k4fcSh*z!|=t_ zzzOy3T<5Xx5Li@YU$ncRruEJ~P0Q>Y3NlU;#M4+TB30#Fvk&Yw7n*C!nc|Q@zDeUw z;L)7Y=cnF+B?2~jPaFe`CHsv4h*sL4mx*voyDUevtqEGFVu z{YkE@uc!kljXm~#8Md=JA6_k8G|ouYR2(pv{k}h1mdfThh7X+5O{H8AUn-O87G(GO zxt}fsVbO=TLx|G9(-v|=D4u$y-UQ|=!(wvqM1NSSIfv#XMxm+B`B2XI6-Ie@O&s%k zd!ZnXLt3jpVa{U!3TK~cHj|=SbKwXw`=x7_M;+_RoOm0gw40JDtF;v=&z^ygQuYNO z12>Eo9K>@}bwl14TOF6PF>V?wIaf*y`#zk%d50;R#3rMz&769GgmV+-4sc5dea5Yw zmtK=8%Cze^%;#Yt?h$s^c)J!*%e^`iMc@ zzJF#5$U_D(CtKMWwC|+u9lwjoRxFthT+#iK`VG^^5y!5D znx)@aF06eG_byWjAPp&a4xG)I6(>cogUMUBnvI?ptVNF9)48RZq31>Q43t5cfqfCq2o03owNP%oqywqbej2Z5}}E48R29~cA^QUrf)f<9dW+ZoNneqDFuc+1ZQ zza7BUF|K;)0+kJc3T{&t%@pIY%f~8$Pt^i=sQ4Tkd=+4t7m3ZajIUx=VY(G_;-k-{ zK9rX@^|`VHgN8iS2Q&NWKCJ6>KbV+DYk?tj@4)sHKHX96nL(@t?A)nqv3^y57V;~{ zTr2@tROU`ET^6_u(xB=>!;48wSIr%$DFqq8T#u4r)?crrSjHg zrs{XxdH3;wS3o?I7bO(Yi99p6z!))vSlV1Z>c>@7pW${v@i0K+ytRc`Roy}%7R<=Q z+IWGfc@|i+4{}9;u70>!uLr7Q)78A#LePwYVxcaxa^-~kO!}MqN3$nLzg6IQ4G!B7 z4-3;_g!FfvInXnEvJ&C&Cts18TlfS!zBi=bm^Z@*#1eTV*jdIrEXEk8KMGcL<{eD%*Q%f7 zs1-6WqTmJR{`Guv+tf1|1xB{eTQ{z^w#0{?t$a^YYA6BJQ(LUAEqg`VrO?!xTXDfV z!?a#ww7s%Tq|ZK1T{bDQ<41>7f4%#;-x{gARY*tcy*uCWTeGJ3FFtW&ylV8u8?Q_( z?%H;xWOzmRY_G$A9Po23I6tx9l~K=7=lf@n+GWN>oZ|7r7P>Av`Q7H~!`S4Hxx^Ny zQd5pwX_se-1JUN9obG{{Be23z;k&BGp_0gps8g$c8_ASGWwJwAf69u0hj9}Qc)xTT ze7E~#1K}%04ZK@yhv0(oFE}Bp?TL96wz(9@%xH$;^cB9i?A37u*plQuFNRd~geWzA zuA=1)JOMhuMaf1-w-wnhe~CyRm6(WK%3XZ&yRDqk3cQ34-XWlq()ie}*$BHK$wC(& z)C?<%qh`WiYWaZ|6+&7G z&Zszw-o^DUHZ4t*enK=k>}(i@N{e2Ap@U6XglNrB=0mLx^kd3#F}+*LYWLM|-fKCN zHzl$--Z%A0)qBROC%n<;B&u`K{G=FBDLQ*@%3cY`>&(u)`fa^`u8Dom49qbB-(&sl z`N`XuWG3KJ$?aF(PxB*l>-73dX@sWjun+mZb;Uu_Ods_BEFVK3&|wB|NC?R<|#@zzbI zGCA(L`#8!bsxIg&eslg+c;!lHp8Zk^K4bdF>diH#unpdgx*l^l(X|$hL!e8=S_M%& zU?=pe9!KCwR3RI{2hTJ>6Vk-mH`Z=ot;Qb5)~`xbA*%;|Y?;NBlH59g4qQvncSNsi0ro zd5Pww-U3HW zM4j55-z_xt5gJ!iqxt->oPU{fJ`D+SZ82j0qLV>YKx6$7zhwj7G)R5h3#)G7xc(EI zeQ;ZD!eTLos>LO`ssjrTeUkR2?rQWuH?RI>#q>0D2KWlzfW7&)v`ePb9wRBr>O$u) z^po*u7wJ#<#5zp=S-6=yuE0x}KLs9ElT|jZ(Hkq1VmO>QuoDiiei0@5;|g%p1Y|%9 z&LYe|wYW2D?aUwjmK#8D8Xjp1=MXesX7XbL%JwyjqL6CHF*@B?Qh3DW_318pi(2nN z7+W#}gg^_o{(TXcA}S>{KP8S4DCX$MAX1kCq|C5%K5LymzI-Zq~nNv%=<=Zm;lhX zi1c3LOFt*MhK%f@d?g%@)1)wzpDjYH(~OLC>F|^Gi=YKF9GT{Wm{0#>A1bsRO7whg zoo~&TRTgDwMppxHPQjFK3{(9KtJ=!>tiZp*>U@W2&e|cMq@4f6oSE@k2sP$c;F`6` z2Dbn|))UTgWTzV7bP;g09}=Y8U78)7MShYWSK{lPP3y&ZIm|C~d>$Xc9^A*FDIEN< zH|qKPWPet|0fELGrx2LNr`G>yC3PitIs`K$$8kKSqJehrJ*Md`e^D`a2oFEuUONw7 zn|B?va?bG9bu9Q#CmbD2a_8mAwR1K`FBxN$h68WQqs%(Ud~?$U^Z>FHs5B?NhZJWA zzixal>f)<#9SL1|M1G{>6cfn};(3#N&p))1VY;>_2*wgTkc<)%Wt0$&Z;ak`al(We zW^ci_DL-Tt+K&05AOaZ<55==i@JPGR;m|SH!G>!(CIV|ej<|C-W>+D z>A>or$j@{P)6`6qbGE_$o_D|_ubW)6%t(2bd;jQAGSQ%@e>z$SXSxni(k88=k@64m z{&V04RRtoLE$=4Lrpw#?ZdqE#STuCAd|83L(CSMdtJ7(LjrQV%i{}X~=Y5P= z4>xOqLTd@7pnuFF%sS1~NEs~tp!x*F_$>~Td5Q@lc{uSk`k6!~<$7@f)8xo|^%>3? zQp%)Un?M|_asaeuN*MX6R(@UJ?ruOGcqfj09@_Kjqv!|m9%_S@B=C0}-@`ajMhYAhA_o*nI6gcZFff?Y3KYY(f3L2D{TJz}ke^|*G zn3c=x*Io3+n0kWqt&1n%1M#@`e&;2?v)2e4N zw~hUSMvW;bDlJxqzuW{r28GeBkUv`TL-zZu{sN{F=x!A?=W3wWYPFgQ}+pg2id{?7nUS3&2$WG zS2kd{mF0`4dt%%C@1?&ec=IglXMAt~#Ae%kjP$+^CteRDN>0KQ7`ntDdpv!N#)sOk zTtA`SKYzi%Wwp36PI&;Ub89%o&9aXtvLWv{Srj)0*R1;X2F;ecyX+%^8a<4e{?zzg zu69IG`C0Y%=|2Kf*I_tSF?HqfdcSv=bJh5M%=T*hgu0>FM%5tS*!}-x@m;?G8-$Rz z$cm6Ks2-ycR|9mYiiUqaH{QBod+5|%oxXDG+9sK^sR4E6UTU66eRr{A{Z=f|y?0oXtxX7+a1q%jtVD_=`F3}eouXbc5MesfrLq0y2gh_h%zeg0Kag0&& zqtweZhYpx)yr9Oc_4mD&PYd&B(?Eg;_dh8bP_z;oOX|uqIpd%_7ZY@{3h-d>JRDAUdA;(U)tpnyMs|U$AOYQysGxz% z8viaR2tHYL&-=gF*z#>|gE34OczepL<#pwju~&@!0SsRPs@pZMKx8bT+JKcc#Ksmp z+GDY}zza)XPZ1Ok^QN(F+Q)8i3cw^8iZ)+B-f)7(rSl*F7K=FtDNqmUZFq3s2S@he z@0ulVfdbqZV)=R&{qgg2_wEG%j7BA4!Y{@xJ=J$w(R|+N6VH3Q+gg^;kLttlz_ud} zQAW_R5c-DjwBx5(hgQr!c7!XhcZU5)FPnE{|J4G#_beSf!;!0=S5;DM{q6>w+_TJa z%DGn>{~6mlZD}XwP8W#5I+;`l2jz^BZ;AroNKDp{_2yGVpqS{fm*4Nr@)H5f-S50w zb}JP659pm-zkfc{Z}El|Lx&ebhZW70j}x-0p@^h3L@?h(rlx>*46!v) zp|+3v^1M5lpGiTYe`dUz=iwThA*KxH8Xn0e&D=;Q?hIk}t80fO_8@Q4u>i3G_4D^~0zjA*i67Q#7P=iqtk{4pcW)rjA&%HH z)mmya9Nu(~PmoI97yscN6RD@*r*-LAm4zLq;bp*Cc;e%W%L4upjDY5ucv7dYiuKoV zfmZkyY6YE68QrO<&Mb|W*_d>u`Js0$vv-uU_HH=;J&Bj{n)s+3)Z-St&Rp)VFtVSB zr1Fb>>w*Dkhw)0D)?0qggD-lzt>B_SdSwk3YfoFaL!OxO6Me9|O+};S*A%f2~xU`(`da z=U4s*=Mv>TpGI>Af+^tp3l3rohAG^!BOXUJ2!0mKn{AyyS#_cS$7aFsMv7slz&Cp}s87LMy6V)TtHkV=}63qde1Kh_GV3;^A&fwY4nN5PjI6F9z za!pYcz;{?s@)zz6X`rUr?a*kuIf|A0f{awN1wElEz(!3W(6~#WkOM@WWZ+DWm7rId z9{QPj5ob3Hc<9?r|BIy}(QKY#GSyXIpf70~c(St0f%QLggt8#M%`PEFU)hEEi?c_J zAOVhQlb|ObMg-o^pXR&GPfn{=9{;^<4%6ETJ*n@=2TxEg<{Pqw%m1m1$neC~AS^0( zeAJo_lFKOE@Ip`!!x#vcGy5g-HxRHD^iO$1u}DX}YQysg4NBrp4Ky=h%Lb5a{N;of z4-RNWjIbDg54d}WqiI<%e_~mR+)O<9QbEY5vS20AY7TFUkbhI|dG|^{vYGTBd6%IU z$h_$MNnlZy(8n2v;vUtI5r|$9Aom^uOK&sSKDOAQ$dmqr9}Y%$%Fnbt4|Z{`IxQ_CXdaK1l0nWJpf*9`MmTrj9p= z!u8cDJ<%tXB86lQ98HVO!#bdepZdnmS+?PQm7AXohRGBH-G%mi-qn^_2x5R)(lE}}Nl3#- zP6;DVh5wFLH|k5?5tjxad5)kl@!ao5Oj+bqc42jTP0X}m_MG$uzkRf#EXnmK8A3wlzw_F?^ai)7u7PRJv_d3Bwx}W za7!bgSq`27dmJx(%Iax;Endoad<;j8SP4yJCsNl8{}4=c7oCpN4;PxNnUAf=qMRUJ zwvk*?)1uMpQ$swARBiQgw8l4<+<|!9f)atpjZ}kjp%%z`nCc0iERD(+oei^6i3|>h zy~TaYObgZ)Wk)jKL8~y637wS~m0gACiC3Lgo0G%uPEby^R;OZeN&ZNX;+Gp}ST)|h zL#g?3?iU%>--z#lQ&m)>f^Z7?#izHK%pf_y`t zy&*!BY81l1%!>XhKbyFClxaOtnPu8P3|poTlXU`Qw%j*!ybc5dDmPf=b{lIOn@mgk zJyih!&J+wcp&c-Hy8`Fu-y5B$8T|eytf#!Mr@v$@`2k=N3t11GPoL8imSs8fI!L*2 z?T}e%s)q@EWoHb+SD8G&y4UhlPzR>TKvqE?DGfo#7E3O`j=_KtUBbmz*&D$J+4)dF z+t&O3qQGT-w18MyLw=f-rsfAtd?R*LbKPkZtQ#x+CSxw=Ct2 zZ>8L?E%4--TIifF?E&H}or5+zH?1pew73WWI2kkk zIbUaD@G>QQSRLL`5n}V{u@D39fI=|W1M6`7*TXquMz?GrCNPkcpcA+}gC)Nw>(O^~ zjBi}%mTF$edml9xIl!Aho+7~4U0Q_FFGSt`7VKCS^=2D*oP+Q<$ud54a*tQo5I-~# zr80^wxJ6C)C>^5=+2~uyh7L5@^GQ268l3)C!qxJgekvQ!Idt=q8ap>&+8IuJp`QM_ zUay}8)&{R`2wnq=3MgX4y~&QbX^y5Boe;892y9aH%{U*$pP^=iR$Z|U6)yWBI^QZ` zkAiYICI(5u{GJLBUUvz_6mR~HY)%SfnKG!#BWjx>hcu)0?NaLA`ug50zb4uU7Y+iO zgZ817)=z|Y4*5Dk?Z+=UG-ig(L)8WZDogn<-GY}u z)RVmp^PfxnqH`0TJ)SfnS{6*y%=Ustg2CNuh6n>^`3R|wAQ<2n%_{njK-NzoHGPM$ zELB$a*9}u?b3vSuV-%AfAuWGifZ)ZbC8HDg9a?N3`lz`iugla8KG*aTmPBTLKn_0o z9`V#rR^=nB*i?}eGyP&iogfYxhWv_&k%I8~DNu$<9Qa1mfn_YFhkI8R=j^ZEs}pAx~8Oz6H=&RKMM?M}H)I}NBD5DpBlK~_05dG0ph@PwU|(cpvP zI$adwX|m;19RdM>G=4{hu38L_4NByd+m7w#R2~x<6?HI(q`?+|Xi34nSTKP?1PS~+ zML*3TetjWoi%U0W4DmJ6{enbmKmDHVIPQb!uAa!WYHF}}H&u@CnnA*OF<(r@9DvI( z&DbaP7({o23?b!#uq&l6ugjcU2FL6}MzB|)eddcYM6{ZJ2ziUamrRj$@AzIy?+Dwa zON(f>Ba>|ZWymGkS6{@HE3O{!#rvbn&iOLpzi|Eyh%1N~t2PkuDq|aU>LJe!sB5Af zp5Bval4J_+zU&s+1F>1Po%l1nG{f6z8#I#{vBVmA`AMLgK;Dm8!vQU1kuTRsHN(MK zZ)zOMtZeCviqHya<>6I?w&I?2M*w}PHn$zmi7&k`zBK&@awY@#$K>aYpz5YVNMkw- zr~Z&^5`Ti}+gVK)ZDX6uOini zY(|O^tE}r&bm7%8S5QcyBfHRQwC|A*rD64wr%$=%0Jps6}=*SkEZm3B5ht)6PJqzQv%6z;D)@+NcL2 zD(pv~(taWTWc0C1rAfI=Gvv;LM>B3sfqNa(QN%E|8VqEkq5zf^Qg7Yx&xXHgHR)>E z&zwFMGxRP2CDSLfcg-0(401KwWq7aM>6u;0MA?bt+HzJ1UFtUQ06OzO!O`BJc_=f9 z!v=VEl)_N)hcY|8la-j7)piH1HxuOzwgpKm3^Mumw;S9dZ?LpwV8cJ-?OEXe$`!c3 z808s*U3~*K_v;2?g%?!yDf$D27~Be``c%YXW{XQ81@-HGYxXXW-z#Ru;cUnSOevz> zVEJeI7A;jTynrK`rG}@Neot0;HE1=@246gXVnZL#tPd+@&}aW{18+gEsQ4F2=gBgY zH|DtE&TD+zPFXl^fcXwZG)!`JEq(IPfpM5>DXXM(ZBWBMxb(C2?>v{&bLT-o8Y6j^ zZE;I)v7!Kqqw$^tvW&w63)%DZFfi+?FigOL!y;5`k0~-nw3_fx!q{dNwJtj+kpXCp zneF(@-j9;YXV&85XeujeKu-A2ro-KFP^^=ru1+)B$l&qPjK>gM1Py&qaAIn&UPkPijF#<}7zz@q;D%qSvDdZO zYcZn_9VmeP!u#g`nFlGX=IKl#hRg78t&{o|wJ0VY>&2pW3nCbah-dq6E|mivZgTvk z`Wb0hiL9xl_>;bt&dByeWYCzWBHs zrk%+7iq#f4A$4osNfVW#C{NL|)*=ZAVT5d+YyWU9YD67V)rw0CbK!%eWpY$@`Wns{ z;~guELR3#1mJN7voD%D-#vEjP^s9a26*(xCIWx1OT0}^Se|iU5A51Yc6BQ;)BTclq z+nevOv7#3T&i@SW6$8H{m7Jau2CzylfmIeh`kcO1_t&6?Wn-WCgqljXT@<;2C#z1< zuU^)_&0^DWGii-m3`niy&Gb0Kw}M#sQC5pHzG;orB5H4eLYNb&VzP~_iU)x%Qs{yQ z<*%;QkGk){1?Y%V=Y%G*wn`2nr4A7C0$OjdY!&)TxW>;d<`91Fzi&N5AQc4gl5B9n z(Ilctl~+#}mtJ~E2^PzHZV*!2jXM?nj&06aVwGPwUhB0>bL6?1a;7qM+2RQ0&hDoo zJNBDtuQ9&Y{nRfJ!{&DE7r}huW_s1Qu5rqEQ0g%2;opVJ*ExJ$@ZX1rYYNubx;@3v z-pfoo>lwJAEZ_p=={d4H2;8yP(slj_2V>n;0FOXCfJXLv>8l!Ru3qO6gIU6b+a#8#t$Jjz8Q&^!|G;-MVcuf~36H|wtb=uI=AW&Lg49=Ofv zv4Xi|;QE`r>(oqt6mFuehDE!UIM3;NpZe;)-MoJR78;jb5;syrNJY}=8H@PM3 z2uk*XTh!c)(YH2-qa=ivR0eY>9GEt>W&g>JI_E)Zck2mT5X-#=(`^Nq|24L>OB%ob zGAbiwVAh9ZItdPmz@AE-rdfP2Ye@4=OSn)g3Yjxo)s<=&J6xIc`@qh8b%=dx=Hu;BqWC=u=&C zB5=?<%3wdc5fpiqy=4K-%FYh91Ie_4IWOIOzxy7FcdSW9W72Rehi8~dyNY=uhMml$ zCoQm&m9%c3n|h@>ZG*F_f*cvml2yH~7SK-`-iw?VJ&DJO_9uD$g6KQEl-^%d*iQ~a z17aZBLJP@5&IlLOm2Ugb(axS>v+&l=@!PyN9wq^P94g*a_O|sg>%{V}Pf>f*hXT9G zDqV*ANlJOJvkZQ#y{&X}7GBa0gcnYuYO+atm(GDXu(s-Sc{Q8d)o4ZcNihmc2N?7q z-=~}0E<5~_YyT0@A%{Ps)sFmUFjy&k;Q zw+J8Odp)bWEWr)fk>ZBOoi#+xavixLE4-!;6y9zGjC5DvTiLpp${%znR21(v)E#55HTzwRLIVtQc$M(0+ZQXL@v6;>jt07OI$ug`)8Blp8(F$m& zU7lObWZ0XN4VkORgT*U3T(#tT_V=JUI;4ldOImu+8&#`r0vu_qqc| z@uSd9*k6N8wF-HE1LNGbc{&+gt+g%stRIw0?<}wL_<8v;RK1(>0f$I7+8KsV;lj=Z zZdY(Mt!agA^G)m_%P)}~#31kq1F1Di`$13mvzhQ`l0%4W94+qZfuQw^2dPgDg^{;Y z%$oUlg5t2i4lb7=PxGrEK=~^#i4ecl^ zWq&B%bca^V1{7Rx*0jAR?Of52Jy6NvO=+GDw-%T|9U zyOYQtTSzzy$el=P0sb(w#SNvv4pDn*g={oF2ANyPrl=Y+3vuTmC1!7xu?cs)q0lgM zg;a2&s9^)&=D<&6O>F{R8g0AXt{KtyjSiI1A|#8fUSc ze~oO$qZ;iWV@U6rJ9%G+5r|>s=VS#L1<`RmZo1O9__GP#{5kF!98Q79A6C)QNk6-l z^ZBQW44=Xsif-z*nJYAnJ>2$EJg1-YlpUO8z52w!@M#riJkWb4e(tLHAcHq`!Sr`i z=NiKkXg-ov;}=EZz_gqnyiRyFTqIND*H+?N8T`O5;LEi;F;)O|alZAMZ+G$H1Wt|s zer~5azwe^Aen_`cegeq`)DkW*sJ%_%{)5CF=_>zVy&YN)`fo?PNj)3kWH22U-iL{w zeFKTQp*g;H;L#R^-4w?XiVLb2^@4a~v5oZ|%D`MWl#Q2t5l-dFDyIzCX**&PZsIw6 zah75`k~%L6a|hF8_0XdNFaPk^(<#`kmKpT^H95Q0#ml(n%kAUUu*(|SlQCjG0z8nx zP0Y%ByU{OXB&D~NovX&d;FVa)J)F?vFW-BL;)O@GOJBO(`4G0pV&ym{Iikm8aM5p0 zYipMOOT;T>gO>IHa!zTOyxjD&V_$~>D$%{kOp`1BX5`WA;Dywgpy`T&q4nUI_~zEk zwIZ8g$8lpAu*rdO`oU;^cBhE0dZH77kaZWN-;e zJ1e_f3_EpL8{6)plr40Qjb6%@QGS1pIQ*1i7l-`p;0Af;W^I>I+AjupqNj51o;}<=P?9(Z*UutS zWDoBW55S;qol}v0uO0F;t(?&_7j$)TJcUSf3>%E<;T`4RIEQpLWOouKk(>%$GHUMm9OaCs15Dd%PPPzEV+MCEX8 zy!z3(@Ng{B@}7(iRi{698#Xy?R!a6XNJ&mnSgVB`BQz1_H&(%4-T1}et^$Y2Z%xH& z?hzr@?b~_H?zcEhlWxeV&r}!`xATr~g{$*5yom+zpj`IQ;IJfdMF}k61K4SQ3`Kfg z@-)%iupXB(D&5j6GDLm<{e|AM1=457x60cYxRJKA1fkW#=l6EGf_iO#AGxHP?e*TD zEla%Ly&vHfWo@oVJ*11hT2MGmdYtfVnGE%r(o42PEtrKlwky3Wo_EOcaoy@b0D{fx zZ;;P^k0Vx30uyDJFAWY8XhroiLck^->OGowyj{<(c*A-Qa@>9RseVJPB8xDDYPRg@ znI*U_F1*-(#a3l+!-C%Bor|8!3)jB&RR{S&C&4pV8+Leszb}=yqZ;3eO@$8 zeXe`-ooF@U{e#b5x#0bsRkFSxN8ty_ufpe`?w$egGo6hLmQ;tpt4>o_rs-=1l$x0g zJJW<4e!6y)U!PZLcCC-)Yzl!}c5}{<5%e#=YGO|wXGaGE`bke^^HyfSGkb>V*V*J= zhL>yJp@xVe&eBEp^g5^wRbw7RTUFa&kT$cIfRvCD48E0RqJJV|VBv)L(XEYgI>kKY zTAOrbWn_;hZ4<@|8DH-X5eF97xW>Nms}SFP6%|MjZdASj5c{F6qoZfo5T7+?#?sqv N<2}AQJXZO`{{a!Tb; + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/social.png b/dashboard/public/logo/social.png new file mode 100644 index 0000000000000000000000000000000000000000..245ca81b3464a04761ba3e4a6b8d7ee7400747f5 GIT binary patch literal 108665 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

    M9v7tbG;ZyOjTJo@8CN-5 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 { + const { data, error } = await listApiKeys(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.apiKeys.list, fetcher); + + return useMemo( + () => ({ + apiKeys: data, + apiKeysLoading: isLoading, + apiKeysError: error, + apiKeysValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} diff --git a/dashboard/src/actions/invoices.ts b/dashboard/src/actions/invoices.ts new file mode 100644 index 00000000..0b8e8b1f --- /dev/null +++ b/dashboard/src/actions/invoices.ts @@ -0,0 +1,67 @@ +import type { InvoiceResponse, ListInvoicesResponse } from 'src/lib/swissknife'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { getInvoice, listInvoices } from 'src/lib/swissknife'; + +import { endpointKeys } from './keys'; + +// ---------------------------------------------------------------------- + +type IListInvoices = { + invoices?: ListInvoicesResponse; + invoicesLoading: boolean; + invoicesError?: any; + invoicesValidating: boolean; +}; + +export function useListInvoices(limit?: number, offset?: number): IListInvoices { + const fetcher = async () => { + const { data, error } = await listInvoices({ query: { limit, offset } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.invoices.list, fetcher); + + return useMemo( + () => ({ + invoices: data, + invoicesLoading: isLoading, + invoicesError: error, + invoicesValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IGetInvoice = { + invoice?: InvoiceResponse; + invoiceLoading: boolean; + invoiceError?: any; + invoiceValidating: boolean; +}; + +export function useGetInvoice(id: string): IGetInvoice { + const fetcher = async () => { + const { data, error } = await getInvoice({ path: { id } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.invoices.get, fetcher); + + return { + invoice: data, + invoiceLoading: isLoading, + invoiceError: error, + invoiceValidating: isValidating, + }; +} diff --git a/dashboard/src/actions/keys.ts b/dashboard/src/actions/keys.ts new file mode 100644 index 00000000..516e3c23 --- /dev/null +++ b/dashboard/src/actions/keys.ts @@ -0,0 +1,46 @@ +export const endpointKeys = { + auth: { + me: '/api/auth/me', + signIn: 'signIn', + signUp: '/api/auth/sign-up', + }, + mempoolSpace: { + prices: 'mempoolSpacePrices', + }, + userWallet: { + get: 'userWallet', + balance: 'userWalletBalance', + lnAddress: { get: 'userWalletGetAddress' }, + payments: { list: 'userWalletListPayments', get: 'userWalletGetPayment' }, + invoices: { list: 'userWalletListInvoices', get: 'userWalletGetInvoice' }, + contacts: { list: 'userWalletListContacts' }, + apiKeys: { list: 'userWalletListApiKeys' }, + }, + wallets: { + list: 'listWallets', + get: 'getWallet', + listOverviews: 'listWalletOverviews', + }, + invoices: { + get: 'getInvoice', + list: 'listInvoices', + }, + payments: { + get: 'getPayment', + list: 'listPayments', + }, + lightning: { + node: { + info: 'nodeInfo', + lspInfo: 'lspIinfo', + lsps: 'lsps', + }, + addresses: { + list: 'listLnAddresses', + get: 'getLnAddress', + }, + }, + apiKeys: { + list: 'listApiKeys', + }, +}; diff --git a/dashboard/src/actions/ln-addresses.ts b/dashboard/src/actions/ln-addresses.ts new file mode 100644 index 00000000..dff20cc6 --- /dev/null +++ b/dashboard/src/actions/ln-addresses.ts @@ -0,0 +1,65 @@ +import type { LnAddress, ListAddressesResponse } from 'src/lib/swissknife'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { getAddress, listAddresses } from 'src/lib/swissknife'; + +import { endpointKeys } from './keys'; + +interface IGetLnAddresses { + lnAddresses?: ListAddressesResponse; + lnAddressesLoading: boolean; + lnAddressesError?: any; + lnAddressesValidating: boolean; +} + +export function useListLnAddresses(limit?: number, offset?: number): IGetLnAddresses { + const fetcher = async () => { + const { data, error } = await listAddresses({ query: { limit, offset } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.lightning.addresses.list, fetcher); + + return useMemo( + () => ({ + lnAddresses: data, + lnAddressesLoading: isLoading, + lnAddressesError: error, + lnAddressesValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +interface IGetLnAddress { + lnAddress?: LnAddress; + lnAddressLoading: boolean; + lnAddressError?: any; + lnAddressValidating: boolean; +} + +export function useGetLnAddress(id: string): IGetLnAddress { + const fetcher = async () => { + const { data, error } = await getAddress({ path: { id } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.lightning.addresses.get, fetcher); + + return { + lnAddress: data, + lnAddressLoading: isLoading, + lnAddressError: error, + lnAddressValidating: isValidating, + }; +} diff --git a/dashboard/src/actions/ln-node.ts b/dashboard/src/actions/ln-node.ts new file mode 100644 index 00000000..a4a7ce5e --- /dev/null +++ b/dashboard/src/actions/ln-node.ts @@ -0,0 +1,100 @@ +import type { IBreezLSP, IBreezNodeInfo } from 'src/types/breez-node'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { lspInfo, listLsps, nodeInfo } from 'src/lib/swissknife'; + +import { endpointKeys } from './keys'; + +// ---------------------------------------------------------------------- + +type IGetNodeInfo = { + nodeInfo?: IBreezNodeInfo; + nodeInfoLoading: boolean; + nodeInfoError: any; + nodeInfoValidating: boolean; +}; + +export function useGetNodeInfo(): IGetNodeInfo { + const fetcher = async () => { + const { data, error } = await nodeInfo(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, isLoading, error, isValidating } = useSWR(endpointKeys.lightning.node.info, fetcher); + + return useMemo( + () => ({ + nodeInfo: data as IBreezNodeInfo, + nodeInfoLoading: isLoading, + nodeInfoError: error, + nodeInfoValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IGetCurrentLSP = { + currentLSP?: IBreezLSP; + currentLSPLoading: boolean; + currentLSPError: any; + currentLSPValidating: boolean; +}; + +export function useGetCurrentLSP(): IGetCurrentLSP { + const fetcher = async () => { + const { data, error } = await lspInfo(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, isLoading, error, isValidating } = useSWR(endpointKeys.lightning.node.lspInfo, fetcher); + + return useMemo( + () => ({ + currentLSP: data as IBreezLSP, + currentLSPLoading: isLoading, + currentLSPError: error, + currentLSPValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IGetLSPs = { + lsps?: IBreezLSP[]; + lspsLoading: boolean; + lspsError: any; + lspsValidating: boolean; +}; + +export function useGetLSPs(): IGetLSPs { + const fetcher = async () => { + const { data, error } = await listLsps(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, isLoading, error, isValidating } = useSWR(endpointKeys.lightning.node.lsps, fetcher); + + return useMemo( + () => ({ + lsps: data as IBreezLSP[], + lspsLoading: isLoading, + lspsError: error, + lspsValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} diff --git a/dashboard/src/actions/mempool-space.ts b/dashboard/src/actions/mempool-space.ts new file mode 100644 index 00000000..6dd144d7 --- /dev/null +++ b/dashboard/src/actions/mempool-space.ts @@ -0,0 +1,34 @@ +import type { IFiatPrices } from 'src/types/bitcoin'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { CONFIG } from 'src/config-global'; + +import { endpointKeys } from './keys'; + +interface IGetFiatPrices { + fiatPrices?: IFiatPrices; + fiatPricesLoading: boolean; + fiatPricesError: any; + fiatPricesValidating: boolean; +} + +export function useFetchFiatPrices(): IGetFiatPrices { + const fetcher = async (): Promise => { + const data = await fetch(`${CONFIG.site.mempoolSpace}/prices`); + return data.json(); + }; + + const { data, isLoading, error, isValidating } = useSWR(endpointKeys.mempoolSpace.prices, fetcher); + + return useMemo( + () => ({ + fiatPrices: data, + fiatPricesLoading: isLoading, + fiatPricesError: error, + fiatPricesValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} diff --git a/dashboard/src/actions/payments.ts b/dashboard/src/actions/payments.ts new file mode 100644 index 00000000..4522aa85 --- /dev/null +++ b/dashboard/src/actions/payments.ts @@ -0,0 +1,67 @@ +import type { PaymentResponse, ListPaymentsResponse } from 'src/lib/swissknife'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { getPayment, listPayments } from 'src/lib/swissknife'; + +import { endpointKeys } from './keys'; + +// ---------------------------------------------------------------------- + +interface IGetPayments { + payments?: ListPaymentsResponse; + paymentsLoading: boolean; + paymentsError?: any; + paymentsValidating: boolean; +} + +export function useListPayments(limit?: number, offset?: number): IGetPayments { + const fetcher = async () => { + const { data, error } = await listPayments({ query: { limit, offset } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.payments.list, fetcher); + + return useMemo( + () => ({ + payments: data, + paymentsLoading: isLoading, + paymentsError: error, + paymentsValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +interface IGetPayment { + payment?: PaymentResponse; + paymentLoading: boolean; + paymentError?: any; + paymentValidating: boolean; +} + +export function useGetPayment(id: string): IGetPayment { + const fetcher = async () => { + const { data, error } = await getPayment({ path: { id } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.payments.get, fetcher); + + return { + payment: data, + paymentLoading: isLoading, + paymentError: error, + paymentValidating: isValidating, + }; +} diff --git a/dashboard/src/actions/user-wallet.ts b/dashboard/src/actions/user-wallet.ts new file mode 100644 index 00000000..10c8d26a --- /dev/null +++ b/dashboard/src/actions/user-wallet.ts @@ -0,0 +1,293 @@ +import type { + Balance, + LnAddress, + InvoiceResponse, + PaymentResponse, + ListContactsResponse, + ListWalletApiKeysData, + ListWalletInvoicesData, + ListWalletApiKeysResponse, + ListWalletInvoicesResponse, + ListWalletPaymentsResponse, +} from 'src/lib/swissknife'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { + listContacts, + getUserWallet, + getWalletAddress, + getWalletBalance, + getWalletInvoice, + getWalletPayment, + listWalletApiKeys, + listWalletInvoices, + listWalletPayments, +} from 'src/lib/swissknife'; + +import { endpointKeys } from './keys'; + +import type { IGetWallet } from './wallet'; + +// ---------------------------------------------------------------------- + +export function useGetUserWallet(): IGetWallet { + const fetcher = async () => { + const { data, error } = await getUserWallet(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.get, fetcher); + + return useMemo( + () => ({ + wallet: data, + walletLoading: isLoading, + walletError: error, + walletValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IGetUserBalance = { + userBalance?: Balance; + userBalanceLoading: boolean; + userBalanceError?: any; + userBalanceValidating: boolean; +}; + +export function useGetWalletBalance(): IGetUserBalance { + const fetcher = async () => { + const { data, error } = await getWalletBalance(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.balance, fetcher); + + return useMemo( + () => ({ + userBalance: data, + userBalanceLoading: isLoading, + userBalanceError: error, + userBalanceValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IListInvoices = { + invoices?: ListWalletInvoicesResponse; + invoicesLoading: boolean; + invoicesError?: any; + invoicesValidating: boolean; +}; + +export function useListWalletInvoices(query?: ListWalletInvoicesData): IListInvoices { + const fetcher = async () => { + const { data, error } = await listWalletInvoices(query); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.invoices.list, fetcher); + + return useMemo( + () => ({ + invoices: data, + invoicesLoading: isLoading, + invoicesError: error, + invoicesValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IGetInvoice = { + invoice?: InvoiceResponse; + invoiceLoading: boolean; + invoiceError?: any; + invoiceValidating: boolean; +}; + +export function useGetWalletInvoice(id: string): IGetInvoice { + const fetcher = async () => { + const { data, error } = await getWalletInvoice({ path: { id } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.invoices.get, fetcher); + + return { + invoice: data, + invoiceLoading: isLoading, + invoiceError: error, + invoiceValidating: isValidating, + }; +} + +type IListPayments = { + payments?: ListWalletPaymentsResponse; + paymentsLoading: boolean; + paymentsError?: any; + paymentsValidating: boolean; +}; + +export function useListWalletPayments(limit?: number, offset?: number): IListPayments { + const fetcher = async () => { + const { data, error } = await listWalletPayments({ query: { limit, offset } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.payments.list, fetcher); + + return useMemo( + () => ({ + payments: data, + paymentsLoading: isLoading, + paymentsError: error, + paymentsValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IGetPayment = { + payment?: PaymentResponse; + paymentLoading: boolean; + paymentError?: any; + paymentValidating: boolean; +}; + +export function useGetWalletPayment(id: string): IGetPayment { + const fetcher = async () => { + const { data, error } = await getWalletPayment({ path: { id } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.payments.get, fetcher); + + return { + payment: data, + paymentLoading: isLoading, + paymentError: error, + paymentValidating: isValidating, + }; +} + +type IGetLnAddress = { + lnAddress?: LnAddress; + lnAddressLoading: boolean; + lnAddressError?: any; + lnAddressValidating: boolean; +}; + +export function useGetWalletLnAddress(shouldRetryOnError: boolean = false): IGetLnAddress { + const fetcher = async () => { + const { data, error, response } = await getWalletAddress(); + if (error) { + if (response.status === 404) { + return undefined; + } + + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.lnAddress.get, fetcher, { + shouldRetryOnError, + }); + + return { + lnAddress: data, + lnAddressLoading: isLoading, + lnAddressError: error, + lnAddressValidating: isValidating, + }; +} + +type IListContacts = { + contacts?: ListContactsResponse; + contactsLoading: boolean; + contactsError?: any; + contactsValidating: boolean; +}; + +export function useListWalletContacts(): IListContacts { + const fetcher = async () => { + const { data, error } = await listContacts(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.contacts.list, fetcher); + + return useMemo( + () => ({ + contacts: data, + contactsLoading: isLoading, + contactsError: error, + contactsValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IListApiKeys = { + apiKeys?: ListWalletApiKeysResponse; + apiKeysLoading: boolean; + apiKeysError?: any; + apiKeysValidating: boolean; +}; + +export function useListWalletApiKeys(query?: ListWalletApiKeysData): IListApiKeys { + const fetcher = async () => { + const { data, error } = await listWalletApiKeys(query); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.userWallet.apiKeys.list, fetcher); + + return useMemo( + () => ({ + apiKeys: data, + apiKeysLoading: isLoading, + apiKeysError: error, + apiKeysValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} diff --git a/dashboard/src/actions/wallet.ts b/dashboard/src/actions/wallet.ts new file mode 100644 index 00000000..f170f9da --- /dev/null +++ b/dashboard/src/actions/wallet.ts @@ -0,0 +1,70 @@ +import type { WalletResponse, ListWalletOverviewsResponse } from 'src/lib/swissknife'; + +import useSWR from 'swr'; +import { useMemo } from 'react'; + +import { getWallet, listWalletOverviews } from 'src/lib/swissknife'; + +import { endpointKeys } from './keys'; + +// ---------------------------------------------------------------------- + +export type IGetWallet = { + wallet?: WalletResponse; + walletLoading: boolean; + walletError?: any; + walletValidating: boolean; +}; + +export function useGetWallet(id: string): IGetWallet { + const fetcher = async () => { + const { data, error } = await getWallet({ path: { id } }); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.wallets.get, fetcher); + + return useMemo( + () => ({ + wallet: data, + walletLoading: isLoading, + walletError: error, + walletValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} + +type IListWallets = { + walletOverviews?: ListWalletOverviewsResponse; + walletOverviewsLoading: boolean; + walletOverviewsError?: any; + walletOverviewsValidating: boolean; +}; + +export function useListWalletOverviews(): IListWallets { + const fetcher = async () => { + const { data, error } = await listWalletOverviews(); + if (error) { + throw Error(error.reason); + } + + return data; + }; + + const { data, error, isLoading, isValidating } = useSWR(endpointKeys.wallets.listOverviews, fetcher); + + return useMemo( + () => ({ + walletOverviews: data, + walletOverviewsLoading: isLoading, + walletOverviewsError: error, + walletOverviewsValidating: isValidating, + }), + [data, error, isLoading, isValidating] + ); +} diff --git a/dashboard/src/app/(index)/admin/api-keys/page.tsx b/dashboard/src/app/(index)/admin/api-keys/page.tsx new file mode 100644 index 00000000..f75473d1 --- /dev/null +++ b/dashboard/src/app/(index)/admin/api-keys/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { ApiKeyListView } from 'src/sections/api-key/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('API Keys Management'), +}; + +export default function AdminApiKeyListPage() { + return ; +} diff --git a/dashboard/src/app/(index)/admin/invoices/[id]/page.tsx b/dashboard/src/app/(index)/admin/invoices/[id]/page.tsx new file mode 100644 index 00000000..a8ff1503 --- /dev/null +++ b/dashboard/src/app/(index)/admin/invoices/[id]/page.tsx @@ -0,0 +1,21 @@ +import { appTitle } from 'src/utils/format-string'; + +import { AdminInvoiceDetailsView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Invoice Details'), +}; + +type Props = { + params: { + id: string; + }; +}; + +export default function AdminInvoiceDetailsPage({ params }: Props) { + const { id } = params; + + return ; +} diff --git a/dashboard/src/app/(index)/admin/invoices/page.tsx b/dashboard/src/app/(index)/admin/invoices/page.tsx new file mode 100644 index 00000000..5f6feda2 --- /dev/null +++ b/dashboard/src/app/(index)/admin/invoices/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { AdminInvoiceListView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Invoices Management'), +}; + +export default function AdminInvoiceListPage() { + return ; +} diff --git a/dashboard/src/app/(index)/admin/lightning-addresses/[id]/page.tsx b/dashboard/src/app/(index)/admin/lightning-addresses/[id]/page.tsx new file mode 100644 index 00000000..8471d3dd --- /dev/null +++ b/dashboard/src/app/(index)/admin/lightning-addresses/[id]/page.tsx @@ -0,0 +1,21 @@ +import { appTitle } from 'src/utils/format-string'; + +import { AdminLnAddressDetailsView } from 'src/sections/ln-address/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Lightning Address Details'), +}; + +type Props = { + params: { + id: string; + }; +}; + +export default function AdminLnAddressDetailsPage({ params }: Props) { + const { id } = params; + + return ; +} diff --git a/dashboard/src/app/(index)/admin/lightning-addresses/page.tsx b/dashboard/src/app/(index)/admin/lightning-addresses/page.tsx new file mode 100644 index 00000000..623b68da --- /dev/null +++ b/dashboard/src/app/(index)/admin/lightning-addresses/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { LnAddressListView } from 'src/sections/ln-address/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Lightning Addresses Management'), +}; + +export default function LnAddressListPage() { + return ; +} diff --git a/dashboard/src/app/(index)/admin/lightning-node/page.tsx b/dashboard/src/app/(index)/admin/lightning-node/page.tsx new file mode 100644 index 00000000..4d69e912 --- /dev/null +++ b/dashboard/src/app/(index)/admin/lightning-node/page.tsx @@ -0,0 +1,30 @@ +import { Alert } from '@mui/material'; + +import { appTitle } from 'src/utils/format-string'; + +import { DashboardContent } from 'src/layouts/dashboard'; + +import { NodeView, BreezNodeView } from 'src/sections/node/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Node management'), +}; + +export default function OverviewBankingPage() { + switch (process.env.LN_PROVIDER) { + case 'breez': + return ; + case 'cln': + return ; + case 'lnd': + return ; + default: + return ( + + Page not available for Non Breez Lightning Provider + + ); + } +} diff --git a/dashboard/src/app/(index)/admin/payments/[id]/page.tsx b/dashboard/src/app/(index)/admin/payments/[id]/page.tsx new file mode 100644 index 00000000..4f5261dc --- /dev/null +++ b/dashboard/src/app/(index)/admin/payments/[id]/page.tsx @@ -0,0 +1,21 @@ +import { appTitle } from 'src/utils/format-string'; + +import { AdminPaymentDetailsView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Payment Details'), +}; + +type Props = { + params: { + id: string; + }; +}; + +export default function AdminPaymentDetailsPage({ params }: Props) { + const { id } = params; + + return ; +} diff --git a/dashboard/src/app/(index)/admin/payments/page.tsx b/dashboard/src/app/(index)/admin/payments/page.tsx new file mode 100644 index 00000000..f3d40be9 --- /dev/null +++ b/dashboard/src/app/(index)/admin/payments/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { AdminPaymentListView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Payments Management'), +}; + +export default function AdminPaymentListPage() { + return ; +} diff --git a/dashboard/src/app/(index)/admin/wallets/page.tsx b/dashboard/src/app/(index)/admin/wallets/page.tsx new file mode 100644 index 00000000..eb42d417 --- /dev/null +++ b/dashboard/src/app/(index)/admin/wallets/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { WalletListView } from 'src/sections/wallet/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Wallets Management'), +}; + +export default function AdminWalletListPage() { + return ; +} diff --git a/dashboard/src/app/(index)/layout.tsx b/dashboard/src/app/(index)/layout.tsx new file mode 100644 index 00000000..641ef797 --- /dev/null +++ b/dashboard/src/app/(index)/layout.tsx @@ -0,0 +1,22 @@ +import { CONFIG } from 'src/config-global'; +import { DashboardLayout } from 'src/layouts/dashboard'; + +import { AuthGuard } from 'src/auth/guard'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export default function Layout({ children }: Props) { + if (CONFIG.auth.skip) { + return {children}; + } + + return ( + + {children} + + ); +} diff --git a/dashboard/src/app/(index)/loading.tsx b/dashboard/src/app/(index)/loading.tsx new file mode 100644 index 00000000..5bfa202d --- /dev/null +++ b/dashboard/src/app/(index)/loading.tsx @@ -0,0 +1,7 @@ +import { LoadingScreen } from 'src/components/loading-screen'; + +// ---------------------------------------------------------------------- + +export default function Loading() { + return ; +} diff --git a/dashboard/src/app/(index)/page.tsx b/dashboard/src/app/(index)/page.tsx new file mode 100644 index 00000000..65beec78 --- /dev/null +++ b/dashboard/src/app/(index)/page.tsx @@ -0,0 +1,7 @@ +import WalletPage from './wallet/page'; + +// ---------------------------------------------------------------------- + +export default function OverviewAppPage() { + return ; +} diff --git a/dashboard/src/app/(index)/settings/page.tsx b/dashboard/src/app/(index)/settings/page.tsx new file mode 100644 index 00000000..4ea4abc3 --- /dev/null +++ b/dashboard/src/app/(index)/settings/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { SettingsView } from 'src/sections/settings/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Settings'), +}; + +export default function Page() { + return ; +} diff --git a/dashboard/src/app/(index)/wallet/contacts/page.tsx b/dashboard/src/app/(index)/wallet/contacts/page.tsx new file mode 100644 index 00000000..253f2a85 --- /dev/null +++ b/dashboard/src/app/(index)/wallet/contacts/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { ContactListView } from 'src/sections/contact/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Contacts'), +}; + +export default function LnAddressDetailsPage() { + return ; +} diff --git a/dashboard/src/app/(index)/wallet/invoices/[id]/page.tsx b/dashboard/src/app/(index)/wallet/invoices/[id]/page.tsx new file mode 100644 index 00000000..744b9036 --- /dev/null +++ b/dashboard/src/app/(index)/wallet/invoices/[id]/page.tsx @@ -0,0 +1,21 @@ +import { appTitle } from 'src/utils/format-string'; + +import { InvoiceDetailsView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Invoice Details'), +}; + +type Props = { + params: { + id: string; + }; +}; + +export default function InvoiceDetailsPage({ params }: Props) { + const { id } = params; + + return ; +} diff --git a/dashboard/src/app/(index)/wallet/invoices/page.tsx b/dashboard/src/app/(index)/wallet/invoices/page.tsx new file mode 100644 index 00000000..ba3eb230 --- /dev/null +++ b/dashboard/src/app/(index)/wallet/invoices/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { InvoiceListView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Invoices'), +}; + +export default function InvoiceListPage() { + return ; +} diff --git a/dashboard/src/app/(index)/wallet/lightning-address/page.tsx b/dashboard/src/app/(index)/wallet/lightning-address/page.tsx new file mode 100644 index 00000000..bcd20583 --- /dev/null +++ b/dashboard/src/app/(index)/wallet/lightning-address/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { LnAddressDetailsView } from 'src/sections/ln-address/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Lightning Address'), +}; + +export default function LnAddressDetailsPage() { + return ; +} diff --git a/dashboard/src/app/(index)/wallet/nostr-address/page.tsx b/dashboard/src/app/(index)/wallet/nostr-address/page.tsx new file mode 100644 index 00000000..814fbf02 --- /dev/null +++ b/dashboard/src/app/(index)/wallet/nostr-address/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { NostrDetailsView } from 'src/sections/nostr/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Nostr Address'), +}; + +export default function LnAddressDetailsPage() { + return ; +} diff --git a/dashboard/src/app/(index)/wallet/page.tsx b/dashboard/src/app/(index)/wallet/page.tsx new file mode 100644 index 00000000..02ceba4a --- /dev/null +++ b/dashboard/src/app/(index)/wallet/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { WalletView } from 'src/sections/wallet/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Wallet'), +}; + +export default function WalletPage() { + return ; +} diff --git a/dashboard/src/app/(index)/wallet/payments/[id]/page.tsx b/dashboard/src/app/(index)/wallet/payments/[id]/page.tsx new file mode 100644 index 00000000..9340f4a2 --- /dev/null +++ b/dashboard/src/app/(index)/wallet/payments/[id]/page.tsx @@ -0,0 +1,21 @@ +import { appTitle } from 'src/utils/format-string'; + +import { PaymentDetailsView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Payment Details'), +}; + +type Props = { + params: { + id: string; + }; +}; + +export default function PaymentDetailsPage({ params }: Props) { + const { id } = params; + + return ; +} diff --git a/dashboard/src/app/(index)/wallet/payments/page.tsx b/dashboard/src/app/(index)/wallet/payments/page.tsx new file mode 100644 index 00000000..95b187da --- /dev/null +++ b/dashboard/src/app/(index)/wallet/payments/page.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { PaymentListView } from 'src/sections/transaction/view'; + +// ---------------------------------------------------------------------- + +export const metadata = { + title: appTitle('Payments'), +}; + +export default function PaymentListPage() { + return ; +} diff --git a/dashboard/src/app/layout.tsx b/dashboard/src/app/layout.tsx new file mode 100644 index 00000000..e5999bd0 --- /dev/null +++ b/dashboard/src/app/layout.tsx @@ -0,0 +1,101 @@ +import 'src/global.css'; + +// ---------------------------------------------------------------------- + +import type { Viewport } from 'next'; + +import { CONFIG } from 'src/config-global'; +import { primary } from 'src/theme/core/palette'; +import { LocalizationProvider } from 'src/locales'; +import { detectLanguage } from 'src/locales/server'; +import { I18nProvider } from 'src/locales/i18n-provider'; +import { ThemeProvider } from 'src/theme/theme-provider'; +import { getInitColorSchemeScript } from 'src/theme/color-scheme-script'; + +import { Snackbar } from 'src/components/snackbar'; +import { ProgressBar } from 'src/components/progress-bar'; +import { MotionLazy } from 'src/components/animate/motion-lazy'; +import { detectSettings } from 'src/components/settings/server'; +import { SettingsDrawer, defaultSettings, SettingsProvider } from 'src/components/settings'; + +import { AuthProvider as JwtAuthProvider } from 'src/auth/context/jwt'; +import { AuthProvider as Auth0AuthProvider } from 'src/auth/context/auth0'; +import { AuthProvider as SupabaseAuthProvider } from 'src/auth/context/supabase'; + +// ---------------------------------------------------------------------- + +const AuthProvider = + (CONFIG.auth.method === 'supabase' && SupabaseAuthProvider) || (CONFIG.auth.method === 'auth0' && Auth0AuthProvider) || JwtAuthProvider; + +export const viewport: Viewport = { + width: 'device-width', + initialScale: 1, + themeColor: primary.main, +}; + +export const metadata = { + title: CONFIG.site.name, + description: `${CONFIG.site.name}, your assistant to handle everything Bitcoin`, + keywords: 'bitcoin,numeraire,swissknife,blockchain,lightning,rgb,protocol,smartcontract,decentralised,network,taproot-assets', + manifest: '/site.webmanifest', + icons: [ + { rel: 'icon', url: `${CONFIG.site.basePath}/favicon/favicon.ico` }, + { + rel: 'icon', + type: 'image/png', + sizes: '16x16', + url: `${CONFIG.site.basePath}/favicon/favicon-16x16.png`, + }, + { + rel: 'icon', + type: 'image/png', + sizes: '32x32', + url: `${CONFIG.site.basePath}/favicon/favicon-32x32.png`, + }, + { + rel: 'apple-touch-icon', + sizes: '180x180', + url: `${CONFIG.site.basePath}/favicon/apple-touch-icon.png`, + }, + { + rel: 'mask-icon', + color: '#5bbad5', + url: `${CONFIG.site.basePath}/favicon/safari-pinned-tab.svg`, + }, + ], +}; + +type Props = { + children: React.ReactNode; +}; + +export default async function RootLayout({ children }: Props) { + const lang = CONFIG.isStaticExport ? 'en' : await detectLanguage(); + + const settings = CONFIG.isStaticExport ? defaultSettings : await detectSettings(); + + return ( + + + {getInitColorSchemeScript} + + + + + + + + + + + {children} + + + + + + + + + ); +} diff --git a/dashboard/src/app/loading.tsx b/dashboard/src/app/loading.tsx new file mode 100644 index 00000000..7d29a81a --- /dev/null +++ b/dashboard/src/app/loading.tsx @@ -0,0 +1,7 @@ +import { SplashScreen } from 'src/components/loading-screen'; + +// ---------------------------------------------------------------------- + +export default function Loading() { + return ; +} diff --git a/dashboard/src/app/login/callback/page.tsx b/dashboard/src/app/login/callback/page.tsx new file mode 100644 index 00000000..a7a78fd4 --- /dev/null +++ b/dashboard/src/app/login/callback/page.tsx @@ -0,0 +1,7 @@ +import { SplashScreen } from 'src/components/loading-screen'; + +// ---------------------------------------------------------------------- + +export default function CallbackPage() { + return ; +} diff --git a/dashboard/src/app/login/layout.tsx b/dashboard/src/app/login/layout.tsx new file mode 100644 index 00000000..af074b0a --- /dev/null +++ b/dashboard/src/app/login/layout.tsx @@ -0,0 +1,17 @@ +import { AuthCenteredLayout } from 'src/layouts/auth-centered'; + +import { GuestGuard } from 'src/auth/guard'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export default function Layout({ children }: Props) { + return ( + + {children} + + ); +} diff --git a/dashboard/src/app/login/page.tsx b/dashboard/src/app/login/page.tsx new file mode 100644 index 00000000..5194a831 --- /dev/null +++ b/dashboard/src/app/login/page.tsx @@ -0,0 +1,22 @@ +import { appTitle } from 'src/utils/format-string'; + +import { CONFIG } from 'src/config-global'; + +import { JwtSignInView } from 'src/sections/auth/jwt'; +import { Auth0SignInView } from 'src/sections/auth/auth0'; +import { SupabaseSignInView } from 'src/sections/auth/supabase'; + +// ---------------------------------------------------------------------- + +export const metadata = { title: appTitle('Sign In') }; + +export default function Page() { + switch (CONFIG.auth.method) { + case 'auth0': + return ; + case 'supabase': + return ; + default: + return ; + } +} diff --git a/dashboard/src/app/not-found.tsx b/dashboard/src/app/not-found.tsx new file mode 100644 index 00000000..9b66413a --- /dev/null +++ b/dashboard/src/app/not-found.tsx @@ -0,0 +1,13 @@ +import { appTitle } from 'src/utils/format-string'; + +import { CONFIG } from 'src/config-global'; + +import { NotFoundView } from 'src/sections/error'; + +// ---------------------------------------------------------------------- + +export const metadata = { title: appTitle(`404 page not found! | Error - ${CONFIG.site.name}`) }; + +export default function NotFoundPage() { + return ; +} diff --git a/dashboard/src/app/reset-password/layout.tsx b/dashboard/src/app/reset-password/layout.tsx new file mode 100644 index 00000000..9726184f --- /dev/null +++ b/dashboard/src/app/reset-password/layout.tsx @@ -0,0 +1,11 @@ +import { AuthSplitLayout } from 'src/layouts/auth-split'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export default function Layout({ children }: Props) { + return {children}; +} diff --git a/dashboard/src/app/reset-password/page.tsx b/dashboard/src/app/reset-password/page.tsx new file mode 100644 index 00000000..bc7ea719 --- /dev/null +++ b/dashboard/src/app/reset-password/page.tsx @@ -0,0 +1,11 @@ +import { CONFIG } from 'src/config-global'; + +import { SupabaseResetPasswordView } from 'src/sections/auth/supabase'; + +// ---------------------------------------------------------------------- + +export const metadata = { title: `Reset password | Supabase - ${CONFIG.site.name}` }; + +export default function Page() { + return ; +} diff --git a/dashboard/src/app/sign-up/layout.tsx b/dashboard/src/app/sign-up/layout.tsx new file mode 100644 index 00000000..af074b0a --- /dev/null +++ b/dashboard/src/app/sign-up/layout.tsx @@ -0,0 +1,17 @@ +import { AuthCenteredLayout } from 'src/layouts/auth-centered'; + +import { GuestGuard } from 'src/auth/guard'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export default function Layout({ children }: Props) { + return ( + + {children} + + ); +} diff --git a/dashboard/src/app/sign-up/page.tsx b/dashboard/src/app/sign-up/page.tsx new file mode 100644 index 00000000..688fd213 --- /dev/null +++ b/dashboard/src/app/sign-up/page.tsx @@ -0,0 +1,19 @@ +import { appTitle } from 'src/utils/format-string'; + +import { CONFIG } from 'src/config-global'; + +import { JwtSignUpView } from 'src/sections/auth/jwt'; +import { SupabaseSignUpView } from 'src/sections/auth/supabase'; + +// ---------------------------------------------------------------------- + +export const metadata = { title: appTitle('Sign Up') }; + +export default function Page() { + switch (CONFIG.auth.method) { + case 'supabase': + return ; + default: + return ; + } +} diff --git a/dashboard/src/app/update-password/layout.tsx b/dashboard/src/app/update-password/layout.tsx new file mode 100644 index 00000000..9726184f --- /dev/null +++ b/dashboard/src/app/update-password/layout.tsx @@ -0,0 +1,11 @@ +import { AuthSplitLayout } from 'src/layouts/auth-split'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export default function Layout({ children }: Props) { + return {children}; +} diff --git a/dashboard/src/app/update-password/page.tsx b/dashboard/src/app/update-password/page.tsx new file mode 100644 index 00000000..cc7a9b5d --- /dev/null +++ b/dashboard/src/app/update-password/page.tsx @@ -0,0 +1,11 @@ +import { CONFIG } from 'src/config-global'; + +import { SupabaseUpdatePasswordView } from 'src/sections/auth/supabase'; + +// ---------------------------------------------------------------------- + +export const metadata = { title: `Update password | Supabase - ${CONFIG.site.name}` }; + +export default function Page() { + return ; +} diff --git a/dashboard/src/app/verify/layout.tsx b/dashboard/src/app/verify/layout.tsx new file mode 100644 index 00000000..9726184f --- /dev/null +++ b/dashboard/src/app/verify/layout.tsx @@ -0,0 +1,11 @@ +import { AuthSplitLayout } from 'src/layouts/auth-split'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export default function Layout({ children }: Props) { + return {children}; +} diff --git a/dashboard/src/app/verify/page.tsx b/dashboard/src/app/verify/page.tsx new file mode 100644 index 00000000..a6e0ea1b --- /dev/null +++ b/dashboard/src/app/verify/page.tsx @@ -0,0 +1,11 @@ +import { CONFIG } from 'src/config-global'; + +import { SupabaseVerifyView } from 'src/sections/auth/supabase'; + +// ---------------------------------------------------------------------- + +export const metadata = { title: `Verify | Supabase - ${CONFIG.site.name}` }; + +export default function Page() { + return ; +} diff --git a/dashboard/src/assets/data/countries.ts b/dashboard/src/assets/data/countries.ts new file mode 100644 index 00000000..1fbd01e4 --- /dev/null +++ b/dashboard/src/assets/data/countries.ts @@ -0,0 +1,251 @@ +export const countries = [ + { code: '', label: '', phone: '' }, + { code: 'AD', label: 'Andorra', phone: '376' }, + { code: 'AE', label: 'United Arab Emirates', phone: '971' }, + { code: 'AF', label: 'Afghanistan', phone: '93' }, + { code: 'AG', label: 'Antigua and Barbuda', phone: '1-268' }, + { code: 'AI', label: 'Anguilla', phone: '1-264' }, + { code: 'AL', label: 'Albania', phone: '355' }, + { code: 'AM', label: 'Armenia', phone: '374' }, + { code: 'AO', label: 'Angola', phone: '244' }, + { code: 'AQ', label: 'Antarctica', phone: '672' }, + { code: 'AR', label: 'Argentina', phone: '54' }, + { code: 'AS', label: 'American Samoa', phone: '1-684' }, + { code: 'AT', label: 'Austria', phone: '43' }, + { code: 'AU', label: 'Australia', phone: '61' }, + { code: 'AW', label: 'Aruba', phone: '297' }, + { code: 'AX', label: 'Alland Islands', phone: '358' }, + { code: 'AZ', label: 'Azerbaijan', phone: '994' }, + { code: 'BA', label: 'Bosnia and Herzegovina', phone: '387' }, + { code: 'BB', label: 'Barbados', phone: '1-246' }, + { code: 'BD', label: 'Bangladesh', phone: '880' }, + { code: 'BE', label: 'Belgium', phone: '32' }, + { code: 'BF', label: 'Burkina Faso', phone: '226' }, + { code: 'BG', label: 'Bulgaria', phone: '359' }, + { code: 'BH', label: 'Bahrain', phone: '973' }, + { code: 'BI', label: 'Burundi', phone: '257' }, + { code: 'BJ', label: 'Benin', phone: '229' }, + { code: 'BL', label: 'Saint Barthelemy', phone: '590' }, + { code: 'BM', label: 'Bermuda', phone: '1-441' }, + { code: 'BN', label: 'Brunei Darussalam', phone: '673' }, + { code: 'BO', label: 'Bolivia', phone: '591' }, + { code: 'BR', label: 'Brazil', phone: '55' }, + { code: 'BS', label: 'Bahamas', phone: '1-242' }, + { code: 'BT', label: 'Bhutan', phone: '975' }, + { code: 'BV', label: 'Bouvet Island', phone: '47' }, + { code: 'BW', label: 'Botswana', phone: '267' }, + { code: 'BY', label: 'Belarus', phone: '375' }, + { code: 'BZ', label: 'Belize', phone: '501' }, + { code: 'CA', label: 'Canada', phone: '1' }, + { code: 'CC', label: 'Cocos (Keeling) Islands', phone: '61' }, + { code: 'CD', label: 'Congo, Democratic Republic of the', phone: '243' }, + { code: 'CF', label: 'Central African Republic', phone: '236' }, + { code: 'CG', label: 'Congo, Republic of the', phone: '242' }, + { code: 'CH', label: 'Switzerland', phone: '41' }, + { code: 'CI', label: "Cote d'Ivoire", phone: '225' }, + { code: 'CK', label: 'Cook Islands', phone: '682' }, + { code: 'CL', label: 'Chile', phone: '56' }, + { code: 'CM', label: 'Cameroon', phone: '237' }, + { code: 'CN', label: 'China', phone: '86' }, + { code: 'CO', label: 'Colombia', phone: '57' }, + { code: 'CR', label: 'Costa Rica', phone: '506' }, + { code: 'CU', label: 'Cuba', phone: '53' }, + { code: 'CV', label: 'Cape Verde', phone: '238' }, + { code: 'CW', label: 'Curacao', phone: '599' }, + { code: 'CX', label: 'Christmas Island', phone: '61' }, + { code: 'CY', label: 'Cyprus', phone: '357' }, + { code: 'CZ', label: 'Czech Republic', phone: '420' }, + { code: 'DE', label: 'Germany', phone: '49' }, + { code: 'DJ', label: 'Djibouti', phone: '253' }, + { code: 'DK', label: 'Denmark', phone: '45' }, + { code: 'DM', label: 'Dominica', phone: '1-767' }, + { code: 'DO', label: 'Dominican Republic', phone: '1-809' }, + { code: 'DZ', label: 'Algeria', phone: '213' }, + { code: 'EC', label: 'Ecuador', phone: '593' }, + { code: 'EE', label: 'Estonia', phone: '372' }, + { code: 'EG', label: 'Egypt', phone: '20' }, + { code: 'EH', label: 'Western Sahara', phone: '212' }, + { code: 'ER', label: 'Eritrea', phone: '291' }, + { code: 'ES', label: 'Spain', phone: '34' }, + { code: 'ET', label: 'Ethiopia', phone: '251' }, + { code: 'FI', label: 'Finland', phone: '358' }, + { code: 'FJ', label: 'Fiji', phone: '679' }, + { code: 'FK', label: 'Falkland Islands (Malvinas)', phone: '500' }, + { code: 'FM', label: 'Micronesia, Federated States of', phone: '691' }, + { code: 'FO', label: 'Faroe Islands', phone: '298' }, + { code: 'FR', label: 'France', phone: '33' }, + { code: 'GA', label: 'Gabon', phone: '241' }, + { code: 'GB', label: 'United Kingdom', phone: '44' }, + { code: 'GD', label: 'Grenada', phone: '1-473' }, + { code: 'GE', label: 'Georgia', phone: '995' }, + { code: 'GF', label: 'French Guiana', phone: '594' }, + { code: 'GG', label: 'Guernsey', phone: '44' }, + { code: 'GH', label: 'Ghana', phone: '233' }, + { code: 'GI', label: 'Gibraltar', phone: '350' }, + { code: 'GL', label: 'Greenland', phone: '299' }, + { code: 'GM', label: 'Gambia', phone: '220' }, + { code: 'GN', label: 'Guinea', phone: '224' }, + { code: 'GP', label: 'Guadeloupe', phone: '590' }, + { code: 'GQ', label: 'Equatorial Guinea', phone: '240' }, + { code: 'GR', label: 'Greece', phone: '30' }, + { code: 'GS', label: 'South Georgia and the South Sandwich Islands', phone: '500' }, + { code: 'GT', label: 'Guatemala', phone: '502' }, + { code: 'GU', label: 'Guam', phone: '1-671' }, + { code: 'GW', label: 'Guinea-Bissau', phone: '245' }, + { code: 'GY', label: 'Guyana', phone: '592' }, + { code: 'HK', label: 'Hong Kong', phone: '852' }, + { code: 'HM', label: 'Heard Island and McDonald Islands', phone: '672' }, + { code: 'HN', label: 'Honduras', phone: '504' }, + { code: 'HR', label: 'Croatia', phone: '385' }, + { code: 'HT', label: 'Haiti', phone: '509' }, + { code: 'HU', label: 'Hungary', phone: '36' }, + { code: 'ID', label: 'Indonesia', phone: '62' }, + { code: 'IE', label: 'Ireland', phone: '353' }, + { code: 'IL', label: 'Israel', phone: '972' }, + { code: 'IM', label: 'Isle of Man', phone: '44' }, + { code: 'IN', label: 'India', phone: '91' }, + { code: 'IO', label: 'British Indian Ocean Territory', phone: '246' }, + { code: 'IQ', label: 'Iraq', phone: '964' }, + { code: 'IR', label: 'Iran, Islamic Republic of', phone: '98' }, + { code: 'IS', label: 'Iceland', phone: '354' }, + { code: 'IT', label: 'Italy', phone: '39' }, + { code: 'JE', label: 'Jersey', phone: '44' }, + { code: 'JM', label: 'Jamaica', phone: '1-876' }, + { code: 'JO', label: 'Jordan', phone: '962' }, + { code: 'JP', label: 'Japan', phone: '81' }, + { code: 'KE', label: 'Kenya', phone: '254' }, + { code: 'KG', label: 'Kyrgyzstan', phone: '996' }, + { code: 'KH', label: 'Cambodia', phone: '855' }, + { code: 'KI', label: 'Kiribati', phone: '686' }, + { code: 'KM', label: 'Comoros', phone: '269' }, + { code: 'KN', label: 'Saint Kitts and Nevis', phone: '1-869' }, + { code: 'KP', label: "Korea, Democratic People's Republic of", phone: '850' }, + { code: 'KR', label: 'Korea, Republic of', phone: '82' }, + { code: 'KW', label: 'Kuwait', phone: '965' }, + { code: 'KY', label: 'Cayman Islands', phone: '1-345' }, + { code: 'KZ', label: 'Kazakhstan', phone: '7' }, + { code: 'LA', label: "Lao People's Democratic Republic", phone: '856' }, + { code: 'LB', label: 'Lebanon', phone: '961' }, + { code: 'LC', label: 'Saint Lucia', phone: '1-758' }, + { code: 'LI', label: 'Liechtenstein', phone: '423' }, + { code: 'LK', label: 'Sri Lanka', phone: '94' }, + { code: 'LR', label: 'Liberia', phone: '231' }, + { code: 'LS', label: 'Lesotho', phone: '266' }, + { code: 'LT', label: 'Lithuania', phone: '370' }, + { code: 'LU', label: 'Luxembourg', phone: '352' }, + { code: 'LV', label: 'Latvia', phone: '371' }, + { code: 'LY', label: 'Libya', phone: '218' }, + { code: 'MA', label: 'Morocco', phone: '212' }, + { code: 'MC', label: 'Monaco', phone: '377' }, + { code: 'MD', label: 'Moldova, Republic of', phone: '373' }, + { code: 'ME', label: 'Montenegro', phone: '382' }, + { code: 'MF', label: 'Saint Martin (French part)', phone: '590' }, + { code: 'MG', label: 'Madagascar', phone: '261' }, + { code: 'MH', label: 'Marshall Islands', phone: '692' }, + { code: 'MK', label: 'Macedonia, the Former Yugoslav Republic of', phone: '389' }, + { code: 'ML', label: 'Mali', phone: '223' }, + { code: 'MM', label: 'Myanmar', phone: '95' }, + { code: 'MN', label: 'Mongolia', phone: '976' }, + { code: 'MO', label: 'Macao', phone: '853' }, + { code: 'MP', label: 'Northern Mariana Islands', phone: '1-670' }, + { code: 'MQ', label: 'Martinique', phone: '596' }, + { code: 'MR', label: 'Mauritania', phone: '222' }, + { code: 'MS', label: 'Montserrat', phone: '1-664' }, + { code: 'MT', label: 'Malta', phone: '356' }, + { code: 'MU', label: 'Mauritius', phone: '230' }, + { code: 'MV', label: 'Maldives', phone: '960' }, + { code: 'MW', label: 'Malawi', phone: '265' }, + { code: 'MX', label: 'Mexico', phone: '52' }, + { code: 'MY', label: 'Malaysia', phone: '60' }, + { code: 'MZ', label: 'Mozambique', phone: '258' }, + { code: 'NA', label: 'Namibia', phone: '264' }, + { code: 'NC', label: 'New Caledonia', phone: '687' }, + { code: 'NE', label: 'Niger', phone: '227' }, + { code: 'NF', label: 'Norfolk Island', phone: '672' }, + { code: 'NG', label: 'Nigeria', phone: '234' }, + { code: 'NI', label: 'Nicaragua', phone: '505' }, + { code: 'NL', label: 'Netherlands', phone: '31' }, + { code: 'NO', label: 'Norway', phone: '47' }, + { code: 'NP', label: 'Nepal', phone: '977' }, + { code: 'NR', label: 'Nauru', phone: '674' }, + { code: 'NU', label: 'Niue', phone: '683' }, + { code: 'NZ', label: 'New Zealand', phone: '64' }, + { code: 'OM', label: 'Oman', phone: '968' }, + { code: 'PA', label: 'Panama', phone: '507' }, + { code: 'PE', label: 'Peru', phone: '51' }, + { code: 'PF', label: 'French Polynesia', phone: '689' }, + { code: 'PG', label: 'Papua New Guinea', phone: '675' }, + { code: 'PH', label: 'Philippines', phone: '63' }, + { code: 'PK', label: 'Pakistan', phone: '92' }, + { code: 'PL', label: 'Poland', phone: '48' }, + { code: 'PM', label: 'Saint Pierre and Miquelon', phone: '508' }, + { code: 'PN', label: 'Pitcairn', phone: '870' }, + { code: 'PR', label: 'Puerto Rico', phone: '1' }, + { code: 'PS', label: 'Palestine, State of', phone: '970' }, + { code: 'PT', label: 'Portugal', phone: '351' }, + { code: 'PW', label: 'Palau', phone: '680' }, + { code: 'PY', label: 'Paraguay', phone: '595' }, + { code: 'QA', label: 'Qatar', phone: '974' }, + { code: 'RE', label: 'Reunion', phone: '262' }, + { code: 'RO', label: 'Romania', phone: '40' }, + { code: 'RS', label: 'Serbia', phone: '381' }, + { code: 'RU', label: 'Russian Federation', phone: '7' }, + { code: 'RW', label: 'Rwanda', phone: '250' }, + { code: 'SA', label: 'Saudi Arabia', phone: '966' }, + { code: 'SB', label: 'Solomon Islands', phone: '677' }, + { code: 'SC', label: 'Seychelles', phone: '248' }, + { code: 'SD', label: 'Sudan', phone: '249' }, + { code: 'SE', label: 'Sweden', phone: '46' }, + { code: 'SG', label: 'Singapore', phone: '65' }, + { code: 'SH', label: 'Saint Helena', phone: '290' }, + { code: 'SI', label: 'Slovenia', phone: '386' }, + { code: 'SJ', label: 'Svalbard and Jan Mayen', phone: '47' }, + { code: 'SK', label: 'Slovakia', phone: '421' }, + { code: 'SL', label: 'Sierra Leone', phone: '232' }, + { code: 'SM', label: 'San Marino', phone: '378' }, + { code: 'SN', label: 'Senegal', phone: '221' }, + { code: 'SO', label: 'Somalia', phone: '252' }, + { code: 'SR', label: 'Suriname', phone: '597' }, + { code: 'SS', label: 'South Sudan', phone: '211' }, + { code: 'ST', label: 'Sao Tome and Principe', phone: '239' }, + { code: 'SV', label: 'El Salvador', phone: '503' }, + { code: 'SX', label: 'Sint Maarten (Dutch part)', phone: '1-721' }, + { code: 'SY', label: 'Syrian Arab Republic', phone: '963' }, + { code: 'SZ', label: 'Swaziland', phone: '268' }, + { code: 'TC', label: 'Turks and Caicos Islands', phone: '1-649' }, + { code: 'TD', label: 'Chad', phone: '235' }, + { code: 'TF', label: 'French Southern Territories', phone: '262' }, + { code: 'TG', label: 'Togo', phone: '228' }, + { code: 'TH', label: 'Thailand', phone: '66' }, + { code: 'TJ', label: 'Tajikistan', phone: '992' }, + { code: 'TK', label: 'Tokelau', phone: '690' }, + { code: 'TL', label: 'Timor-Leste', phone: '670' }, + { code: 'TM', label: 'Turkmenistan', phone: '993' }, + { code: 'TN', label: 'Tunisia', phone: '216' }, + { code: 'TO', label: 'Tonga', phone: '676' }, + { code: 'TR', label: 'Turkey', phone: '90' }, + { code: 'TT', label: 'Trinidad and Tobago', phone: '1-868' }, + { code: 'TV', label: 'Tuvalu', phone: '688' }, + { code: 'TW', label: 'Taiwan, Province of China', phone: '886' }, + { code: 'TZ', label: 'United Republic of Tanzania', phone: '255' }, + { code: 'UA', label: 'Ukraine', phone: '380' }, + { code: 'UG', label: 'Uganda', phone: '256' }, + { code: 'US', label: 'United States', phone: '1' }, + { code: 'UY', label: 'Uruguay', phone: '598' }, + { code: 'UZ', label: 'Uzbekistan', phone: '998' }, + { code: 'VA', label: 'Holy See (Vatican City State)', phone: '379' }, + { code: 'VC', label: 'Saint Vincent and the Grenadines', phone: '1-784' }, + { code: 'VE', label: 'Venezuela', phone: '58' }, + { code: 'VG', label: 'British Virgin Islands', phone: '1-284' }, + { code: 'VI', label: 'US Virgin Islands', phone: '1-340' }, + { code: 'VN', label: 'Vietnam', phone: '84' }, + { code: 'VU', label: 'Vanuatu', phone: '678' }, + { code: 'WF', label: 'Wallis and Futuna', phone: '681' }, + { code: 'WS', label: 'Samoa', phone: '685' }, + { code: 'XK', label: 'Kosovo', phone: '383' }, + { code: 'YE', label: 'Yemen', phone: '967' }, + { code: 'YT', label: 'Mayotte', phone: '262' }, + { code: 'ZA', label: 'South Africa', phone: '27' }, + { code: 'ZM', label: 'Zambia', phone: '260' }, + { code: 'ZW', label: 'Zimbabwe', phone: '263' }, +]; diff --git a/dashboard/src/assets/data/currencies.ts b/dashboard/src/assets/data/currencies.ts new file mode 100644 index 00000000..73b01819 --- /dev/null +++ b/dashboard/src/assets/data/currencies.ts @@ -0,0 +1,3 @@ +import type { CurrencyValue } from 'src/types/currency'; + +export const currencies: Array = ['USD', 'CHF', 'EUR', 'GBP', 'CAD', 'AUD', 'JPY']; diff --git a/dashboard/src/assets/data/index.ts b/dashboard/src/assets/data/index.ts new file mode 100644 index 00000000..21d4fc6e --- /dev/null +++ b/dashboard/src/assets/data/index.ts @@ -0,0 +1,2 @@ +export * from './countries'; +export * from './currencies'; diff --git a/dashboard/src/assets/icons/email-inbox-icon.tsx b/dashboard/src/assets/icons/email-inbox-icon.tsx new file mode 100644 index 00000000..bf73f104 --- /dev/null +++ b/dashboard/src/assets/icons/email-inbox-icon.tsx @@ -0,0 +1,127 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +function EmailInboxIcon({ sx, ...other }: BoxProps) { + const theme = useTheme(); + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const WARNING_LIGHT = theme.vars.palette.warning.light; + + const WARNING_DARK = theme.vars.palette.warning.dark; + + return ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(EmailInboxIcon); diff --git a/dashboard/src/assets/icons/index.ts b/dashboard/src/assets/icons/index.ts new file mode 100644 index 00000000..a6cab8e3 --- /dev/null +++ b/dashboard/src/assets/icons/index.ts @@ -0,0 +1,4 @@ +export { default as SentIcon } from './sent-icon'; +export { default as PasswordIcon } from './password-icon'; +export { default as EmailInboxIcon } from './email-inbox-icon'; +export { default as NewPasswordIcon } from './new-password-icon'; diff --git a/dashboard/src/assets/icons/new-password-icon.tsx b/dashboard/src/assets/icons/new-password-icon.tsx new file mode 100644 index 00000000..08f08789 --- /dev/null +++ b/dashboard/src/assets/icons/new-password-icon.tsx @@ -0,0 +1,106 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +function NewPasswordIcon({ sx, ...other }: BoxProps) { + const theme = useTheme(); + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const WARNING_LIGHT = theme.vars.palette.warning.light; + + const WARNING_DARK = theme.vars.palette.warning.dark; + + return ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(NewPasswordIcon); diff --git a/dashboard/src/assets/icons/password-icon.tsx b/dashboard/src/assets/icons/password-icon.tsx new file mode 100644 index 00000000..c76e908a --- /dev/null +++ b/dashboard/src/assets/icons/password-icon.tsx @@ -0,0 +1,102 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +function PasswordIcon({ sx, ...other }: BoxProps) { + const theme = useTheme(); + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const WARNING_LIGHT = theme.vars.palette.warning.light; + + return ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(PasswordIcon); diff --git a/dashboard/src/assets/icons/sent-icon.tsx b/dashboard/src/assets/icons/sent-icon.tsx new file mode 100644 index 00000000..95380711 --- /dev/null +++ b/dashboard/src/assets/icons/sent-icon.tsx @@ -0,0 +1,67 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +function SentIcon({ sx, ...other }: BoxProps) { + const theme = useTheme(); + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const PRIMARY_DARK = theme.vars.palette.primary.dark; + + return ( + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(SentIcon); diff --git a/dashboard/src/assets/illustrations/avatar-shape.tsx b/dashboard/src/assets/illustrations/avatar-shape.tsx new file mode 100644 index 00000000..93ca1220 --- /dev/null +++ b/dashboard/src/assets/illustrations/avatar-shape.tsx @@ -0,0 +1,30 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; + +// ---------------------------------------------------------------------- + +function AvatarShape({ sx, ...other }: BoxProps) { + return ( + + + + ); +} + +export default memo(AvatarShape); diff --git a/dashboard/src/assets/illustrations/background-shape.tsx b/dashboard/src/assets/illustrations/background-shape.tsx new file mode 100644 index 00000000..5723d952 --- /dev/null +++ b/dashboard/src/assets/illustrations/background-shape.tsx @@ -0,0 +1,31 @@ +import { useId } from 'react'; + +import { useTheme } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export function BackgroundShape() { + const theme = useTheme(); + + const gradientId = useId(); + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + return ( + <> + + + + + + + + + + ); +} diff --git a/dashboard/src/assets/illustrations/forbidden-illustration.tsx b/dashboard/src/assets/illustrations/forbidden-illustration.tsx new file mode 100644 index 00000000..89538bde --- /dev/null +++ b/dashboard/src/assets/illustrations/forbidden-illustration.tsx @@ -0,0 +1,86 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +import { CONFIG } from 'src/config-global'; + +import { BackgroundShape } from './background-shape'; + +// ---------------------------------------------------------------------- + +type Props = BoxProps & { + hideBackground?: boolean; +}; + +function ForbiddenIllustration({ hideBackground, sx, ...other }: Props) { + const theme = useTheme(); + + const PRIMARY_LIGHT = theme.vars.palette.primary.light; + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const PRIMARY_DARK = theme.vars.palette.primary.dark; + + const PRIMARY_DARKER = theme.vars.palette.primary.darker; + + return ( + + {!hideBackground && } + + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(ForbiddenIllustration); diff --git a/dashboard/src/assets/illustrations/index.ts b/dashboard/src/assets/illustrations/index.ts new file mode 100644 index 00000000..8cc6c16f --- /dev/null +++ b/dashboard/src/assets/illustrations/index.ts @@ -0,0 +1,4 @@ +export { default as AvatarShape } from './avatar-shape'; +export { default as UploadIllustration } from './upload-illustration'; +export { default as ForbiddenIllustration } from './forbidden-illustration'; +export { default as PageNotFoundIllustration } from './page-not-found-illustration'; diff --git a/dashboard/src/assets/illustrations/page-not-found-illustration.tsx b/dashboard/src/assets/illustrations/page-not-found-illustration.tsx new file mode 100644 index 00000000..ba114930 --- /dev/null +++ b/dashboard/src/assets/illustrations/page-not-found-illustration.tsx @@ -0,0 +1,72 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +import { CONFIG } from 'src/config-global'; + +import { BackgroundShape } from './background-shape'; + +// ---------------------------------------------------------------------- + +type Props = BoxProps & { + hideBackground?: boolean; +}; + +function PageNotFoundIllustration({ hideBackground, sx, ...other }: Props) { + const theme = useTheme(); + + const PRIMARY_LIGHT = theme.vars.palette.primary.light; + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const PRIMARY_DARK = theme.vars.palette.primary.dark; + + const PRIMARY_DARKER = theme.vars.palette.primary.darker; + + return ( + + {!hideBackground && } + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(PageNotFoundIllustration); diff --git a/dashboard/src/assets/illustrations/upload-illustration.tsx b/dashboard/src/assets/illustrations/upload-illustration.tsx new file mode 100644 index 00000000..26431904 --- /dev/null +++ b/dashboard/src/assets/illustrations/upload-illustration.tsx @@ -0,0 +1,483 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { memo } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +import { BackgroundShape } from './background-shape'; + +// ---------------------------------------------------------------------- + +type Props = BoxProps & { + hideBackground?: boolean; +}; + +function UploadIllustration({ hideBackground, sx, ...other }: Props) { + const theme = useTheme(); + + const PRIMARY_MAIN = theme.vars.palette.primary.main; + + const PRIMARY_DARK = theme.vars.palette.primary.dark; + + const PRIMARY_DARKER = theme.vars.palette.primary.darker; + + return ( + + {!hideBackground && } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ); +} + +export default memo(UploadIllustration); diff --git a/dashboard/src/auth/context/auth-context.tsx b/dashboard/src/auth/context/auth-context.tsx new file mode 100644 index 00000000..abd1d526 --- /dev/null +++ b/dashboard/src/auth/context/auth-context.tsx @@ -0,0 +1,11 @@ +'use client'; + +import { createContext } from 'react'; + +import type { AuthContextValue } from '../types'; + +// ---------------------------------------------------------------------- + +export const AuthContext = createContext(undefined); + +export const AuthConsumer = AuthContext.Consumer; diff --git a/dashboard/src/auth/context/auth0/auth-provider.tsx b/dashboard/src/auth/context/auth0/auth-provider.tsx new file mode 100644 index 00000000..bf323503 --- /dev/null +++ b/dashboard/src/auth/context/auth0/auth-provider.tsx @@ -0,0 +1,122 @@ +'use client'; + +import type { AppState } from '@auth0/auth0-react'; +import type { DecodedToken } from 'src/auth/types'; + +import { jwtDecode } from 'jwt-decode'; +import { useAuth0, Auth0Provider } from '@auth0/auth0-react'; +import { useMemo, useState, useEffect, useCallback } from 'react'; + +import { CONFIG } from 'src/config-global'; +import { client } from 'src/lib/swissknife'; + +import { AuthContext } from '../auth-context'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export function AuthProvider({ children }: Props) { + const { domain, clientId, callbackUrl, audience } = CONFIG.auth0; + + const onRedirectCallback = useCallback((appState?: AppState) => { + window.location.replace(appState?.returnTo || window.location.pathname); + }, []); + + if (!(domain && clientId && callbackUrl)) { + return null; + } + + return ( + + {children} + + ); +} + +// ---------------------------------------------------------------------- + +function AuthProviderContainer({ children }: Props) { + const { user, isLoading, isAuthenticated, getAccessTokenSilently, loginWithRedirect, logout } = useAuth0(); + const { audience } = CONFIG.auth0; + + const [accessToken, setAccessToken] = useState(null); + const [permissions, setPermissions] = useState([]); + + const getAccessToken = useCallback(async () => { + try { + if (isAuthenticated) { + const token = await getAccessTokenSilently({ authorizationParams: { audience } }); + + setAccessToken(token); + setPermissions(jwtDecode(token).permissions || []); + + client.interceptors.request.use(async (request) => { + try { + const t = await getAccessTokenSilently({ authorizationParams: { audience } }); + request.headers.set('Authorization', `Bearer ${t}`); + } catch (e) { + console.error('Token expired or missing, redirecting to login'); + loginWithRedirect(); + } + + return request; + }); + } else { + setAccessToken(null); + setPermissions([]); + } + } catch (e) { + console.error('Failed to get token:', e); + + setAccessToken(null); + setPermissions([]); + + if (e.error === 'missing_refresh_token' || e.error === 'invalid_grant') { + loginWithRedirect(); + } else { + logout(); + } + } + }, [getAccessTokenSilently, isAuthenticated, audience, loginWithRedirect, logout]); + + useEffect(() => { + getAccessToken(); + }, [getAccessToken]); + + // ---------------------------------------------------------------------- + + const checkAuthenticated = isAuthenticated ? 'authenticated' : 'unauthenticated'; + + const status = isLoading ? 'loading' : checkAuthenticated; + + const memoizedValue = useMemo( + () => ({ + user: user + ? { + ...user, + id: user?.sub, + accessToken, + displayName: user?.name, + photoURL: user?.picture, + permissions, + } + : null, + loading: status === 'loading', + authenticated: status === 'authenticated', + unauthenticated: status === 'unauthenticated', + }), + [accessToken, status, user, permissions] + ); + + return {children}; +} diff --git a/dashboard/src/auth/context/auth0/index.ts b/dashboard/src/auth/context/auth0/index.ts new file mode 100644 index 00000000..99c7072d --- /dev/null +++ b/dashboard/src/auth/context/auth0/index.ts @@ -0,0 +1 @@ +export * from './auth-provider'; diff --git a/dashboard/src/auth/context/jwt/action.ts b/dashboard/src/auth/context/jwt/action.ts new file mode 100644 index 00000000..ec90f79c --- /dev/null +++ b/dashboard/src/auth/context/jwt/action.ts @@ -0,0 +1,40 @@ +'use client'; + +import { endpointKeys } from 'src/actions/keys'; + +import { STORAGE_KEY } from './constant'; + +// ---------------------------------------------------------------------- + +export type SignUpParams = { + email: string; + password: string; + firstName: string; + lastName: string; +}; + +/** ************************************** + * Sign up + *************************************** */ +export const signUp = async ({ email, password, firstName, lastName }: SignUpParams): Promise => { + const res = await fetch(endpointKeys.auth.signUp, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({ email, password, firstName, lastName }), + }); + + const { accessToken } = await res.json(); + + if (!accessToken) { + throw new Error('Access token not found in response'); + } + + sessionStorage.setItem(STORAGE_KEY, accessToken); +}; + +/** ************************************** + * Sign out + *************************************** */ +export const signOut = async (): Promise => { + sessionStorage.removeItem(STORAGE_KEY); +}; diff --git a/dashboard/src/auth/context/jwt/auth-provider.tsx b/dashboard/src/auth/context/jwt/auth-provider.tsx new file mode 100644 index 00000000..8faa8a4f --- /dev/null +++ b/dashboard/src/auth/context/jwt/auth-provider.tsx @@ -0,0 +1,76 @@ +'use client'; + +import { jwtDecode } from 'jwt-decode'; +import { useMemo, useEffect, useCallback } from 'react'; + +import { useSetState } from 'src/hooks/use-set-state'; + +import { STORAGE_KEY } from './constant'; +import { AuthContext } from '../auth-context'; +import { setSession, isValidToken } from './utils'; + +import type { AuthState, DecodedToken } from '../../types'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export function AuthProvider({ children }: Props) { + const { state, setState } = useSetState({ + user: null, + loading: true, + }); + + const checkUserSession = useCallback(async () => { + try { + const accessToken = sessionStorage.getItem(STORAGE_KEY); + + if (accessToken && isValidToken(accessToken)) { + setSession(accessToken); + + const decodedToken: DecodedToken = jwtDecode(accessToken); + + setState({ + user: { + sub: decodedToken.sub, + displayName: decodedToken.sub, + permissions: decodedToken.permissions || [], + accessToken, + }, + loading: false, + }); + } else { + setState({ user: null, loading: false }); + } + } catch (error) { + console.error(error); + setState({ user: null, loading: false }); + } + }, [setState]); + + useEffect(() => { + checkUserSession(); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + // ---------------------------------------------------------------------- + + const checkAuthenticated = state.user ? 'authenticated' : 'unauthenticated'; + + const status = state.loading ? 'loading' : checkAuthenticated; + + const memoizedValue = useMemo( + () => ({ + user: state.user, + checkUserSession, + loading: status === 'loading', + authenticated: status === 'authenticated', + unauthenticated: status === 'unauthenticated', + }), + [checkUserSession, state.user, status] + ); + + return {children}; +} diff --git a/dashboard/src/auth/context/jwt/constant.ts b/dashboard/src/auth/context/jwt/constant.ts new file mode 100644 index 00000000..14d75cbc --- /dev/null +++ b/dashboard/src/auth/context/jwt/constant.ts @@ -0,0 +1 @@ +export const STORAGE_KEY = 'jwt_access_token'; diff --git a/dashboard/src/auth/context/jwt/index.ts b/dashboard/src/auth/context/jwt/index.ts new file mode 100644 index 00000000..0ec4a9b7 --- /dev/null +++ b/dashboard/src/auth/context/jwt/index.ts @@ -0,0 +1,7 @@ +export * from './utils'; + +export * from './action'; + +export * from './constant'; + +export * from './auth-provider'; diff --git a/dashboard/src/auth/context/jwt/utils.ts b/dashboard/src/auth/context/jwt/utils.ts new file mode 100644 index 00000000..8358832e --- /dev/null +++ b/dashboard/src/auth/context/jwt/utils.ts @@ -0,0 +1,55 @@ +import { jwtDecode } from 'jwt-decode'; + +import { paths } from 'src/routes/paths'; + +import { client } from 'src/lib/swissknife'; + +import { STORAGE_KEY } from './constant'; + +// ---------------------------------------------------------------------- + +export function isValidToken(accessToken: string) { + if (!accessToken) { + return false; + } + + try { + const decoded = jwtDecode(accessToken); + + if (!decoded || !decoded.exp) { + return false; + } + + const currentTime = Date.now() / 1000; + + return decoded.exp > currentTime; + } catch (error) { + console.error('Error during token validation:', error); + return false; + } +} + +// ---------------------------------------------------------------------- + +export async function setSession(accessToken: string) { + try { + sessionStorage.setItem(STORAGE_KEY, accessToken); + + client.interceptors.request.use((request, _) => { + request.headers.set('Authorization', `Bearer ${accessToken}`); + return request; + }); + + client.interceptors.error.use((error, response) => { + if (response.status === 401) { + sessionStorage.removeItem(STORAGE_KEY); + window.location.href = paths.auth.jwt.signIn; + } + + return Promise.reject(error); + }); + } catch (error) { + console.error('Error during set session:', error); + throw error; + } +} diff --git a/dashboard/src/auth/context/supabase/action.tsx b/dashboard/src/auth/context/supabase/action.tsx new file mode 100644 index 00000000..9a6abfb7 --- /dev/null +++ b/dashboard/src/auth/context/supabase/action.tsx @@ -0,0 +1,132 @@ +'use client'; + +import type { + AuthError, + AuthResponse, + UserResponse, + AuthTokenResponsePassword, + SignInWithPasswordCredentials, + SignUpWithPasswordCredentials, +} from '@supabase/supabase-js'; + +import { paths } from 'src/routes/paths'; + +import { supabase } from 'src/lib/supabase'; + +// ---------------------------------------------------------------------- + +export type SignInParams = { + email: string; + password: string; + options?: SignInWithPasswordCredentials['options']; +}; + +export type SignUpParams = { + email: string; + password: string; + firstName: string; + lastName: string; + options?: SignUpWithPasswordCredentials['options']; +}; + +export type ResetPasswordParams = { + email: string; + options?: { + redirectTo?: string; + captchaToken?: string; + }; +}; + +export type UpdatePasswordParams = { + password: string; + options?: { + emailRedirectTo?: string | undefined; + }; +}; + +/** ************************************** + * Sign in + *************************************** */ +export const signInWithPassword = async ({ email, password }: SignInParams): Promise => { + const { data, error } = await supabase.auth.signInWithPassword({ email, password }); + + if (error) { + console.error(error); + throw error; + } + + return { data, error }; +}; + +/** ************************************** + * Sign up + *************************************** */ +export const signUp = async ({ email, password, firstName, lastName }: SignUpParams): Promise => { + const { data, error } = await supabase.auth.signUp({ + email, + password, + options: { + emailRedirectTo: `${window.location.origin}${paths.wallet.root}`, + data: { display_name: `${firstName} ${lastName}` }, + }, + }); + + if (error) { + console.error(error); + throw error; + } + + if (!data?.user?.identities?.length) { + throw new Error('This user already exists'); + } + + return { data, error }; +}; + +/** ************************************** + * Sign out + *************************************** */ +export const signOut = async (): Promise<{ + error: AuthError | null; +}> => { + const { error } = await supabase.auth.signOut(); + + if (error) { + console.error(error); + throw error; + } + + return { error }; +}; + +/** ************************************** + * Reset password + *************************************** */ +export const resetPassword = async ({ + email, +}: ResetPasswordParams): Promise<{ data: {}; error: null } | { data: null; error: AuthError }> => { + const { data, error } = await supabase.auth.resetPasswordForEmail(email, { + redirectTo: `${window.location.origin}${paths.auth.supabase.updatePassword}`, + }); + + if (error) { + console.error(error); + throw error; + } + + return { data, error }; +}; + +/** ************************************** + * Update password + *************************************** */ +export const updatePassword = async ({ password }: UpdatePasswordParams): Promise => { + const { data, error } = await supabase.auth.updateUser({ password }); + + if (error) { + console.error(error); + throw error; + } + + return { data, error }; +}; diff --git a/dashboard/src/auth/context/supabase/auth-provider.tsx b/dashboard/src/auth/context/supabase/auth-provider.tsx new file mode 100644 index 00000000..f89003d9 --- /dev/null +++ b/dashboard/src/auth/context/supabase/auth-provider.tsx @@ -0,0 +1,93 @@ +'use client'; + +import { useMemo, useEffect, useCallback } from 'react'; + +import { useSetState } from 'src/hooks/use-set-state'; + +import { supabase } from 'src/lib/supabase'; +import { client } from 'src/lib/swissknife'; + +import { AuthContext } from '../auth-context'; + +import type { AuthState } from '../../types'; + +// ---------------------------------------------------------------------- + +/** + * NOTE: + * We only build demo at basic level. + * Customer will need to do some extra handling yourself if you want to extend the logic and other features... + */ + +type Props = { + children: React.ReactNode; +}; + +export function AuthProvider({ children }: Props) { + const { state, setState } = useSetState({ + user: null, + loading: true, + }); + + const checkUserSession = useCallback(async () => { + try { + const { + data: { session }, + error, + } = await supabase.auth.getSession(); + + if (error) { + setState({ user: null, loading: false }); + console.error(error); + throw error; + } + + if (session) { + const accessToken = session?.access_token; + + setState({ user: { ...session, ...session?.user }, loading: false }); + client.interceptors.request.use((request, _) => { + request.headers.set('Authorization', `Bearer ${accessToken}`); + return request; + }); + } else { + setState({ user: null, loading: false }); + } + } catch (error) { + console.error(error); + setState({ user: null, loading: false }); + } + }, [setState]); + + useEffect(() => { + checkUserSession(); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + // ---------------------------------------------------------------------- + + const checkAuthenticated = state.user ? 'authenticated' : 'unauthenticated'; + + const status = state.loading ? 'loading' : checkAuthenticated; + + const memoizedValue = useMemo( + () => ({ + user: state.user + ? { + ...state.user, + id: state.user?.id, + accessToken: state.user?.access_token, + displayName: `${state.user?.user_metadata.display_name}`, + role: state.user?.role ?? 'admin', + } + : null, + checkUserSession, + loading: status === 'loading', + authenticated: status === 'authenticated', + unauthenticated: status === 'unauthenticated', + }), + [checkUserSession, state.user, status] + ); + + return {children}; +} diff --git a/dashboard/src/auth/context/supabase/index.ts b/dashboard/src/auth/context/supabase/index.ts new file mode 100644 index 00000000..1597ff83 --- /dev/null +++ b/dashboard/src/auth/context/supabase/index.ts @@ -0,0 +1,3 @@ +export * from './action'; + +export * from './auth-provider'; diff --git a/dashboard/src/auth/guard/auth-guard.tsx b/dashboard/src/auth/guard/auth-guard.tsx new file mode 100644 index 00000000..33c8c14f --- /dev/null +++ b/dashboard/src/auth/guard/auth-guard.tsx @@ -0,0 +1,65 @@ +'use client'; + +import { useState, useEffect, useCallback } from 'react'; + +import { paths } from 'src/routes/paths'; +import { useRouter, usePathname, useSearchParams } from 'src/routes/hooks'; + +import { CONFIG } from 'src/config-global'; + +import { SplashScreen } from 'src/components/loading-screen'; + +import { useAuthContext } from '../hooks'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export function AuthGuard({ children }: Props) { + const router = useRouter(); + const pathname = usePathname(); + const searchParams = useSearchParams(); + const { authenticated, loading } = useAuthContext(); + const [isChecking, setIsChecking] = useState(true); + + const createQueryString = useCallback( + (name: string, value: string) => { + const params = new URLSearchParams(searchParams.toString()); + params.set(name, value); + return params.toString(); + }, + [searchParams] + ); + + const checkPermissions = useCallback(async (): Promise => { + if (loading) { + return; + } + + if (!authenticated) { + const { method } = CONFIG.auth; + const signInPath = { + jwt: paths.auth.jwt.signIn, + auth0: paths.auth.auth0.signIn, + supabase: paths.auth.supabase.signIn, + }[method]; + + const href = `${signInPath}?${createQueryString('returnTo', pathname)}`; + router.replace(href); + } else { + setIsChecking(false); + } + }, [authenticated, loading, router, pathname, createQueryString]); + + useEffect(() => { + checkPermissions(); + }, [checkPermissions]); + + if (isChecking || loading) { + return ; + } + + return <>{children}; +} diff --git a/dashboard/src/auth/guard/guest-guard.tsx b/dashboard/src/auth/guard/guest-guard.tsx new file mode 100644 index 00000000..d19ccdb0 --- /dev/null +++ b/dashboard/src/auth/guard/guest-guard.tsx @@ -0,0 +1,53 @@ +'use client'; + +import { useState, useEffect } from 'react'; + +import { useRouter, useSearchParams } from 'src/routes/hooks'; + +import { CONFIG } from 'src/config-global'; + +import { SplashScreen } from 'src/components/loading-screen'; + +import { useAuthContext } from '../hooks'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +export function GuestGuard({ children }: Props) { + const router = useRouter(); + + const searchParams = useSearchParams(); + + const { loading, authenticated } = useAuthContext(); + + const [isChecking, setIsChecking] = useState(true); + + const returnTo = searchParams.get('returnTo') || CONFIG.auth.redirectPath; + + const checkPermissions = async (): Promise => { + if (loading) { + return; + } + + if (authenticated) { + router.replace(returnTo); + return; + } + + setIsChecking(false); + }; + + useEffect(() => { + checkPermissions(); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [authenticated, loading]); + + if (isChecking) { + return ; + } + + return <>{children}; +} diff --git a/dashboard/src/auth/guard/index.ts b/dashboard/src/auth/guard/index.ts new file mode 100644 index 00000000..a85224fb --- /dev/null +++ b/dashboard/src/auth/guard/index.ts @@ -0,0 +1,5 @@ +export * from './auth-guard'; + +export * from './guest-guard'; + +export * from './role-based-guard'; diff --git a/dashboard/src/auth/guard/role-based-guard.tsx b/dashboard/src/auth/guard/role-based-guard.tsx new file mode 100644 index 00000000..2df4627e --- /dev/null +++ b/dashboard/src/auth/guard/role-based-guard.tsx @@ -0,0 +1,55 @@ +'use client'; + +import type { Theme, SxProps } from '@mui/material/styles'; + +import { m } from 'framer-motion'; + +import Container from '@mui/material/Container'; +import Typography from '@mui/material/Typography'; + +import { CONFIG } from 'src/config-global'; +import { ForbiddenIllustration } from 'src/assets/illustrations'; + +import { varBounce, MotionContainer } from 'src/components/animate'; + +import { useAuthContext } from '../hooks'; +import { hasAllPermissions } from '../permissions'; + +// ---------------------------------------------------------------------- + +export type RoleBasedGuardProp = { + sx?: SxProps; + hasContent?: boolean; + permissions?: string[]; + children: React.ReactNode; +}; + +export function RoleBasedGuard({ sx, children, hasContent, permissions }: RoleBasedGuardProp) { + const { user } = useAuthContext(); + + if (CONFIG.auth.skip) { + return <> {children} ; + } + + if (typeof permissions !== 'undefined' && !hasAllPermissions(permissions, user?.permissions)) { + return hasContent ? ( + + + + Permission Denied + + + + + You do not have permission to access this page. + + + + + + + ) : null; + } + + return <> {children} ; +} diff --git a/dashboard/src/auth/hooks/index.ts b/dashboard/src/auth/hooks/index.ts new file mode 100644 index 00000000..2000f7f4 --- /dev/null +++ b/dashboard/src/auth/hooks/index.ts @@ -0,0 +1 @@ +export { useAuthContext } from './use-auth-context'; diff --git a/dashboard/src/auth/hooks/use-auth-context.ts b/dashboard/src/auth/hooks/use-auth-context.ts new file mode 100644 index 00000000..91433bbf --- /dev/null +++ b/dashboard/src/auth/hooks/use-auth-context.ts @@ -0,0 +1,17 @@ +'use client'; + +import { useContext } from 'react'; + +import { AuthContext } from '../context/auth-context'; + +// ---------------------------------------------------------------------- + +export function useAuthContext() { + const context = useContext(AuthContext); + + if (!context) { + throw new Error('useAuthContext: Context must be used inside AuthProvider'); + } + + return context; +} diff --git a/dashboard/src/auth/permissions.ts b/dashboard/src/auth/permissions.ts new file mode 100644 index 00000000..63bb2b44 --- /dev/null +++ b/dashboard/src/auth/permissions.ts @@ -0,0 +1,2 @@ +export const hasAllPermissions = (requiredPermissions: string[] = [], userPermissions: string[] = []) => + requiredPermissions.every((permission) => userPermissions?.includes(permission)); diff --git a/dashboard/src/auth/types.ts b/dashboard/src/auth/types.ts new file mode 100644 index 00000000..cbcfe8e7 --- /dev/null +++ b/dashboard/src/auth/types.ts @@ -0,0 +1,21 @@ +import type { JwtPayload } from 'jwt-decode'; +import type { Permission } from 'src/lib/swissknife'; + +export type UserType = Record | null; + +export type AuthState = { + user: UserType; + loading: boolean; +}; + +export type AuthContextValue = { + user: UserType; + loading: boolean; + authenticated: boolean; + unauthenticated: boolean; + checkUserSession?: () => Promise; +}; + +export type DecodedToken = JwtPayload & { + permissions: Permission[]; +}; diff --git a/dashboard/src/components/analytic/index.ts b/dashboard/src/components/analytic/index.ts new file mode 100644 index 00000000..5164f260 --- /dev/null +++ b/dashboard/src/components/analytic/index.ts @@ -0,0 +1 @@ +export * from './item-analytic'; diff --git a/dashboard/src/components/analytic/item-analytic.tsx b/dashboard/src/components/analytic/item-analytic.tsx new file mode 100644 index 00000000..a17b088a --- /dev/null +++ b/dashboard/src/components/analytic/item-analytic.tsx @@ -0,0 +1,58 @@ +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import { alpha } from '@mui/material/styles'; +import Typography from '@mui/material/Typography'; +import CircularProgress from '@mui/material/CircularProgress'; + +import { fShortenNumber } from 'src/utils/format-number'; + +import { Iconify } from 'src/components/iconify'; +import { SatsWithIcon } from 'src/components/bitcoin'; + +// ---------------------------------------------------------------------- + +type Props = { + icon: string; + title: string; + total: number; + percent: number; + price?: number; + color?: string; + countSuffix?: string; +}; + +export function ItemAnalytic({ title, total, icon, color, percent, price, countSuffix }: Props) { + return ( + + + + + + + alpha(theme.palette.grey[500], 0.16), + }} + /> + + + + {title} + + + {fShortenNumber(total)} {countSuffix} + + + {price && } + + + ); +} diff --git a/dashboard/src/components/animate/animate-avatar.tsx b/dashboard/src/components/animate/animate-avatar.tsx new file mode 100644 index 00000000..7bbd89a8 --- /dev/null +++ b/dashboard/src/components/animate/animate-avatar.tsx @@ -0,0 +1,84 @@ +import type { Transition } from 'framer-motion'; +import type { BoxProps } from '@mui/material/Box'; +import type { AvatarProps } from '@mui/material/Avatar'; + +import { m } from 'framer-motion'; + +import Box from '@mui/material/Box'; +import Avatar from '@mui/material/Avatar'; + +// ---------------------------------------------------------------------- + +export type AnimateAvatarProps = BoxProps & { + slotProps?: { + avatar?: AvatarProps; + animate?: { transition?: Transition }; + overlay?: { + color?: string; + border?: number; + spacing?: number; + }; + }; +}; + +export function AnimateAvatar({ sx, slotProps, children, width = 40, ...other }: AnimateAvatarProps) { + const borderWidth = slotProps?.overlay?.border ?? 2; + + const spacing = slotProps?.overlay?.spacing ?? 2; + + return ( + + + {children} + + + + + ); +} diff --git a/dashboard/src/components/animate/animate-border.tsx b/dashboard/src/components/animate/animate-border.tsx new file mode 100644 index 00000000..fa49ef34 --- /dev/null +++ b/dashboard/src/components/animate/animate-border.tsx @@ -0,0 +1,169 @@ +'use client'; + +import type { BoxProps } from '@mui/material/Box'; +import type { Easing, RepeatType } from 'framer-motion'; + +import { m } from 'framer-motion'; +import { useRef, useState, useEffect } from 'react'; + +import Box from '@mui/material/Box'; + +import { borderGradient } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +/** + * Source: + * https://gradientborder.framer.website/ + */ + +export type AnimateBorderProps = BoxProps & { + animate?: { + outline?: string; + color?: string | string[]; + width?: string; // width `2px` | `2px 4px 0 0` (as padding) + angle?: number; // angle: min: 0, max: 360, step: 1 + loop?: boolean; + length?: number; // length: min: 1, max: 100, step: 1 + distance?: number; // distance: min: 1, max: 100, step: 1 + ease?: Easing; + delay?: number; + duration?: number; // duration: min: 1, max: 20, step: 1 + repeatType?: RepeatType; // repeatType: ["loop", "reverse", "mirror" + disable?: boolean; // disable animate + disableDoubleline?: boolean; // show 1 line + }; +}; + +export function AnimateBorder({ animate, sx }: AnimateBorderProps) { + const rootRef = useRef(null); + + const animateRef = useRef(null); + + const [aspectRatio, setAspectRatio] = useState(1); + + const [animateStyle, setAnimateStyle] = useState(null); + + const values = { + disable: animate?.disable, + delay: animate?.delay ?? 0, + loop: animate?.loop ?? true, + angle: animate?.angle ?? 315, + length: animate?.length ?? 40, + width: animate?.width ?? '2px', + color: animate?.color ?? '#000', + ease: animate?.ease ?? 'linear', + duration: animate?.duration ?? 8, + distance: animate?.distance ?? 20, + repeatType: animate?.repeatType ?? 'loop', + disableDoubleline: animate?.disableDoubleline, + outline: animate?.outline ?? `135deg, rgba(0,0,0,0.08), rgba(0,0,0,0.08)`, + }; + + useEffect(() => { + if (!values.disable) { + if (rootRef.current) { + const { width, height } = rootRef.current.getBoundingClientRect(); + + setAspectRatio(width / height); + } + + if (!values.disableDoubleline && animateRef.current) { + const style = getComputedStyle(animateRef.current); + + setAnimateStyle({ + paddingLeft: style.paddingLeft, + paddingRight: style.paddingRight, + paddingBottom: style.paddingBottom, + paddingTop: style.paddingTop, + borderTopLeftRadius: style.borderTopLeftRadius, + borderTopRightRadius: style.borderTopRightRadius, + borderBottomLeftRadius: style.borderBottomLeftRadius, + borderBottomRightRadius: style.borderBottomRightRadius, + }); + } + } + }, [values.disable, values.disableDoubleline]); + + const background = (color: string) => { + const degs = [-55, 35, 125, 215, 305]; + + const end = `transparent ${values.angle - (2 + values.length!)}deg, ${color} ${values.angle}deg, transparent ${values.angle + values.length}deg`; + + return [ + `conic-gradient(from ${degs[0]}deg at ${values.distance! / aspectRatio}% ${values.distance}% , ${end})`, + `conic-gradient(from ${degs[1]}deg at ${100 - values.distance! / aspectRatio}% ${values.distance}% , ${end})`, + `conic-gradient(from ${degs[2]}deg at ${100 - values.distance / aspectRatio}% ${100 - values.distance}% , ${end})`, + `conic-gradient(from ${degs[3]}deg at ${values.distance / aspectRatio}% ${100 - values.distance}% , ${end})`, + `conic-gradient(from ${degs[4]}deg at ${values.distance / aspectRatio}% ${values.distance}% , ${end})`, + ]; + }; + + const transition = { + ease: values.ease, + delay: values.delay, + duration: values.duration, + repeatType: values.repeatType, + repeat: values.loop ? Infinity : 1, + times: + aspectRatio > 1 + ? [0, 0.25 + 0.25 / aspectRatio, 0.5, 0.75 + 0.25 / aspectRatio, 1] + : [0, aspectRatio * 0.25, 0.5, 0.5 + aspectRatio * 0.25, 1], + }; + + return ( + + + + {!values.disable && !values.disableDoubleline && ( + + )} + + ); +} diff --git a/dashboard/src/components/animate/animate-count-up.tsx b/dashboard/src/components/animate/animate-count-up.tsx new file mode 100644 index 00000000..c9e95a92 --- /dev/null +++ b/dashboard/src/components/animate/animate-count-up.tsx @@ -0,0 +1,62 @@ +import type { UseInViewOptions } from 'framer-motion'; +import type { TypographyProps } from '@mui/material/Typography'; + +import { useRef, useEffect } from 'react'; +import { m, animate, useInView, useTransform, useMotionValue } from 'framer-motion'; + +import Typography from '@mui/material/Typography'; + +// ---------------------------------------------------------------------- + +export type AnimateCountUpProps = TypographyProps & { + to: number; + from?: number; + toFixed?: number; + duration?: number; + unit?: 'k' | 'm' | 'b' | string; + once?: UseInViewOptions['once']; + amount?: UseInViewOptions['amount']; +}; + +export function AnimateCountUp({ + to, + sx, + from = 0, + unit = '', + toFixed = 0, + duration = 2, + once = true, + amount = 0.5, + component = 'p', + ...other +}: AnimateCountUpProps) { + const ref = useRef(null); + + const inView = useInView(ref, { once, amount }); + + const count = useMotionValue(from); + + const rounded = useTransform(count, (latest) => latest.toFixed(toFixed)); + + useEffect(() => { + if (inView) { + animate(count, to, { duration }); + } + }, [count, duration, inView, to]); + + return ( + + {rounded} + {unit} + + ); +} diff --git a/dashboard/src/components/animate/animate-logo.tsx b/dashboard/src/components/animate/animate-logo.tsx new file mode 100644 index 00000000..b08617a5 --- /dev/null +++ b/dashboard/src/components/animate/animate-logo.tsx @@ -0,0 +1,123 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { m } from 'framer-motion'; + +import Box from '@mui/material/Box'; + +import { varAlpha } from 'src/theme/styles'; + +import { Logo } from '../logo'; + +// ---------------------------------------------------------------------- + +export type AnimateLogoProps = BoxProps & { + logo?: React.ReactNode; +}; + +export function AnimateLogo1({ logo, sx, ...other }: AnimateLogoProps) { + return ( + + + {logo ?? } + + + `solid 3px ${varAlpha(theme.vars.palette.primary.darkChannel, 0.24)}`, + }} + /> + + `solid 8px ${varAlpha(theme.vars.palette.primary.darkChannel, 0.24)}`, + }} + /> + + ); +} + +// ---------------------------------------------------------------------- + +export function AnimateLogo2({ logo, sx, ...other }: AnimateLogoProps) { + return ( + + {logo ?? } + + + theme.transitions.create(['opacity'], { + easing: theme.transitions.easing.easeInOut, + duration: theme.transitions.duration.shorter, + }), + background: (theme) => + `linear-gradient(135deg, ${varAlpha(theme.vars.palette.primary.mainChannel, 0)} 50%, ${theme.vars.palette.primary.main} 100%)`, + }} + /> + + ); +} diff --git a/dashboard/src/components/animate/animate-text.tsx b/dashboard/src/components/animate/animate-text.tsx new file mode 100644 index 00000000..d352e06d --- /dev/null +++ b/dashboard/src/components/animate/animate-text.tsx @@ -0,0 +1,157 @@ +import type { TypographyProps } from '@mui/material/Typography'; +import type { Variants, UseInViewOptions } from 'framer-motion'; + +import { useRef, useEffect } from 'react'; +import { m, useInView, useAnimation } from 'framer-motion'; + +import Box from '@mui/material/Box'; +import Typography from '@mui/material/Typography'; + +import { varFade, varContainer } from './variants'; + +// ---------------------------------------------------------------------- + +export const animateTextClasses = { + root: 'animate-text-root', + lines: 'animate-text-lines', + line: 'animate-text-line', + word: 'animate-text-word', + char: 'animate-text-char', + space: 'animate-text-space', + srOnly: 'sr-only', + dataIndex: '[data-columns="3"]', +}; + +export type AnimateTextProps = TypographyProps & { + variants?: Variants; + repeatDelay?: number; + text: string | string[]; + once?: UseInViewOptions['once']; + amount?: UseInViewOptions['amount']; +}; + +export function AnimateText({ + sx, + text, + variants, + once = true, + amount = 1 / 3, + component = 'p', + repeatDelay = 500, // 1000 = 1s + ...other +}: AnimateTextProps) { + const ref = useRef(null); + + const controls = useAnimation(); + + const textArray = Array.isArray(text) ? text : [text]; + + const isInView = useInView(ref, { once, amount }); + + useEffect(() => { + let timeout: NodeJS.Timeout; + + const show = () => { + if (repeatDelay) { + timeout = setTimeout(async () => { + await controls.start('initial'); + controls.start('animate'); + }, repeatDelay); + } else { + controls.start('animate'); + } + }; + + if (isInView) { + show(); + } else { + controls.start('initial'); + } + + return () => clearTimeout(timeout); + }, [controls, isInView, repeatDelay]); + + return ( + + {textArray.join(' ')} + + + {textArray.map((line, lineIndex) => ( + + {line.split(' ').map((word, wordIndex) => { + const lastWordInline = line.split(' ')[line.split(' ').length - 1]; + + return ( + + {word.split('').map((char, charIndex) => ( + + {char} + + ))} + + {lastWordInline !== word && ( + +   + + )} + + ); + })} + + ))} + + + ); +} diff --git a/dashboard/src/components/animate/back-to-top/back-to-top.tsx b/dashboard/src/components/animate/back-to-top/back-to-top.tsx new file mode 100644 index 00000000..4b3db294 --- /dev/null +++ b/dashboard/src/components/animate/back-to-top/back-to-top.tsx @@ -0,0 +1,51 @@ +import type { FabProps } from '@mui/material/Fab'; + +import { useState } from 'react'; +import { useScroll, useMotionValueEvent } from 'framer-motion'; + +import Fab from '@mui/material/Fab'; + +import { Iconify } from 'src/components/iconify'; + +// ---------------------------------------------------------------------- + +export type BackToTopProps = FabProps & { + value?: number; +}; + +export function BackToTop({ value = 90, sx, ...other }: BackToTopProps) { + const { scrollYProgress } = useScroll(); + + const [show, setShow] = useState(false); + + const backToTop = () => { + window.scrollTo({ top: 0, behavior: 'smooth' }); + }; + + useMotionValueEvent(scrollYProgress, 'change', (latest) => { + const isEnd = Math.floor(latest * 100) > value; // unit is % + setShow(isEnd); + }); + + return ( + theme.zIndex.speedDial, + transition: (theme) => theme.transitions.create(['transform']), + ...(show && { transform: 'scale(1)' }), + ...sx, + }} + {...other} + > + + + ); +} diff --git a/dashboard/src/components/animate/back-to-top/index.ts b/dashboard/src/components/animate/back-to-top/index.ts new file mode 100644 index 00000000..fa6b1c0f --- /dev/null +++ b/dashboard/src/components/animate/back-to-top/index.ts @@ -0,0 +1 @@ +export * from './back-to-top'; diff --git a/dashboard/src/components/animate/features.ts b/dashboard/src/components/animate/features.ts new file mode 100644 index 00000000..9e51e8f3 --- /dev/null +++ b/dashboard/src/components/animate/features.ts @@ -0,0 +1,3 @@ +import { domMax } from 'framer-motion'; + +export default domMax; diff --git a/dashboard/src/components/animate/index.ts b/dashboard/src/components/animate/index.ts new file mode 100644 index 00000000..3f1f15d7 --- /dev/null +++ b/dashboard/src/components/animate/index.ts @@ -0,0 +1,19 @@ +export * from './variants'; + +export * from './back-to-top'; + +export * from './animate-text'; + +export * from './animate-logo'; + +export * from './animate-avatar'; + +export * from './animate-border'; + +export * from './motion-viewport'; + +export * from './scroll-progress'; + +export * from './animate-count-up'; + +export * from './motion-container'; diff --git a/dashboard/src/components/animate/motion-container.tsx b/dashboard/src/components/animate/motion-container.tsx new file mode 100644 index 00000000..907315db --- /dev/null +++ b/dashboard/src/components/animate/motion-container.tsx @@ -0,0 +1,31 @@ +import type { MotionProps } from 'framer-motion'; +import type { BoxProps } from '@mui/material/Box'; + +import { m } from 'framer-motion'; +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; + +import { varContainer } from './variants'; + +// ---------------------------------------------------------------------- + +export type MotionContainerProps = BoxProps & + MotionProps & { + animate?: boolean; + action?: boolean; + }; + +export const MotionContainer = forwardRef(({ animate, action = false, children, ...other }, ref) => { + const commonProps = { + ref, + component: m.div, + variants: varContainer(), + initial: action ? false : 'initial', + animate: action ? (animate ? 'animate' : 'exit') : 'animate', + exit: action ? undefined : 'exit', + ...other, + }; + + return {children}; +}); diff --git a/dashboard/src/components/animate/motion-lazy.tsx b/dashboard/src/components/animate/motion-lazy.tsx new file mode 100644 index 00000000..151af03f --- /dev/null +++ b/dashboard/src/components/animate/motion-lazy.tsx @@ -0,0 +1,19 @@ +'use client'; + +import { LazyMotion } from 'framer-motion'; + +// ---------------------------------------------------------------------- + +type Props = { + children: React.ReactNode; +}; + +const loadFeaturesAsync = async () => import('./features').then((res) => res.default); + +export function MotionLazy({ children }: Props) { + return ( + + {children} + + ); +} diff --git a/dashboard/src/components/animate/motion-viewport.tsx b/dashboard/src/components/animate/motion-viewport.tsx new file mode 100644 index 00000000..c6505503 --- /dev/null +++ b/dashboard/src/components/animate/motion-viewport.tsx @@ -0,0 +1,40 @@ +import type { MotionProps } from 'framer-motion'; +import type { BoxProps } from '@mui/material/Box'; + +import { m } from 'framer-motion'; +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; + +import { useResponsive } from 'src/hooks/use-responsive'; + +import { varContainer } from './variants'; + +// ---------------------------------------------------------------------- + +export type MotionViewportProps = BoxProps & + MotionProps & { + disableAnimate?: boolean; + }; + +export const MotionViewport = forwardRef(({ children, disableAnimate = true, ...other }, ref) => { + const smDown = useResponsive('down', 'sm'); + + const disabled = smDown && disableAnimate; + + const props = disabled + ? {} + : { + component: m.div, + initial: 'initial', + whileInView: 'animate', + variants: varContainer(), + viewport: { once: true, amount: 0.3 }, + }; + + return ( + + {children} + + ); +}); diff --git a/dashboard/src/components/animate/scroll-progress/index.ts b/dashboard/src/components/animate/scroll-progress/index.ts new file mode 100644 index 00000000..1521b571 --- /dev/null +++ b/dashboard/src/components/animate/scroll-progress/index.ts @@ -0,0 +1,3 @@ +export * from './scroll-progress'; + +export * from './use-scroll-progress'; diff --git a/dashboard/src/components/animate/scroll-progress/scroll-progress.tsx b/dashboard/src/components/animate/scroll-progress/scroll-progress.tsx new file mode 100644 index 00000000..a208dd36 --- /dev/null +++ b/dashboard/src/components/animate/scroll-progress/scroll-progress.tsx @@ -0,0 +1,89 @@ +import type { MotionValue } from 'framer-motion'; +import type { BoxProps } from '@mui/material/Box'; + +import { m, useSpring } from 'framer-motion'; + +import Box from '@mui/material/Box'; + +// ---------------------------------------------------------------------- + +export interface ScrollProgressProps extends BoxProps { + size?: number; + thickness?: number; + progress: MotionValue; + variant: 'linear' | 'circular'; + color?: 'inherit' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'; +} + +export function ScrollProgress({ size, variant, progress, thickness = 3.6, color = 'primary', sx, ...other }: ScrollProgressProps) { + const scaleX = useSpring(progress, { stiffness: 100, damping: 30, restDelta: 0.001 }); + + const progressSize = variant === 'circular' ? size ?? 64 : size ?? 3; + + const renderCircular = ( + theme.vars.palette.text.primary, + ...(color !== 'inherit' && { + color: (theme) => theme.vars.palette[color].main, + }), + circle: { + fill: 'none', + strokeDashoffset: 0, + strokeWidth: thickness, + stroke: 'currentColor', + }, + ...sx, + }} + {...other} + > + + + + ); + + const renderLinear = ( + `linear-gradient(135deg, ${theme.vars.palette[color].light}, ${theme.vars.palette[color].main})`, + }), + ...sx, + }} + style={{ scaleX }} + {...other} + /> + ); + + return {variant === 'circular' ? renderCircular : renderLinear}; +} diff --git a/dashboard/src/components/animate/scroll-progress/use-scroll-progress.ts b/dashboard/src/components/animate/scroll-progress/use-scroll-progress.ts new file mode 100644 index 00000000..0282a503 --- /dev/null +++ b/dashboard/src/components/animate/scroll-progress/use-scroll-progress.ts @@ -0,0 +1,28 @@ +'use client'; + +import type { MotionValue } from 'framer-motion'; + +import { useRef, useMemo } from 'react'; +import { useScroll } from 'framer-motion'; + +// ---------------------------------------------------------------------- + +export type UseScrollProgressReturn = { + scrollXProgress: MotionValue; + scrollYProgress: MotionValue; + elementRef: React.RefObject; +}; + +export type UseScrollProgress = 'document' | 'container'; + +export function useScrollProgress(target: UseScrollProgress = 'document'): UseScrollProgressReturn { + const elementRef = useRef(null); + + const options = { container: elementRef }; + + const { scrollYProgress, scrollXProgress } = useScroll(target === 'container' ? options : undefined); + + const memoizedValue = useMemo(() => ({ elementRef, scrollXProgress, scrollYProgress }), [elementRef, scrollXProgress, scrollYProgress]); + + return memoizedValue; +} diff --git a/dashboard/src/components/animate/types.ts b/dashboard/src/components/animate/types.ts new file mode 100644 index 00000000..812cdb9e --- /dev/null +++ b/dashboard/src/components/animate/types.ts @@ -0,0 +1,32 @@ +import type { Easing } from 'framer-motion'; + +// ---------------------------------------------------------------------- + +export type VariantsType = { + distance?: number; + durationIn?: number; + durationOut?: number; + easeIn?: Easing; + easeOut?: Easing; +}; + +export type TranHoverType = { + duration?: number; + ease?: Easing; +}; + +export type TranEnterType = { + durationIn?: number; + easeIn?: Easing; +}; + +export type TranExitType = { + durationOut?: number; + easeOut?: Easing; +}; + +export type BackgroundType = { + colors?: string[]; + duration?: number; + ease?: Easing; +}; diff --git a/dashboard/src/components/animate/variants/actions.ts b/dashboard/src/components/animate/variants/actions.ts new file mode 100644 index 00000000..e9100447 --- /dev/null +++ b/dashboard/src/components/animate/variants/actions.ts @@ -0,0 +1,6 @@ +// ---------------------------------------------------------------------- + +export const varHover = (hover = 1.09, tap = 0.97) => ({ + hover: { scale: hover }, + tap: { scale: tap }, +}); diff --git a/dashboard/src/components/animate/variants/background.ts b/dashboard/src/components/animate/variants/background.ts new file mode 100644 index 00000000..bfd1fce1 --- /dev/null +++ b/dashboard/src/components/animate/variants/background.ts @@ -0,0 +1,100 @@ +import type { BackgroundType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varBgColor = (props?: BackgroundType) => { + const colors = props?.colors || ['#19dcea', '#b22cff']; + const duration = props?.duration || 5; + const ease = props?.ease || 'linear'; + + return { animate: { background: colors, transition: { duration, ease } } }; +}; + +// ---------------------------------------------------------------------- + +export const varBgKenburns = (props?: BackgroundType) => { + const duration = props?.duration || 5; + const ease = props?.ease || 'easeOut'; + + return { + top: { + animate: { + scale: [1, 1.25], + y: [0, -15], + transformOrigin: ['50% 16%', '50% top'], + transition: { duration, ease }, + }, + }, + bottom: { + animate: { + scale: [1, 1.25], + y: [0, 15], + transformOrigin: ['50% 84%', '50% bottom'], + transition: { duration, ease }, + }, + }, + left: { + animate: { + scale: [1, 1.25], + x: [0, 20], + y: [0, 15], + transformOrigin: ['16% 50%', '0% left'], + transition: { duration, ease }, + }, + }, + right: { + animate: { + scale: [1, 1.25], + x: [0, -20], + y: [0, -15], + transformOrigin: ['84% 50%', '0% right'], + transition: { duration, ease }, + }, + }, + }; +}; + +// ---------------------------------------------------------------------- + +export const varBgPan = (props?: BackgroundType) => { + const colors = props?.colors || ['#ee7752', '#e73c7e', '#23a6d5', '#23d5ab']; + const duration = props?.duration || 5; + const ease = props?.ease || 'linear'; + + const gradient = (deg: number) => `linear-gradient(${deg}deg, ${colors})`; + + return { + top: { + animate: { + backgroundImage: [gradient(0), gradient(0)], + backgroundPosition: ['center 99%', 'center 1%'], + backgroundSize: ['100% 600%', '100% 600%'], + transition: { duration, ease }, + }, + }, + right: { + animate: { + backgroundPosition: ['1% center', '99% center'], + backgroundImage: [gradient(270), gradient(270)], + backgroundSize: ['600% 100%', '600% 100%'], + transition: { duration, ease }, + }, + }, + bottom: { + animate: { + backgroundImage: [gradient(0), gradient(0)], + backgroundPosition: ['center 1%', 'center 99%'], + backgroundSize: ['100% 600%', '100% 600%'], + transition: { duration, ease }, + }, + }, + left: { + animate: { + backgroundPosition: ['99% center', '1% center'], + backgroundImage: [gradient(270), gradient(270)], + backgroundSize: ['600% 100%', '600% 100%'], + transition: { duration, ease }, + }, + }, + }; +}; diff --git a/dashboard/src/components/animate/variants/bounce.ts b/dashboard/src/components/animate/variants/bounce.ts new file mode 100644 index 00000000..782ec43f --- /dev/null +++ b/dashboard/src/components/animate/variants/bounce.ts @@ -0,0 +1,92 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varBounce = (props?: VariantsType) => { + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + in: { + initial: {}, + animate: { + scale: [0.3, 1.1, 0.9, 1.03, 0.97, 1], + opacity: [0, 1, 1, 1, 1, 1], + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { scale: [0.9, 1.1, 0.3], opacity: [1, 1, 0] }, + }, + inUp: { + initial: {}, + animate: { + y: [720, -24, 12, -4, 0], + scaleY: [4, 0.9, 0.95, 0.985, 1], + opacity: [0, 1, 1, 1, 1], + transition: { ...varTranEnter({ durationIn, easeIn }) }, + }, + exit: { + y: [12, -24, 720], + scaleY: [0.985, 0.9, 3], + opacity: [1, 1, 0], + transition: varTranExit({ durationOut, easeOut }), + }, + }, + inDown: { + initial: {}, + animate: { + y: [-720, 24, -12, 4, 0], + scaleY: [4, 0.9, 0.95, 0.985, 1], + opacity: [0, 1, 1, 1, 1], + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + y: [-12, 24, -720], + scaleY: [0.985, 0.9, 3], + opacity: [1, 1, 0], + transition: varTranExit({ durationOut, easeOut }), + }, + }, + inLeft: { + initial: {}, + animate: { + x: [-720, 24, -12, 4, 0], + scaleX: [3, 1, 0.98, 0.995, 1], + opacity: [0, 1, 1, 1, 1], + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + x: [0, 24, -720], + scaleX: [1, 0.9, 2], + opacity: [1, 1, 0], + transition: varTranExit({ durationOut, easeOut }), + }, + }, + inRight: { + initial: {}, + animate: { + x: [720, -24, 12, -4, 0], + scaleX: [3, 1, 0.98, 0.995, 1], + opacity: [0, 1, 1, 1, 1], + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + x: [0, -24, 720], + scaleX: [1, 0.9, 2], + opacity: [1, 1, 0], + transition: varTranExit({ durationOut, easeOut }), + }, + }, + + // OUT + out: { animate: { scale: [0.9, 1.1, 0.3], opacity: [1, 1, 0] } }, + outUp: { animate: { y: [-12, 24, -720], scaleY: [0.985, 0.9, 3], opacity: [1, 1, 0] } }, + outDown: { animate: { y: [12, -24, 720], scaleY: [0.985, 0.9, 3], opacity: [1, 1, 0] } }, + outLeft: { animate: { x: [0, 24, -720], scaleX: [1, 0.9, 2], opacity: [1, 1, 0] } }, + outRight: { animate: { x: [0, -24, 720], scaleX: [1, 0.9, 2], opacity: [1, 1, 0] } }, + }; +}; diff --git a/dashboard/src/components/animate/variants/container.ts b/dashboard/src/components/animate/variants/container.ts new file mode 100644 index 00000000..715ee667 --- /dev/null +++ b/dashboard/src/components/animate/variants/container.ts @@ -0,0 +1,18 @@ +// ---------------------------------------------------------------------- + +export type Props = { + staggerIn?: number; + delayIn?: number; + staggerOut?: number; +}; + +export const varContainer = (props?: Props) => { + const staggerIn = props?.staggerIn || 0.05; + const delayIn = props?.staggerIn || 0.05; + const staggerOut = props?.staggerIn || 0.05; + + return { + animate: { transition: { staggerChildren: staggerIn, delayChildren: delayIn } }, + exit: { transition: { staggerChildren: staggerOut, staggerDirection: -1 } }, + }; +}; diff --git a/dashboard/src/components/animate/variants/fade.ts b/dashboard/src/components/animate/variants/fade.ts new file mode 100644 index 00000000..8fb58741 --- /dev/null +++ b/dashboard/src/components/animate/variants/fade.ts @@ -0,0 +1,69 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varFade = (props?: VariantsType) => { + const distance = props?.distance || 120; + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + in: { + initial: { opacity: 0 }, + animate: { opacity: 1, transition: varTranEnter }, + exit: { opacity: 0, transition: varTranExit }, + }, + inUp: { + initial: { y: distance, opacity: 0 }, + animate: { y: 0, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: distance, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inDown: { + initial: { y: -distance, opacity: 0 }, + animate: { y: 0, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: -distance, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inLeft: { + initial: { x: -distance, opacity: 0 }, + animate: { x: 0, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: -distance, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inRight: { + initial: { x: distance, opacity: 0 }, + animate: { x: 0, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: distance, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + + // OUT + out: { + initial: { opacity: 1 }, + animate: { opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { opacity: 1, transition: varTranExit({ durationOut, easeOut }) }, + }, + outUp: { + initial: { y: 0, opacity: 1 }, + animate: { y: -distance, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: 0, opacity: 1, transition: varTranExit({ durationOut, easeOut }) }, + }, + outDown: { + initial: { y: 0, opacity: 1 }, + animate: { y: distance, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: 0, opacity: 1, transition: varTranExit({ durationOut, easeOut }) }, + }, + outLeft: { + initial: { x: 0, opacity: 1 }, + animate: { x: -distance, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: 0, opacity: 1, transition: varTranExit({ durationOut, easeOut }) }, + }, + outRight: { + initial: { x: 0, opacity: 1 }, + animate: { x: distance, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: 0, opacity: 1, transition: varTranExit({ durationOut, easeOut }) }, + }, + }; +}; diff --git a/dashboard/src/components/animate/variants/flip.ts b/dashboard/src/components/animate/variants/flip.ts new file mode 100644 index 00000000..c8736bcb --- /dev/null +++ b/dashboard/src/components/animate/variants/flip.ts @@ -0,0 +1,36 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varFlip = (props?: VariantsType) => { + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + inX: { + initial: { rotateX: -180, opacity: 0 }, + animate: { rotateX: 0, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { rotateX: -180, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inY: { + initial: { rotateY: -180, opacity: 0 }, + animate: { rotateY: 0, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { rotateY: -180, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + + // OUT + outX: { + initial: { rotateX: 0, opacity: 1 }, + animate: { rotateX: 70, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + outY: { + initial: { rotateY: 0, opacity: 1 }, + animate: { rotateY: 70, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + }; +}; diff --git a/dashboard/src/components/animate/variants/index.ts b/dashboard/src/components/animate/variants/index.ts new file mode 100644 index 00000000..a7d86d04 --- /dev/null +++ b/dashboard/src/components/animate/variants/index.ts @@ -0,0 +1,23 @@ +export * from './path'; + +export * from './fade'; + +export * from './zoom'; + +export * from './flip'; + +export * from './slide'; + +export * from './scale'; + +export * from './bounce'; + +export * from './rotate'; + +export * from './actions'; + +export * from './container'; + +export * from './transition'; + +export * from './background'; diff --git a/dashboard/src/components/animate/variants/path.ts b/dashboard/src/components/animate/variants/path.ts new file mode 100644 index 00000000..a17dd66c --- /dev/null +++ b/dashboard/src/components/animate/variants/path.ts @@ -0,0 +1,7 @@ +// ---------------------------------------------------------------------- + +export const TRANSITION = { duration: 2, ease: [0.43, 0.13, 0.23, 0.96] }; + +export const varPath = { + animate: { fillOpacity: [0, 0, 1], pathLength: [1, 0.4, 0], transition: TRANSITION }, +}; diff --git a/dashboard/src/components/animate/variants/rotate.ts b/dashboard/src/components/animate/variants/rotate.ts new file mode 100644 index 00000000..3d9f225c --- /dev/null +++ b/dashboard/src/components/animate/variants/rotate.ts @@ -0,0 +1,27 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varRotate = (props?: VariantsType) => { + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + in: { + initial: { opacity: 0, rotate: -360 }, + animate: { opacity: 1, rotate: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { opacity: 0, rotate: -360, transition: varTranExit({ durationOut, easeOut }) }, + }, + + // OUT + out: { + initial: { opacity: 1, rotate: 0 }, + animate: { opacity: 0, rotate: -360, transition: varTranExit({ durationOut, easeOut }) }, + }, + }; +}; diff --git a/dashboard/src/components/animate/variants/scale.ts b/dashboard/src/components/animate/variants/scale.ts new file mode 100644 index 00000000..f6c46395 --- /dev/null +++ b/dashboard/src/components/animate/variants/scale.ts @@ -0,0 +1,45 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varScale = (props?: VariantsType) => { + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + in: { + initial: { scale: 0, opacity: 0 }, + animate: { scale: 1, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { scale: 0, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inX: { + initial: { scaleX: 0, opacity: 0 }, + animate: { scaleX: 1, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { scaleX: 0, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inY: { + initial: { scaleY: 0, opacity: 0 }, + animate: { scaleY: 1, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { scaleY: 0, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + + // OUT + out: { + initial: { scale: 1, opacity: 1 }, + animate: { scale: 0, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + }, + outX: { + initial: { scaleX: 1, opacity: 1 }, + animate: { scaleX: 0, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + }, + outY: { + initial: { scaleY: 1, opacity: 1 }, + animate: { scaleY: 0, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + }, + }; +}; diff --git a/dashboard/src/components/animate/variants/slide.ts b/dashboard/src/components/animate/variants/slide.ts new file mode 100644 index 00000000..ffbee883 --- /dev/null +++ b/dashboard/src/components/animate/variants/slide.ts @@ -0,0 +1,59 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varSlide = (props?: VariantsType) => { + const distance = props?.distance || 160; + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + inUp: { + initial: { y: distance }, + animate: { y: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: distance, transition: varTranExit({ durationOut, easeOut }) }, + }, + inDown: { + initial: { y: -distance }, + animate: { y: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: -distance, transition: varTranExit({ durationOut, easeOut }) }, + }, + inLeft: { + initial: { x: -distance }, + animate: { x: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: -distance, transition: varTranExit({ durationOut, easeOut }) }, + }, + inRight: { + initial: { x: distance }, + animate: { x: 0, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: distance, transition: varTranExit({ durationOut, easeOut }) }, + }, + + // OUT + outUp: { + initial: { y: 0 }, + animate: { y: -distance, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + outDown: { + initial: { y: 0 }, + animate: { y: distance, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { y: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + outLeft: { + initial: { x: 0 }, + animate: { x: -distance, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + outRight: { + initial: { x: 0 }, + animate: { x: distance, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { x: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + }; +}; diff --git a/dashboard/src/components/animate/variants/transition.ts b/dashboard/src/components/animate/variants/transition.ts new file mode 100644 index 00000000..623f046d --- /dev/null +++ b/dashboard/src/components/animate/variants/transition.ts @@ -0,0 +1,24 @@ +import type { TranExitType, TranHoverType, TranEnterType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varTranHover = (props?: TranHoverType) => { + const duration = props?.duration || 0.32; + const ease = props?.ease || [0.43, 0.13, 0.23, 0.96]; + + return { duration, ease }; +}; + +export const varTranEnter = (props?: TranEnterType) => { + const duration = props?.durationIn || 0.64; + const ease = props?.easeIn || [0.43, 0.13, 0.23, 0.96]; + + return { duration, ease }; +}; + +export const varTranExit = (props?: TranExitType) => { + const duration = props?.durationOut || 0.48; + const ease = props?.easeOut || [0.43, 0.13, 0.23, 0.96]; + + return { duration, ease }; +}; diff --git a/dashboard/src/components/animate/variants/zoom.ts b/dashboard/src/components/animate/variants/zoom.ts new file mode 100644 index 00000000..23aebd84 --- /dev/null +++ b/dashboard/src/components/animate/variants/zoom.ts @@ -0,0 +1,124 @@ +import { varTranExit, varTranEnter } from './transition'; + +import type { VariantsType } from '../types'; + +// ---------------------------------------------------------------------- + +export const varZoom = (props?: VariantsType) => { + const distance = props?.distance || 720; + const durationIn = props?.durationIn; + const durationOut = props?.durationOut; + const easeIn = props?.easeIn; + const easeOut = props?.easeOut; + + return { + // IN + in: { + initial: { scale: 0, opacity: 0 }, + animate: { scale: 1, opacity: 1, transition: varTranEnter({ durationIn, easeIn }) }, + exit: { scale: 0, opacity: 0, transition: varTranExit({ durationOut, easeOut }) }, + }, + inUp: { + initial: { scale: 0, opacity: 0, translateY: distance }, + animate: { + scale: 1, + opacity: 1, + translateY: 0, + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + scale: 0, + opacity: 0, + translateY: distance, + transition: varTranExit({ durationOut, easeOut }), + }, + }, + inDown: { + initial: { scale: 0, opacity: 0, translateY: -distance }, + animate: { + scale: 1, + opacity: 1, + translateY: 0, + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + scale: 0, + opacity: 0, + translateY: -distance, + transition: varTranExit({ durationOut, easeOut }), + }, + }, + inLeft: { + initial: { scale: 0, opacity: 0, translateX: -distance }, + animate: { + scale: 1, + opacity: 1, + translateX: 0, + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + scale: 0, + opacity: 0, + translateX: -distance, + transition: varTranExit({ durationOut, easeOut }), + }, + }, + inRight: { + initial: { scale: 0, opacity: 0, translateX: distance }, + animate: { + scale: 1, + opacity: 1, + translateX: 0, + transition: varTranEnter({ durationIn, easeIn }), + }, + exit: { + scale: 0, + opacity: 0, + translateX: distance, + transition: varTranExit({ durationOut, easeOut }), + }, + }, + + // OUT + out: { + initial: { scale: 1, opacity: 1 }, + animate: { scale: 0, opacity: 0, transition: varTranEnter({ durationIn, easeIn }) }, + }, + outUp: { + initial: { scale: 1, opacity: 1 }, + animate: { + scale: 0, + opacity: 0, + translateY: -distance, + transition: varTranEnter({ durationIn, easeIn }), + }, + }, + outDown: { + initial: { scale: 1, opacity: 1 }, + animate: { + scale: 0, + opacity: 0, + translateY: distance, + transition: varTranEnter({ durationIn, easeIn }), + }, + }, + outLeft: { + initial: { scale: 1, opacity: 1 }, + animate: { + scale: 0, + opacity: 0, + translateX: -distance, + transition: varTranEnter({ durationIn, easeIn }), + }, + }, + outRight: { + initial: { scale: 1, opacity: 1 }, + animate: { + scale: 0, + opacity: 0, + translateX: distance, + transition: varTranEnter({ durationIn, easeIn }), + }, + }, + }; +}; diff --git a/dashboard/src/components/api-key/create-api-key-dialog.tsx b/dashboard/src/components/api-key/create-api-key-dialog.tsx new file mode 100644 index 00000000..725a1231 --- /dev/null +++ b/dashboard/src/components/api-key/create-api-key-dialog.tsx @@ -0,0 +1,45 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; +import { Link, Typography, DialogContent } from '@mui/material'; + +import { useTranslate } from 'src/locales'; + +import { CreateApiKeyForm } from './create-api-key-form'; + +// ---------------------------------------------------------------------- + +type Props = DialogProps & { + onClose: VoidFunction; + title?: string; + onSuccess: VoidFunction; + isAdmin?: boolean; +}; + +export function CreateApiKeyDialog({ title, isAdmin, open, onClose, onSuccess }: Props) { + const { t } = useTranslate(); + + return ( +

    + {title || 'Create API Key'} + + + + Read our{' '} + + documentation + {' '} + for information on API tokens. + + + + + + + + + ); +} diff --git a/dashboard/src/components/api-key/create-api-key-form.tsx b/dashboard/src/components/api-key/create-api-key-form.tsx new file mode 100644 index 00000000..f1bae166 --- /dev/null +++ b/dashboard/src/components/api-key/create-api-key-form.tsx @@ -0,0 +1,162 @@ +import type { Permission, ApiKeyResponse, CreateApiKeyRequest } from 'src/lib/swissknife'; + +import { useState } from 'react'; +import { ajvResolver } from '@hookform/resolvers/ajv'; +import { useForm, FormProvider } from 'react-hook-form'; + +import { LoadingButton } from '@mui/lab'; +import { Link, Stack, Alert, Divider, MenuItem, TextField, Typography, InputAdornment } from '@mui/material'; + +import { ajvOptions } from 'src/utils/ajv'; +import { fDate } from 'src/utils/format-time'; + +import { useTranslate } from 'src/locales'; +import { CONFIG } from 'src/config-global'; +import { createApiKey, PermissionSchema, createWalletApiKey, CreateApiKeyRequestSchema } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; +import { RHFSelect, RHFTextField, RHFWalletSelect, RHFMultiCheckbox } from 'src/components/hook-form'; + +import { useAuthContext } from 'src/auth/hooks'; + +import { CopyButton } from '../copy'; + +// ---------------------------------------------------------------------- + +const expiryOptions = [ + { label: '30 days', value: 30 * 24 * 60 * 60 }, + { label: '60 days', value: 60 * 24 * 60 * 60 }, + { label: '90 days', value: 90 * 24 * 60 * 60 }, + { label: '1 year', value: 365 * 24 * 60 * 60 }, +]; + +type Props = { + onSuccess: VoidFunction; + isAdmin?: boolean; +}; + +// @ts-ignore +const resolver = ajvResolver(CreateApiKeyRequestSchema, { + ...ajvOptions, + schemas: [{ ...PermissionSchema, $id: '#/components/schemas/Permission' }], +}); + +const permissionOptions = (permissions: Permission[]) => permissions.map((value) => ({ label: value, value })); + +export function CreateApiKeyForm({ onSuccess, isAdmin }: Props) { + const { t } = useTranslate(); + const { user } = useAuthContext(); + const [apiKey, setApiKey] = useState(); + + const methods = useForm({ + resolver, + defaultValues: { + name: '', + wallet: null, + expiry: expiryOptions[2].value, + permissions: [], + description: '', + }, + }); + + const { + reset, + handleSubmit, + formState: { isSubmitting }, + } = methods; + + const onSubmit = async (body: any) => { + const submissionData: CreateApiKeyRequest = { + ...body, + expiry: body.expiry || undefined, + description: body.description || undefined, + user_id: body.wallet?.user_id, + }; + + try { + if (isAdmin) { + const { data } = await createApiKey({ body: submissionData }); + setApiKey(data); + } else { + const { data } = await createWalletApiKey({ body: submissionData }); + setApiKey(data); + } + toast.success(t('create_api_key_form.create_success')); + reset(); + onSuccess(); + } catch (error) { + toast.error(error.reason); + } + }; + + return apiKey && apiKey.key ? ( + + {t('create_api_key_form.key_display_message')} + + + + ), + }} + /> + + ) : ( + +
    + + + + + + Never expires + + + + {expiryOptions.map((option) => ( + +
    + {option.label} + + Expires {fDate(Date.now() + option.value * 1000, 'DD MMMM YYYY')} + +
    +
    + ))} +
    + + {user!.permissions.length > 0 ? ( + + ) : ( + + {t('create_api_key_form.no_permissions')}:{' '} + + See Docs + + + )} + + {isAdmin && } + + + {t('create_api_key_form.create_button')} + +
    +
    +
    + ); +} diff --git a/dashboard/src/components/api-key/index.ts b/dashboard/src/components/api-key/index.ts new file mode 100644 index 00000000..c9840b8e --- /dev/null +++ b/dashboard/src/components/api-key/index.ts @@ -0,0 +1,2 @@ +export * from './create-api-key-form'; +export * from './create-api-key-dialog'; diff --git a/dashboard/src/components/app/index.ts b/dashboard/src/components/app/index.ts new file mode 100644 index 00000000..d405cec0 --- /dev/null +++ b/dashboard/src/components/app/index.ts @@ -0,0 +1 @@ +export * from './welcome'; diff --git a/dashboard/src/components/app/welcome.tsx b/dashboard/src/components/app/welcome.tsx new file mode 100644 index 00000000..fe809204 --- /dev/null +++ b/dashboard/src/components/app/welcome.tsx @@ -0,0 +1,66 @@ +import type { StackProps } from '@mui/material/Stack'; + +import Stack from '@mui/material/Stack'; +import { useTheme } from '@mui/material/styles'; +import Typography from '@mui/material/Typography'; + +// ---------------------------------------------------------------------- + +type Props = StackProps & { + title?: string; + description?: string; + img?: React.ReactNode; + action?: React.ReactNode; +}; + +export function Welcome({ title, description, action, img, ...other }: Props) { + const theme = useTheme(); + + return ( + + + + {title} + + + {description} + + {action && action} + + + {img && ( + + {img} + + )} + + ); +} diff --git a/dashboard/src/components/bitcoin/index.ts b/dashboard/src/components/bitcoin/index.ts new file mode 100644 index 00000000..e7c579a7 --- /dev/null +++ b/dashboard/src/components/bitcoin/index.ts @@ -0,0 +1 @@ +export * from './sats-with-icon'; diff --git a/dashboard/src/components/bitcoin/sats-with-icon.tsx b/dashboard/src/components/bitcoin/sats-with-icon.tsx new file mode 100644 index 00000000..e00bd681 --- /dev/null +++ b/dashboard/src/components/bitcoin/sats-with-icon.tsx @@ -0,0 +1,25 @@ +import type { TypographyProps } from '@mui/material'; + +import React from 'react'; + +import { Tooltip, Typography } from '@mui/material'; + +import { fSats } from 'src/utils/format-number'; + +interface Props extends TypographyProps { + amountMSats: number; + placement?: 'top-start' | 'top' | 'bottom' | 'left' | 'right'; + children?: React.ReactNode; +} + +export function SatsWithIcon({ amountMSats, placement = 'top-start', children, variant, ...other }: Props) { + return ( + + + {fSats(amountMSats / 1000)} + + {children} + + + ); +} diff --git a/dashboard/src/components/carousel/breakpoints.ts b/dashboard/src/components/carousel/breakpoints.ts new file mode 100644 index 00000000..2af83d9b --- /dev/null +++ b/dashboard/src/components/carousel/breakpoints.ts @@ -0,0 +1,9 @@ +// ---------------------------------------------------------------------- + +export const carouselBreakpoints = { + xs: '(min-width: 0px)', + sm: '(min-width: 600px)', + md: '(min-width: 900px)', + lg: '(min-width: 1200px)', + xl: '(min-width: 1536px)', +}; diff --git a/dashboard/src/components/carousel/carousel.tsx b/dashboard/src/components/carousel/carousel.tsx new file mode 100644 index 00000000..121f02fe --- /dev/null +++ b/dashboard/src/components/carousel/carousel.tsx @@ -0,0 +1,91 @@ +import { Children, isValidElement } from 'react'; + +import Box from '@mui/material/Box'; +import { styled } from '@mui/material/styles'; + +import { carouselClasses } from './classes'; +import { CarouselSlide } from './components/carousel-slide'; + +import type { CarouselProps, CarouselOptions } from './types'; + +// ---------------------------------------------------------------------- + +type StyledProps = Pick; + +export const StyledRoot = styled(Box, { + shouldForwardProp: (prop) => prop !== 'axis', +})(({ axis }) => ({ + margin: 'auto', + maxWidth: '100%', + overflow: 'hidden', + position: 'relative', + ...(axis === 'y' && { + height: '100%', + }), +})); + +export const StyledContainer = styled(Box, { + shouldForwardProp: (prop) => prop !== 'axis' && prop !== 'slideSpacing', +})(({ axis, slideSpacing }) => ({ + display: 'flex', + backfaceVisibility: 'hidden', + ...(axis === 'x' && { + touchAction: 'pan-y pinch-zoom', + marginLeft: `calc(${slideSpacing} * -1)`, + }), + ...(axis === 'y' && { + height: '100%', + flexDirection: 'column', + touchAction: 'pan-x pinch-zoom', + marginTop: `calc(${slideSpacing} * -1)`, + }), +})); + +// ---------------------------------------------------------------------- + +export function Carousel({ carousel, children, sx, slotProps }: CarouselProps) { + const { mainRef, options } = carousel; + + const axis = options?.axis ?? 'x'; + + const slideSpacing = options?.slideSpacing ?? '0px'; + + const direction = options?.direction ?? 'ltr'; + + const renderChildren = Children.map(children, (child) => { + if (isValidElement(child)) { + const reactChild = child as React.ReactElement<{ key?: React.Key }>; + + return ( + + {child} + + ); + } + return null; + }); + + return ( + + + theme.transitions.create(['height'], { + easing: theme.transitions.easing.easeInOut, + duration: theme.transitions.duration.shorter, + }), + }), + ...slotProps?.container, + }} + > + {renderChildren} + + + ); +} diff --git a/dashboard/src/components/carousel/classes.ts b/dashboard/src/components/carousel/classes.ts new file mode 100644 index 00000000..a26a5b1e --- /dev/null +++ b/dashboard/src/components/carousel/classes.ts @@ -0,0 +1,27 @@ +// ---------------------------------------------------------------------- + +export const carouselClasses = { + root: 'mnl__carousel__root', + container: 'mnl__carousel__container', + // dot + dots: 'mnl__carousel__dots', + dot: 'mnl__carousel__dot', + // arrow + arrows: 'mnl__carousel__arrows', + arrowsLabel: 'mnl__carousel__arrows_label', + arrowPrev: 'mnl__carousel__btn--prev', + arrowNext: 'mnl__carousel__btn--next', + arrowSvg: 'mnl__carousel__btn__svg', + // slide + slide: 'mnl__carousel__slide', + slideContent: 'mnl__carousel__slide__content', + // thumb + thumbs: 'mnl__carousel__thumbs', + thumb: 'mnl__carousel__thumb', + thumbContainer: 'mnl__carousel__thumbs__container', + thumbImage: 'mnl__carousel__thumb__image', + // progress + progress: 'mnl__carousel__progress', + progressBar: 'mnl__carousel__progress__bar', + state: { selected: 'state--selected', disabled: 'state--disabled' }, +}; diff --git a/dashboard/src/components/carousel/components/carousel-arrow-buttons.tsx b/dashboard/src/components/carousel/components/carousel-arrow-buttons.tsx new file mode 100644 index 00000000..2dc9d608 --- /dev/null +++ b/dashboard/src/components/carousel/components/carousel-arrow-buttons.tsx @@ -0,0 +1,238 @@ +import type { StackProps } from '@mui/material/Stack'; +import type { CSSObject } from '@mui/material/styles'; +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import SvgIcon from '@mui/material/SvgIcon'; +import { useTheme } from '@mui/material/styles'; +import ButtonBase, { buttonBaseClasses } from '@mui/material/ButtonBase'; + +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { carouselClasses } from '../classes'; + +import type { CarouselArrowButtonProps, CarouselArrowButtonsProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function CarouselArrowBasicButtons({ + options, + slotProps, + totalSlides, + selectedIndex, + // + onClickPrev, + onClickNext, + disablePrev, + disableNext, + sx, + ...other +}: StackProps & CarouselArrowButtonsProps) { + return ( + + + + + + ); +} + +// ---------------------------------------------------------------------- + +export function CarouselArrowNumberButtons({ + options, + slotProps, + totalSlides, + selectedIndex, + // + onClickPrev, + onClickNext, + disablePrev, + disableNext, + sx, + ...other +}: StackProps & CarouselArrowButtonsProps) { + const theme = useTheme(); + + return ( + + + + + {selectedIndex}/{totalSlides} + + + + + ); +} + +// ---------------------------------------------------------------------- + +export function CarouselArrowFloatButtons({ + options, + slotProps, + onClickPrev, + onClickNext, + disablePrev, + disableNext, +}: StackProps & CarouselArrowButtonsProps) { + const baseStyles: CSSObject = { + zIndex: 9, + top: '50%', + borderRadius: 1.5, + position: 'absolute', + color: 'common.white', + bgcolor: 'text.primary', + transform: 'translateY(-50%)', + '&:hover': { opacity: 0.8 }, + [stylesMode.dark]: { color: 'grey.800' }, + }; + + return ( + <> + + + + + ); +} + +// ---------------------------------------------------------------------- + +export function ArrowButton({ sx, svgIcon, svgSize, options, variant, ...other }: ButtonBaseProps & CarouselArrowButtonProps) { + const arrowPrev = variant === 'prev'; + const arrowNext = variant === 'next'; + + const prevSvg = svgIcon || ( + + ); + + const nextSvg = svgIcon || ( + + ); + + return ( + + theme.transitions.create(['all'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.short, + }), + [`&.${buttonBaseClasses.disabled}`]: { + opacity: 0.4, + }, + ...sx, + ...(options?.direction === 'rtl' && { + ...(arrowPrev && { right: -16, left: 'auto' }), + ...(arrowNext && { left: -16, right: 'auto' }), + }), + }} + {...other} + > + + {arrowPrev ? prevSvg : nextSvg} + + + ); +} diff --git a/dashboard/src/components/carousel/components/carousel-dot-buttons.tsx b/dashboard/src/components/carousel/components/carousel-dot-buttons.tsx new file mode 100644 index 00000000..3d991a72 --- /dev/null +++ b/dashboard/src/components/carousel/components/carousel-dot-buttons.tsx @@ -0,0 +1,146 @@ +import Box from '@mui/material/Box'; +import NoSsr from '@mui/material/NoSsr'; +import { useTheme } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { carouselClasses } from '../classes'; + +import type { CarouselDotButtonsProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function CarouselDotButtons({ + sx, + gap, + slotProps, + onClickDot, + scrollSnaps, + selectedIndex, + fallbackCount = 1, + variant = 'circular', + fallback = false, + ...other +}: CarouselDotButtonsProps) { + const theme = useTheme(); + + const GAPS = { + number: gap ?? 6, + rounded: gap ?? 2, + circular: gap ?? 2, + }; + + const SIZES = { + circular: slotProps?.dot?.size ?? 18, + number: slotProps?.dot?.size ?? 28, + }; + + const renderFallback = ( + + ); + + const dotStyles = { + circular: (selected: boolean) => ({ + width: SIZES.circular, + height: SIZES.circular, + '&::before': { + width: 8, + height: 8, + content: '""', + opacity: 0.24, + borderRadius: '50%', + bgcolor: 'currentColor', + transition: theme.transitions.create(['opacity'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.short, + }), + ...(selected && { opacity: 1 }), + }, + }), + rounded: (selected: boolean) => ({ + width: SIZES.circular, + height: SIZES.circular, + '&::before': { + width: 8, + height: 8, + content: '""', + opacity: 0.24, + borderRadius: '50%', + bgcolor: 'currentColor', + transition: theme.transitions.create(['width', 'opacity'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.short, + }), + ...(selected && { width: 'calc(100% - 4px)', opacity: 1, borderRadius: 1 }), + }, + }), + number: (selected: boolean) => ({ + width: SIZES.number, + height: SIZES.number, + borderRadius: '50%', + typography: 'caption', + color: 'text.disabled', + border: `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.16)}`, + ...(selected && { + color: 'common.white', + bgcolor: 'text.primary', + fontWeight: 'fontWeightSemiBold', + [stylesMode.dark]: { color: 'grey.800' }, + }), + }), + }; + + return ( + + + {scrollSnaps.map((_, index) => { + const selected = index === selectedIndex; + + return ( + + onClickDot(index)} + sx={{ + ...(variant === 'circular' && dotStyles.circular(selected)), + ...(variant === 'rounded' && dotStyles.rounded(selected)), + ...(variant === 'number' && dotStyles.number(selected)), + [`&.${carouselClasses.state.selected}`]: { + ...slotProps?.dot?.selected, + }, + ...slotProps?.dot?.sx, + }} + > + {variant === 'number' && index + 1} + + + ); + })} + + + ); +} diff --git a/dashboard/src/components/carousel/components/carousel-progress-bar.tsx b/dashboard/src/components/carousel/components/carousel-progress-bar.tsx new file mode 100644 index 00000000..93c1464e --- /dev/null +++ b/dashboard/src/components/carousel/components/carousel-progress-bar.tsx @@ -0,0 +1,47 @@ +import type { BoxProps } from '@mui/material/Box'; + +import Box from '@mui/material/Box'; +import { styled } from '@mui/material/styles'; + +import { varAlpha } from 'src/theme/styles'; + +import { carouselClasses } from '../classes'; + +import type { CarouselProgressBarProps } from '../types'; + +// ---------------------------------------------------------------------- + +const StyledRoot = styled(Box)(({ theme }) => ({ + height: 6, + maxWidth: 120, + width: '100%', + borderRadius: 6, + overflow: 'hidden', + position: 'relative', + color: theme.vars.palette.text.primary, + backgroundColor: varAlpha(theme.vars.palette.grey['500Channel'], 0.2), +})); + +const StyledProgress = styled(Box)(() => ({ + top: 0, + bottom: 0, + width: '100%', + left: '-100%', + position: 'absolute', + backgroundColor: 'currentColor', +})); + +// ---------------------------------------------------------------------- + +export function CarouselProgressBar({ value, sx, ...other }: BoxProps & CarouselProgressBarProps) { + return ( + + + + ); +} diff --git a/dashboard/src/components/carousel/components/carousel-slide.tsx b/dashboard/src/components/carousel/components/carousel-slide.tsx new file mode 100644 index 00000000..b08d9f40 --- /dev/null +++ b/dashboard/src/components/carousel/components/carousel-slide.tsx @@ -0,0 +1,99 @@ +import type { BoxProps } from '@mui/material/Box'; + +import Box from '@mui/material/Box'; +import { styled } from '@mui/material/styles'; + +import { carouselClasses } from '../classes'; + +import type { CarouselOptions, CarouselSlideProps } from '../types'; + +// ---------------------------------------------------------------------- + +type StyledProps = Pick; + +const StyledRoot = styled(Box, { + shouldForwardProp: (prop) => prop !== 'axis' && prop !== 'slideSpacing', +})(({ axis, slideSpacing }) => ({ + display: 'block', + position: 'relative', + ...(axis === 'x' && { + minWidth: 0, + paddingLeft: slideSpacing, + }), + ...(axis === 'y' && { + minHeight: 0, + paddingTop: slideSpacing, + }), +})); + +const StyledContent = styled(Box)(() => ({ + overflow: 'hidden', + position: 'relative', + borderRadius: 'inherit', +})); + +// ---------------------------------------------------------------------- + +export function CarouselSlide({ sx, options, children, ...other }: BoxProps & CarouselSlideProps) { + const slideSize = getSize(options?.slidesToShow); + + return ( + + {options?.parallax ? ( + +
    {children}
    +
    + ) : ( + children + )} +
    + ); +} + +// ---------------------------------------------------------------------- + +type ObjectValue = { + [key: string]: string | number; +}; + +type InputValue = CarouselOptions['slidesToShow']; + +function getSize(slidesToShow: InputValue): InputValue { + if (slidesToShow && typeof slidesToShow === 'object') { + return Object.keys(slidesToShow).reduce((acc, key) => { + const sizeByKey = slidesToShow[key]; + acc[key] = getValue(sizeByKey); + return acc; + }, {}); + } + + return getValue(slidesToShow); +} + +function getValue(value: string | number = 1): string { + if (typeof value === 'string') { + const isSupported = value === 'auto' || value.endsWith('%') || value.endsWith('px'); + if (!isSupported) { + throw new Error(`Only accepts values: auto, px, %, or number.`); + } + // value is either 'auto', ends with '%', or ends with 'px' + return `0 0 ${value}`; + } + + if (typeof value === 'number') { + return `0 0 ${100 / value}%`; + } + + // Default case should not be reached due to the type signature, but we include it for safety + throw new Error(`Invalid value type. Only accepts values: auto, px, %, or number.`); +} diff --git a/dashboard/src/components/carousel/components/carousel-thumbs.tsx b/dashboard/src/components/carousel/components/carousel-thumbs.tsx new file mode 100644 index 00000000..4898386a --- /dev/null +++ b/dashboard/src/components/carousel/components/carousel-thumbs.tsx @@ -0,0 +1,162 @@ +import type { BoxProps } from '@mui/material/Box'; +import type { CSSObject } from '@mui/material/styles'; +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; + +import { Children, forwardRef, isValidElement } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { varAlpha } from 'src/theme/styles'; + +import { carouselClasses } from '../classes'; +import { CarouselSlide } from './carousel-slide'; +import { StyledRoot, StyledContainer } from '../carousel'; + +import type { CarouselOptions, CarouselThumbProps, CarouselThumbsProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const CarouselThumbs = forwardRef( + ({ children, slotProps, options, sx, ...other }, ref) => { + const axis = options?.axis ?? 'x'; + + const slideSpacing = options?.slideSpacing ?? '12px'; + + const maskStyles = useMaskStyle(axis); + + const renderChildren = Children.map(children, (child) => { + if (isValidElement(child)) { + const reactChild = child as React.ReactElement<{ key?: React.Key }>; + + return ( + + {child} + + ); + } + return null; + }); + + return ( + + + {renderChildren} + + + ); + } +); + +// ---------------------------------------------------------------------- + +export function CarouselThumb({ sx, src, index, selected, ...other }: ButtonBaseProps & CarouselThumbProps) { + return ( + + theme.transitions.create(['opacity', 'box-shadow'], { + easing: theme.transitions.easing.sharp, + duration: theme.transitions.duration.short, + }), + ...(selected && { + opacity: 1, + boxShadow: (theme) => `0 0 0 2px ${theme.vars.palette.primary.main}`, + }), + ...sx, + }} + {...other} + > + + + ); +} + +// ---------------------------------------------------------------------- + +function useMaskStyle(axis: CarouselOptions['axis']): CSSObject { + const theme = useTheme(); + + const baseStyles = { + zIndex: 9, + content: '""', + position: 'absolute', + }; + + const bgcolor = `${theme.vars.palette.background.paper} 20%, ${varAlpha(theme.vars.palette.background.paperChannel, 0)} 100%)`; + + if (axis === 'y') { + return { + '&::before, &::after': { + ...baseStyles, + left: 0, + height: 40, + width: '100%', + }, + '&::before': { + top: -8, + background: `linear-gradient(to bottom, ${bgcolor}`, + }, + '&::after': { + bottom: -8, + background: `linear-gradient(to top, ${bgcolor}`, + }, + }; + } + + return { + '&::before, &::after': { + ...baseStyles, + top: 0, + width: 40, + height: '100%', + }, + '&::before': { + left: -8, + background: `linear-gradient(to right, ${bgcolor}`, + }, + '&::after': { + right: -8, + background: `linear-gradient(to left, ${bgcolor}`, + }, + }; +} diff --git a/dashboard/src/components/carousel/hooks/use-carousel-arrows.ts b/dashboard/src/components/carousel/hooks/use-carousel-arrows.ts new file mode 100644 index 00000000..3ac361fc --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel-arrows.ts @@ -0,0 +1,43 @@ +import type { EmblaCarouselType } from 'embla-carousel'; + +import { useState, useEffect, useCallback } from 'react'; + +import type { UseCarouselArrowsReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export const useCarouselArrows = (mainApi?: EmblaCarouselType): UseCarouselArrowsReturn => { + const [disablePrev, setDisabledPrevBtn] = useState(true); + + const [disableNext, setDisabledNextBtn] = useState(true); + + const onClickPrev = useCallback(() => { + if (!mainApi) return; + mainApi.scrollPrev(); + }, [mainApi]); + + const onClickNext = useCallback(() => { + if (!mainApi) return; + mainApi.scrollNext(); + }, [mainApi]); + + const onSelect = useCallback((_mainApi: EmblaCarouselType) => { + setDisabledPrevBtn(!_mainApi.canScrollPrev()); + setDisabledNextBtn(!_mainApi.canScrollNext()); + }, []); + + useEffect(() => { + if (!mainApi) return; + + onSelect(mainApi); + mainApi.on('reInit', onSelect); + mainApi.on('select', onSelect); + }, [mainApi, onSelect]); + + return { + disablePrev, + disableNext, + onClickPrev, + onClickNext, + }; +}; diff --git a/dashboard/src/components/carousel/hooks/use-carousel-auto-play.ts b/dashboard/src/components/carousel/hooks/use-carousel-auto-play.ts new file mode 100644 index 00000000..b8c6384b --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel-auto-play.ts @@ -0,0 +1,47 @@ +// @ts-nocheck + +import type { EmblaCarouselType } from 'embla-carousel'; + +import { useState, useEffect, useCallback } from 'react'; + +import type { UseCarouselAutoPlayReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export function useCarouselAutoPlay(mainApi?: EmblaCarouselType): UseCarouselAutoPlayReturn { + const [isPlaying, setIsPlaying] = useState(false); + + const onClickAutoplay = useCallback( + (callback: () => void) => { + const autoplay = mainApi?.plugins()?.autoplay; + if (!autoplay) return; + + const resetOrStop = autoplay.options.stopOnInteraction === false ? autoplay.reset : autoplay.stop; + + resetOrStop(); + callback(); + }, + [mainApi] + ); + + const onTogglePlay = useCallback(() => { + const autoplay = mainApi?.plugins()?.autoplay; + if (!autoplay) return; + + const playOrStop = autoplay.isPlaying() ? autoplay.stop : autoplay.play; + playOrStop(); + }, [mainApi]); + + useEffect(() => { + const autoplay = mainApi?.plugins()?.autoplay; + if (!autoplay) return; + + setIsPlaying(autoplay.isPlaying()); + mainApi + .on('autoplay:play', () => setIsPlaying(true)) + .on('autoplay:stop', () => setIsPlaying(false)) + .on('reInit', () => setIsPlaying(false)); + }, [mainApi]); + + return { isPlaying, onTogglePlay, onClickAutoplay }; +} diff --git a/dashboard/src/components/carousel/hooks/use-carousel-auto-scroll.ts b/dashboard/src/components/carousel/hooks/use-carousel-auto-scroll.ts new file mode 100644 index 00000000..ab6f5d45 --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel-auto-scroll.ts @@ -0,0 +1,47 @@ +// @ts-nocheck + +import type { EmblaCarouselType } from 'embla-carousel'; + +import { useState, useEffect, useCallback } from 'react'; + +import type { UseCarouselAutoPlayReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export function useCarouselAutoScroll(mainApi?: EmblaCarouselType): UseCarouselAutoPlayReturn { + const [isPlaying, setIsPlaying] = useState(false); + + const onClickAutoplay = useCallback( + (callback: () => void) => { + const autoScroll = mainApi?.plugins()?.autoScroll; + if (!autoScroll) return; + + const resetOrStop = autoScroll.options.stopOnInteraction === false ? autoScroll.reset : autoScroll.stop; + + resetOrStop(); + callback(); + }, + [mainApi] + ); + + const onTogglePlay = useCallback(() => { + const autoScroll = mainApi?.plugins()?.autoScroll; + if (!autoScroll) return; + + const playOrStop = autoScroll.isPlaying() ? autoScroll.stop : autoScroll.play; + playOrStop(); + }, [mainApi]); + + useEffect(() => { + const autoScroll = mainApi?.plugins()?.autoScroll; + if (!autoScroll) return; + + setIsPlaying(autoScroll.isPlaying()); + mainApi + .on('autoScroll:play', () => setIsPlaying(true)) + .on('autoScroll:stop', () => setIsPlaying(false)) + .on('reInit', () => setIsPlaying(false)); + }, [mainApi]); + + return { isPlaying, onTogglePlay, onClickAutoplay }; +} diff --git a/dashboard/src/components/carousel/hooks/use-carousel-dots.ts b/dashboard/src/components/carousel/hooks/use-carousel-dots.ts new file mode 100644 index 00000000..b4a96fe8 --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel-dots.ts @@ -0,0 +1,50 @@ +import type { EmblaCarouselType } from 'embla-carousel'; + +import { useState, useEffect, useCallback } from 'react'; + +import type { UseCarouselDotsReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export function useCarouselDots(mainApi?: EmblaCarouselType): UseCarouselDotsReturn { + const [dotCount, setDotCount] = useState(0); + + const [selectedIndex, setSelectedIndex] = useState(0); + + const [scrollSnaps, setScrollSnaps] = useState([]); + + const onClickDot = useCallback( + (index: number) => { + if (!mainApi) return; + mainApi.scrollTo(index); + setSelectedIndex(index); + }, + [mainApi] + ); + + const onInit = useCallback((_mainApi: EmblaCarouselType) => { + setScrollSnaps(_mainApi.scrollSnapList()); + }, []); + + const onSelect = useCallback((_mainApi: EmblaCarouselType) => { + setSelectedIndex(_mainApi.selectedScrollSnap()); + setDotCount(_mainApi.scrollSnapList().length); + }, []); + + useEffect(() => { + if (!mainApi) return; + + onInit(mainApi); + onSelect(mainApi); + mainApi.on('reInit', onInit); + mainApi.on('reInit', onSelect); + mainApi.on('select', onSelect); + }, [mainApi, onInit, onSelect]); + + return { + dotCount, + scrollSnaps, + selectedIndex, + onClickDot, + }; +} diff --git a/dashboard/src/components/carousel/hooks/use-carousel-parallax.ts b/dashboard/src/components/carousel/hooks/use-carousel-parallax.ts new file mode 100644 index 00000000..5119ecef --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel-parallax.ts @@ -0,0 +1,84 @@ +import type { EmblaEventType, EmblaCarouselType } from 'embla-carousel'; + +import { useRef, useEffect, useCallback } from 'react'; + +import type { CarouselOptions } from '../types'; + +// ---------------------------------------------------------------------- + +export function useParallax(mainApi?: EmblaCarouselType, parallax?: CarouselOptions['parallax']) { + const tweenFactor = useRef(0); + + const tweenNodes = useRef([]); + + const TWEEN_FACTOR_BASE = typeof parallax === 'number' ? parallax : 0.24; + + const setTweenNodes = useCallback((_mainApi: EmblaCarouselType): void => { + tweenNodes.current = _mainApi.slideNodes().map((slideNode) => slideNode.querySelector('.slide__parallax__layer') as HTMLElement); + }, []); + + const setTweenFactor = useCallback( + (_mainApi: EmblaCarouselType) => { + tweenFactor.current = TWEEN_FACTOR_BASE * _mainApi.scrollSnapList().length; + }, + [TWEEN_FACTOR_BASE] + ); + + const tweenParallax = useCallback((_mainApi: EmblaCarouselType, eventName?: EmblaEventType) => { + const engine = _mainApi.internalEngine(); + + const scrollProgress = _mainApi.scrollProgress(); + + const slidesInView = _mainApi.slidesInView(); + + const isScrollEvent = eventName === 'scroll'; + + _mainApi.scrollSnapList().forEach((scrollSnap, snapIndex) => { + let diffToTarget = scrollSnap - scrollProgress; + + const slidesInSnap = engine.slideRegistry[snapIndex]; + + slidesInSnap.forEach((slideIndex) => { + if (isScrollEvent && !slidesInView.includes(slideIndex)) return; + + if (engine.options.loop) { + engine.slideLooper.loopPoints.forEach((loopItem) => { + const target = loopItem.target(); + + if (slideIndex === loopItem.index && target !== 0) { + const sign = Math.sign(target); + + if (sign === -1) { + diffToTarget = scrollSnap - (1 + scrollProgress); + } + if (sign === 1) { + diffToTarget = scrollSnap + (1 - scrollProgress); + } + } + }); + } + + const translateValue = diffToTarget * (-1 * tweenFactor.current) * 100; + + const tweenNode = tweenNodes.current[slideIndex]; + + if (tweenNode) { + tweenNode.style.transform = `translateX(${translateValue}%)`; + } + }); + }); + }, []); + + useEffect(() => { + if (!mainApi || !parallax) return; + + setTweenNodes(mainApi); + setTweenFactor(mainApi); + tweenParallax(mainApi); + + mainApi.on('reInit', setTweenNodes).on('reInit', setTweenFactor).on('reInit', tweenParallax).on('scroll', tweenParallax); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [mainApi, tweenParallax]); + + return null; +} diff --git a/dashboard/src/components/carousel/hooks/use-carousel-progress.ts b/dashboard/src/components/carousel/hooks/use-carousel-progress.ts new file mode 100644 index 00000000..cff35bf4 --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel-progress.ts @@ -0,0 +1,27 @@ +import type { EmblaCarouselType } from 'embla-carousel'; + +import { useState, useEffect, useCallback } from 'react'; + +import type { UseCarouselProgressReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export function useCarouselProgress(mainApi?: EmblaCarouselType): UseCarouselProgressReturn { + const [scrollProgress, setScrollProgress] = useState(0); + + const onScroll = useCallback((_mainApi: EmblaCarouselType) => { + const progress = Math.max(0, Math.min(1, _mainApi.scrollProgress())); + + setScrollProgress(progress * 100); + }, []); + + useEffect(() => { + if (!mainApi) return; + + onScroll(mainApi); + mainApi.on('reInit', onScroll); + mainApi.on('scroll', onScroll); + }, [mainApi, onScroll]); + + return { value: scrollProgress }; +} diff --git a/dashboard/src/components/carousel/hooks/use-carousel.ts b/dashboard/src/components/carousel/hooks/use-carousel.ts new file mode 100644 index 00000000..6e5a4126 --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-carousel.ts @@ -0,0 +1,81 @@ +import type { EmblaPluginType } from 'embla-carousel'; + +import { useMemo } from 'react'; +import useEmblaCarousel from 'embla-carousel-react'; + +import { useThumbs } from './use-thumbs'; +import { useCarouselDots } from './use-carousel-dots'; +import { useParallax } from './use-carousel-parallax'; +import { useCarouselArrows } from './use-carousel-arrows'; +import { useCarouselProgress } from './use-carousel-progress'; +import { useCarouselAutoPlay } from './use-carousel-auto-play'; +import { useCarouselAutoScroll } from './use-carousel-auto-scroll'; + +import type { CarouselOptions, UseCarouselReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export const useCarousel = (options?: CarouselOptions, plugins?: EmblaPluginType[]): UseCarouselReturn => { + const [mainRef, mainApi] = useEmblaCarousel(options, plugins); + + const { disablePrev, disableNext, onClickPrev, onClickNext } = useCarouselArrows(mainApi); + + const pluginNames = plugins?.map((plugin) => plugin.name); + + const _dots = useCarouselDots(mainApi); + + const _autoplay = useCarouselAutoPlay(mainApi); + + const _autoScroll = useCarouselAutoScroll(mainApi); + + const _progress = useCarouselProgress(mainApi); + + const _thumbs = useThumbs(mainApi, options?.thumbs); + + useParallax(mainApi, options?.parallax); + + const controls = useMemo(() => { + if (pluginNames?.includes('autoplay')) { + return { + onClickPrev: () => _autoplay.onClickAutoplay(onClickPrev), + onClickNext: () => _autoplay.onClickAutoplay(onClickNext), + }; + } + if (pluginNames?.includes('autoScroll')) { + return { + onClickPrev: () => _autoScroll.onClickAutoplay(onClickPrev), + onClickNext: () => _autoScroll.onClickAutoplay(onClickNext), + }; + } + return { + onClickPrev, + onClickNext, + }; + }, [_autoScroll, _autoplay, onClickNext, onClickPrev, pluginNames]); + + return { + options: { + ...options, + ...mainApi?.internalEngine().options, + }, + pluginNames, + mainRef, + mainApi, + // arrows + arrows: { + disablePrev, + disableNext, + onClickPrev: controls.onClickPrev, + onClickNext: controls.onClickNext, + }, + // dots + dots: _dots, + // thumbs + thumbs: _thumbs, + // progress + progress: _progress, + // autoplay + autoplay: _autoplay, + autoScroll: _autoScroll, + }; +}; diff --git a/dashboard/src/components/carousel/hooks/use-thumbs.ts b/dashboard/src/components/carousel/hooks/use-thumbs.ts new file mode 100644 index 00000000..f6c8bd6c --- /dev/null +++ b/dashboard/src/components/carousel/hooks/use-thumbs.ts @@ -0,0 +1,46 @@ +import type { EmblaCarouselType } from 'embla-carousel'; + +import useEmblaCarousel from 'embla-carousel-react'; +import { useState, useEffect, useCallback } from 'react'; + +import type { CarouselOptions, UseCarouselThumbsReturn } from '../types'; + +// ---------------------------------------------------------------------- + +export function useThumbs(mainApi?: EmblaCarouselType, options?: Partial): UseCarouselThumbsReturn { + const [thumbsRef, thumbsApi] = useEmblaCarousel({ + containScroll: 'keepSnaps', + dragFree: true, + ...options, + }); + + const [selectedIndex, setSelectedIndex] = useState(0); + + const onClickThumb = useCallback( + (index: number) => { + if (!mainApi || !thumbsApi) return; + mainApi.scrollTo(index); + }, + [mainApi, thumbsApi] + ); + + const onSelect = useCallback(() => { + if (!mainApi || !thumbsApi) return; + setSelectedIndex(mainApi.selectedScrollSnap()); + thumbsApi.scrollTo(mainApi.selectedScrollSnap()); + }, [mainApi, thumbsApi, setSelectedIndex]); + + useEffect(() => { + if (!mainApi) return; + onSelect(); + mainApi.on('select', onSelect); + mainApi.on('reInit', onSelect); + }, [mainApi, onSelect]); + + return { + onClickThumb, + thumbsRef, + thumbsApi, + selectedIndex, + }; +} diff --git a/dashboard/src/components/carousel/index.ts b/dashboard/src/components/carousel/index.ts new file mode 100644 index 00000000..92f7acd7 --- /dev/null +++ b/dashboard/src/components/carousel/index.ts @@ -0,0 +1,19 @@ +export * from './classes'; + +export * from './carousel'; + +export type * from './types'; + +export * from './breakpoints'; + +export * from './hooks/use-carousel'; + +export * from './components/carousel-slide'; + +export * from './components/carousel-thumbs'; + +export * from './components/carousel-dot-buttons'; + +export * from './components/carousel-progress-bar'; + +export * from './components/carousel-arrow-buttons'; diff --git a/dashboard/src/components/carousel/types.ts b/dashboard/src/components/carousel/types.ts new file mode 100644 index 00000000..385a5d8d --- /dev/null +++ b/dashboard/src/components/carousel/types.ts @@ -0,0 +1,162 @@ +import type { Theme, SxProps } from '@mui/material/styles'; +import type { UseEmblaCarouselType } from 'embla-carousel-react'; +import type { EmblaOptionsType, EmblaCarouselType } from 'embla-carousel'; + +// ---------------------------------------------------------------------- + +/** + * Dot Buttons + */ +export type UseCarouselDotsReturn = { + dotCount: number; + selectedIndex: number; + scrollSnaps: number[]; + onClickDot: (index: number) => void; +}; + +export type CarouselDotButtonsProps = Omit & { + gap?: number; + sx?: SxProps; + fallback?: boolean; + fallbackCount?: number; + variant?: 'circular' | 'rounded' | 'number'; + slotProps?: { + dot?: { + size?: number; + sx?: SxProps; + selected?: SxProps; + }; + }; +}; + +// ---------------------------------------------------------------------- + +/** + * Prev & Next Buttons + */ +export type UseCarouselArrowsReturn = { + disablePrev: boolean; + disableNext: boolean; + onClickPrev: () => void; + onClickNext: () => void; +}; + +export type CarouselArrowButtonProps = { + svgSize?: number; + variant: 'prev' | 'next'; + svgIcon?: React.ReactNode; + options?: CarouselArrowButtonsProps['options']; +}; + +export type CarouselArrowButtonsProps = UseCarouselArrowsReturn & { + totalSlides?: number; + selectedIndex?: number; + options?: Partial; + slotProps?: { + prevBtn?: Pick & { + sx?: SxProps; + }; + nextBtn?: Pick & { + sx?: SxProps; + }; + }; +}; + +// ---------------------------------------------------------------------- + +/** + * Thumbs + */ +export type UseCarouselThumbsReturn = { + selectedIndex: number; + thumbsApi?: EmblaCarouselType; + thumbsRef: UseEmblaCarouselType[0]; + onClickThumb: (index: number) => void; +}; + +export type CarouselThumbProps = { + src: string; + index: number; + selected: boolean; +}; + +export type CarouselThumbsProps = { + options?: Partial; + slotProps?: { + slide?: SxProps; + container?: SxProps; + disableMask?: boolean; + }; +}; + +// ---------------------------------------------------------------------- + +/** + * Progress + */ +export type UseCarouselProgressReturn = { + value: number; +}; + +export type CarouselProgressBarProps = UseCarouselProgressReturn; + +// ---------------------------------------------------------------------- + +/** + * Autoplay + */ +export type UseCarouselAutoPlayReturn = { + isPlaying: boolean; + onTogglePlay: () => void; + onClickAutoplay: (callback: () => void) => void; +}; + +// ---------------------------------------------------------------------- + +/** + * Slide + */ +export type CarouselSlideProps = { + options?: Partial; +}; + +// ---------------------------------------------------------------------- + +/** + * Carousel + */ +export type CarouselBaseOptions = EmblaOptionsType & { + slideSpacing?: string; + parallax?: boolean | number; + slidesToShow?: string | number | { [key: string]: string | number }; +}; + +export type CarouselOptions = CarouselBaseOptions & { + thumbs?: CarouselBaseOptions; + breakpoints?: { + [key: string]: Omit; + }; +}; + +export type UseCarouselReturn = { + pluginNames?: string[]; + options?: CarouselOptions; + mainRef: UseEmblaCarouselType[0]; + mainApi?: EmblaCarouselType; + thumbs: UseCarouselThumbsReturn; + dots: UseCarouselDotsReturn; + autoplay: UseCarouselAutoPlayReturn; + progress: UseCarouselProgressReturn; + autoScroll: UseCarouselAutoPlayReturn; + arrows: UseCarouselArrowsReturn; +}; + +export type CarouselProps = { + carousel: UseCarouselReturn; + children: React.ReactNode; + sx?: SxProps; + slotProps?: { + container?: SxProps; + slide?: SxProps; + }; +}; diff --git a/dashboard/src/components/chart/chart-legends.tsx b/dashboard/src/components/chart/chart-legends.tsx new file mode 100644 index 00000000..39265f2e --- /dev/null +++ b/dashboard/src/components/chart/chart-legends.tsx @@ -0,0 +1,65 @@ +import type { StackProps } from '@mui/material/Stack'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import { styled } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export const StyledLegend = styled(Box)(({ theme }) => ({ + gap: 6, + alignItems: 'center', + display: 'inline-flex', + justifyContent: 'flex-start', + fontSize: theme.typography.pxToRem(13), + fontWeight: theme.typography.fontWeightMedium, +})); + +export const StyledDot = styled(Box)(() => ({ + width: 12, + height: 12, + flexShrink: 0, + display: 'flex', + borderRadius: '50%', + position: 'relative', + alignItems: 'center', + justifyContent: 'center', + backgroundColor: 'currentColor', +})); + +// ---------------------------------------------------------------------- + +type Props = StackProps & { + labels?: string[]; + colors?: string[]; + values?: string[]; + sublabels?: string[]; + icons?: React.ReactNode[]; +}; + +export function ChartLegends({ labels = [], colors = [], values, sublabels, icons, ...other }: Props) { + return ( + + {labels?.map((series, index) => ( + + + {icons?.length ? ( + + {icons?.[index]} + + ) : ( + + )} + + + {series} + {sublabels && <> {` (${sublabels[index]})`}} + + + + {values && {values[index]}} + + ))} + + ); +} diff --git a/dashboard/src/components/chart/chart-loading.tsx b/dashboard/src/components/chart/chart-loading.tsx new file mode 100644 index 00000000..3b259631 --- /dev/null +++ b/dashboard/src/components/chart/chart-loading.tsx @@ -0,0 +1,48 @@ +import type { BoxProps } from '@mui/material/Box'; + +import Box from '@mui/material/Box'; +import Skeleton from '@mui/material/Skeleton'; + +import type { ChartBaseProps } from './types'; + +// ---------------------------------------------------------------------- + +type Props = BoxProps & { + type: ChartBaseProps['type']; +}; + +export function ChartLoading({ sx, type, ...other }: Props) { + const circularTypes = ['donut', 'radialBar', 'pie', 'polarArea']; + + return ( + + + + ); +} diff --git a/dashboard/src/components/chart/chart-select.tsx b/dashboard/src/components/chart/chart-select.tsx new file mode 100644 index 00000000..cb99bf5c --- /dev/null +++ b/dashboard/src/components/chart/chart-select.tsx @@ -0,0 +1,67 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import MenuItem from '@mui/material/MenuItem'; +import MenuList from '@mui/material/MenuList'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { varAlpha } from 'src/theme/styles'; + +import { Iconify } from 'src/components/iconify'; + +import { usePopover, CustomPopover } from '../custom-popover'; + +// ---------------------------------------------------------------------- + +type Props = { + options: string[]; + value: string; + onChange: (newValue: string) => void; + slotProps?: { + button?: SxProps; + popover?: SxProps; + }; +}; + +export function ChartSelect({ options, value, onChange, slotProps, ...other }: Props) { + const popover = usePopover(); + + return ( + <> + `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.24)}`, + ...slotProps?.button, + }} + {...other} + > + {value} + + + + + + + {options.map((option) => ( + { + popover.onClose(); + onChange(option); + }} + > + {option} + + ))} + + + + ); +} diff --git a/dashboard/src/components/chart/chart.tsx b/dashboard/src/components/chart/chart.tsx new file mode 100644 index 00000000..ea27a135 --- /dev/null +++ b/dashboard/src/components/chart/chart.tsx @@ -0,0 +1,47 @@ +import type { BoxProps } from '@mui/material/Box'; + +import dynamic from 'next/dynamic'; + +import Box from '@mui/material/Box'; + +import { withLoadingProps } from 'src/utils/with-loading-props'; + +import { ChartLoading } from './chart-loading'; + +import type { ChartProps, ChartBaseProps, ChartLoadingProps } from './types'; + +// ---------------------------------------------------------------------- + +type WithLoadingProps = ChartBaseProps & { + loading?: ChartLoadingProps; +}; + +const ApexChart = withLoadingProps((props) => + dynamic(() => import('react-apexcharts').then((mod) => mod.default), { + ssr: false, + loading: () => { + const { loading, type } = props(); + + return loading?.disabled ? null : ; + }, + }) +); + +export function Chart({ sx, type, series, height, options, loadingProps, width = '100%', ...other }: BoxProps & ChartProps) { + return ( + + + + ); +} diff --git a/dashboard/src/components/chart/index.ts b/dashboard/src/components/chart/index.ts new file mode 100644 index 00000000..0414cb2a --- /dev/null +++ b/dashboard/src/components/chart/index.ts @@ -0,0 +1,11 @@ +export * from './chart'; + +export * from './use-chart'; + +export type * from './types'; + +export * from './chart-select'; + +export * from './chart-legends'; + +export * from './chart-loading'; diff --git a/dashboard/src/components/chart/styles.css b/dashboard/src/components/chart/styles.css new file mode 100644 index 00000000..0082b6d8 --- /dev/null +++ b/dashboard/src/components/chart/styles.css @@ -0,0 +1,59 @@ +.apexcharts-canvas { + /** + * Tooltip + */ + .apexcharts-tooltip { + min-width: 80px; + border-radius: 10px; + backdrop-filter: blur(6px); + color: var(--palette-text-primary); + box-shadow: var(--customShadows-dropdown); + background-color: rgba(var(--palette-background-defaultChannel) / 0.9); + } + .apexcharts-xaxistooltip { + border-radius: 10px; + border-color: transparent; + backdrop-filter: blur(6px); + color: var(--palette-text-primary); + box-shadow: var(--customShadows-dropdown); + background-color: rgba(var(--palette-background-defaultChannel) / 0.9); + &::before { + border-bottom-color: rgba(var(--palette-grey-500Channel) / 0.16); + } + &::after { + border-bottom-color: rgba(var(--palette-background-defaultChannel) / 0.9); + } + } + .apexcharts-tooltip-title { + font-weight: 700; + text-align: center; + color: var(--palette-text-secondary); + background-color: var(--palette-background-neutral); + } + /** + * Tooltip: group + */ + .apexcharts-tooltip-series-group { + padding: 4px 12px; + } + .apexcharts-tooltip-marker { + margin-right: 8px; + } + /** + * Legend + */ + .apexcharts-legend { + padding: 0; + } + .apexcharts-legend-series { + font-size: 0; + } + .apexcharts-legend-marker { + margin-right: 6px; + vertical-align: top; + transform: translateY(3px); + } + .apexcharts-legend-text { + line-height: 18px; + } +} diff --git a/dashboard/src/components/chart/types.ts b/dashboard/src/components/chart/types.ts new file mode 100644 index 00000000..f34da206 --- /dev/null +++ b/dashboard/src/components/chart/types.ts @@ -0,0 +1,20 @@ +import type { Props } from 'react-apexcharts'; +import type { Theme, SxProps } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export type ChartProps = { + type: Props['type']; + series: Props['series']; + options: Props['options']; + loadingProps?: ChartLoadingProps; +}; + +export type ChartBaseProps = Props; + +export type ChartOptions = Props['options']; + +export type ChartLoadingProps = { + disabled?: boolean; + sx?: SxProps; +}; diff --git a/dashboard/src/components/chart/use-chart.ts b/dashboard/src/components/chart/use-chart.ts new file mode 100644 index 00000000..8afdce60 --- /dev/null +++ b/dashboard/src/components/chart/use-chart.ts @@ -0,0 +1,323 @@ +import { useTheme } from '@mui/material/styles'; + +import { varAlpha } from 'src/theme/styles'; + +import type { ChartOptions } from './types'; + +// ---------------------------------------------------------------------- + +export function useChart(options?: ChartOptions): ChartOptions { + const theme = useTheme(); + + const LABEL_TOTAL = { + show: true, + label: 'Total', + color: theme.vars.palette.text.secondary, + fontSize: theme.typography.subtitle2.fontSize as string, + fontWeight: theme.typography.subtitle2.fontWeight, + }; + + const LABEL_VALUE = { + offsetY: 8, + color: theme.vars.palette.text.primary, + fontSize: theme.typography.h4.fontSize as string, + fontWeight: theme.typography.h4.fontWeight, + }; + + const RESPONSIVE = [ + { + breakpoint: theme.breakpoints.values.sm, // sm ~ 600 + options: { + plotOptions: { + bar: { + borderRadius: 3, + columnWidth: '80%', + }, + }, + }, + }, + { + breakpoint: theme.breakpoints.values.md, // md ~ 900 + options: { + plotOptions: { + bar: { + columnWidth: '60%', + }, + }, + }, + }, + ...(options?.responsive ?? []), + ]; + + return { + ...options, + + /** ************************************** + * Chart + *************************************** */ + chart: { + toolbar: { + show: false, + }, + zoom: { + enabled: false, + }, + parentHeightOffset: 0, + fontFamily: theme.typography.fontFamily, + foreColor: theme.vars.palette.text.disabled, + ...options?.chart, + animations: { + enabled: true, + speed: 360, + animateGradually: { enabled: true, delay: 120 }, + dynamicAnimation: { enabled: true, speed: 360 }, + ...options?.chart?.animations, + }, + }, + + /** ************************************** + * Colors + *************************************** */ + colors: options?.colors ?? [ + theme.palette.primary.main, + theme.palette.warning.main, + theme.palette.info.main, + theme.palette.error.main, + theme.palette.success.main, + theme.palette.warning.dark, + theme.palette.success.darker, + theme.palette.info.dark, + theme.palette.info.darker, + ], + + /** ************************************** + * States + *************************************** */ + states: { + ...options?.states, + hover: { + ...options?.states?.hover, + filter: { type: 'darken', value: 0.88, ...options?.states?.hover?.filter }, + }, + active: { + ...options?.states?.active, + filter: { type: 'darken', value: 0.88, ...options?.states?.active?.filter }, + }, + }, + + /** ************************************** + * Fill + *************************************** */ + fill: { + opacity: 1, + ...options?.fill, + gradient: { + type: 'vertical', + shadeIntensity: 0, + opacityFrom: 0.4, + opacityTo: 0, + stops: [0, 100], + ...options?.fill?.gradient, + }, + }, + + /** ************************************** + * Data labels + *************************************** */ + dataLabels: { + enabled: false, + ...options?.dataLabels, + }, + + /** ************************************** + * Stroke + *************************************** */ + stroke: { + width: 2.5, + curve: 'smooth', + lineCap: 'round', + ...options?.stroke, + }, + + /** ************************************** + * Grid + *************************************** */ + grid: { + strokeDashArray: 3, + borderColor: theme.vars.palette.divider, + ...options?.grid, + padding: { + top: 0, + right: 0, + bottom: 0, + ...options?.grid?.padding, + }, + xaxis: { + lines: { + show: false, + }, + ...options?.grid?.xaxis, + }, + }, + + /** ************************************** + * Axis + *************************************** */ + xaxis: { + axisBorder: { + show: false, + }, + axisTicks: { + show: false, + }, + ...options?.xaxis, + }, + yaxis: { + tickAmount: 5, + ...options?.yaxis, + }, + + /** ************************************** + * Markers + *************************************** */ + markers: { + size: 0, + strokeColors: theme.vars.palette.background.paper, + ...options?.markers, + }, + + /** ************************************** + * Tooltip + *************************************** */ + tooltip: { + theme: 'false', + fillSeriesColor: false, + x: { + show: true, + }, + ...options?.tooltip, + }, + + /** ************************************** + * Legend + *************************************** */ + legend: { + show: false, + position: 'top', + fontWeight: 500, + fontSize: '13px', + horizontalAlign: 'right', + markers: { radius: 12 }, + labels: { + colors: theme.vars.palette.text.primary, + }, + ...options?.legend, + itemMargin: { + horizontal: 8, + vertical: 8, + ...options?.legend?.itemMargin, + }, + }, + + /** ************************************** + * plotOptions + *************************************** */ + plotOptions: { + ...options?.plotOptions, + // plotOptions: Bar + bar: { + borderRadius: 4, + columnWidth: '48%', + borderRadiusApplication: 'end', + ...options?.plotOptions?.bar, + }, + + // plotOptions: Pie + Donut + pie: { + ...options?.plotOptions?.pie, + donut: { + ...options?.plotOptions?.pie?.donut, + labels: { + show: true, + ...options?.plotOptions?.pie?.donut?.labels, + value: { + ...LABEL_VALUE, + ...options?.plotOptions?.pie?.donut?.labels?.value, + }, + total: { + ...LABEL_TOTAL, + ...options?.plotOptions?.pie?.donut?.labels?.total, + }, + }, + }, + }, + + // plotOptions: Radialbar + radialBar: { + ...options?.plotOptions?.radialBar, + hollow: { + margin: -8, + size: '100%', + ...options?.plotOptions?.radialBar?.hollow, + }, + track: { + margin: -8, + strokeWidth: '50%', + background: varAlpha(theme.vars.palette.grey['500Channel'], 0.16), + ...options?.plotOptions?.radialBar?.track, + }, + dataLabels: { + ...options?.plotOptions?.radialBar?.dataLabels, + value: { + ...LABEL_VALUE, + ...options?.plotOptions?.radialBar?.dataLabels?.value, + }, + total: { + ...LABEL_TOTAL, + ...options?.plotOptions?.radialBar?.dataLabels?.total, + }, + }, + }, + + // plotOptions: Radar + radar: { + ...options?.plotOptions?.radar, + polygons: { + fill: { + colors: ['transparent'], + }, + strokeColors: theme.vars.palette.divider, + connectorColors: theme.vars.palette.divider, + ...options?.plotOptions?.radar?.polygons, + }, + }, + + // plotOptions: polarArea + polarArea: { + rings: { + strokeColor: theme.vars.palette.divider, + }, + spokes: { + connectorColors: theme.vars.palette.divider, + }, + ...options?.plotOptions?.polarArea, + }, + + // plotOptions: heatmap + heatmap: { + distributed: true, + ...options?.plotOptions?.heatmap, + }, + }, + + /** ************************************** + * Responsive + *************************************** */ + responsive: RESPONSIVE.reduce((acc: typeof RESPONSIVE, cur) => { + if (!acc.some((item) => item.breakpoint === cur.breakpoint)) { + acc.push(cur); + } + return acc; + }, []), + }; +} diff --git a/dashboard/src/components/color-utils/color-picker.tsx b/dashboard/src/components/color-utils/color-picker.tsx new file mode 100644 index 00000000..de341107 --- /dev/null +++ b/dashboard/src/components/color-utils/color-picker.tsx @@ -0,0 +1,107 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { forwardRef, useCallback } from 'react'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import ButtonBase from '@mui/material/ButtonBase'; +import { alpha as hexAlpha } from '@mui/material/styles'; + +import { varAlpha } from 'src/theme/styles'; + +import { Iconify } from '../iconify'; + +import type { ColorPickerProps } from './types'; + +// ---------------------------------------------------------------------- + +export const ColorPicker = forwardRef( + ({ colors, selected, onSelectColor, limit = 'auto', sx, slotProps, ...other }, ref) => { + const singleSelect = typeof selected === 'string'; + + const handleSelect = useCallback( + (color: string) => { + if (singleSelect) { + if (color !== selected) { + onSelectColor(color); + } + } else { + const newSelected = selected.includes(color) ? selected.filter((value) => value !== color) : [...selected, color]; + + onSelectColor(newSelected); + } + }, + [onSelectColor, selected, singleSelect] + ); + + return ( + + {colors.map((color) => { + const hasSelected = singleSelect ? selected === color : selected.includes(color); + + return ( + + handleSelect(color)} + sx={{ + width: 36, + height: 36, + borderRadius: '50%', + ...slotProps?.button, + }} + > + `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.16)}`, + ...(hasSelected && { + transform: 'scale(1.3)', + boxShadow: `4px 4px 8px 0 ${hexAlpha(color, 0.48)}`, + outline: `solid 2px ${hexAlpha(color, 0.08)}`, + transition: (theme) => + theme.transitions.create('all', { + duration: theme.transitions.duration.shortest, + }), + }), + }} + > + theme.palette.getContrastText(color), + transition: (theme) => + theme.transitions.create('all', { + duration: theme.transitions.duration.shortest, + }), + }} + /> + + + + ); + })} + + ); + } +); diff --git a/dashboard/src/components/color-utils/color-preview.tsx b/dashboard/src/components/color-utils/color-preview.tsx new file mode 100644 index 00000000..85432bb9 --- /dev/null +++ b/dashboard/src/components/color-utils/color-preview.tsx @@ -0,0 +1,48 @@ +import type { BoxProps } from '@mui/material/Box'; + +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; + +import { varAlpha } from 'src/theme/styles'; + +import type { ColorPreviewProps } from './types'; + +// ---------------------------------------------------------------------- + +export const ColorPreview = forwardRef(({ colors, limit = 3, sx, ...other }, ref) => { + const colorsRange = colors.slice(0, limit); + + const restColors = colors.length - limit; + + return ( + + {colorsRange.map((color, index) => ( + `solid 2px ${theme.vars.palette.background.paper}`, + boxShadow: (theme) => `inset -1px 1px 2px ${varAlpha(theme.vars.palette.common.blackChannel, 0.24)}`, + }} + /> + ))} + + {colors.length > limit && {`+${restColors}`}} + + ); +}); diff --git a/dashboard/src/components/color-utils/index.ts b/dashboard/src/components/color-utils/index.ts new file mode 100644 index 00000000..24877b48 --- /dev/null +++ b/dashboard/src/components/color-utils/index.ts @@ -0,0 +1,5 @@ +export type * from './types'; + +export * from './color-picker'; + +export * from './color-preview'; diff --git a/dashboard/src/components/color-utils/types.ts b/dashboard/src/components/color-utils/types.ts new file mode 100644 index 00000000..cf61ae25 --- /dev/null +++ b/dashboard/src/components/color-utils/types.ts @@ -0,0 +1,19 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export type ColorPickerProps = { + multi?: boolean; + colors: string[]; + selected: string | string[]; + limit?: 'auto' | number; + onSelectColor: (color: string | string[]) => void; + slotProps?: { + button?: SxProps; + }; +}; + +export type ColorPreviewProps = { + limit?: number; + colors: ColorPickerProps['colors']; +}; diff --git a/dashboard/src/components/copy/copy-button.tsx b/dashboard/src/components/copy/copy-button.tsx new file mode 100644 index 00000000..7be7f402 --- /dev/null +++ b/dashboard/src/components/copy/copy-button.tsx @@ -0,0 +1,40 @@ +import { useCallback } from 'react'; + +import { Tooltip, IconButton } from '@mui/material'; + +import { useCopyToClipboard } from 'src/hooks/use-copy-to-clipboard'; + +import { useTranslate } from 'src/locales'; + +import { toast } from 'src/components/snackbar'; +import { Iconify } from 'src/components/iconify'; + +// ---------------------------------------------------------------------- + +type Props = { + value?: string; + title?: string; +}; + +export default function CopyButton({ value, title }: Props) { + const { t } = useTranslate(); + const { copy } = useCopyToClipboard(); + + const onCopy = useCallback( + (text?: string) => { + if (text) { + copy(text); + toast.success(t('copied_to_clipboard')); + } + }, + [copy, t] + ); + + return ( + + onCopy(value)}> + + + + ); +} diff --git a/dashboard/src/components/copy/copy-menu-item.tsx b/dashboard/src/components/copy/copy-menu-item.tsx new file mode 100644 index 00000000..a718a996 --- /dev/null +++ b/dashboard/src/components/copy/copy-menu-item.tsx @@ -0,0 +1,40 @@ +import { useCallback } from 'react'; + +import { MenuItem } from '@mui/material'; + +import { useCopyToClipboard } from 'src/hooks/use-copy-to-clipboard'; + +import { useTranslate } from 'src/locales'; + +import { toast } from 'src/components/snackbar'; + +import { Iconify } from '../iconify'; + +// ---------------------------------------------------------------------- + +interface Props { + value: string; + title?: string; +} + +export default function CopyMenuItem({ value, title }: Props) { + const { t } = useTranslate(); + const { copy } = useCopyToClipboard(); + + const onCopy = useCallback( + (text?: string) => { + if (text) { + copy(text); + toast.success(t('copied_to_clipboard')); + } + }, + [copy, t] + ); + + return ( + onCopy(value)}> + + {title || t('copy')} + + ); +} diff --git a/dashboard/src/components/copy/index.ts b/dashboard/src/components/copy/index.ts new file mode 100644 index 00000000..cd65e551 --- /dev/null +++ b/dashboard/src/components/copy/index.ts @@ -0,0 +1,2 @@ +export { default as CopyButton } from './copy-button'; +export { default as CopyMenuItem } from './copy-menu-item'; diff --git a/dashboard/src/components/country-select/country-select.tsx b/dashboard/src/components/country-select/country-select.tsx new file mode 100644 index 00000000..a183cf71 --- /dev/null +++ b/dashboard/src/components/country-select/country-select.tsx @@ -0,0 +1,133 @@ +import type { AutocompleteProps, AutocompleteRenderInputParams, AutocompleteRenderGetTagProps } from '@mui/material/Autocomplete'; + +import Chip from '@mui/material/Chip'; +import TextField from '@mui/material/TextField'; +import Autocomplete from '@mui/material/Autocomplete'; +import InputAdornment from '@mui/material/InputAdornment'; +import { filledInputClasses } from '@mui/material/FilledInput'; + +import { countries } from 'src/assets/data'; + +import { FlagIcon, iconifyClasses } from 'src/components/iconify'; + +import { getCountry, displayValueByCountryCode } from './utils'; + +// ---------------------------------------------------------------------- + +type Value = string; + +export type AutocompleteBaseProps = Omit< + AutocompleteProps, + 'options' | 'renderOption' | 'renderInput' | 'renderTags' | 'getOptionLabel' +>; + +export type CountrySelectProps = AutocompleteBaseProps & { + label?: string; + error?: boolean; + placeholder?: string; + hiddenLabel?: boolean; + getValue?: 'label' | 'code'; + helperText?: React.ReactNode; +}; + +export function CountrySelect({ + id, + label, + error, + multiple, + helperText, + hiddenLabel, + placeholder, + getValue = 'label', + ...other +}: CountrySelectProps) { + const options = countries.map((country) => (getValue === 'label' ? country.label : country.code)); + + const renderOption = (props: React.HTMLAttributes, option: Value) => { + const country = getCountry(option); + + if (!country.label) { + return null; + } + + return ( +
  1. + + {country.label} ({country.code}) +{country.phone} +
  2. + ); + }; + + const renderInput = (params: AutocompleteRenderInputParams) => { + const country = getCountry(params.inputProps.value as Value); + + const baseField = { + ...params, + label, + placeholder, + helperText, + hiddenLabel, + error: !!error, + inputProps: { + ...params.inputProps, + autoComplete: 'new-password', + }, + }; + + if (multiple) { + return ; + } + + return ( + + + + ), + }} + sx={{ + ...(!hiddenLabel && { + [`& .${filledInputClasses.root}`]: { [`& .${iconifyClasses.root}`]: { mt: -2 } }, + }), + }} + /> + ); + }; + + const renderTags = (selected: Value[], getTagProps: AutocompleteRenderGetTagProps) => + selected.map((option, index) => { + const country = getCountry(option); + + return ( + } + /> + ); + }); + + const getOptionLabel = (option: Value) => (getValue === 'label' ? option : displayValueByCountryCode(option)); + + return ( + + ); +} diff --git a/dashboard/src/components/country-select/index.ts b/dashboard/src/components/country-select/index.ts new file mode 100644 index 00000000..f1634a4f --- /dev/null +++ b/dashboard/src/components/country-select/index.ts @@ -0,0 +1,3 @@ +export * from './utils'; + +export * from './country-select'; diff --git a/dashboard/src/components/country-select/utils.ts b/dashboard/src/components/country-select/utils.ts new file mode 100644 index 00000000..d067ff95 --- /dev/null +++ b/dashboard/src/components/country-select/utils.ts @@ -0,0 +1,17 @@ +import { countries } from 'src/assets/data'; + +// ---------------------------------------------------------------------- + +export function getCountry(inputValue: string) { + const option = countries.filter((country) => country.label === inputValue || country.code === inputValue)[0]; + + return { code: option?.code, label: option?.label, phone: option?.phone }; +} + +// ---------------------------------------------------------------------- + +export function displayValueByCountryCode(inputValue: string) { + const option = countries.filter((country) => country.code === inputValue)[0]; + + return option.label; +} diff --git a/dashboard/src/components/custom-breadcrumbs/breadcrumb-link.tsx b/dashboard/src/components/custom-breadcrumbs/breadcrumb-link.tsx new file mode 100644 index 00000000..78e42c15 --- /dev/null +++ b/dashboard/src/components/custom-breadcrumbs/breadcrumb-link.tsx @@ -0,0 +1,56 @@ +import Box from '@mui/material/Box'; +import Link from '@mui/material/Link'; + +import { RouterLink } from 'src/routes/components'; + +import type { BreadcrumbsLinkProps } from './types'; + +// ---------------------------------------------------------------------- + +type Props = { + disabled: boolean; + activeLast?: boolean; + link: BreadcrumbsLinkProps; +}; + +export function BreadcrumbsLink({ link, activeLast, disabled }: Props) { + const styles = { + typography: 'body2', + alignItems: 'center', + color: 'text.primary', + display: 'inline-flex', + ...(disabled && !activeLast && { cursor: 'default', pointerEvents: 'none', color: 'text.disabled' }), + }; + + const renderContent = ( + <> + {link.icon && ( + + {link.icon} + + )} + + {link.name} + + ); + + if (link.href) { + return ( + + {renderContent} + + ); + } + + return {renderContent} ; +} diff --git a/dashboard/src/components/custom-breadcrumbs/custom-breadcrumbs.tsx b/dashboard/src/components/custom-breadcrumbs/custom-breadcrumbs.tsx new file mode 100644 index 00000000..9d7b1592 --- /dev/null +++ b/dashboard/src/components/custom-breadcrumbs/custom-breadcrumbs.tsx @@ -0,0 +1,75 @@ +import Box from '@mui/material/Box'; +import Link from '@mui/material/Link'; +import Stack from '@mui/material/Stack'; +import Typography from '@mui/material/Typography'; +import Breadcrumbs from '@mui/material/Breadcrumbs'; + +import { BreadcrumbsLink } from './breadcrumb-link'; + +import type { CustomBreadcrumbsProps } from './types'; + +// ---------------------------------------------------------------------- + +export function CustomBreadcrumbs({ links, action, heading, moreLink, icon, activeLast, slotProps, sx, ...other }: CustomBreadcrumbsProps) { + const lastLink = links[links.length - 1].name; + + const renderHeading = ( + + {heading} {icon} + + ); + + const renderLinks = ( + } sx={slotProps?.breadcrumbs} {...other}> + {links.map((link, index) => ( + + ))} + + ); + + const renderAction = {action} ; + + const renderMoreLink = ( + + {moreLink?.map((href) => ( + + + {href} + + + ))} + + ); + + return ( + + + + {heading && renderHeading} + + {!!links.length && renderLinks} + + + {action && renderAction} + + + {!!moreLink && renderMoreLink} + + ); +} + +// ---------------------------------------------------------------------- + +function Separator() { + return ( + + ); +} diff --git a/dashboard/src/components/custom-breadcrumbs/index.ts b/dashboard/src/components/custom-breadcrumbs/index.ts new file mode 100644 index 00000000..b3cb547d --- /dev/null +++ b/dashboard/src/components/custom-breadcrumbs/index.ts @@ -0,0 +1,3 @@ +export type * from './types'; + +export * from './custom-breadcrumbs'; diff --git a/dashboard/src/components/custom-breadcrumbs/types.ts b/dashboard/src/components/custom-breadcrumbs/types.ts new file mode 100644 index 00000000..b9988bb0 --- /dev/null +++ b/dashboard/src/components/custom-breadcrumbs/types.ts @@ -0,0 +1,26 @@ +import type { Theme, SxProps } from '@mui/material/styles'; +import type { BreadcrumbsProps } from '@mui/material/Breadcrumbs'; + +// ---------------------------------------------------------------------- + +export type BreadcrumbsLinkProps = { + name?: string; + href?: string; + icon?: React.ReactElement; +}; + +export type CustomBreadcrumbsProps = BreadcrumbsProps & { + heading?: string; + moreLink?: string[]; + activeLast?: boolean; + action?: React.ReactNode; + links: BreadcrumbsLinkProps[]; + icon?: React.ReactElement; + sx?: SxProps; + slotProps?: { + action: SxProps; + heading: SxProps; + moreLink: SxProps; + breadcrumbs: SxProps; + }; +}; diff --git a/dashboard/src/components/custom-date-range-picker/custom-date-range-picker.tsx b/dashboard/src/components/custom-date-range-picker/custom-date-range-picker.tsx new file mode 100644 index 00000000..541725a3 --- /dev/null +++ b/dashboard/src/components/custom-date-range-picker/custom-date-range-picker.tsx @@ -0,0 +1,87 @@ +import Paper from '@mui/material/Paper'; +import Stack from '@mui/material/Stack'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; +import DialogContent from '@mui/material/DialogContent'; +import FormHelperText from '@mui/material/FormHelperText'; +import { DatePicker } from '@mui/x-date-pickers/DatePicker'; +import { DateCalendar } from '@mui/x-date-pickers/DateCalendar'; + +import { useResponsive } from 'src/hooks/use-responsive'; + +import type { UseDateRangePickerReturn } from './types'; + +// ---------------------------------------------------------------------- + +export function CustomDateRangePicker({ + open, + error, + endDate, + onClose, + startDate, + onChangeEndDate, + variant = 'input', + onChangeStartDate, + title = 'Select date range', +}: UseDateRangePickerReturn) { + const mdUp = useResponsive('up', 'md'); + + const isCalendarView = variant === 'calendar'; + + return ( + + {title} + + + + {isCalendarView ? ( + <> + + + + + + + + + ) : ( + <> + + + + + )} + + + {error && ( + + End date must be later than start date + + )} + + + + + + + + + ); +} diff --git a/dashboard/src/components/custom-date-range-picker/index.ts b/dashboard/src/components/custom-date-range-picker/index.ts new file mode 100644 index 00000000..e659c9c7 --- /dev/null +++ b/dashboard/src/components/custom-date-range-picker/index.ts @@ -0,0 +1,3 @@ +export * from './use-date-range-picker'; + +export * from './custom-date-range-picker'; diff --git a/dashboard/src/components/custom-date-range-picker/types.ts b/dashboard/src/components/custom-date-range-picker/types.ts new file mode 100644 index 00000000..85c8c5d3 --- /dev/null +++ b/dashboard/src/components/custom-date-range-picker/types.ts @@ -0,0 +1,27 @@ +import type { IDatePickerControl } from 'src/types/common'; + +// ---------------------------------------------------------------------- + +export type UseDateRangePickerReturn = { + startDate: IDatePickerControl; + endDate: IDatePickerControl; + onChangeStartDate: (newValue: IDatePickerControl) => void; + onChangeEndDate: (newValue: IDatePickerControl) => void; + // + open: boolean; + onOpen?: () => void; + onClose: () => void; + onReset?: () => void; + // + selected?: boolean; + error?: boolean; + // + label?: string; + shortLabel?: string; + // + title?: string; + variant?: 'calendar' | 'input'; + // + setStartDate?: React.Dispatch>; + setEndDate?: React.Dispatch>; +}; diff --git a/dashboard/src/components/custom-date-range-picker/use-date-range-picker.ts b/dashboard/src/components/custom-date-range-picker/use-date-range-picker.ts new file mode 100644 index 00000000..97a37923 --- /dev/null +++ b/dashboard/src/components/custom-date-range-picker/use-date-range-picker.ts @@ -0,0 +1,67 @@ +import type { IDatePickerControl } from 'src/types/common'; + +import { useState, useCallback } from 'react'; + +import { fIsAfter, fDateRangeShortLabel } from 'src/utils/format-time'; + +import type { UseDateRangePickerReturn } from './types'; + +// ---------------------------------------------------------------------- + +export function useDateRangePicker(start: IDatePickerControl, end: IDatePickerControl): UseDateRangePickerReturn { + const [open, setOpen] = useState(false); + + const [endDate, setEndDate] = useState(end as IDatePickerControl); + + const [startDate, setStartDate] = useState(start as IDatePickerControl); + + const error = fIsAfter(startDate, endDate); + + const onOpen = useCallback(() => { + setOpen(true); + }, []); + + const onClose = useCallback(() => { + setOpen(false); + }, []); + + const onChangeStartDate = useCallback((newValue: IDatePickerControl) => { + setStartDate(newValue); + }, []); + + const onChangeEndDate = useCallback( + (newValue: IDatePickerControl) => { + if (error) { + setEndDate(null); + } + setEndDate(newValue); + }, + [error] + ); + + const onReset = useCallback(() => { + setStartDate(null); + setEndDate(null); + }, []); + + return { + startDate: startDate as IDatePickerControl, + endDate: endDate as IDatePickerControl, + onChangeStartDate, + onChangeEndDate, + // + open, + onOpen, + onClose, + onReset, + // + selected: !!startDate && !!endDate, + error, + // + label: fDateRangeShortLabel(startDate, endDate, true), + shortLabel: fDateRangeShortLabel(startDate, endDate), + // + setStartDate, + setEndDate, + }; +} diff --git a/dashboard/src/components/custom-dialog/confirm-dialog.tsx b/dashboard/src/components/custom-dialog/confirm-dialog.tsx new file mode 100644 index 00000000..a5f3e307 --- /dev/null +++ b/dashboard/src/components/custom-dialog/confirm-dialog.tsx @@ -0,0 +1,27 @@ +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; +import DialogContent from '@mui/material/DialogContent'; + +import type { ConfirmDialogProps } from './types'; + +// ---------------------------------------------------------------------- + +export function ConfirmDialog({ title, content, action, open, onClose, ...other }: ConfirmDialogProps) { + return ( + + {title} + + {content && {content} } + + + {action} + + + + + ); +} diff --git a/dashboard/src/components/custom-dialog/index.ts b/dashboard/src/components/custom-dialog/index.ts new file mode 100644 index 00000000..ff0d9972 --- /dev/null +++ b/dashboard/src/components/custom-dialog/index.ts @@ -0,0 +1 @@ +export * from './confirm-dialog'; diff --git a/dashboard/src/components/custom-dialog/types.ts b/dashboard/src/components/custom-dialog/types.ts new file mode 100644 index 00000000..97a44136 --- /dev/null +++ b/dashboard/src/components/custom-dialog/types.ts @@ -0,0 +1,10 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +// ---------------------------------------------------------------------- + +export type ConfirmDialogProps = Omit & { + onClose: () => void; + title: React.ReactNode; + action: React.ReactNode; + content?: React.ReactNode; +}; diff --git a/dashboard/src/components/custom-popover/custom-popover.tsx b/dashboard/src/components/custom-popover/custom-popover.tsx new file mode 100644 index 00000000..51b547f5 --- /dev/null +++ b/dashboard/src/components/custom-popover/custom-popover.tsx @@ -0,0 +1,52 @@ +import type { PaperProps } from '@mui/material/Paper'; + +import Popover from '@mui/material/Popover'; +import { listClasses } from '@mui/material/List'; +import { menuItemClasses } from '@mui/material/MenuItem'; + +import { StyledArrow } from './styles'; +import { calculateAnchorOrigin } from './utils'; + +import type { CustomPopoverProps } from './types'; + +// ---------------------------------------------------------------------- + +export function CustomPopover({ open, onClose, children, anchorEl, slotProps, ...other }: CustomPopoverProps) { + const arrowPlacement = slotProps?.arrow?.placement ?? 'top-right'; + + const arrowSize = slotProps?.arrow?.size ?? 14; + + const arrowOffset = slotProps?.arrow?.offset ?? 17; + + const { paperStyles, anchorOrigin, transformOrigin } = calculateAnchorOrigin(arrowPlacement); + + return ( + + {!slotProps?.arrow?.hide && ( + + )} + + {children} + + ); +} diff --git a/dashboard/src/components/custom-popover/index.ts b/dashboard/src/components/custom-popover/index.ts new file mode 100644 index 00000000..fa93d8e0 --- /dev/null +++ b/dashboard/src/components/custom-popover/index.ts @@ -0,0 +1,5 @@ +export type * from './types'; + +export * from './use-popover'; + +export * from './custom-popover'; diff --git a/dashboard/src/components/custom-popover/styles.tsx b/dashboard/src/components/custom-popover/styles.tsx new file mode 100644 index 00000000..da798044 --- /dev/null +++ b/dashboard/src/components/custom-popover/styles.tsx @@ -0,0 +1,115 @@ +import { styled } from '@mui/material/styles'; + +import { CONFIG } from 'src/config-global'; +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import type { PopoverArrow } from './types'; + +// ---------------------------------------------------------------------- + +export const StyledArrow = styled('span', { + shouldForwardProp: (prop) => prop !== 'size' && prop !== 'placement' && prop !== 'offset', +})(({ placement, offset = 0, size = 0, theme }) => { + const POSITION = -(size / 2) + 0.5; + + const alignmentStyles = { + top: { top: POSITION, transform: 'rotate(135deg)' }, + bottom: { bottom: POSITION, transform: 'rotate(-45deg)' }, + left: { left: POSITION, transform: 'rotate(45deg)' }, + right: { right: POSITION, transform: 'rotate(-135deg)' }, + hCenter: { left: 0, right: 0, margin: 'auto' }, + vCenter: { top: 0, bottom: 0, margin: 'auto' }, + }; + + const backgroundStyles = (color: 'cyan' | 'red') => ({ + backgroundRepeat: 'no-repeat', + backgroundSize: `${size * 3}px ${size * 3}px`, + backgroundImage: `url(${CONFIG.site.basePath}/assets/${color}-blur.png)`, + ...(color === 'cyan' && { + backgroundPosition: 'top right', + }), + ...(color === 'red' && { + backgroundPosition: 'bottom left', + }), + }); + + return { + width: size, + height: size, + position: 'absolute', + backdropFilter: '6px', + borderBottomLeftRadius: size / 4, + clipPath: 'polygon(0% 0%, 100% 100%, 0% 100%)', + backgroundColor: theme.vars.palette.background.paper, + border: `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.12)}`, + [stylesMode.dark]: { + border: `solid 1px ${varAlpha(theme.vars.palette.common.blackChannel, 0.12)}`, + }, + /** + * Top + */ + ...(placement === 'top-left' && { + ...alignmentStyles.top, + left: offset, + }), + ...(placement === 'top-center' && { + ...alignmentStyles.top, + ...alignmentStyles.hCenter, + }), + ...(placement === 'top-right' && { + ...backgroundStyles('cyan'), + ...alignmentStyles.top, + right: offset, + }), + /** + * Bottom + */ + ...(placement === 'bottom-left' && { + ...backgroundStyles('red'), + ...alignmentStyles.bottom, + left: offset, + }), + ...(placement === 'bottom-center' && { + ...alignmentStyles.bottom, + ...alignmentStyles.hCenter, + }), + ...(placement === 'bottom-right' && { + ...alignmentStyles.bottom, + right: offset, + }), + /** + * Left + */ + ...(placement === 'left-top' && { + ...alignmentStyles.left, + top: offset, + }), + ...(placement === 'left-center' && { + ...backgroundStyles('red'), + ...alignmentStyles.left, + ...alignmentStyles.vCenter, + }), + ...(placement === 'left-bottom' && { + ...backgroundStyles('red'), + ...alignmentStyles.left, + bottom: offset, + }), + /** + * Right + */ + ...(placement === 'right-top' && { + ...backgroundStyles('cyan'), + ...alignmentStyles.right, + top: offset, + }), + ...(placement === 'right-center' && { + ...backgroundStyles('cyan'), + ...alignmentStyles.right, + ...alignmentStyles.vCenter, + }), + ...(placement === 'right-bottom' && { + ...alignmentStyles.right, + bottom: offset, + }), + }; +}); diff --git a/dashboard/src/components/custom-popover/types.ts b/dashboard/src/components/custom-popover/types.ts new file mode 100644 index 00000000..e75487ce --- /dev/null +++ b/dashboard/src/components/custom-popover/types.ts @@ -0,0 +1,38 @@ +import type { PopoverProps } from '@mui/material/Popover'; +import type { Theme, SxProps } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export type PopoverArrow = { + hide?: boolean; + size?: number; + offset?: number; + sx?: SxProps; + placement?: + | 'top-left' + | 'top-center' + | 'top-right' + | 'bottom-left' + | 'bottom-center' + | 'bottom-right' + | 'left-top' + | 'left-center' + | 'left-bottom' + | 'right-top' + | 'right-center' + | 'right-bottom'; +}; + +export type UsePopoverReturn = { + open: PopoverProps['open']; + anchorEl: PopoverProps['anchorEl']; + onClose: () => void; + onOpen: (event: React.MouseEvent) => void; + setAnchorEl: React.Dispatch>; +}; + +export type CustomPopoverProps = PopoverProps & { + slotProps?: PopoverProps['slotProps'] & { + arrow?: PopoverArrow; + }; +}; diff --git a/dashboard/src/components/custom-popover/use-popover.ts b/dashboard/src/components/custom-popover/use-popover.ts new file mode 100644 index 00000000..31de5f6b --- /dev/null +++ b/dashboard/src/components/custom-popover/use-popover.ts @@ -0,0 +1,27 @@ +import type { PopoverProps } from '@mui/material/Popover'; + +import { useState, useCallback } from 'react'; + +import type { UsePopoverReturn } from './types'; + +// ---------------------------------------------------------------------- + +export function usePopover(): UsePopoverReturn { + const [anchorEl, setAnchorEl] = useState(null); + + const onOpen = useCallback((event: React.MouseEvent) => { + setAnchorEl(event.currentTarget); + }, []); + + const onClose = useCallback(() => { + setAnchorEl(null); + }, []); + + return { + open: !!anchorEl, + anchorEl, + onOpen, + onClose, + setAnchorEl, + }; +} diff --git a/dashboard/src/components/custom-popover/utils.ts b/dashboard/src/components/custom-popover/utils.ts new file mode 100644 index 00000000..28ca71e3 --- /dev/null +++ b/dashboard/src/components/custom-popover/utils.ts @@ -0,0 +1,127 @@ +import type { CSSObject } from '@mui/material/styles'; +import type { PopoverOrigin } from '@mui/material/Popover'; + +import type { PopoverArrow } from './types'; + +// ---------------------------------------------------------------------- + +const POPOVER_DISTANCE = 0.75; + +export type CalculateAnchorOriginProps = { + paperStyles?: CSSObject; + anchorOrigin: PopoverOrigin; + transformOrigin: PopoverOrigin; +}; + +export function calculateAnchorOrigin(arrow: PopoverArrow['placement']): CalculateAnchorOriginProps { + let props: CalculateAnchorOriginProps; + + switch (arrow) { + /** + * top-* + */ + case 'top-left': + props = { + paperStyles: { ml: -POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'bottom', horizontal: 'left' }, + transformOrigin: { vertical: 'top', horizontal: 'left' }, + }; + break; + case 'top-center': + props = { + paperStyles: undefined, + anchorOrigin: { vertical: 'bottom', horizontal: 'center' }, + transformOrigin: { vertical: 'top', horizontal: 'center' }, + }; + break; + case 'top-right': + props = { + paperStyles: { ml: POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, + transformOrigin: { vertical: 'top', horizontal: 'right' }, + }; + break; + /** + * bottom-* + */ + case 'bottom-left': + props = { + paperStyles: { ml: -POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'top', horizontal: 'left' }, + transformOrigin: { vertical: 'bottom', horizontal: 'left' }, + }; + break; + case 'bottom-center': + props = { + paperStyles: undefined, + anchorOrigin: { vertical: 'top', horizontal: 'center' }, + transformOrigin: { vertical: 'bottom', horizontal: 'center' }, + }; + break; + case 'bottom-right': + props = { + paperStyles: { ml: POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'top', horizontal: 'right' }, + transformOrigin: { vertical: 'bottom', horizontal: 'right' }, + }; + break; + /** + * left-* + */ + case 'left-top': + props = { + paperStyles: { mt: -POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'top', horizontal: 'right' }, + transformOrigin: { vertical: 'top', horizontal: 'left' }, + }; + break; + case 'left-center': + props = { + paperStyles: undefined, + anchorOrigin: { vertical: 'center', horizontal: 'right' }, + transformOrigin: { vertical: 'center', horizontal: 'left' }, + }; + break; + case 'left-bottom': + props = { + paperStyles: { mt: POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, + transformOrigin: { vertical: 'bottom', horizontal: 'left' }, + }; + break; + /** + * right-* + */ + case 'right-top': + props = { + paperStyles: { mt: -POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'top', horizontal: 'left' }, + transformOrigin: { vertical: 'top', horizontal: 'right' }, + }; + break; + case 'right-center': + props = { + paperStyles: undefined, + anchorOrigin: { vertical: 'center', horizontal: 'left' }, + transformOrigin: { vertical: 'center', horizontal: 'right' }, + }; + break; + case 'right-bottom': + props = { + paperStyles: { mt: POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'bottom', horizontal: 'left' }, + transformOrigin: { vertical: 'bottom', horizontal: 'right' }, + }; + break; + + // top-right + default: + props = { + paperStyles: { ml: POPOVER_DISTANCE }, + anchorOrigin: { vertical: 'bottom', horizontal: 'right' }, + transformOrigin: { vertical: 'top', horizontal: 'right' }, + }; + } + + return props; +} diff --git a/dashboard/src/components/custom-tabs/custom-tabs.tsx b/dashboard/src/components/custom-tabs/custom-tabs.tsx new file mode 100644 index 00000000..98644c0f --- /dev/null +++ b/dashboard/src/components/custom-tabs/custom-tabs.tsx @@ -0,0 +1,87 @@ +import type { TabsProps } from '@mui/material/Tabs'; +import type { Theme, SxProps } from '@mui/material/styles'; + +import NoSsr from '@mui/material/NoSsr'; +import { tabClasses } from '@mui/material/Tab'; +import { useTheme } from '@mui/material/styles'; +import Tabs, { tabsClasses } from '@mui/material/Tabs'; + +import { stylesMode } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +export type CustomTabsProps = TabsProps & { + slotProps?: TabsProps['slotProps'] & { + scroller?: SxProps; + indicator?: SxProps; + tab?: SxProps; + selected?: SxProps; + scrollButtons?: SxProps; + flexContainer?: SxProps; + }; +}; + +export function CustomTabs({ children, slotProps, sx, ...other }: CustomTabsProps) { + const theme = useTheme(); + + return ( + span': { + width: 1, + height: 1, + borderRadius: 1, + display: 'block', + bgcolor: 'common.white', + boxShadow: theme.customShadows.z1, + [stylesMode.dark]: { bgcolor: 'grey.900' }, + ...slotProps?.indicator, + }, + }, + [`& .${tabClasses.root}`]: { + py: 1, + px: 2, + zIndex: 1, + minHeight: 'auto', + ...slotProps?.tab, + [`&.${tabClasses.selected}`]: { + ...slotProps?.selected, + }, + }, + ...sx, + }} + {...other} + TabIndicatorProps={{ + children: ( + + + + ), + }} + > + {children} + + ); +} diff --git a/dashboard/src/components/custom-tabs/index.ts b/dashboard/src/components/custom-tabs/index.ts new file mode 100644 index 00000000..3daee9aa --- /dev/null +++ b/dashboard/src/components/custom-tabs/index.ts @@ -0,0 +1 @@ +export * from './custom-tabs'; diff --git a/dashboard/src/components/delete/delete-button.tsx b/dashboard/src/components/delete/delete-button.tsx new file mode 100644 index 00000000..9bc77b12 --- /dev/null +++ b/dashboard/src/components/delete/delete-button.tsx @@ -0,0 +1,54 @@ +import { LoadingButton } from '@mui/lab'; +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { useTranslate } from 'src/locales'; + +import { Iconify } from 'src/components/iconify'; +import { ConfirmDialog } from 'src/components/custom-dialog'; + +// ---------------------------------------------------------------------- + +type Props = { + id: string; + onDelete: (id: string) => Promise; +}; + +export function DeleteButton({ id, onDelete }: Props) { + const { t } = useTranslate(); + const confirm = useBoolean(); + const isDeleting = useBoolean(); + + return ( + <> + + + + + + + { + isDeleting.onTrue(); + await onDelete(id); + isDeleting.onFalse(); + }} + loading={isDeleting.value} + > + {t('delete')} + + } + /> + + ); +} diff --git a/dashboard/src/components/delete/index.ts b/dashboard/src/components/delete/index.ts new file mode 100644 index 00000000..b7ab2a9a --- /dev/null +++ b/dashboard/src/components/delete/index.ts @@ -0,0 +1 @@ +export * from './delete-button'; diff --git a/dashboard/src/components/empty-content/empty-content.tsx b/dashboard/src/components/empty-content/empty-content.tsx new file mode 100644 index 00000000..3f8b4ad7 --- /dev/null +++ b/dashboard/src/components/empty-content/empty-content.tsx @@ -0,0 +1,66 @@ +import type { StackProps } from '@mui/material/Stack'; +import type { Theme, SxProps } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Typography from '@mui/material/Typography'; + +import { CONFIG } from 'src/config-global'; +import { varAlpha } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +export type EmptyContentProps = StackProps & { + title?: string; + imgUrl?: string; + filled?: boolean; + description?: string; + action?: React.ReactNode; + slotProps?: { + img?: SxProps; + title?: SxProps; + description?: SxProps; + }; +}; + +export function EmptyContent({ sx, imgUrl, action, filled, slotProps, description, title = 'No data', ...other }: EmptyContentProps) { + return ( + varAlpha(theme.vars.palette.grey['500Channel'], 0.04), + border: (theme) => `dashed 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.08)}`, + }), + ...sx, + }} + {...other} + > + + + {title && ( + + {title} + + )} + + {description && ( + + {description} + + )} + + {action && action} + + ); +} diff --git a/dashboard/src/components/empty-content/index.ts b/dashboard/src/components/empty-content/index.ts new file mode 100644 index 00000000..026ff327 --- /dev/null +++ b/dashboard/src/components/empty-content/index.ts @@ -0,0 +1 @@ +export * from './empty-content'; diff --git a/dashboard/src/components/error/error-view.tsx b/dashboard/src/components/error/error-view.tsx new file mode 100644 index 00000000..568234df --- /dev/null +++ b/dashboard/src/components/error/error-view.tsx @@ -0,0 +1,26 @@ +import { Alert } from '@mui/material'; + +import { LoadingScreen } from '../loading-screen'; + +// ---------------------------------------------------------------------- + +type Props = { + errors?: any[]; + data?: (object | null | undefined)[]; + isLoading?: boolean[]; +}; + +export function ErrorView({ errors = [], data = [], isLoading = [] }: Props) { + if (isLoading.some((loading) => loading)) { + return ; + } + + const error = errors.find((err) => err !== null); + if (error) { + return Error while fetching data: {error.message}; + } + + if (data.some((d) => d == null)) { + return Failed to fetch data. Please contact your administrator; + } +} diff --git a/dashboard/src/components/error/index.ts b/dashboard/src/components/error/index.ts new file mode 100644 index 00000000..78edae89 --- /dev/null +++ b/dashboard/src/components/error/index.ts @@ -0,0 +1 @@ +export * from './error-view'; diff --git a/dashboard/src/components/file-thumbnail/action-buttons.tsx b/dashboard/src/components/file-thumbnail/action-buttons.tsx new file mode 100644 index 00000000..03bdefda --- /dev/null +++ b/dashboard/src/components/file-thumbnail/action-buttons.tsx @@ -0,0 +1,65 @@ +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { useTheme } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; +import IconButton from '@mui/material/IconButton'; + +import { bgBlur, varAlpha } from 'src/theme/styles'; + +import { Iconify } from '../iconify'; + +// ---------------------------------------------------------------------- + +export function DownloadButton({ sx, ...other }: ButtonBaseProps) { + const theme = useTheme(); + + return ( + + + + ); +} + +// ---------------------------------------------------------------------- + +export function RemoveButton({ sx, ...other }: IconButtonProps) { + return ( + varAlpha(theme.vars.palette.grey['900Channel'], 0.48), + '&:hover': { bgcolor: (theme) => varAlpha(theme.vars.palette.grey['900Channel'], 0.72) }, + ...sx, + }} + {...other} + > + + + ); +} diff --git a/dashboard/src/components/file-thumbnail/classes.ts b/dashboard/src/components/file-thumbnail/classes.ts new file mode 100644 index 00000000..da284b4f --- /dev/null +++ b/dashboard/src/components/file-thumbnail/classes.ts @@ -0,0 +1,9 @@ +// ---------------------------------------------------------------------- + +export const fileThumbnailClasses = { + root: 'mnl__file__thumbnail__root', + img: 'mnl__file__thumbnail__img', + icon: 'mnl__file__thumbnail__icon', + removeBtn: 'mnl__file__thumbnail__remove__button', + downloadBtn: 'mnl__file__thumbnail__download__button', +}; diff --git a/dashboard/src/components/file-thumbnail/file-thumbnail.tsx b/dashboard/src/components/file-thumbnail/file-thumbnail.tsx new file mode 100644 index 00000000..9b5819d7 --- /dev/null +++ b/dashboard/src/components/file-thumbnail/file-thumbnail.tsx @@ -0,0 +1,73 @@ +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Tooltip from '@mui/material/Tooltip'; + +import { fileThumbnailClasses } from './classes'; +import { fileData, fileThumb, fileFormat } from './utils'; +import { RemoveButton, DownloadButton } from './action-buttons'; + +import type { FileThumbnailProps } from './types'; + +// ---------------------------------------------------------------------- + +export function FileThumbnail({ sx, file, tooltip, onRemove, imageView, slotProps, onDownload, ...other }: FileThumbnailProps) { + const previewUrl = typeof file === 'string' ? file : URL.createObjectURL(file); + + const { name, path } = fileData(file); + + const format = fileFormat(path || previewUrl); + + const renderImg = ( + + ); + + const renderIcon = ( + + ); + + const renderContent = ( + + {format === 'image' && imageView ? renderImg : renderIcon} + + {onRemove && } + + {onDownload && } + + ); + + if (tooltip) { + return ( + + {renderContent} + + ); + } + + return renderContent; +} diff --git a/dashboard/src/components/file-thumbnail/index.ts b/dashboard/src/components/file-thumbnail/index.ts new file mode 100644 index 00000000..833d600f --- /dev/null +++ b/dashboard/src/components/file-thumbnail/index.ts @@ -0,0 +1,7 @@ +export * from './utils'; + +export type * from './types'; + +export * from './action-buttons'; + +export * from './file-thumbnail'; diff --git a/dashboard/src/components/file-thumbnail/types.ts b/dashboard/src/components/file-thumbnail/types.ts new file mode 100644 index 00000000..45a986e2 --- /dev/null +++ b/dashboard/src/components/file-thumbnail/types.ts @@ -0,0 +1,25 @@ +import type { StackProps } from '@mui/material/Stack'; +import type { Theme, SxProps } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export interface ExtendFile extends File { + path?: string; + preview?: string; + lastModifiedDate?: Date; +} + +export type FileThumbnailProps = StackProps & { + tooltip?: boolean; + file: File | string; + imageView?: boolean; + sx?: SxProps; + onDownload?: () => void; + onRemove?: () => void; + slotProps?: { + img?: SxProps; + icon?: SxProps; + removeBtn?: SxProps; + downloadBtn?: SxProps; + }; +}; diff --git a/dashboard/src/components/file-thumbnail/utils.ts b/dashboard/src/components/file-thumbnail/utils.ts new file mode 100644 index 00000000..6c6872e4 --- /dev/null +++ b/dashboard/src/components/file-thumbnail/utils.ts @@ -0,0 +1,156 @@ +import { CONFIG } from 'src/config-global'; + +import type { ExtendFile } from './types'; + +// ---------------------------------------------------------------------- + +// Define more types here +const FORMAT_PDF = ['pdf']; +const FORMAT_TEXT = ['txt']; +const FORMAT_PHOTOSHOP = ['psd']; +const FORMAT_WORD = ['doc', 'docx']; +const FORMAT_EXCEL = ['xls', 'xlsx']; +const FORMAT_ZIP = ['zip', 'rar', 'iso']; +const FORMAT_ILLUSTRATOR = ['ai', 'esp']; +const FORMAT_POWERPOINT = ['ppt', 'pptx']; +const FORMAT_AUDIO = ['wav', 'aif', 'mp3', 'aac']; +const FORMAT_IMG = ['jpg', 'jpeg', 'gif', 'bmp', 'png', 'svg', 'webp']; +const FORMAT_VIDEO = ['m4v', 'avi', 'mpg', 'mp4', 'webm']; + +const iconUrl = (icon: string) => `${CONFIG.site.basePath}/assets/icons/files/${icon}.svg`; + +// ---------------------------------------------------------------------- + +export function fileFormat(fileUrl: string) { + let format; + + const fileByUrl = fileTypeByUrl(fileUrl); + + switch (fileUrl.includes(fileByUrl)) { + case FORMAT_TEXT.includes(fileByUrl): + format = 'txt'; + break; + case FORMAT_ZIP.includes(fileByUrl): + format = 'zip'; + break; + case FORMAT_AUDIO.includes(fileByUrl): + format = 'audio'; + break; + case FORMAT_IMG.includes(fileByUrl): + format = 'image'; + break; + case FORMAT_VIDEO.includes(fileByUrl): + format = 'video'; + break; + case FORMAT_WORD.includes(fileByUrl): + format = 'word'; + break; + case FORMAT_EXCEL.includes(fileByUrl): + format = 'excel'; + break; + case FORMAT_POWERPOINT.includes(fileByUrl): + format = 'powerpoint'; + break; + case FORMAT_PDF.includes(fileByUrl): + format = 'pdf'; + break; + case FORMAT_PHOTOSHOP.includes(fileByUrl): + format = 'photoshop'; + break; + case FORMAT_ILLUSTRATOR.includes(fileByUrl): + format = 'illustrator'; + break; + default: + format = fileTypeByUrl(fileUrl); + } + + return format; +} + +// ---------------------------------------------------------------------- + +export function fileThumb(fileUrl: string) { + let thumb; + + switch (fileFormat(fileUrl)) { + case 'folder': + thumb = iconUrl('ic-folder'); + break; + case 'txt': + thumb = iconUrl('ic-txt'); + break; + case 'zip': + thumb = iconUrl('ic-zip'); + break; + case 'audio': + thumb = iconUrl('ic-audio'); + break; + case 'video': + thumb = iconUrl('ic-video'); + break; + case 'word': + thumb = iconUrl('ic-word'); + break; + case 'excel': + thumb = iconUrl('ic-excel'); + break; + case 'powerpoint': + thumb = iconUrl('ic-power_point'); + break; + case 'pdf': + thumb = iconUrl('ic-pdf'); + break; + case 'photoshop': + thumb = iconUrl('ic-pts'); + break; + case 'illustrator': + thumb = iconUrl('ic-ai'); + break; + case 'image': + thumb = iconUrl('ic-img'); + break; + default: + thumb = iconUrl('ic-file'); + } + return thumb; +} + +// ---------------------------------------------------------------------- + +export function fileTypeByUrl(fileUrl: string) { + return (fileUrl && fileUrl.split('.').pop()) || ''; +} + +// ---------------------------------------------------------------------- + +export function fileNameByUrl(fileUrl: string) { + return fileUrl.split('/').pop(); +} + +// ---------------------------------------------------------------------- + +export function fileData(file: File | string) { + // From url + if (typeof file === 'string') { + return { + preview: file, + name: fileNameByUrl(file), + type: fileTypeByUrl(file), + size: undefined, + path: file, + lastModified: undefined, + lastModifiedDate: undefined, + }; + } + + // From file + return { + name: file.name, + size: file.size, + path: (file as ExtendFile).path, + type: file.type, + preview: (file as ExtendFile).preview, + lastModified: file.lastModified, + lastModifiedDate: (file as ExtendFile).lastModifiedDate, + }; +} diff --git a/dashboard/src/components/filters-result/filters-block.tsx b/dashboard/src/components/filters-result/filters-block.tsx new file mode 100644 index 00000000..6cb2ae1e --- /dev/null +++ b/dashboard/src/components/filters-result/filters-block.tsx @@ -0,0 +1,47 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; + +// ---------------------------------------------------------------------- + +export type FilterBlockProps = { + label: string; + isShow: boolean; + sx?: SxProps; + children: React.ReactNode; +}; + +export function FiltersBlock({ label, children, isShow, sx }: FilterBlockProps) { + if (!isShow) { + return null; + } + + return ( + `dashed 1px ${theme.vars.palette.divider}`, + ...sx, + }} + > + theme.typography.subtitle2.fontSize, + fontWeight: (theme) => theme.typography.subtitle2.fontWeight, + }} + > + {label} + + + {children} + + + ); +} diff --git a/dashboard/src/components/filters-result/filters-result.tsx b/dashboard/src/components/filters-result/filters-result.tsx new file mode 100644 index 00000000..2508ee42 --- /dev/null +++ b/dashboard/src/components/filters-result/filters-result.tsx @@ -0,0 +1,42 @@ +import type { ChipProps } from '@mui/material/Chip'; +import type { Theme, SxProps } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; + +import { Iconify } from 'src/components/iconify'; + +// ---------------------------------------------------------------------- + +export const chipProps: ChipProps = { + size: 'small', + variant: 'soft', +}; + +type FiltersResultProps = { + totalResults: number; + onReset: () => void; + sx?: SxProps; + children: React.ReactNode; +}; + +export function FiltersResult({ totalResults, onReset, sx, children }: FiltersResultProps) { + return ( + + + {totalResults} + + results found + + + + + {children} + + + + + ); +} diff --git a/dashboard/src/components/filters-result/index.ts b/dashboard/src/components/filters-result/index.ts new file mode 100644 index 00000000..edbcbbe6 --- /dev/null +++ b/dashboard/src/components/filters-result/index.ts @@ -0,0 +1,3 @@ +export * from './filters-block'; + +export * from './filters-result'; diff --git a/dashboard/src/components/hook-form/fields.tsx b/dashboard/src/components/hook-form/fields.tsx new file mode 100644 index 00000000..c86232a6 --- /dev/null +++ b/dashboard/src/components/hook-form/fields.tsx @@ -0,0 +1,33 @@ +import { RHFCode } from './rhf-code'; +import { RHFRating } from './rhf-rating'; +import { RHFSlider } from './rhf-slider'; +import { RHFTextField } from './rhf-text-field'; +import { RHFRadioGroup } from './rhf-radio-group'; +import { RHFPhoneInput } from './rhf-phone-input'; +import { RHFAutocomplete } from './rhf-autocomplete'; +import { RHFCountrySelect } from './rhf-country-select'; +import { RHFSwitch, RHFMultiSwitch } from './rhf-switch'; +import { RHFSelect, RHFMultiSelect } from './rhf-select'; +import { RHFCheckbox, RHFMultiCheckbox } from './rhf-checkbox'; +import { RHFDatePicker, RHFMobileDateTimePicker } from './rhf-date-picker'; + +// ---------------------------------------------------------------------- + +export const Field = { + Code: RHFCode, + Select: RHFSelect, + Switch: RHFSwitch, + Slider: RHFSlider, + Rating: RHFRating, + Text: RHFTextField, + Phone: RHFPhoneInput, + Checkbox: RHFCheckbox, + RadioGroup: RHFRadioGroup, + DatePicker: RHFDatePicker, + MultiSelect: RHFMultiSelect, + MultiSwitch: RHFMultiSwitch, + Autocomplete: RHFAutocomplete, + MultiCheckbox: RHFMultiCheckbox, + CountrySelect: RHFCountrySelect, + MobileDateTimePicker: RHFMobileDateTimePicker, +}; diff --git a/dashboard/src/components/hook-form/form-provider.tsx b/dashboard/src/components/hook-form/form-provider.tsx new file mode 100644 index 00000000..b91d4ee3 --- /dev/null +++ b/dashboard/src/components/hook-form/form-provider.tsx @@ -0,0 +1,21 @@ +import type { UseFormReturn } from 'react-hook-form'; + +import { FormProvider as RHFForm } from 'react-hook-form'; + +// ---------------------------------------------------------------------- + +export type FormProps = { + onSubmit?: () => void; + children: React.ReactNode; + methods: UseFormReturn; +}; + +export function Form({ children, onSubmit, methods }: FormProps) { + return ( + +
    + {children} +
    +
    + ); +} diff --git a/dashboard/src/components/hook-form/index.ts b/dashboard/src/components/hook-form/index.ts new file mode 100644 index 00000000..57fd49b2 --- /dev/null +++ b/dashboard/src/components/hook-form/index.ts @@ -0,0 +1,31 @@ +export * from './fields'; + +export * from './rhf-code'; + +export * from './rhf-select'; + +export * from './rhf-rating'; + +export * from './rhf-switch'; + +export * from './rhf-slider'; + +export * from './rhf-checkbox'; + +export * from './schema-helper'; + +export * from './form-provider'; + +export * from './rhf-text-field'; + +export * from './rhf-date-picker'; + +export * from './rhf-radio-group'; + +export * from './rhf-phone-input'; + +export * from './rhf-autocomplete'; + +export * from './rhf-wallet-select'; + +export * from './rhf-country-select'; diff --git a/dashboard/src/components/hook-form/rhf-autocomplete.tsx b/dashboard/src/components/hook-form/rhf-autocomplete.tsx new file mode 100644 index 00000000..63efe98e --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-autocomplete.tsx @@ -0,0 +1,68 @@ +import type { AutocompleteProps } from '@mui/material/Autocomplete'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import TextField from '@mui/material/TextField'; +import { CircularProgress } from '@mui/material'; +import Autocomplete from '@mui/material/Autocomplete'; + +// ---------------------------------------------------------------------- + +export type AutocompleteBaseProps = Omit, 'renderInput'>; + +export type RHFAutocompleteProps = AutocompleteBaseProps & { + name: string; + label?: string; + placeholder?: string; + hiddenLabel?: boolean; + helperText?: React.ReactNode; + loading?: boolean; + selectedField?: string; +}; + +export function RHFAutocomplete({ + name, + label, + helperText, + hiddenLabel, + loading, + selectedField = 'id', + placeholder, + ...other +}: RHFAutocompleteProps) { + const { control, setValue } = useFormContext(); + + return ( + ( + setValue(name, newValue, { shouldValidate: true })} + renderInput={(params) => ( + + {loading ? : null} + {params.InputProps.endAdornment} + + ), + }} + /> + )} + {...other} + /> + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-checkbox.tsx b/dashboard/src/components/hook-form/rhf-checkbox.tsx new file mode 100644 index 00000000..5e7d1238 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-checkbox.tsx @@ -0,0 +1,137 @@ +import type { Theme, SxProps } from '@mui/material/styles'; +import type { CheckboxProps } from '@mui/material/Checkbox'; +import type { FormGroupProps } from '@mui/material/FormGroup'; +import type { FormLabelProps } from '@mui/material/FormLabel'; +import type { FormHelperTextProps } from '@mui/material/FormHelperText'; +import type { FormControlLabelProps } from '@mui/material/FormControlLabel'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import Box from '@mui/material/Box'; +import Checkbox from '@mui/material/Checkbox'; +import FormGroup from '@mui/material/FormGroup'; +import FormLabel from '@mui/material/FormLabel'; +import FormControl from '@mui/material/FormControl'; +import FormHelperText from '@mui/material/FormHelperText'; +import FormControlLabel from '@mui/material/FormControlLabel'; + +// ---------------------------------------------------------------------- + +type RHFCheckboxProps = Omit & { + name: string; + helperText?: React.ReactNode; + slotProps?: { + wrap?: SxProps; + checkbox?: CheckboxProps; + formHelperText?: FormHelperTextProps; + }; +}; + +export function RHFCheckbox({ name, helperText, label, slotProps, ...other }: RHFCheckboxProps) { + const { control } = useFormContext(); + + const ariaLabel = `Checkbox ${name}`; + + return ( + ( + + + } + label={label} + {...other} + /> + + {(!!error || helperText) && ( + + {error ? error?.message : helperText} + + )} + + )} + /> + ); +} + +// ---------------------------------------------------------------------- + +type RHFMultiCheckboxProps = FormGroupProps & { + name: string; + label?: string; + helperText?: React.ReactNode; + slotProps?: { + wrap?: SxProps; + checkbox?: CheckboxProps; + formLabel?: FormLabelProps; + formHelperText?: FormHelperTextProps; + }; + options: { + label: string; + value: string; + }[]; +}; + +export function RHFMultiCheckbox({ name, label, options, slotProps, helperText, ...other }: RHFMultiCheckboxProps) { + const { control } = useFormContext(); + + const getSelected = (selectedItems: string[], item: string) => + selectedItems.includes(item) ? selectedItems.filter((value) => value !== item) : [...selectedItems, item]; + + const accessibility = (val: string) => val; + const ariaLabel = (val: string) => `Checkbox ${val}`; + + return ( + ( + + {label && ( + + {label} + + )} + + + {options.map((option) => ( + field.onChange(getSelected(field.value, option.value))} + name={accessibility(option.label)} + {...slotProps?.checkbox} + inputProps={{ + ...(!option.label && { 'aria-label': ariaLabel(option.label) }), + ...slotProps?.checkbox?.inputProps, + }} + /> + } + label={option.label} + /> + ))} + + + {(!!error || helperText) && ( + + {error ? error?.message : helperText} + + )} + + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-code.tsx b/dashboard/src/components/hook-form/rhf-code.tsx new file mode 100644 index 00000000..21631e3d --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-code.tsx @@ -0,0 +1,34 @@ +import type { MuiOtpInputProps } from 'mui-one-time-password-input'; + +import { MuiOtpInput } from 'mui-one-time-password-input'; +import { Controller, useFormContext } from 'react-hook-form'; + +import FormHelperText from '@mui/material/FormHelperText'; + +// ---------------------------------------------------------------------- + +type RHFCodesProps = MuiOtpInputProps & { + name: string; +}; + +export function RHFCode({ name, ...other }: RHFCodesProps) { + const { control } = useFormContext(); + + return ( + ( +
    + + + {error && ( + + {error.message} + + )} +
    + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-country-select.tsx b/dashboard/src/components/hook-form/rhf-country-select.tsx new file mode 100644 index 00000000..c58ea22c --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-country-select.tsx @@ -0,0 +1,34 @@ +import type { CountrySelectProps } from 'src/components/country-select'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import { CountrySelect } from 'src/components/country-select'; + +// ---------------------------------------------------------------------- + +export function RHFCountrySelect({ + name, + helperText, + ...other +}: CountrySelectProps & { + name: string; +}) { + const { control, setValue } = useFormContext(); + + return ( + ( + setValue(name, newValue, { shouldValidate: true })} + error={!!error} + helperText={error?.message ?? helperText} + {...other} + /> + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-date-picker.tsx b/dashboard/src/components/hook-form/rhf-date-picker.tsx new file mode 100644 index 00000000..75ec5592 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-date-picker.tsx @@ -0,0 +1,82 @@ +import type { Dayjs } from 'dayjs'; +import type { TextFieldProps } from '@mui/material/TextField'; +import type { DatePickerProps } from '@mui/x-date-pickers/DatePicker'; +import type { MobileDateTimePickerProps } from '@mui/x-date-pickers/MobileDateTimePicker'; + +import dayjs from 'dayjs'; +import { Controller, useFormContext } from 'react-hook-form'; + +import { DatePicker } from '@mui/x-date-pickers/DatePicker'; +import { MobileDateTimePicker } from '@mui/x-date-pickers/MobileDateTimePicker'; + +import { formatStr } from 'src/utils/format-time'; + +// ---------------------------------------------------------------------- + +type RHFDatePickerProps = DatePickerProps & { + name: string; +}; + +export function RHFDatePicker({ name, slotProps, ...other }: RHFDatePickerProps) { + const { control } = useFormContext(); + + return ( + ( + field.onChange(dayjs(newValue).format())} + format={formatStr.split.date} + slotProps={{ + textField: { + fullWidth: true, + error: !!error, + helperText: error?.message ?? (slotProps?.textField as TextFieldProps)?.helperText, + ...slotProps?.textField, + }, + ...slotProps, + }} + {...other} + /> + )} + /> + ); +} + +// ---------------------------------------------------------------------- + +type RHFMobileDateTimePickerProps = MobileDateTimePickerProps & { + name: string; +}; + +export function RHFMobileDateTimePicker({ name, slotProps, ...other }: RHFMobileDateTimePickerProps) { + const { control } = useFormContext(); + + return ( + ( + field.onChange(dayjs(newValue).format())} + format={formatStr.split.dateTime} + slotProps={{ + textField: { + fullWidth: true, + error: !!error, + helperText: error?.message ?? (slotProps?.textField as TextFieldProps)?.helperText, + ...slotProps?.textField, + }, + ...slotProps, + }} + {...other} + /> + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-phone-input.tsx b/dashboard/src/components/hook-form/rhf-phone-input.tsx new file mode 100644 index 00000000..3844ca95 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-phone-input.tsx @@ -0,0 +1,33 @@ +import { Controller, useFormContext } from 'react-hook-form'; + +import { PhoneInput } from '../phone-input'; + +import type { PhoneInputProps } from '../phone-input'; + +// ---------------------------------------------------------------------- + +type Props = Omit & { + name: string; +}; + +export function RHFPhoneInput({ name, helperText, ...other }: Props) { + const { control, setValue } = useFormContext(); + + return ( + ( + setValue(name, newValue, { shouldValidate: true })} + error={!!error} + helperText={error ? error?.message : helperText} + {...other} + /> + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-radio-group.tsx b/dashboard/src/components/hook-form/rhf-radio-group.tsx new file mode 100644 index 00000000..f0044464 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-radio-group.tsx @@ -0,0 +1,85 @@ +import type { RadioProps } from '@mui/material/Radio'; +import type { Theme, SxProps } from '@mui/material/styles'; +import type { FormLabelProps } from '@mui/material/FormLabel'; +import type { RadioGroupProps } from '@mui/material/RadioGroup'; +import type { FormHelperTextProps } from '@mui/material/FormHelperText'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import Radio from '@mui/material/Radio'; +import FormLabel from '@mui/material/FormLabel'; +import RadioGroup from '@mui/material/RadioGroup'; +import FormControl from '@mui/material/FormControl'; +import FormHelperText from '@mui/material/FormHelperText'; +import FormControlLabel from '@mui/material/FormControlLabel'; + +// ---------------------------------------------------------------------- + +type Props = RadioGroupProps & { + name: string; + label?: string; + helperText?: React.ReactNode; + slotProps?: { + wrap?: SxProps; + radio: RadioProps; + formLabel: FormLabelProps; + formHelperText: FormHelperTextProps; + }; + options: { + label: string; + value: string; + }[]; +}; + +export function RHFRadioGroup({ name, label, options, helperText, slotProps, ...other }: Props) { + const { control } = useFormContext(); + + const labelledby = `${name}-radio-buttons-group-label`; + const ariaLabel = (val: string) => `Radio ${val}`; + + return ( + ( + + {label && ( + + {label} + + )} + + + {options.map((option) => ( + + } + label={option.label} + /> + ))} + + + {(!!error || helperText) && ( + + {error ? error?.message : helperText} + + )} + + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-rating.tsx b/dashboard/src/components/hook-form/rhf-rating.tsx new file mode 100644 index 00000000..e94f13e2 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-rating.tsx @@ -0,0 +1,48 @@ +import type { RatingProps } from '@mui/material/Rating'; +import type { Theme, SxProps } from '@mui/material/styles'; +import type { FormHelperTextProps } from '@mui/material/FormHelperText'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import Box from '@mui/material/Box'; +import Rating from '@mui/material/Rating'; +import FormHelperText from '@mui/material/FormHelperText'; + +// ---------------------------------------------------------------------- + +type Props = RatingProps & { + name: string; + helperText?: React.ReactNode; + slotProps?: { + wrap?: SxProps; + formHelperText?: FormHelperTextProps; + }; +}; + +export function RHFRating({ name, helperText, slotProps, ...other }: Props) { + const { control } = useFormContext(); + + return ( + ( + + { + field.onChange(Number(newValue)); + }} + {...other} + /> + + {(error?.message || helperText) && ( + + {error?.message ?? helperText} + + )} + + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-select.tsx b/dashboard/src/components/hook-form/rhf-select.tsx new file mode 100644 index 00000000..60de1d92 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-select.tsx @@ -0,0 +1,159 @@ +import type { ChipProps } from '@mui/material/Chip'; +import type { SelectProps } from '@mui/material/Select'; +import type { Theme, SxProps } from '@mui/material/styles'; +import type { CheckboxProps } from '@mui/material/Checkbox'; +import type { TextFieldProps } from '@mui/material/TextField'; +import type { InputLabelProps } from '@mui/material/InputLabel'; +import type { FormControlProps } from '@mui/material/FormControl'; +import type { FormHelperTextProps } from '@mui/material/FormHelperText'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import Box from '@mui/material/Box'; +import Chip from '@mui/material/Chip'; +import Select from '@mui/material/Select'; +import MenuItem from '@mui/material/MenuItem'; +import Checkbox from '@mui/material/Checkbox'; +import TextField from '@mui/material/TextField'; +import InputLabel from '@mui/material/InputLabel'; +import FormControl from '@mui/material/FormControl'; +import FormHelperText from '@mui/material/FormHelperText'; + +// ---------------------------------------------------------------------- + +type RHFSelectProps = TextFieldProps & { + name: string; + native?: boolean; + children: React.ReactNode; + slotProps?: { + paper?: SxProps; + }; +}; + +export function RHFSelect({ name, native, children, slotProps, helperText, inputProps, InputLabelProps, ...other }: RHFSelectProps) { + const { control } = useFormContext(); + + const labelId = `${name}-select-label`; + + return ( + ( + + {children} + + )} + /> + ); +} + +// ---------------------------------------------------------------------- + +type RHFMultiSelectProps = FormControlProps & { + name: string; + label?: string; + chip?: boolean; + checkbox?: boolean; + placeholder?: string; + helperText?: React.ReactNode; + options: { + label: string; + value: string; + }[]; + slotProps?: { + chip?: ChipProps; + select: SelectProps; + checkbox?: CheckboxProps; + inputLabel?: InputLabelProps; + formHelperText?: FormHelperTextProps; + }; +}; + +export function RHFMultiSelect({ + name, + chip, + label, + options, + checkbox, + placeholder, + slotProps, + helperText, + ...other +}: RHFMultiSelectProps) { + const { control } = useFormContext(); + + const labelId = `${name}-select-label`; + + return ( + ( + + {label && ( + + {label} + + )} + + + + {(!!error || helperText) && ( + + {error ? error?.message : helperText} + + )} + + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-slider.tsx b/dashboard/src/components/hook-form/rhf-slider.tsx new file mode 100644 index 00000000..4b56f21f --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-slider.tsx @@ -0,0 +1,31 @@ +import type { SliderProps } from '@mui/material/Slider'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import Slider from '@mui/material/Slider'; +import FormHelperText from '@mui/material/FormHelperText'; + +// ---------------------------------------------------------------------- + +type Props = SliderProps & { + name: string; + helperText?: React.ReactNode; +}; + +export function RHFSlider({ name, helperText, ...other }: Props) { + const { control } = useFormContext(); + + return ( + ( + <> + + + {(!!error || helperText) && {error ? error?.message : helperText}} + + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-switch.tsx b/dashboard/src/components/hook-form/rhf-switch.tsx new file mode 100644 index 00000000..b455aaed --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-switch.tsx @@ -0,0 +1,137 @@ +import type { SwitchProps } from '@mui/material/Switch'; +import type { Theme, SxProps } from '@mui/material/styles'; +import type { FormGroupProps } from '@mui/material/FormGroup'; +import type { FormLabelProps } from '@mui/material/FormLabel'; +import type { FormHelperTextProps } from '@mui/material/FormHelperText'; +import type { FormControlLabelProps } from '@mui/material/FormControlLabel'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import Box from '@mui/material/Box'; +import Switch from '@mui/material/Switch'; +import FormGroup from '@mui/material/FormGroup'; +import FormLabel from '@mui/material/FormLabel'; +import FormControl from '@mui/material/FormControl'; +import FormHelperText from '@mui/material/FormHelperText'; +import FormControlLabel from '@mui/material/FormControlLabel'; + +// ---------------------------------------------------------------------- + +export type RHFSwitchProps = Omit & { + name: string; + helperText?: React.ReactNode; + slotProps?: { + wrap?: SxProps; + switch: SwitchProps; + formHelperText?: FormHelperTextProps; + }; +}; + +export function RHFSwitch({ name, helperText, label, slotProps, ...other }: RHFSwitchProps) { + const { control } = useFormContext(); + + const ariaLabel = `Switch ${name}`; + + return ( + ( + + + } + label={label} + {...other} + /> + + {(!!error || helperText) && ( + + {error ? error?.message : helperText} + + )} + + )} + /> + ); +} + +// ---------------------------------------------------------------------- + +type RHFMultiSwitchProps = FormGroupProps & { + name: string; + label?: string; + helperText?: React.ReactNode; + options: { + label: string; + value: string; + }[]; + slotProps?: { + wrap?: SxProps; + switch: SwitchProps; + formLabel?: FormLabelProps; + formHelperText?: FormHelperTextProps; + }; +}; + +export function RHFMultiSwitch({ name, label, options, helperText, slotProps, ...other }: RHFMultiSwitchProps) { + const { control } = useFormContext(); + + const getSelected = (selectedItems: string[], item: string) => + selectedItems.includes(item) ? selectedItems.filter((value) => value !== item) : [...selectedItems, item]; + + const accessibility = (val: string) => val; + const ariaLabel = (val: string) => `Switch ${val}`; + + return ( + ( + + {label && ( + + {label} + + )} + + + {options.map((option) => ( + field.onChange(getSelected(field.value, option.value))} + name={accessibility(option.label)} + {...slotProps?.switch} + inputProps={{ + ...(!option.label && { 'aria-label': ariaLabel(option.label) }), + ...slotProps?.switch?.inputProps, + }} + /> + } + label={option.label} + /> + ))} + + + {(!!error || helperText) && ( + + {error ? error?.message : helperText} + + )} + + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-text-field.tsx b/dashboard/src/components/hook-form/rhf-text-field.tsx new file mode 100644 index 00000000..ea5c7b4f --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-text-field.tsx @@ -0,0 +1,43 @@ +import type { TextFieldProps } from '@mui/material/TextField'; + +import { Controller, useFormContext } from 'react-hook-form'; + +import TextField from '@mui/material/TextField'; + +// ---------------------------------------------------------------------- + +type Props = TextFieldProps & { + name: string; +}; + +export function RHFTextField({ name, helperText, type, ...other }: Props) { + const { control } = useFormContext(); + + return ( + ( + { + if (type === 'number') { + field.onChange(Number(event.target.value)); + } else { + field.onChange(event.target.value); + } + }} + error={!!error} + helperText={error?.message ?? helperText} + inputProps={{ + autoComplete: 'off', + }} + {...other} + /> + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/rhf-wallet-select.tsx b/dashboard/src/components/hook-form/rhf-wallet-select.tsx new file mode 100644 index 00000000..1518a946 --- /dev/null +++ b/dashboard/src/components/hook-form/rhf-wallet-select.tsx @@ -0,0 +1,50 @@ +import type { ListWalletsResponse } from 'src/lib/swissknife'; + +import { useState } from 'react'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { truncateText } from 'src/utils/format-string'; + +import { listWallets } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; + +import { RHFAutocomplete } from './rhf-autocomplete'; + +// ---------------------------------------------------------------------- + +export function RHFWalletSelect() { + const [options, setOptions] = useState([]); + const loading = useBoolean(); + + const fetchOptions = async () => { + loading.onTrue(); + try { + const { error, data } = await listWallets(); + if (error) throw new Error(error.reason); + setOptions(data); + } catch (error) { + toast.error(error.message); + } finally { + loading.onFalse(); + } + }; + + return ( + option.ln_address == null)} + loading={loading.value} + getOptionLabel={(option) => `${option.user_id} (${option.id})`} + isOptionEqualToValue={(option, value) => option.id === value.id} + onOpen={fetchOptions} + renderOption={(props, option) => ( +
  3. + {option.user_id} ({truncateText(option.id, 15)}) +
  4. + )} + /> + ); +} diff --git a/dashboard/src/components/hook-form/schema-helper.ts b/dashboard/src/components/hook-form/schema-helper.ts new file mode 100644 index 00000000..a60def1e --- /dev/null +++ b/dashboard/src/components/hook-form/schema-helper.ts @@ -0,0 +1,126 @@ +import dayjs from 'dayjs'; +import { z as zod } from 'zod'; + +// ---------------------------------------------------------------------- + +// const isSsr = typeof window === 'undefined'; + +type InputProps = { + message?: { + required_error?: string; + invalid_type_error?: string; + }; + minFiles?: number; + isValidPhoneNumber?: (text: string) => boolean; +}; + +export const schemaHelper = { + /** + * Phone number + * defaultValue === null + */ + phoneNumber: (props?: InputProps) => + zod + .string() + .min(1, { message: props?.message?.required_error ?? 'Phone number is required!' }) + .refine((data) => props?.isValidPhoneNumber?.(data), { + message: props?.message?.invalid_type_error ?? 'Invalid phone number!', + }), + /** + * date + * defaultValue === null + */ + date: (props?: InputProps) => + zod.coerce + .date() + .nullable() + .transform((dateString, ctx) => { + const date = dayjs(dateString).format(); + + const stringToDate = zod.string().pipe(zod.coerce.date()); + + if (!dateString) { + ctx.addIssue({ + code: zod.ZodIssueCode.custom, + message: props?.message?.required_error ?? 'Date is required!', + }); + return null; + } + + if (!stringToDate.safeParse(date).success) { + ctx.addIssue({ + code: zod.ZodIssueCode.invalid_date, + message: props?.message?.invalid_type_error ?? 'Invalid Date!!', + }); + } + + return date; + }) + .pipe(zod.union([zod.number(), zod.string(), zod.date(), zod.null()])), + /** + * editor + * defaultValue === '' |

    + */ + editor: (props?: InputProps) => zod.string().min(8, { message: props?.message?.required_error ?? 'Editor is required!' }), + /** + * object + * defaultValue === null + */ + objectOrNull: (props?: InputProps) => + zod + .custom() + .refine((data) => data !== null, { + message: props?.message?.required_error ?? 'Field is required!', + }) + .refine((data) => data !== '', { + message: props?.message?.required_error ?? 'Field is required!', + }), + /** + * boolean + * defaultValue === false + */ + boolean: (props?: InputProps) => + zod.coerce.boolean().refine((bool) => bool === true, { + message: props?.message?.required_error ?? 'Switch is required!', + }), + /** + * file + * defaultValue === '' || null + */ + file: (props?: InputProps) => + zod.custom().transform((data, ctx) => { + const hasFile = data instanceof File || (typeof data === 'string' && !!data.length); + + if (!hasFile) { + ctx.addIssue({ + code: zod.ZodIssueCode.custom, + message: props?.message?.required_error ?? 'File is required!', + }); + return null; + } + + return data; + }), + /** + * files + * defaultValue === [] + */ + files: (props?: InputProps) => + zod.array(zod.custom()).transform((data, ctx) => { + const minFiles = props?.minFiles ?? 2; + + if (!data.length) { + ctx.addIssue({ + code: zod.ZodIssueCode.custom, + message: props?.message?.required_error ?? 'Files is required!', + }); + } else if (data.length < minFiles) { + ctx.addIssue({ + code: zod.ZodIssueCode.custom, + message: `Must have at least ${minFiles} items!`, + }); + } + + return data; + }), +}; diff --git a/dashboard/src/components/iconify/classes.ts b/dashboard/src/components/iconify/classes.ts new file mode 100644 index 00000000..39aa6705 --- /dev/null +++ b/dashboard/src/components/iconify/classes.ts @@ -0,0 +1,3 @@ +export const iconifyClasses = { + root: 'mnl__icon__root', +}; diff --git a/dashboard/src/components/iconify/flag-icon.tsx b/dashboard/src/components/iconify/flag-icon.tsx new file mode 100644 index 00000000..2d5f8e5d --- /dev/null +++ b/dashboard/src/components/iconify/flag-icon.tsx @@ -0,0 +1,46 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import NoSsr from '@mui/material/NoSsr'; + +import { CONFIG } from 'src/config-global'; + +// ---------------------------------------------------------------------- + +export type FlagIconProps = { + code?: string; + sx?: SxProps; +}; + +export const FlagIcon = forwardRef(({ code, sx, ...other }, ref) => { + const baseStyles = { + width: 26, + height: 20, + flexShrink: 0, + overflow: 'hidden', + borderRadius: '5px', + display: 'inline-flex', + bgcolor: 'background.neutral', + }; + + const renderFallback = ; + + if (!code) { + return null; + } + + return ( + + + + + + ); +}); diff --git a/dashboard/src/components/iconify/iconify.tsx b/dashboard/src/components/iconify/iconify.tsx new file mode 100644 index 00000000..a1ddaa62 --- /dev/null +++ b/dashboard/src/components/iconify/iconify.tsx @@ -0,0 +1,41 @@ +'use client'; + +import { forwardRef } from 'react'; +import { Icon, disableCache } from '@iconify/react'; + +import Box from '@mui/material/Box'; +import NoSsr from '@mui/material/NoSsr'; + +import { iconifyClasses } from './classes'; + +import type { IconifyProps } from './types'; + +// ---------------------------------------------------------------------- + +export const Iconify = forwardRef(({ className, width = 20, sx, ...other }, ref) => { + const baseStyles = { + width, + height: width, + flexShrink: 0, + display: 'inline-flex', + }; + + const renderFallback = ( + + ); + + return ( + + + + ); +}); + +// https://iconify.design/docs/iconify-icon/disable-cache.html +disableCache('local'); diff --git a/dashboard/src/components/iconify/index.ts b/dashboard/src/components/iconify/index.ts new file mode 100644 index 00000000..a9d5646b --- /dev/null +++ b/dashboard/src/components/iconify/index.ts @@ -0,0 +1,9 @@ +export * from './classes'; + +export * from './iconify'; + +export * from './flag-icon'; + +export type * from './types'; + +export * from './social-icon'; diff --git a/dashboard/src/components/iconify/social-icon.tsx b/dashboard/src/components/iconify/social-icon.tsx new file mode 100644 index 00000000..55c5ad91 --- /dev/null +++ b/dashboard/src/components/iconify/social-icon.tsx @@ -0,0 +1,118 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import { forwardRef } from 'react'; + +import SvgIcon from '@mui/material/SvgIcon'; + +// ---------------------------------------------------------------------- + +export type SocialIconProps = { + icon?: 'google' | 'twitter' | 'linkedin' | 'instagram' | 'facebook' | 'github' | string; + width?: number; + sx?: SxProps; +}; + +export const SocialIcon = forwardRef(({ icon, width = 20, sx, ...other }, ref) => { + const socialName = icon?.trim().toLowerCase(); + + return ( + + {socialName === 'google' && googleSVG} + {socialName === 'facebook' && facebookSVG} + {socialName === 'linkedin' && linkedinSVG} + {socialName === 'twitter' && twitterSVG} + {socialName === 'instagram' && instagramSVG} + {socialName === 'github' && githubSVG} + + ); +}); + +// ---------------------------------------------------------------------- + +const githubSVG = ( + +); + +const googleSVG = ( + <> + + + + + +); + +const facebookSVG = ( + +); + +const linkedinSVG = ( + +); + +const twitterSVG = ( + +); + +const instagramSVG = ( + <> + + + + + + + + + + + + + + + + + + + + +); diff --git a/dashboard/src/components/iconify/types.ts b/dashboard/src/components/iconify/types.ts new file mode 100644 index 00000000..53ea7529 --- /dev/null +++ b/dashboard/src/components/iconify/types.ts @@ -0,0 +1,6 @@ +import type { IconProps } from '@iconify/react'; +import type { BoxProps } from '@mui/material/Box'; + +// ---------------------------------------------------------------------- + +export type IconifyProps = BoxProps & IconProps; diff --git a/dashboard/src/components/image/classes.ts b/dashboard/src/components/image/classes.ts new file mode 100644 index 00000000..76a60598 --- /dev/null +++ b/dashboard/src/components/image/classes.ts @@ -0,0 +1,7 @@ +// ---------------------------------------------------------------------- + +export const imageClasses = { + root: 'mnl__image__root', + wrapper: 'mnl__image__wrapper', + overlay: 'mnl__image__overlay', +}; diff --git a/dashboard/src/components/image/image.tsx b/dashboard/src/components/image/image.tsx new file mode 100644 index 00000000..35abbf41 --- /dev/null +++ b/dashboard/src/components/image/image.tsx @@ -0,0 +1,104 @@ +import { forwardRef } from 'react'; +import { LazyLoadImage } from 'react-lazy-load-image-component'; + +import Box from '@mui/material/Box'; +import { styled } from '@mui/material/styles'; + +import { CONFIG } from 'src/config-global'; + +import { imageClasses } from './classes'; + +import type { ImageProps } from './types'; + +// ---------------------------------------------------------------------- + +const ImageWrapper = styled(Box)({ + overflow: 'hidden', + position: 'relative', + verticalAlign: 'bottom', + display: 'inline-block', + [`& .${imageClasses.wrapper}`]: { + width: '100%', + height: '100%', + verticalAlign: 'bottom', + backgroundSize: 'cover !important', + }, +}); + +const Overlay = styled('span')({ + top: 0, + left: 0, + zIndex: 1, + width: '100%', + height: '100%', + position: 'absolute', +}); + +// ---------------------------------------------------------------------- + +export const Image = forwardRef( + ( + { + ratio, + disabledEffect = false, + // + alt, + src, + delayTime, + threshold, + beforeLoad, + delayMethod, + placeholder, + wrapperProps, + scrollPosition, + effect = 'blur', + visibleByDefault, + wrapperClassName, + useIntersectionObserver, + // + slotProps, + sx, + ...other + }, + ref + ) => { + const content = ( + + ); + + return ( + + {slotProps?.overlay && } + + {content} + + ); + } +); diff --git a/dashboard/src/components/image/index.ts b/dashboard/src/components/image/index.ts new file mode 100644 index 00000000..7e7e67e8 --- /dev/null +++ b/dashboard/src/components/image/index.ts @@ -0,0 +1,5 @@ +export * from './image'; + +export * from './classes'; + +export type * from './types'; diff --git a/dashboard/src/components/image/styles.css b/dashboard/src/components/image/styles.css new file mode 100644 index 00000000..07362102 --- /dev/null +++ b/dashboard/src/components/image/styles.css @@ -0,0 +1 @@ +@import 'react-lazy-load-image-component/src/effects/blur.css'; diff --git a/dashboard/src/components/image/types.ts b/dashboard/src/components/image/types.ts new file mode 100644 index 00000000..6b20ef3d --- /dev/null +++ b/dashboard/src/components/image/types.ts @@ -0,0 +1,18 @@ +import type { BoxProps } from '@mui/material/Box'; +import type { Theme, SxProps } from '@mui/material/styles'; +import type { LazyLoadImageProps } from 'react-lazy-load-image-component'; + +// ---------------------------------------------------------------------- + +type BaseRatioType = '2/3' | '3/2' | '4/3' | '3/4' | '6/4' | '4/6' | '16/9' | '9/16' | '21/9' | '9/21' | '1/1' | string; + +export type ImageRatioType = BaseRatioType | { [key: string]: string }; + +export type ImageProps = BoxProps & + LazyLoadImageProps & { + ratio?: ImageRatioType; + disabledEffect?: boolean; + slotProps?: { + overlay: SxProps; + }; + }; diff --git a/dashboard/src/components/image/utils.ts b/dashboard/src/components/image/utils.ts new file mode 100644 index 00000000..61abac45 --- /dev/null +++ b/dashboard/src/components/image/utils.ts @@ -0,0 +1,15 @@ +// ---------------------------------------------------------------------- + +export function getRatio(ratio = '1/1') { + return { + '4/3': 'calc(100% / 4 * 3)', + '3/4': 'calc(100% / 3 * 4)', + '6/4': 'calc(100% / 6 * 4)', + '4/6': 'calc(100% / 4 * 6)', + '16/9': 'calc(100% / 16 * 9)', + '9/16': 'calc(100% / 9 * 16)', + '21/9': 'calc(100% / 21 * 9)', + '9/21': 'calc(100% / 9 * 21)', + '1/1': '100%', + }[ratio]; +} diff --git a/dashboard/src/components/label/classes.ts b/dashboard/src/components/label/classes.ts new file mode 100644 index 00000000..59db7caa --- /dev/null +++ b/dashboard/src/components/label/classes.ts @@ -0,0 +1,3 @@ +// ---------------------------------------------------------------------- + +export const labelClasses = { root: 'mnl__label__root', icon: 'mnl__label__icon' }; diff --git a/dashboard/src/components/label/index.ts b/dashboard/src/components/label/index.ts new file mode 100644 index 00000000..71f3c7e6 --- /dev/null +++ b/dashboard/src/components/label/index.ts @@ -0,0 +1,7 @@ +export * from './label'; + +export * from './styles'; + +export * from './classes'; + +export type * from './types'; diff --git a/dashboard/src/components/label/label.tsx b/dashboard/src/components/label/label.tsx new file mode 100644 index 00000000..80c0060c --- /dev/null +++ b/dashboard/src/components/label/label.tsx @@ -0,0 +1,55 @@ +'use client'; + +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +import { StyledLabel } from './styles'; +import { labelClasses } from './classes'; + +import type { LabelProps } from './types'; + +// ---------------------------------------------------------------------- + +export const Label = forwardRef( + ({ children, color = 'default', variant = 'soft', startIcon, endIcon, sx, ...other }, ref) => { + const theme = useTheme(); + + const iconStyles = { + width: 16, + height: 16, + '& svg, img': { + width: 1, + height: 1, + objectFit: 'cover', + }, + }; + + return ( + + {startIcon && ( + + {startIcon} + + )} + + {children} + + {endIcon && ( + + {endIcon} + + )} + + ); + } +); diff --git a/dashboard/src/components/label/styles.ts b/dashboard/src/components/label/styles.ts new file mode 100644 index 00000000..bd73f590 --- /dev/null +++ b/dashboard/src/components/label/styles.ts @@ -0,0 +1,113 @@ +'use client'; + +import type { Theme } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import { styled } from '@mui/material/styles'; + +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import type { LabelColor, LabelVariant } from './types'; + +// ---------------------------------------------------------------------- + +export const StyledLabel = styled(Box)(({ + theme, + ownerState: { color, variant }, +}: { + theme: Theme; + ownerState: { + color: LabelColor; + variant: LabelVariant; + }; +}) => { + const defaultColor = { + ...(color === 'default' && { + /** + * @variant filled + */ + ...(variant === 'filled' && { + color: theme.vars.palette.common.white, + backgroundColor: theme.vars.palette.text.primary, + [stylesMode.dark]: { color: theme.vars.palette.grey[800] }, + }), + /** + * @variant outlined + */ + ...(variant === 'outlined' && { + backgroundColor: 'transparent', + color: theme.vars.palette.text.primary, + border: `2px solid ${theme.vars.palette.text.primary}`, + }), + /** + * @variant soft + */ + ...(variant === 'soft' && { + color: theme.vars.palette.text.secondary, + backgroundColor: varAlpha(theme.vars.palette.grey['500Channel'], 0.16), + }), + /** + * @variant inverted + */ + ...(variant === 'inverted' && { + color: theme.vars.palette.grey[800], + backgroundColor: theme.vars.palette.grey[300], + }), + }), + }; + + const styleColors = { + ...(color !== 'default' && { + /** + * @variant filled + */ + ...(variant === 'filled' && { + color: theme.vars.palette[color].contrastText, + backgroundColor: theme.vars.palette[color].main, + }), + /** + * @variant outlined + */ + ...(variant === 'outlined' && { + backgroundColor: 'transparent', + color: theme.vars.palette[color].main, + border: `2px solid ${theme.vars.palette[color].main}`, + }), + /** + * @variant soft + */ + ...(variant === 'soft' && { + color: theme.vars.palette[color].dark, + backgroundColor: varAlpha(theme.vars.palette[color].mainChannel, 0.16), + [stylesMode.dark]: { color: theme.vars.palette[color].light }, + }), + /** + * @variant inverted + */ + ...(variant === 'inverted' && { + color: theme.vars.palette[color].darker, + backgroundColor: theme.vars.palette[color].lighter, + }), + }), + }; + + return { + height: 24, + minWidth: 24, + lineHeight: 0, + cursor: 'default', + alignItems: 'center', + whiteSpace: 'nowrap', + display: 'inline-flex', + justifyContent: 'center', + padding: theme.spacing(0, 0.75), + fontSize: theme.typography.pxToRem(12), + fontWeight: theme.typography.fontWeightBold, + borderRadius: theme.shape.borderRadius * 0.75, + transition: theme.transitions.create('all', { + duration: theme.transitions.duration.shorter, + }), + ...defaultColor, + ...styleColors, + }; +}); diff --git a/dashboard/src/components/label/types.ts b/dashboard/src/components/label/types.ts new file mode 100644 index 00000000..bb022c06 --- /dev/null +++ b/dashboard/src/components/label/types.ts @@ -0,0 +1,14 @@ +import type { BoxProps } from '@mui/material/Box'; + +// ---------------------------------------------------------------------- + +export type LabelColor = 'default' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'; + +export type LabelVariant = 'filled' | 'outlined' | 'soft' | 'inverted'; + +export interface LabelProps extends BoxProps { + color?: LabelColor; + variant?: LabelVariant; + endIcon?: React.ReactElement | null; + startIcon?: React.ReactElement | null; +} diff --git a/dashboard/src/components/ln-address/index.ts b/dashboard/src/components/ln-address/index.ts new file mode 100644 index 00000000..1953aa85 --- /dev/null +++ b/dashboard/src/components/ln-address/index.ts @@ -0,0 +1,2 @@ +export * from './register-ln-address-form'; +export * from './register-ln-address-dialog'; diff --git a/dashboard/src/components/ln-address/register-ln-address-dialog.tsx b/dashboard/src/components/ln-address/register-ln-address-dialog.tsx new file mode 100644 index 00000000..1fe72901 --- /dev/null +++ b/dashboard/src/components/ln-address/register-ln-address-dialog.tsx @@ -0,0 +1,38 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; + +import { useTranslate } from 'src/locales'; + +import { RegisterLnAddressForm } from './register-ln-address-form'; + +// ---------------------------------------------------------------------- + +type Props = DialogProps & { + onClose: VoidFunction; + title?: string; + onSuccess: VoidFunction; + isAdmin?: boolean; +}; + +export function RegisterLnAddressDialog({ title, isAdmin, open, onClose, onSuccess }: Props) { + const { t } = useTranslate(); + + return ( + + {title || 'Register Lightning Address'} + + + + + + + + + + ); +} diff --git a/dashboard/src/components/ln-address/register-ln-address-form.tsx b/dashboard/src/components/ln-address/register-ln-address-form.tsx new file mode 100644 index 00000000..31ac114d --- /dev/null +++ b/dashboard/src/components/ln-address/register-ln-address-form.tsx @@ -0,0 +1,101 @@ +import type { RegisterLnAddressRequest } from 'src/lib/swissknife'; + +import { useForm } from 'react-hook-form'; +import { ajvResolver } from '@hookform/resolvers/ajv'; + +import { Stack } from '@mui/material'; +import { LoadingButton } from '@mui/lab'; +import InputAdornment from '@mui/material/InputAdornment'; + +import { ajvOptions } from 'src/utils/ajv'; + +import { CONFIG } from 'src/config-global'; +import { useTranslate } from 'src/locales'; +import { registerAddress, registerWalletAddress, RegisterLnAddressRequestSchema } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; +import { Form, RHFTextField, RHFWalletSelect } from 'src/components/hook-form'; + +// ---------------------------------------------------------------------- + +type Props = { + onSuccess: VoidFunction; + isAdmin?: boolean; +}; + +// @ts-ignore +const resolver = ajvResolver(RegisterLnAddressRequestSchema, ajvOptions); + +export function RegisterLnAddressForm({ onSuccess, isAdmin }: Props) { + const { t } = useTranslate(); + + const methods = useForm({ + resolver, + defaultValues: { + username: '', + wallet: null, + }, + }); + + const { + reset, + handleSubmit, + formState: { isSubmitting }, + watch, + } = methods; + + const username = watch('username'); + const wallet = watch('wallet'); + + const onSubmit = async (body: any) => { + const submissionData: RegisterLnAddressRequest = { + ...body, + wallet_id: body.wallet?.id, + }; + + try { + if (isAdmin) { + await registerAddress({ body: submissionData }); + } else { + await registerWalletAddress({ body: submissionData }); + } + toast.success(t('register_ln_address.success_lightning_address_registration')); + reset(); + onSuccess(); + } catch (error) { + toast.error(error.reason); + } + }; + + return ( +
    + + { + const value = e.target.value.toLowerCase(); + methods.setValue('username', value, { shouldValidate: true }); + }} + InputProps={{ + endAdornment: @{CONFIG.site.domain}, + }} + /> + + {isAdmin && } + + + {t('register')} + + +
    + ); +} diff --git a/dashboard/src/components/loading-screen/index.ts b/dashboard/src/components/loading-screen/index.ts new file mode 100644 index 00000000..0744cffe --- /dev/null +++ b/dashboard/src/components/loading-screen/index.ts @@ -0,0 +1,3 @@ +export * from './splash-screen'; + +export * from './loading-screen'; diff --git a/dashboard/src/components/loading-screen/loading-screen.tsx b/dashboard/src/components/loading-screen/loading-screen.tsx new file mode 100644 index 00000000..d3233aef --- /dev/null +++ b/dashboard/src/components/loading-screen/loading-screen.tsx @@ -0,0 +1,39 @@ +'use client'; + +import type { BoxProps } from '@mui/material/Box'; + +import Box from '@mui/material/Box'; +import Portal from '@mui/material/Portal'; +import LinearProgress from '@mui/material/LinearProgress'; + +// ---------------------------------------------------------------------- + +type Props = BoxProps & { + portal?: boolean; +}; + +export function LoadingScreen({ portal, sx, ...other }: Props) { + const content = ( + + + + ); + + if (portal) { + return {content}; + } + + return content; +} diff --git a/dashboard/src/components/loading-screen/splash-screen.tsx b/dashboard/src/components/loading-screen/splash-screen.tsx new file mode 100644 index 00000000..32723cc6 --- /dev/null +++ b/dashboard/src/components/loading-screen/splash-screen.tsx @@ -0,0 +1,45 @@ +'use client'; + +import type { BoxProps } from '@mui/material/Box'; + +import Box from '@mui/material/Box'; +import Portal from '@mui/material/Portal'; + +import { AnimateLogo1 } from 'src/components/animate'; + +// ---------------------------------------------------------------------- + +type Props = BoxProps & { + portal?: boolean; +}; + +export function SplashScreen({ portal = true, sx, ...other }: Props) { + const content = ( + + + + + + ); + + if (portal) { + return {content}; + } + + return content; +} diff --git a/dashboard/src/components/logo/classes.ts b/dashboard/src/components/logo/classes.ts new file mode 100644 index 00000000..7b7fdc2f --- /dev/null +++ b/dashboard/src/components/logo/classes.ts @@ -0,0 +1,3 @@ +export const logoClasses = { + root: 'mnl__logo__root', +}; diff --git a/dashboard/src/components/logo/index.ts b/dashboard/src/components/logo/index.ts new file mode 100644 index 00000000..b86e7ad3 --- /dev/null +++ b/dashboard/src/components/logo/index.ts @@ -0,0 +1,3 @@ +export * from './logo'; + +export * from './classes'; diff --git a/dashboard/src/components/logo/logo.tsx b/dashboard/src/components/logo/logo.tsx new file mode 100644 index 00000000..469d3c3d --- /dev/null +++ b/dashboard/src/components/logo/logo.tsx @@ -0,0 +1,79 @@ +'use client'; + +import type { BoxProps } from '@mui/material/Box'; + +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import NoSsr from '@mui/material/NoSsr'; +import { useTheme } from '@mui/material/styles'; + +import { RouterLink } from 'src/routes/components'; + +import { CONFIG } from 'src/config-global'; + +import { logoClasses } from './classes'; + +// ---------------------------------------------------------------------- + +export type LogoProps = BoxProps & { + href?: string; + disableLink?: boolean; + type?: 'single' | 'full' | 'font'; +}; + +export const Logo = forwardRef( + ({ width = 40, height = 40, disableLink = false, className, href = '/', type = 'single', sx, ...other }, ref) => { + const theme = useTheme(); + + let filename = 'logo_single'; + if (type === 'full') { + filename = 'logo'; + } else if (type === 'font') { + filename = 'logo_font'; + } + + const logo = ( + + ); + + return ( + + } + > + + {logo} + + + ); + } +); diff --git a/dashboard/src/components/markdown/classes.ts b/dashboard/src/components/markdown/classes.ts new file mode 100644 index 00000000..0739ea7d --- /dev/null +++ b/dashboard/src/components/markdown/classes.ts @@ -0,0 +1,12 @@ +// ---------------------------------------------------------------------- + +export const markdownClasses = { + root: 'nml__markdown__root', + content: { + pre: 'nml__editor__content__pre', + codeInline: 'nml__editor__content__codeInline', + codeBlock: 'nml__editor__content__codeBlock', + image: 'nml__editor__content__image', + link: 'nml__editor__content__link', + }, +}; diff --git a/dashboard/src/components/markdown/code-highlight-block.css b/dashboard/src/components/markdown/code-highlight-block.css new file mode 100644 index 00000000..8d8cf379 --- /dev/null +++ b/dashboard/src/components/markdown/code-highlight-block.css @@ -0,0 +1,82 @@ +pre { + code { + .hljs-comment { + color: #999; + } + .hljs-tag { + color: #b4b7b4; + } + .hljs-operator, + .hljs-punctuation, + .hljs-subst { + color: #ccc; + } + .hljs-operator { + opacity: 0.7; + } + .hljs-bullet, + .hljs-deletion, + .hljs-name, + .hljs-selector-tag, + .hljs-template-variable, + .hljs-variable { + color: #f2777a; + } + .hljs-attr, + .hljs-link, + .hljs-literal, + .hljs-number, + .hljs-symbol, + .hljs-variable.constant_ { + color: #f99157; + } + .hljs-class .hljs-title, + .hljs-title, + .hljs-title.class_ { + color: #fc6; + } + .hljs-strong { + font-weight: 700; + color: #fc6; + } + .hljs-addition, + .hljs-code, + .hljs-string, + .hljs-title.class_.inherited__ { + color: #9c9; + } + .hljs-built_in, + .hljs-doctag, + .hljs-keyword.hljs-atrule, + .hljs-quote, + .hljs-regexp { + color: #6cc; + } + .hljs-attribute, + .hljs-function .hljs-title, + .hljs-section, + .hljs-title.function_, + .ruby .hljs-property { + color: #69c; + } + .diff .hljs-meta, + .hljs-keyword, + .hljs-template-tag, + .hljs-type { + color: #c9c; + } + .hljs-emphasis { + color: #c9c; + font-style: italic; + } + .hljs-meta, + .hljs-meta .hljs-keyword, + .hljs-meta .hljs-string { + color: #a3685a; + } + .hljs-meta .hljs-keyword, + .hljs-meta-keyword { + font-weight: 700; + } + } +} diff --git a/dashboard/src/components/markdown/html-tags.ts b/dashboard/src/components/markdown/html-tags.ts new file mode 100644 index 00000000..44c86bcb --- /dev/null +++ b/dashboard/src/components/markdown/html-tags.ts @@ -0,0 +1,172 @@ +/** All html tags + * https://github.com/harrysolovay/all-html-tags + */ + +export const htmlTags = [ + 'a', + 'abbr', + 'acronym', + 'address', + 'applet', + 'area', + 'article', + 'aside', + 'audio', + 'b', + 'base', + 'basefont', + 'bdi', + 'bdo', + 'bgsound', + 'big', + 'blink', + 'blockquote', + 'body', + 'br', + 'button', + 'canvas', + 'caption', + 'center', + 'circle', + 'cite', + 'clipPath', + 'code', + 'col', + 'colgroup', + 'command', + 'content', + 'data', + 'datalist', + 'dd', + 'defs', + 'del', + 'details', + 'dfn', + 'dialog', + 'dir', + 'div', + 'dl', + 'dt', + 'element', + 'ellipse', + 'em', + 'embed', + 'fieldset', + 'figcaption', + 'figure', + 'font', + 'footer', + 'foreignObject', + 'form', + 'frame', + 'frameset', + 'g', + 'h1', + 'h2', + 'h3', + 'h4', + 'h5', + 'h6', + 'head', + 'header', + 'hgroup', + 'hr', + 'html', + 'i', + 'iframe', + 'image', + 'img', + 'input', + 'ins', + 'isindex', + 'kbd', + 'keygen', + 'label', + 'legend', + 'li', + 'line', + 'linearGradient', + 'link', + 'listing', + 'main', + 'map', + 'mark', + 'marquee', + 'mask', + 'math', + 'menu', + 'menuitem', + 'meta', + 'meter', + 'multicol', + 'nav', + 'nextid', + 'nobr', + 'noembed', + 'noframes', + 'noscript', + 'object', + 'ol', + 'optgroup', + 'option', + 'output', + 'p', + 'param', + 'path', + 'pattern', + 'picture', + 'plaintext', + 'polygon', + 'polyline', + 'pre', + 'progress', + 'q', + 'radialGradient', + 'rb', + 'rbc', + 'rect', + 'rp', + 'rt', + 'rtc', + 'ruby', + 's', + 'samp', + 'script', + 'section', + 'select', + 'shadow', + 'slot', + 'small', + 'source', + 'spacer', + 'span', + 'stop', + 'strike', + 'strong', + 'style', + 'sub', + 'summary', + 'sup', + 'svg', + 'table', + 'tbody', + 'td', + 'template', + 'text', + 'textarea', + 'tfoot', + 'th', + 'thead', + 'time', + 'title', + 'tr', + 'track', + 'tspan', + 'tt', + 'u', + 'ul', + 'var', + 'video', + 'wbr', + 'xmp', +]; diff --git a/dashboard/src/components/markdown/html-to-markdown.ts b/dashboard/src/components/markdown/html-to-markdown.ts new file mode 100644 index 00000000..17fe0a87 --- /dev/null +++ b/dashboard/src/components/markdown/html-to-markdown.ts @@ -0,0 +1,62 @@ +import type { Node, Filter } from 'turndown'; + +import TurndownService from 'turndown'; + +import { htmlTags } from './html-tags'; + +// ---------------------------------------------------------------------- + +type INode = HTMLElement & { + isBlock: boolean; +}; + +const excludeTags = ['pre', 'code']; + +const turndownService = new TurndownService({ codeBlockStyle: 'fenced', fence: '```' }); + +const filterTags = htmlTags.filter((item) => !excludeTags.includes(item)) as Filter; + +/** + * Custom rule + * https://github.com/mixmark-io/turndown/issues/241#issuecomment-400591362 + */ +turndownService.addRule('keep', { + filter: filterTags, + replacement(content: string, node: Node) { + const { isBlock, outerHTML } = node as INode; + + return node && isBlock ? `\n\n${outerHTML}\n\n` : outerHTML; + }, +}); + +// ---------------------------------------------------------------------- + +export function htmlToMarkdown(html: string) { + return turndownService.turndown(html); +} +// ---------------------------------------------------------------------- + +export function isMarkdownContent(content: string) { + // Checking if the content contains Markdown-specific patterns + const markdownPatterns = [ + /* Heading */ + /^#+\s/, + /* List item */ + /^(\*|-|\d+\.)\s/, + /* Code block */ + /^```/, + /* Table */ + /^\|/, + /* Unordered list */ + /^(\s*)[*+-] [^\r\n]+/, + /* Ordered list */ + /^(\s*)\d+\. [^\r\n]+/, + /* Image */ + /!\[.*?\]\(.*?\)/, + /* Link */ + /\[.*?\]\(.*?\)/, + ]; + + // Checking if any of the patterns match + return markdownPatterns.some((pattern) => pattern.test(content)); +} diff --git a/dashboard/src/components/markdown/index.ts b/dashboard/src/components/markdown/index.ts new file mode 100644 index 00000000..12b07fd5 --- /dev/null +++ b/dashboard/src/components/markdown/index.ts @@ -0,0 +1,3 @@ +export * from './markdown'; + +export type * from './types'; diff --git a/dashboard/src/components/markdown/markdown.tsx b/dashboard/src/components/markdown/markdown.tsx new file mode 100644 index 00000000..be0c301f --- /dev/null +++ b/dashboard/src/components/markdown/markdown.tsx @@ -0,0 +1,87 @@ +import './code-highlight-block.css'; + +import type { Options } from 'react-markdown'; + +import { useMemo } from 'react'; +import remarkGfm from 'remark-gfm'; +import rehypeRaw from 'rehype-raw'; +import rehypeHighlight from 'rehype-highlight'; + +import Link from '@mui/material/Link'; + +import { isExternalLink } from 'src/routes/utils'; +import { RouterLink } from 'src/routes/components'; + +import { Image } from '../image'; +import { StyledRoot } from './styles'; +import { markdownClasses } from './classes'; +import { htmlToMarkdown, isMarkdownContent } from './html-to-markdown'; + +import type { MarkdownProps } from './types'; + +// ---------------------------------------------------------------------- + +export function Markdown({ children, sx, ...other }: MarkdownProps) { + const content = useMemo(() => { + if (isMarkdownContent(`${children}`)) { + return children; + } + return htmlToMarkdown(`${children}`.trim()); + }, [children]); + + return ( + value} + */ + className={markdownClasses.root} + sx={sx} + {...other} + /> + ); +} + +// ---------------------------------------------------------------------- + +type ComponentTag = { + [key: string]: any; +}; + +const rehypePlugins = [rehypeRaw, rehypeHighlight, [remarkGfm, { singleTilde: false }]]; + +const components = { + img: ({ node, ...other }: ComponentTag) => ( + + ), + a: ({ href, children, node, ...other }: ComponentTag) => { + const linkProps = isExternalLink(href) ? { target: '_blank', rel: 'noopener' } : { component: RouterLink }; + + return ( + + {children} + + ); + }, + pre: ({ children }: ComponentTag) => ( +
    +
    {children}
    +
    + ), + code({ className, children, node, ...other }: ComponentTag) { + const language = /language-(\w+)/.exec(className || ''); + + return language ? ( + + {children} + + ) : ( + + {children} + + ); + }, +}; diff --git a/dashboard/src/components/markdown/styles.ts b/dashboard/src/components/markdown/styles.ts new file mode 100644 index 00000000..7775f65d --- /dev/null +++ b/dashboard/src/components/markdown/styles.ts @@ -0,0 +1,165 @@ +import ReactMarkdown from 'react-markdown'; + +import { styled } from '@mui/material/styles'; + +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { markdownClasses } from './classes'; + +// ---------------------------------------------------------------------- + +const MARGIN = '0.75em'; + +export const StyledRoot = styled(ReactMarkdown)(({ theme }) => ({ + '> * + *': { + marginTop: 0, + marginBottom: MARGIN, + }, + /** + * Heading & Paragraph + */ + h1: { ...theme.typography.h1, marginTop: 40, marginBottom: 8 }, + h2: { ...theme.typography.h2, marginTop: 40, marginBottom: 8 }, + h3: { ...theme.typography.h3, marginTop: 24, marginBottom: 8 }, + h4: { ...theme.typography.h4, marginTop: 24, marginBottom: 8 }, + h5: { ...theme.typography.h5, marginTop: 24, marginBottom: 8 }, + h6: { ...theme.typography.h6, marginTop: 24, marginBottom: 8 }, + p: { ...theme.typography.body1, marginBottom: '1.25rem' }, + /** + * Hr Divider + */ + hr: { + flexShrink: 0, + borderWidth: 0, + margin: '2em 0', + msFlexNegative: 0, + WebkitFlexShrink: 0, + borderStyle: 'solid', + borderBottomWidth: 'thin', + borderColor: theme.vars.palette.divider, + }, + /** + * Image + */ + [`& .${markdownClasses.content.image}`]: { + width: '100%', + height: 'auto', + maxWidth: '100%', + margin: 'auto auto 1.25em', + }, + /** + * List + */ + '& ul': { + listStyleType: 'disc', + }, + '& ul, & ol': { + paddingLeft: 16, + '& > li': { + lineHeight: 2, + '& > p': { margin: 0, display: 'inline-block' }, + }, + }, + /** + * Blockquote + */ + '& blockquote': { + lineHeight: 1.5, + fontSize: '1.5em', + margin: '24px auto', + position: 'relative', + fontFamily: 'Georgia, serif', + padding: theme.spacing(3, 3, 3, 8), + color: theme.vars.palette.text.secondary, + borderLeft: `solid 8px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.08)}`, + [theme.breakpoints.up('md')]: { + width: '100%', + maxWidth: 640, + }, + '& p': { + margin: 0, + fontSize: 'inherit', + fontFamily: 'inherit', + }, + '&::before': { + left: 16, + top: -8, + display: 'block', + fontSize: '3em', + content: '"\\201C"', + position: 'absolute', + color: theme.vars.palette.text.disabled, + }, + }, + /** + * Code inline + */ + [`& .${markdownClasses.content.codeInline}`]: { + padding: theme.spacing(0.25, 0.5), + color: theme.vars.palette.text.secondary, + fontSize: theme.typography.body2.fontSize, + borderRadius: theme.shape.borderRadius / 2, + backgroundColor: varAlpha(theme.vars.palette.grey['500Channel'], 0.2), + }, + /** + * Code Block + */ + [`& .${markdownClasses.content.codeBlock}`]: { + position: 'relative', + '& pre': { + overflowX: 'auto', + padding: theme.spacing(3), + color: theme.vars.palette.common.white, + borderRadius: theme.shape.borderRadius, + backgroundColor: theme.vars.palette.grey[900], + fontFamily: "'JetBrainsMono', monospace", + '& code': { fontSize: theme.typography.body2.fontSize }, + }, + }, + /** + * Table + */ + table: { + width: '100%', + borderCollapse: 'collapse', + border: `1px solid ${theme.vars.palette.divider}`, + 'th, td': { padding: theme.spacing(1), border: `1px solid ${theme.vars.palette.divider}` }, + 'tbody tr:nth-of-type(odd)': { backgroundColor: theme.vars.palette.background.neutral }, + }, + /** + * Checkbox + */ + input: { + '&[type=checkbox]': { + position: 'relative', + cursor: 'pointer', + '&:before': { + content: '""', + top: -2, + left: -2, + width: 17, + height: 17, + borderRadius: 3, + position: 'absolute', + backgroundColor: theme.vars.palette.grey[300], + [stylesMode.dark]: { backgroundColor: theme.vars.palette.grey[700] }, + }, + '&:checked': { + '&:before': { backgroundColor: theme.vars.palette.primary.main }, + '&:after': { + content: '""', + top: 1, + left: 5, + width: 4, + height: 9, + position: 'absolute', + transform: 'rotate(45deg)', + msTransform: 'rotate(45deg)', + WebkitTransform: 'rotate(45deg)', + border: `solid ${theme.vars.palette.common.white}`, + borderWidth: '0 2px 2px 0', + }, + }, + }, + }, +})); diff --git a/dashboard/src/components/markdown/types.ts b/dashboard/src/components/markdown/types.ts new file mode 100644 index 00000000..1ab8d839 --- /dev/null +++ b/dashboard/src/components/markdown/types.ts @@ -0,0 +1,9 @@ +import type { Options } from 'react-markdown'; +import type { Theme, SxProps } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export interface MarkdownProps extends Options { + asHtml?: boolean; + sx?: SxProps; +} diff --git a/dashboard/src/components/nav-basic/classes.ts b/dashboard/src/components/nav-basic/classes.ts new file mode 100644 index 00000000..5287e623 --- /dev/null +++ b/dashboard/src/components/nav-basic/classes.ts @@ -0,0 +1,10 @@ +// ---------------------------------------------------------------------- + +export const navBasicClasses = { + desktop: { + root: 'nav__basic__desktop', + }, + mobile: { + root: 'nav__basic__mobile', + }, +}; diff --git a/dashboard/src/components/nav-basic/css-vars.ts b/dashboard/src/components/nav-basic/css-vars.ts new file mode 100644 index 00000000..700941b4 --- /dev/null +++ b/dashboard/src/components/nav-basic/css-vars.ts @@ -0,0 +1,81 @@ +import type { Theme } from '@mui/material/styles'; + +import { varAlpha } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +function desktopVars(theme: Theme) { + const { + shape, + spacing, + vars: { palette }, + } = theme; + + return { + '--nav-item-gap': spacing(3), + '--nav-item-radius': '0', + '--nav-item-caption-color': palette.text.disabled, + // root + '--nav-item-root-padding': '0', + '--nav-item-root-active-color': palette.primary.main, + // sub + '--nav-item-sub-radius': `${shape.borderRadius * 0.75}px`, + '--nav-item-sub-padding': spacing(0.75, 1, 0.75, 1), + '--nav-item-sub-color': palette.text.secondary, + '--nav-item-sub-hover-color': palette.text.primary, + '--nav-item-sub-hover-bg': palette.action.hover, + '--nav-item-sub-active-color': palette.text.primary, + '--nav-item-sub-active-bg': palette.action.selected, + '--nav-item-sub-open-color': palette.text.primary, + '--nav-item-sub-open-bg': palette.action.hover, + // icon + '--nav-icon-size': '22px', + '--nav-icon-margin': spacing(0, 1, 0, 0), + }; +} + +// ---------------------------------------------------------------------- + +function mobileVars(theme: Theme) { + const { + shape, + spacing, + vars: { palette }, + } = theme; + + return { + '--nav-item-gap': spacing(0.5), + '--nav-item-radius': `${shape.borderRadius}px`, + '--nav-item-pt': spacing(0.5), + '--nav-item-pl': spacing(1.5), + '--nav-item-pr': spacing(1), + '--nav-item-pb': spacing(0.5), + '--nav-item-color': palette.text.secondary, + '--nav-item-hover-color': palette.action.hover, + '--nav-item-caption-color': palette.text.disabled, + // root + '--nav-item-root-height': '44px', + '--nav-item-root-active-color': palette.primary.main, + '--nav-item-root-active-color-on-dark': palette.primary.light, + '--nav-item-root-active-bg': varAlpha(palette.primary.mainChannel, 0.08), + '--nav-item-root-active-hover-bg': varAlpha(palette.primary.mainChannel, 0.16), + '--nav-item-root-open-color': palette.text.primary, + '--nav-item-root-open-bg': palette.action.hover, + // sub + '--nav-item-sub-height': '36px', + '--nav-item-sub-active-color': palette.text.primary, + '--nav-item-sub-active-bg': palette.action.hover, + '--nav-item-sub-open-color': palette.text.primary, + '--nav-item-sub-open-bg': palette.action.hover, + // icon + '--nav-icon-size': '24px', + '--nav-icon-margin': spacing(0, 2, 0, 0), + }; +} + +// ---------------------------------------------------------------------- + +export const navBasicCssVars = { + desktop: desktopVars, + mobile: mobileVars, +}; diff --git a/dashboard/src/components/nav-basic/desktop/index.ts b/dashboard/src/components/nav-basic/desktop/index.ts new file mode 100644 index 00000000..ad390e35 --- /dev/null +++ b/dashboard/src/components/nav-basic/desktop/index.ts @@ -0,0 +1,3 @@ +export * from './nav-basic-desktop'; + +export { NavItem as NavBasicDesktopItem } from './nav-item'; diff --git a/dashboard/src/components/nav-basic/desktop/nav-basic-desktop.tsx b/dashboard/src/components/nav-basic/desktop/nav-basic-desktop.tsx new file mode 100644 index 00000000..6bacde48 --- /dev/null +++ b/dashboard/src/components/nav-basic/desktop/nav-basic-desktop.tsx @@ -0,0 +1,38 @@ +import Stack from '@mui/material/Stack'; +import { useTheme } from '@mui/material/styles'; + +import { NavList } from './nav-list'; +import { NavUl } from '../../nav-section'; +import { navBasicClasses } from '../classes'; +import { navBasicCssVars } from '../css-vars'; + +import type { NavBasicProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavBasicDesktop({ sx, data, render, slotProps, enabledRootRedirect, cssVars: overridesVars, ...other }: NavBasicProps) { + const theme = useTheme(); + + const cssVars = { + ...navBasicCssVars.desktop(theme), + ...overridesVars, + }; + + return ( + + + {data.map((list) => ( + + ))} + + + ); +} diff --git a/dashboard/src/components/nav-basic/desktop/nav-item.tsx b/dashboard/src/components/nav-basic/desktop/nav-item.tsx new file mode 100644 index 00000000..689d34b6 --- /dev/null +++ b/dashboard/src/components/nav-basic/desktop/nav-item.tsx @@ -0,0 +1,207 @@ +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import { styled } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { Iconify } from '../../iconify'; +import { useNavItem, stateClasses, sharedStyles, navSectionClasses } from '../../nav-section'; + +import type { NavItemProps, NavItemStateProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const NavItem = forwardRef( + ( + { + path, + icon, + info, + title, + caption, + // + open, + depth, + render, + active, + disabled, + hasChild, + slotProps, + externalLink, + enabledRootRedirect, + ...other + }, + ref + ) => { + const navItem = useNavItem({ + path, + icon, + info, + depth, + render, + hasChild, + externalLink, + enabledRootRedirect, + }); + + return ( + + {icon && ( + + {navItem.renderIcon} + + )} + + {title && ( + + + {title} + + {caption && navItem.subItem && ( + + {caption} + + )} + + )} + + {info && ( + + {navItem.renderInfo} + + )} + + {hasChild && ( + + )} + + ); + } +); + +// ---------------------------------------------------------------------- + +const StyledNavItem = styled(ButtonBase, { + shouldForwardProp: (prop) => prop !== 'active' && prop !== 'open' && prop !== 'disabled' && prop !== 'depth', +})(({ active, open, disabled, depth, theme }) => { + const rootItem = depth === 1; + + const subItem = depth !== 1; + + const baseStyles = { + item: {}, + icon: { + ...sharedStyles.icon, + width: 'var(--nav-icon-size)', + height: 'var(--nav-icon-size)', + margin: 'var(--nav-icon-margin)', + }, + texts: { + display: 'flex', + flex: '1 1 auto', + flexDirection: 'column', + }, + title: { + ...theme.typography.body2, + fontWeight: active ? theme.typography.fontWeightSemiBold : theme.typography.fontWeightMedium, + }, + caption: { + ...theme.typography.caption, + color: 'var(--nav-item-caption-color)', + }, + arrow: { + ...sharedStyles.arrow, + }, + info: { + ...sharedStyles.info, + }, + } as const; + + return { + /** + * Root item + */ + ...(rootItem && { + ...baseStyles.item, + padding: 'var(--nav-item-root-padding)', + borderRadius: 'var(--nav-item-radius)', + transition: theme.transitions.create(['all'], { + duration: theme.transitions.duration.shorter, + }), + '&:hover': { opacity: 0.64 }, + [`& .${navSectionClasses.item.icon}`]: { ...baseStyles.icon }, + [`& .${navSectionClasses.item.texts}`]: { ...baseStyles.texts }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title }, + [`& .${navSectionClasses.item.arrow}`]: { ...baseStyles.arrow }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-root-active-color)', + }), + ...(open && { + opacity: 0.64, + }), + }), + + /** + * Sub item + */ + ...(subItem && { + ...baseStyles.item, + fontSize: theme.typography.pxToRem(13), + borderRadius: 'var(--nav-item-sub-radius)', + padding: 'var(--nav-item-sub-padding)', + '&:hover': { + color: 'var(--nav-item-sub-hover-color)', + backgroundColor: 'var(--nav-item-sub-hover-bg)', + }, + color: 'var(--nav-item-sub-color)', + [`& .${navSectionClasses.item.icon}`]: { ...baseStyles.icon }, + [`& .${navSectionClasses.item.texts}`]: { ...baseStyles.texts }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { + ...baseStyles.arrow, + marginRight: theme.spacing(-0.5), + }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-sub-active-color)', + backgroundColor: 'var(--nav-item-sub-active-bg)', + }), + ...(open && { + color: 'var(--nav-item-sub-open-color)', + backgroundColor: 'var(--nav-item-sub-open-bg)', + }), + }), + + /** + * Disabled + */ + ...(disabled && sharedStyles.disabled), + }; +}); diff --git a/dashboard/src/components/nav-basic/desktop/nav-list.tsx b/dashboard/src/components/nav-basic/desktop/nav-list.tsx new file mode 100644 index 00000000..6fa4f137 --- /dev/null +++ b/dashboard/src/components/nav-basic/desktop/nav-list.tsx @@ -0,0 +1,138 @@ +import { useRef, useState, useEffect, useCallback } from 'react'; + +import Paper from '@mui/material/Paper'; +import Popover from '@mui/material/Popover'; +import { useTheme } from '@mui/material/styles'; + +import { usePathname } from 'src/routes/hooks'; +import { isExternalLink } from 'src/routes/utils'; +import { useActiveLink } from 'src/routes/hooks/use-active-link'; + +import { paper } from 'src/theme/styles'; + +import { NavItem } from './nav-item'; +import { NavLi, NavUl, navSectionClasses } from '../../nav-section'; + +import type { NavListProps, NavSubListProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavList({ data, depth, render, cssVars, slotProps, enabledRootRedirect }: NavListProps) { + const theme = useTheme(); + + const pathname = usePathname(); + + const navItemRef = useRef(null); + + const active = useActiveLink(data.path, !!data.children); + + const [openMenu, setOpenMenu] = useState(false); + + useEffect(() => { + if (openMenu) { + handleCloseMenu(); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [pathname]); + + const handleOpenMenu = useCallback(() => { + if (data.children) { + setOpenMenu(true); + } + }, [data.children]); + + const handleCloseMenu = useCallback(() => { + setOpenMenu(false); + }, []); + + const renderNavItem = ( + + ); + + if (data.children) { + return ( + + {renderNavItem} + + + + + + + + ); + } + + return {renderNavItem}; +} + +// ---------------------------------------------------------------------- + +function NavSubList({ data, depth, render, cssVars, slotProps, enabledRootRedirect }: NavSubListProps) { + return ( + + {data.map((list) => ( + + ))} + + ); +} diff --git a/dashboard/src/components/nav-basic/index.ts b/dashboard/src/components/nav-basic/index.ts new file mode 100644 index 00000000..5df7397c --- /dev/null +++ b/dashboard/src/components/nav-basic/index.ts @@ -0,0 +1,9 @@ +export * from './mobile'; + +export * from './classes'; + +export * from './desktop'; + +export * from './css-vars'; + +export type * from './types'; diff --git a/dashboard/src/components/nav-basic/mobile/index.ts b/dashboard/src/components/nav-basic/mobile/index.ts new file mode 100644 index 00000000..c25aff0e --- /dev/null +++ b/dashboard/src/components/nav-basic/mobile/index.ts @@ -0,0 +1,3 @@ +export * from './nav-basic-mobile'; + +export { NavItem as NavBasicMobileItem } from './nav-item'; diff --git a/dashboard/src/components/nav-basic/mobile/nav-basic-mobile.tsx b/dashboard/src/components/nav-basic/mobile/nav-basic-mobile.tsx new file mode 100644 index 00000000..bd84016c --- /dev/null +++ b/dashboard/src/components/nav-basic/mobile/nav-basic-mobile.tsx @@ -0,0 +1,30 @@ +import Stack from '@mui/material/Stack'; +import { useTheme } from '@mui/material/styles'; + +import { NavList } from './nav-list'; +import { NavUl } from '../../nav-section'; +import { navBasicClasses } from '../classes'; +import { navBasicCssVars } from '../css-vars'; + +import type { NavBasicProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavBasicMobile({ sx, data, render, slotProps, enabledRootRedirect, cssVars: overridesVars, ...other }: NavBasicProps) { + const theme = useTheme(); + + const cssVars = { + ...navBasicCssVars.mobile(theme), + ...overridesVars, + }; + + return ( + + + {data.map((list) => ( + + ))} + + + ); +} diff --git a/dashboard/src/components/nav-basic/mobile/nav-item.tsx b/dashboard/src/components/nav-basic/mobile/nav-item.tsx new file mode 100644 index 00000000..ad7d4320 --- /dev/null +++ b/dashboard/src/components/nav-basic/mobile/nav-item.tsx @@ -0,0 +1,235 @@ +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import Tooltip from '@mui/material/Tooltip'; +import { styled } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { stylesMode } from 'src/theme/styles'; + +import { Iconify } from '../../iconify'; +import { useNavItem, stateClasses, sharedStyles, navSectionClasses } from '../../nav-section'; + +import type { NavItemProps, NavItemStateProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const NavItem = forwardRef( + ( + { + path, + icon, + info, + title, + caption, + // + open, + depth, + render, + active, + disabled, + hasChild, + slotProps, + externalLink, + enabledRootRedirect, + ...other + }, + ref + ) => { + const navItem = useNavItem({ + path, + icon, + info, + depth, + render, + hasChild, + externalLink, + enabledRootRedirect, + }); + + return ( + + {icon && ( + + {navItem.renderIcon} + + )} + + {title && ( + + + {title} + + + {caption && ( + + + {caption} + + + )} + + )} + + {info && ( + + {navItem.renderInfo} + + )} + + {hasChild && ( + + )} + + ); + } +); + +// ---------------------------------------------------------------------- + +const StyledNavItem = styled(ButtonBase, { + shouldForwardProp: (prop) => prop !== 'active' && prop !== 'open' && prop !== 'disabled' && prop !== 'depth', +})(({ active, open, disabled, depth, theme }) => { + const rootItem = depth === 1; + + const subItem = !rootItem; + + const baseStyles = { + item: { + width: '100%', + color: 'var(--nav-item-color)', + borderRadius: 'var(--nav-item-radius)', + paddingTop: 'var(--nav-item-pt)', + paddingLeft: 'var(--nav-item-pl)', + paddingRight: 'var(--nav-item-pr)', + paddingBottom: 'var(--nav-item-pb)', + '&:hover': { + backgroundColor: 'var(--nav-item-hover-color)', + }, + }, + icon: { + ...sharedStyles.icon, + width: 'var(--nav-icon-size)', + height: 'var(--nav-icon-size)', + margin: 'var(--nav-icon-margin)', + }, + texts: { + minWidth: 0, + flex: '1 1 auto', + }, + title: { + ...sharedStyles.noWrap, + ...theme.typography.body2, + fontWeight: active ? theme.typography.fontWeightSemiBold : theme.typography.fontWeightMedium, + }, + caption: { + ...sharedStyles.noWrap, + ...theme.typography.caption, + color: 'var(--nav-item-caption-color)', + }, + arrow: { + ...sharedStyles.arrow, + }, + info: { + ...sharedStyles.info, + }, + } as const; + + return { + /** + * Root item + */ + ...(rootItem && { + ...baseStyles.item, + minHeight: 'var(--nav-item-root-height)', + [`& .${navSectionClasses.item.icon}`]: { ...baseStyles.icon }, + [`& .${navSectionClasses.item.texts}`]: { ...baseStyles.texts }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { ...baseStyles.arrow }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-root-active-color)', + backgroundColor: 'var(--nav-item-root-active-bg)', + '&:hover': { + backgroundColor: 'var(--nav-item-root-active-hover-bg)', + }, + [stylesMode.dark]: { + color: 'var(--nav-item-root-active-color-on-dark)', + }, + }), + ...(open && { + color: 'var(--nav-item-root-open-color)', + backgroundColor: 'var(--nav-item-root-open-bg)', + }), + }), + + /** + * Sub item + */ + ...(subItem && { + ...baseStyles.item, + minHeight: 'var(--nav-item-sub-height)', + [`& .${navSectionClasses.item.icon}`]: { ...baseStyles.icon }, + [`& .${navSectionClasses.item.texts}`]: { ...baseStyles.texts }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { ...baseStyles.arrow }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // Shape + '&::before': { + width: 3, + left: -13, + height: 16, + content: '""', + borderRadius: 3, + position: 'absolute', + transform: 'scale(0)', + transition: theme.transitions.create(['transform'], { + duration: theme.transitions.duration.short, + }), + ...(active && { + transform: 'scale(1)', + backgroundColor: 'currentColor', + }), + }, + // State + ...(active && { + color: 'var(--nav-item-sub-active-color)', + backgroundColor: 'var(--nav-item-sub-active-bg)', + }), + ...(open && { + color: 'var(--nav-item-sub-open-color)', + backgroundColor: 'var(--nav-item-sub-open-bg)', + }), + }), + + /** + * Disabled + */ + ...(disabled && sharedStyles.disabled), + }; +}); diff --git a/dashboard/src/components/nav-basic/mobile/nav-list.tsx b/dashboard/src/components/nav-basic/mobile/nav-list.tsx new file mode 100644 index 00000000..5ef239c2 --- /dev/null +++ b/dashboard/src/components/nav-basic/mobile/nav-list.tsx @@ -0,0 +1,122 @@ +import { useState, useEffect, useCallback } from 'react'; + +import Collapse from '@mui/material/Collapse'; + +import { usePathname } from 'src/routes/hooks'; +import { isExternalLink } from 'src/routes/utils'; +import { useActiveLink } from 'src/routes/hooks/use-active-link'; + +import { NavItem } from './nav-item'; +import { NavLi, NavUl, navSectionClasses } from '../../nav-section'; + +import type { NavListProps, NavSubListProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavList({ data, render, depth, slotProps, enabledRootRedirect }: NavListProps) { + const pathname = usePathname(); + + const active = useActiveLink(data.path, !!data.children); + + const [openMenu, setOpenMenu] = useState(active); + + useEffect(() => { + if (!active) { + handleCloseMenu(); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [pathname]); + + const handleToggleMenu = useCallback(() => { + if (data.children) { + setOpenMenu((prev) => !prev); + } + }, [data.children]); + + const handleCloseMenu = useCallback(() => { + setOpenMenu(false); + }, []); + + const renderNavItem = ( + + ); + + if (data.children) { + return ( + + {renderNavItem} + + + + + + ); + } + + return {renderNavItem}; +} + +// ---------------------------------------------------------------------- + +function NavSubList({ data, render, depth, slotProps, enabledRootRedirect }: NavSubListProps) { + return ( + + {data.map((list) => ( + + ))} + + ); +} diff --git a/dashboard/src/components/nav-basic/types.ts b/dashboard/src/components/nav-basic/types.ts new file mode 100644 index 00000000..e9437e41 --- /dev/null +++ b/dashboard/src/components/nav-basic/types.ts @@ -0,0 +1,68 @@ +import type { StackProps } from '@mui/material/Stack'; +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; +import type { Theme, SxProps, CSSObject } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export type SlotProps = { + rootItem?: NavItemSlotProps; + subItem?: NavItemSlotProps; + paper?: SxProps; +}; + +export type NavItemRenderProps = { + navIcon?: Record; + navInfo?: (val: string) => Record; +}; + +export type NavItemSlotProps = { + sx?: SxProps; + icon?: SxProps; + texts?: SxProps; + title?: SxProps; + caption?: SxProps; + info?: SxProps; + arrow?: SxProps; +}; + +export type NavItemStateProps = { + depth?: number; + open?: boolean; + active?: boolean; + disabled?: boolean; + hasChild?: boolean; + externalLink?: boolean; + enabledRootRedirect?: boolean; +}; + +export type NavItemBaseProps = { + path: string; + title: string; + children?: any; + caption?: string; + disabled?: boolean; + render?: NavItemRenderProps; + slotProps?: NavItemSlotProps; + icon?: string | React.ReactNode; + info?: string[] | React.ReactNode; +}; + +export type NavItemProps = ButtonBaseProps & NavItemBaseProps & NavItemStateProps; + +export type NavListProps = { + depth: number; + cssVars?: CSSObject; + slotProps?: SlotProps; + data: NavItemBaseProps; + render?: NavItemBaseProps['render']; + enabledRootRedirect?: NavItemStateProps['enabledRootRedirect']; +}; + +export type NavSubListProps = Omit & { + data: NavItemBaseProps[]; +}; + +export type NavBasicProps = StackProps & + Omit & { + data: NavItemBaseProps[]; + }; diff --git a/dashboard/src/components/nav-section/classes.ts b/dashboard/src/components/nav-section/classes.ts new file mode 100644 index 00000000..db9647e8 --- /dev/null +++ b/dashboard/src/components/nav-section/classes.ts @@ -0,0 +1,31 @@ +// ---------------------------------------------------------------------- + +export const navSectionClasses = { + mini: { + root: 'nav__section__mini', + }, + horizontal: { + root: 'nav__section__horizontal', + }, + vertical: { + root: 'nav__section__vertical', + }, + item: { + root: 'mnl__nav__item', + icon: 'mnl__nav__item__icon', + info: 'mnl__nav__item__info', + texts: 'mnl__nav__item__texts', + title: 'mnl__nav__item__title', + arrow: 'mnl__nav__item__arrow', + caption: 'mnl__nav__item__caption', + }, + li: 'mnl__nav__li', + ul: 'mnl__nav__ul', + paper: 'mnl__nav__paper', + subheader: 'mnl__nav__subheader', + state: { + open: 'state--open', + active: 'state--active', + disabled: 'state--disabled', + }, +}; diff --git a/dashboard/src/components/nav-section/css-vars.ts b/dashboard/src/components/nav-section/css-vars.ts new file mode 100644 index 00000000..52af6b82 --- /dev/null +++ b/dashboard/src/components/nav-section/css-vars.ts @@ -0,0 +1,119 @@ +import type { Theme } from '@mui/material/styles'; + +import { varAlpha } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +export const bulletColor = { + dark: '#282F37', + light: '#EDEFF2', +}; + +function colorVars(theme: Theme, variant?: 'vertical' | 'mini' | 'horizontal') { + const { + vars: { palette }, + } = theme; + + return { + '--nav-item-color': palette.text.secondary, + '--nav-item-hover-bg': palette.action.hover, + '--nav-item-caption-color': palette.text.disabled, + // root + '--nav-item-root-active-color': palette.primary.main, + '--nav-item-root-active-color-on-dark': palette.primary.light, + '--nav-item-root-active-bg': varAlpha(palette.primary.mainChannel, 0.08), + '--nav-item-root-active-hover-bg': varAlpha(palette.primary.mainChannel, 0.16), + '--nav-item-root-open-color': palette.text.primary, + '--nav-item-root-open-bg': palette.action.hover, + // sub + '--nav-item-sub-active-color': palette.text.primary, + '--nav-item-sub-active-bg': palette.action.selected, + '--nav-item-sub-open-color': palette.text.primary, + '--nav-item-sub-open-bg': palette.action.hover, + ...(variant === 'vertical' && { + '--nav-item-sub-active-bg': palette.action.hover, + '--nav-subheader-color': palette.text.disabled, + '--nav-subheader-hover-color': palette.text.primary, + }), + }; +} + +// ---------------------------------------------------------------------- + +function verticalVars(theme: Theme) { + const { shape, spacing } = theme; + + return { + ...colorVars(theme, 'vertical'), + '--nav-item-gap': spacing(0.5), + '--nav-item-radius': `${shape.borderRadius}px`, + '--nav-item-pt': spacing(0.5), + '--nav-item-pr': spacing(1), + '--nav-item-pb': spacing(0.5), + '--nav-item-pl': spacing(1.5), + // root + '--nav-item-root-height': '44px', + // sub + '--nav-item-sub-height': '36px', + // icon + '--nav-icon-size': '24px', + '--nav-icon-margin': spacing(0, 1.5, 0, 0), + // bullet + '--nav-bullet-size': '12px', + '--nav-bullet-light-color': bulletColor.light, + '--nav-bullet-dark-color': bulletColor.dark, + }; +} + +// ---------------------------------------------------------------------- + +function miniVars(theme: Theme) { + const { shape, spacing } = theme; + + return { + ...colorVars(theme, 'mini'), + '--nav-item-gap': spacing(0.5), + '--nav-item-radius': `${shape.borderRadius}px`, + // root + '--nav-item-root-height': '56px', + '--nav-item-root-padding': spacing(1, 0.5, 0.75, 0.5), + // sub + '--nav-item-sub-height': '34px', + '--nav-item-sub-padding': spacing(0, 1), + // icon + '--nav-icon-size': '22px', + '--nav-icon-root-margin': spacing(0, 0, 0.75, 0), + '--nav-icon-sub-margin': spacing(0, 1, 0, 0), + }; +} + +// ---------------------------------------------------------------------- + +function horizontalVars(theme: Theme) { + const { shape, spacing } = theme; + + return { + ...colorVars(theme, 'horizontal'), + '--nav-item-gap': spacing(0.75), + '--nav-height': '56px', + '--nav-item-radius': `${shape.borderRadius * 0.75}px`, + // root + '--nav-item-root-height': '32px', + '--nav-item-root-padding': spacing(0, 0.75), + // sub + '--nav-item-sub-height': '34px', + '--nav-item-sub-padding': spacing(0, 1), + // icon + '--nav-icon-size': '22px', + '--nav-icon-sub-margin': spacing(0, 1, 0, 0), + '--nav-icon-root-margin': spacing(0, 1, 0, 0), + }; +} + +// ---------------------------------------------------------------------- + +export const navSectionCssVars = { + mini: miniVars, + vertical: verticalVars, + horizontal: horizontalVars, +}; diff --git a/dashboard/src/components/nav-section/hooks.tsx b/dashboard/src/components/nav-section/hooks.tsx new file mode 100644 index 00000000..a21c0ce2 --- /dev/null +++ b/dashboard/src/components/nav-section/hooks.tsx @@ -0,0 +1,82 @@ +import { cloneElement } from 'react'; + +import { RouterLink } from 'src/routes/components'; + +import type { NavItemProps } from './types'; + +// ---------------------------------------------------------------------- + +export type UseNavItemReturn = { + subItem: boolean; + rootItem: boolean; + subDeepItem: boolean; + baseProps: Record; + renderIcon: React.ReactNode; + renderInfo: React.ReactNode; +}; + +export type UseNavItemProps = { + path: NavItemProps['path']; + icon?: NavItemProps['icon']; + info?: NavItemProps['info']; + depth?: NavItemProps['depth']; + render?: NavItemProps['render']; + hasChild?: NavItemProps['hasChild']; + externalLink?: NavItemProps['externalLink']; + enabledRootRedirect?: NavItemProps['enabledRootRedirect']; +}; + +export function useNavItem({ + path, + icon, + info, + depth, + render, + hasChild, + externalLink, + enabledRootRedirect, +}: UseNavItemProps): UseNavItemReturn { + const rootItem = depth === 1; + + const subItem = !rootItem; + + const subDeepItem = Number(depth) > 2; + + const linkProps = externalLink ? { href: path, target: '_blank', rel: 'noopener' } : { component: RouterLink, href: path }; + + const baseProps = hasChild && !enabledRootRedirect ? { component: 'div' } : linkProps; + + /** + * Render @icon + */ + let renderIcon = null; + + if (icon && render?.navIcon && typeof icon === 'string') { + renderIcon = render?.navIcon[icon]; + } else { + renderIcon = icon; + } + + /** + * Render @info + */ + let renderInfo = null; + + if (info && render?.navInfo && Array.isArray(info)) { + const [key, value] = info; + const element = render.navInfo(value)[key]; + + renderInfo = element ? cloneElement(element) : null; + } else { + renderInfo = info; + } + + return { + subItem, + rootItem, + subDeepItem, + baseProps, + renderIcon, + renderInfo, + }; +} diff --git a/dashboard/src/components/nav-section/horizontal/index.ts b/dashboard/src/components/nav-section/horizontal/index.ts new file mode 100644 index 00000000..d1fbe2db --- /dev/null +++ b/dashboard/src/components/nav-section/horizontal/index.ts @@ -0,0 +1,3 @@ +export * from './nav-section-horizontal'; + +export { NavItem as NavSectionHorizontalItem } from './nav-item'; diff --git a/dashboard/src/components/nav-section/horizontal/nav-item.tsx b/dashboard/src/components/nav-section/horizontal/nav-item.tsx new file mode 100644 index 00000000..12957785 --- /dev/null +++ b/dashboard/src/components/nav-section/horizontal/nav-item.tsx @@ -0,0 +1,212 @@ +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import Tooltip from '@mui/material/Tooltip'; +import { styled } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { stylesMode } from 'src/theme/styles'; + +import { useNavItem } from '../hooks'; +import { Iconify } from '../../iconify'; +import { navSectionClasses } from '../classes'; +import { stateClasses, sharedStyles } from '../styles'; + +import type { NavItemProps, NavItemStateProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const NavItem = forwardRef( + ( + { + path, + icon, + info, + title, + caption, + // + open, + depth, + render, + active, + disabled, + hasChild, + slotProps, + externalLink, + enabledRootRedirect, + ...other + }, + ref + ) => { + const navItem = useNavItem({ + path, + icon, + info, + depth, + render, + hasChild, + externalLink, + enabledRootRedirect, + }); + + return ( + + {icon && ( + + {navItem.renderIcon} + + )} + + {title && ( + + {title} + + )} + + {caption && ( + + + + )} + + {info && ( + + {navItem.renderInfo} + + )} + + {hasChild && ( + + )} + + ); + } +); + +// ---------------------------------------------------------------------- + +const StyledNavItem = styled(ButtonBase, { + shouldForwardProp: (prop) => prop !== 'active' && prop !== 'open' && prop !== 'disabled' && prop !== 'depth', +})(({ active, open, disabled, depth, theme }) => { + const rootItem = depth === 1; + + const subItem = !rootItem; + + const baseStyles = { + item: { + flexShrink: 0, + color: 'var(--nav-item-color)', + borderRadius: 'var(--nav-item-radius)', + '&:hover': { + backgroundColor: 'var(--nav-item-hover-bg)', + }, + }, + title: { + ...theme.typography.body2, + fontWeight: active ? theme.typography.fontWeightSemiBold : theme.typography.fontWeightMedium, + }, + caption: { + width: 16, + height: 16, + color: 'var(--nav-item-caption-color)', + }, + icon: { + ...sharedStyles.icon, + width: 'var(--nav-icon-size)', + height: 'var(--nav-icon-size)', + }, + arrow: { ...sharedStyles.arrow }, + info: { ...sharedStyles.info }, + } as const; + + return { + /** + * Root item + */ + ...(rootItem && { + ...baseStyles.item, + padding: 'var(--nav-item-root-padding)', + minHeight: 'var(--nav-item-root-height)', + [`& .${navSectionClasses.item.icon}`]: { + ...baseStyles.icon, + margin: 'var(--nav-icon-root-margin)', + }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title, whiteSpace: 'nowrap' }, + [`& .${navSectionClasses.item.caption}`]: { + ...baseStyles.caption, + marginLeft: theme.spacing(0.75), + }, + [`& .${navSectionClasses.item.arrow}`]: { ...baseStyles.arrow }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-root-active-color)', + backgroundColor: 'var(--nav-item-root-active-bg)', + '&:hover': { + backgroundColor: 'var(--nav-item-root-active-hover-bg)', + }, + [stylesMode.dark]: { + color: 'var(--nav-item-root-active-color-on-dark)', + }, + }), + ...(open && { + color: 'var(--nav-item-root-open-color)', + backgroundColor: 'var(--nav-item-root-open-bg)', + }), + }), + + /** + * Sub item + */ + ...(subItem && { + ...baseStyles.item, + padding: 'var(--nav-item-sub-padding)', + minHeight: 'var(--nav-item-sub-height)', + color: theme.vars.palette.text.secondary, + [`& .${navSectionClasses.item.icon}`]: { + ...baseStyles.icon, + margin: 'var(--nav-icon-sub-margin)', + }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title, flexGrow: 1 }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { + ...baseStyles.arrow, + marginRight: theme.spacing(-0.5), + }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-sub-active-color)', + backgroundColor: 'var(--nav-item-sub-active-bg)', + }), + ...(open && { + color: 'var(--nav-item-sub-open-color)', + backgroundColor: 'var(--nav-item-sub-open-bg)', + }), + }), + + /* Disabled */ + ...(disabled && sharedStyles.disabled), + }; +}); diff --git a/dashboard/src/components/nav-section/horizontal/nav-list.tsx b/dashboard/src/components/nav-section/horizontal/nav-list.tsx new file mode 100644 index 00000000..6bb8ded3 --- /dev/null +++ b/dashboard/src/components/nav-section/horizontal/nav-list.tsx @@ -0,0 +1,150 @@ +import { useRef, useState, useEffect, useCallback } from 'react'; + +import Paper from '@mui/material/Paper'; +import Popover from '@mui/material/Popover'; +import { useTheme } from '@mui/material/styles'; + +import { usePathname } from 'src/routes/hooks'; +import { isExternalLink } from 'src/routes/utils'; +import { useActiveLink } from 'src/routes/hooks/use-active-link'; + +import { paper } from 'src/theme/styles'; +import { useTranslate } from 'src/locales'; + +import { useAuthContext } from 'src/auth/hooks'; +import { hasAllPermissions } from 'src/auth/permissions'; + +import { NavItem } from './nav-item'; +import { NavUl, NavLi } from '../styles'; +import { navSectionClasses } from '../classes'; + +import type { NavListProps, NavSubListProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavList({ data, depth, render, cssVars, slotProps, enabledRootRedirect }: NavListProps) { + const { user } = useAuthContext(); + const { t } = useTranslate(); + const theme = useTheme(); + const pathname = usePathname(); + const navItemRef = useRef(null); + const active = useActiveLink(data.path, !!data.children); + const [openMenu, setOpenMenu] = useState(false); + + useEffect(() => { + if (openMenu) { + handleCloseMenu(); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [pathname]); + + const handleOpenMenu = useCallback(() => { + if (data.children) { + setOpenMenu(true); + } + }, [data.children]); + + const handleCloseMenu = useCallback(() => { + setOpenMenu(false); + }, []); + + const renderNavItem = ( + + ); + + // Hidden item by role + if (data.permissions && user) { + if (!hasAllPermissions(data.permissions, user.permissions)) { + return null; + } + } + + // Has children + if (data.children) { + return ( + + {renderNavItem} + + + + + + + + ); + } + + // Default + return {renderNavItem}; +} + +// ---------------------------------------------------------------------- + +function NavSubList({ data, depth, render, cssVars, slotProps, enabledRootRedirect }: NavSubListProps) { + return ( + + {data.map((list) => ( + + ))} + + ); +} diff --git a/dashboard/src/components/nav-section/horizontal/nav-section-horizontal.tsx b/dashboard/src/components/nav-section/horizontal/nav-section-horizontal.tsx new file mode 100644 index 00000000..68466c00 --- /dev/null +++ b/dashboard/src/components/nav-section/horizontal/nav-section-horizontal.tsx @@ -0,0 +1,79 @@ +import Stack from '@mui/material/Stack'; +import { useTheme } from '@mui/material/styles'; + +import { NavList } from './nav-list'; +import { NavUl, NavLi } from '../styles'; +import { Scrollbar } from '../../scrollbar'; +import { navSectionClasses } from '../classes'; +import { navSectionCssVars } from '../css-vars'; + +import type { NavGroupProps, NavSectionProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavSectionHorizontal({ sx, data, render, slotProps, enabledRootRedirect, cssVars: overridesVars }: NavSectionProps) { + const theme = useTheme(); + + const cssVars = { + ...navSectionCssVars.horizontal(theme), + ...overridesVars, + }; + + return ( + + + + {data.map((group) => ( + + ))} + + + + ); +} + +// ---------------------------------------------------------------------- + +function Group({ items, render, slotProps, enabledRootRedirect, cssVars }: NavGroupProps) { + return ( + + + {items.map((list) => ( + + ))} + + + ); +} diff --git a/dashboard/src/components/nav-section/index.ts b/dashboard/src/components/nav-section/index.ts new file mode 100644 index 00000000..5c1c14df --- /dev/null +++ b/dashboard/src/components/nav-section/index.ts @@ -0,0 +1,15 @@ +export * from './mini'; + +export * from './hooks'; + +export * from './styles'; + +export * from './classes'; + +export * from './css-vars'; + +export * from './vertical'; + +export type * from './types'; + +export * from './horizontal'; diff --git a/dashboard/src/components/nav-section/mini/index.ts b/dashboard/src/components/nav-section/mini/index.ts new file mode 100644 index 00000000..bead531b --- /dev/null +++ b/dashboard/src/components/nav-section/mini/index.ts @@ -0,0 +1,3 @@ +export * from './nav-section-mini'; + +export { NavItem as NavSectionMiniItem } from './nav-item'; diff --git a/dashboard/src/components/nav-section/mini/nav-item.tsx b/dashboard/src/components/nav-section/mini/nav-item.tsx new file mode 100644 index 00000000..e09046e8 --- /dev/null +++ b/dashboard/src/components/nav-section/mini/nav-item.tsx @@ -0,0 +1,224 @@ +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import Tooltip from '@mui/material/Tooltip'; +import { styled } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { stylesMode } from 'src/theme/styles'; + +import { useNavItem } from '../hooks'; +import { Iconify } from '../../iconify'; +import { navSectionClasses } from '../classes'; +import { stateClasses, sharedStyles } from '../styles'; + +import type { NavItemProps, NavItemStateProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const NavItem = forwardRef( + ( + { + path, + icon, + info, + title, + caption, + // + open, + depth, + render, + active, + disabled, + hasChild, + slotProps, + externalLink, + enabledRootRedirect, + ...other + }, + ref + ) => { + const navItem = useNavItem({ + path, + icon, + info, + depth, + render, + hasChild, + externalLink, + enabledRootRedirect, + }); + + return ( + + {icon && ( + + {navItem.renderIcon} + + )} + + {title && ( + + {title} + + )} + + {caption && ( + + + + )} + + {info && navItem.subItem && ( + + {navItem.renderInfo} + + )} + + {hasChild && } + + ); + } +); + +// ---------------------------------------------------------------------- + +const StyledNavItem = styled(ButtonBase, { + shouldForwardProp: (prop) => prop !== 'active' && prop !== 'open' && prop !== 'disabled' && prop !== 'depth', +})(({ active, open, disabled, depth, theme }) => { + const rootItem = depth === 1; + + const subItem = !rootItem; + + const baseStyles = { + item: { + width: '100%', + borderRadius: 'var(--nav-item-radius)', + color: 'var(--nav-item-color)', + '&:hover': { + backgroundColor: 'var(--nav-item-hover-bg)', + }, + }, + title: {}, + caption: { + width: 16, + height: 16, + color: 'var(--nav-item-caption-color)', + }, + icon: { + ...sharedStyles.icon, + width: 'var(--nav-icon-size)', + height: 'var(--nav-icon-size)', + }, + arrow: { ...sharedStyles.arrow }, + info: { ...sharedStyles.info }, + } as const; + + return { + /** + * Root item + */ + ...(rootItem && { + ...baseStyles.item, + textAlign: 'center', + flexDirection: 'column', + minHeight: 'var(--nav-item-root-height)', + padding: 'var(--nav-item-root-padding)', + [`& .${navSectionClasses.item.icon}`]: { + ...baseStyles.icon, + margin: 'var(--nav-icon-root-margin)', + }, + [`& .${navSectionClasses.item.title}`]: { + ...baseStyles.title, + ...sharedStyles.noWrap, + lineHeight: '16px', + fontSize: theme.typography.pxToRem(10), + fontWeight: active ? theme.typography.fontWeightBold : theme.typography.fontWeightSemiBold, + }, + [`& .${navSectionClasses.item.caption}`]: { + ...baseStyles.caption, + top: 11, + left: 6, + position: 'absolute', + }, + [`& .${navSectionClasses.item.arrow}`]: { + ...baseStyles.arrow, + top: 11, + right: 6, + position: 'absolute', + }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-root-active-color)', + backgroundColor: 'var(--nav-item-root-active-bg)', + '&:hover': { + backgroundColor: 'var(--nav-item-root-active-hover-bg)', + }, + [stylesMode.dark]: { + color: 'var(--nav-item-root-active-color-on-dark)', + }, + }), + ...(open && { + color: 'var(--nav-item-root-open-color)', + backgroundColor: 'var(--nav-item-root-open-bg)', + }), + }), + + /** + * Sub item + */ + ...(subItem && { + ...baseStyles.item, + color: theme.vars.palette.text.secondary, + minHeight: 'var(--nav-item-sub-height)', + padding: 'var(--nav-item-sub-padding)', + [`& .${navSectionClasses.item.icon}`]: { + ...baseStyles.icon, + margin: 'var(--nav-icon-sub-margin)', + }, + [`& .${navSectionClasses.item.title}`]: { + ...baseStyles.title, + ...theme.typography.body2, + fontWeight: active ? theme.typography.fontWeightSemiBold : theme.typography.fontWeightMedium, + flex: '1 1 auto', + }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { + ...baseStyles.arrow, + marginRight: theme.spacing(-0.5), + }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-sub-active-color)', + backgroundColor: 'var(--nav-item-sub-active-bg)', + }), + ...(open && { + color: 'var(--nav-item-sub-open-color)', + backgroundColor: 'var(--nav-item-sub-open-bg)', + }), + }), + + /* Disabled */ + ...(disabled && sharedStyles.disabled), + }; +}); diff --git a/dashboard/src/components/nav-section/mini/nav-list.tsx b/dashboard/src/components/nav-section/mini/nav-list.tsx new file mode 100644 index 00000000..276f893c --- /dev/null +++ b/dashboard/src/components/nav-section/mini/nav-list.tsx @@ -0,0 +1,150 @@ +import { useRef, useState, useEffect, useCallback } from 'react'; + +import Paper from '@mui/material/Paper'; +import Popover from '@mui/material/Popover'; +import { useTheme } from '@mui/material/styles'; + +import { usePathname } from 'src/routes/hooks'; +import { isExternalLink } from 'src/routes/utils'; +import { useActiveLink } from 'src/routes/hooks/use-active-link'; + +import { paper } from 'src/theme/styles'; +import { useTranslate } from 'src/locales'; + +import { useAuthContext } from 'src/auth/hooks'; +import { hasAllPermissions } from 'src/auth/permissions'; + +import { NavItem } from './nav-item'; +import { NavUl, NavLi } from '../styles'; +import { navSectionClasses } from '../classes'; + +import type { NavListProps, NavSubListProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavList({ data, depth, render, cssVars, slotProps, enabledRootRedirect }: NavListProps) { + const { t } = useTranslate(); + const { user } = useAuthContext(); + const theme = useTheme(); + const pathname = usePathname(); + const navItemRef = useRef(null); + const active = useActiveLink(data.path, !!data.children); + const [openMenu, setOpenMenu] = useState(false); + + useEffect(() => { + if (openMenu) { + handleCloseMenu(); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [pathname]); + + const handleOpenMenu = useCallback(() => { + if (data.children) { + setOpenMenu(true); + } + }, [data.children]); + + const handleCloseMenu = useCallback(() => { + setOpenMenu(false); + }, []); + + const renderNavItem = ( + + ); + + // Hidden item by role + if (data.permissions && user) { + if (!hasAllPermissions(data.permissions, user.permissions)) { + return null; + } + } + + // Has children + if (data.children) { + return ( + + {renderNavItem} + + 1 && { mt: -1 }), + ...(openMenu && { pointerEvents: 'auto' }), + }, + }, + }} + sx={{ ...cssVars, pointerEvents: 'none' }} + > + + + + + + ); + } + + // Default + return {renderNavItem}; +} + +// ---------------------------------------------------------------------- + +function NavSubList({ data, render, depth, slotProps, enabledRootRedirect, cssVars }: NavSubListProps) { + return ( + + {data.map((list) => ( + + ))} + + ); +} diff --git a/dashboard/src/components/nav-section/mini/nav-section-mini.tsx b/dashboard/src/components/nav-section/mini/nav-section-mini.tsx new file mode 100644 index 00000000..bff65343 --- /dev/null +++ b/dashboard/src/components/nav-section/mini/nav-section-mini.tsx @@ -0,0 +1,59 @@ +import Stack from '@mui/material/Stack'; +import { useTheme } from '@mui/material/styles'; + +import { NavList } from './nav-list'; +import { NavUl, NavLi } from '../styles'; +import { navSectionClasses } from '../classes'; +import { navSectionCssVars } from '../css-vars'; + +import type { NavGroupProps, NavSectionProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavSectionMini({ sx, data, render, slotProps, enabledRootRedirect, cssVars: overridesVars }: NavSectionProps) { + const theme = useTheme(); + + const cssVars = { + ...navSectionCssVars.mini(theme), + ...overridesVars, + }; + + return ( + + + {data.map((group) => ( + + ))} + + + ); +} + +// ---------------------------------------------------------------------- + +function Group({ items, render, slotProps, enabledRootRedirect, cssVars }: NavGroupProps) { + return ( + + + {items.map((list) => ( + + ))} + + + ); +} diff --git a/dashboard/src/components/nav-section/styles.tsx b/dashboard/src/components/nav-section/styles.tsx new file mode 100644 index 00000000..e1cd351f --- /dev/null +++ b/dashboard/src/components/nav-section/styles.tsx @@ -0,0 +1,211 @@ +import type { BoxProps } from '@mui/material/Box'; +import type { CollapseProps } from '@mui/material/Collapse'; +import type { ListSubheaderProps } from '@mui/material/ListSubheader'; + +import Box from '@mui/material/Box'; +import Collapse from '@mui/material/Collapse'; +import ListSubheader from '@mui/material/ListSubheader'; + +import { stylesMode } from 'src/theme/styles'; + +import { navSectionClasses } from './classes'; +import { svgColorClasses } from '../svg-color'; +import { Iconify, iconifyClasses } from '../iconify'; + +// ---------------------------------------------------------------------- + +export function stateClasses({ open, active, disabled }: { open?: boolean; active?: boolean; disabled?: boolean }) { + let classes = navSectionClasses.item.root; + + if (active) { + classes += ` ${navSectionClasses.state.active}`; + } else if (open) { + classes += ` ${navSectionClasses.state.open}`; + } else if (disabled) { + classes += ` ${navSectionClasses.state.disabled}`; + } + + return classes; +} + +// ---------------------------------------------------------------------- + +export const sharedStyles = { + icon: { + flexShrink: 0, + display: 'inline-flex', + [`& svg, & img, & .${iconifyClasses.root}, & .${svgColorClasses.root}`]: { + width: '100%', + height: '100%', + }, + }, + arrow: { + width: 16, + height: 16, + flexShrink: 0, + marginLeft: '6px', + display: 'inline-flex', + }, + info: { + fontSize: 12, + flexShrink: 0, + fontWeight: 600, + marginLeft: '6px', + lineHeight: 18 / 12, + display: 'inline-flex', + }, + noWrap: { + width: '100%', + maxWidth: '100%', + display: 'block', + overflow: 'hidden', + whiteSpace: 'nowrap', + textOverflow: 'ellipsis', + }, + disabled: { opacity: 0.48, pointerEvents: 'none' }, +} as const; + +// ---------------------------------------------------------------------- + +export function Subheader({ + sx, + open, + children, + ...other +}: ListSubheaderProps & { + open?: boolean; +}) { + return ( + theme.spacing(2, 1, 1, 1.5), + fontSize: (theme) => theme.typography.pxToRem(11), + transition: (theme) => + theme.transitions.create(['color', 'padding-left'], { + duration: theme.transitions.duration.standard, + }), + '&:hover': { + pl: 2, + color: 'var(--nav-subheader-hover-color)', + [`& .${iconifyClasses.root}`]: { opacity: 1 }, + }, + ...sx, + }} + {...other} + > + + theme.transitions.create(['opacity'], { + duration: theme.transitions.duration.standard, + }), + }} + /> + + {children} + + ); +} + +// ---------------------------------------------------------------------- + +export function NavCollapse({ + sx, + depth, + children, + ...other +}: CollapseProps & { + depth: number; +}) { + return ( + + {children} + + ); +} + +// ---------------------------------------------------------------------- + +export function NavLi({ + sx, + children, + disabled, + ...other +}: BoxProps & { + disabled?: boolean; +}) { + return ( + + {children} + + ); +} + +// ---------------------------------------------------------------------- + +export function NavUl({ children, sx, ...other }: BoxProps) { + return ( + + {children} + + ); +} diff --git a/dashboard/src/components/nav-section/types.ts b/dashboard/src/components/nav-section/types.ts new file mode 100644 index 00000000..a04521d8 --- /dev/null +++ b/dashboard/src/components/nav-section/types.ts @@ -0,0 +1,74 @@ +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; +import type { Theme, SxProps, CSSObject } from '@mui/material/styles'; + +// ---------------------------------------------------------------------- + +export type SlotProps = { + rootItem?: NavItemSlotProps; + subItem?: NavItemSlotProps; + subheader?: SxProps; + paper?: SxProps; + currentRole?: string; +}; + +export type NavItemRenderProps = { + navIcon?: Record; + navInfo?: (val: string) => Record; +}; + +export type NavItemSlotProps = { + sx?: SxProps; + icon?: SxProps; + texts?: SxProps; + title?: SxProps; + caption?: SxProps; + info?: SxProps; + arrow?: SxProps; +}; + +export type NavItemStateProps = { + depth?: number; + open?: boolean; + active?: boolean; + hasChild?: boolean; + externalLink?: boolean; + enabledRootRedirect?: boolean; +}; + +export type NavItemBaseProps = { + path: string; + title: string; + children?: any; + caption?: string; + permissions?: string[]; + disabled?: boolean; + render?: NavItemRenderProps; + slotProps?: NavItemSlotProps; + icon?: string | React.ReactNode; + info?: string[] | React.ReactNode; +}; + +export type NavItemProps = ButtonBaseProps & NavItemStateProps & NavItemBaseProps; + +export type NavListProps = { + depth: number; + cssVars?: CSSObject; + slotProps?: SlotProps; + data: NavItemBaseProps; + render?: NavItemBaseProps['render']; + enabledRootRedirect?: NavItemStateProps['enabledRootRedirect']; +}; + +export type NavSubListProps = Omit & { + data: NavItemBaseProps[]; +}; + +export type NavGroupProps = Omit & { + subheader?: string; + items: NavItemBaseProps[]; +}; + +export type NavSectionProps = Omit & { + sx?: SxProps; + data: NavGroupProps[]; +}; diff --git a/dashboard/src/components/nav-section/vertical/index.ts b/dashboard/src/components/nav-section/vertical/index.ts new file mode 100644 index 00000000..9e880efd --- /dev/null +++ b/dashboard/src/components/nav-section/vertical/index.ts @@ -0,0 +1,3 @@ +export * from './nav-section-vertical'; + +export { NavItem as NavSectionVerticalItem } from './nav-item'; diff --git a/dashboard/src/components/nav-section/vertical/nav-item.tsx b/dashboard/src/components/nav-section/vertical/nav-item.tsx new file mode 100644 index 00000000..3262bf65 --- /dev/null +++ b/dashboard/src/components/nav-section/vertical/nav-item.tsx @@ -0,0 +1,223 @@ +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; +import Tooltip from '@mui/material/Tooltip'; +import { styled } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { stylesMode } from 'src/theme/styles'; + +import { useNavItem } from '../hooks'; +import { Iconify } from '../../iconify'; +import { navSectionClasses } from '../classes'; +import { stateClasses, sharedStyles } from '../styles'; + +import type { NavItemProps, NavItemStateProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const NavItem = forwardRef( + ( + { + path, + icon, + info, + title, + caption, + // + open, + depth, + render, + active, + disabled, + hasChild, + slotProps, + externalLink, + enabledRootRedirect, + ...other + }, + ref + ) => { + const navItem = useNavItem({ + path, + icon, + info, + depth, + render, + hasChild, + externalLink, + enabledRootRedirect, + }); + + return ( + + {icon && ( + + {navItem.renderIcon} + + )} + + {title && ( + + + {title} + + + {caption && ( + + + {caption} + + + )} + + )} + + {info && ( + + {navItem.renderInfo} + + )} + + {hasChild && ( + + )} + + ); + } +); + +// ---------------------------------------------------------------------- + +const StyledNavItem = styled(ButtonBase, { + shouldForwardProp: (prop) => prop !== 'active' && prop !== 'open' && prop !== 'disabled' && prop !== 'depth', +})(({ active, open, disabled, depth, theme }) => { + const rootItem = depth === 1; + + const subItem = !rootItem; + + const baseStyles = { + item: { + width: '100%', + paddingTop: 'var(--nav-item-pt)', + paddingLeft: 'var(--nav-item-pl)', + paddingRight: 'var(--nav-item-pr)', + paddingBottom: 'var(--nav-item-pb)', + borderRadius: 'var(--nav-item-radius)', + color: 'var(--nav-item-color)', + '&:hover': { + backgroundColor: 'var(--nav-item-hover-bg)', + }, + }, + texts: { minWidth: 0, flex: '1 1 auto' }, + title: { + ...sharedStyles.noWrap, + ...theme.typography.body2, + fontWeight: active ? theme.typography.fontWeightSemiBold : theme.typography.fontWeightMedium, + }, + caption: { + ...sharedStyles.noWrap, + ...theme.typography.caption, + color: 'var(--nav-item-caption-color)', + }, + icon: { + ...sharedStyles.icon, + width: 'var(--nav-icon-size)', + height: 'var(--nav-icon-size)', + margin: 'var(--nav-icon-margin)', + }, + arrow: { ...sharedStyles.arrow }, + info: { ...sharedStyles.info }, + } as const; + + return { + /** + * Root item + */ + ...(rootItem && { + ...baseStyles.item, + minHeight: 'var(--nav-item-root-height)', + [`& .${navSectionClasses.item.icon}`]: { ...baseStyles.icon }, + [`& .${navSectionClasses.item.texts}`]: { ...baseStyles.texts }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { ...baseStyles.arrow }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // State + ...(active && { + color: 'var(--nav-item-root-active-color)', + backgroundColor: 'var(--nav-item-root-active-bg)', + '&:hover': { + backgroundColor: 'var(--nav-item-root-active-hover-bg)', + }, + [stylesMode.dark]: { + color: 'var(--nav-item-root-active-color-on-dark)', + }, + }), + ...(open && { + color: 'var(--nav-item-root-open-color)', + backgroundColor: 'var(--nav-item-root-open-bg)', + }), + }), + /** + * Sub item + */ + ...(subItem && { + ...baseStyles.item, + minHeight: 'var(--nav-item-sub-height)', + [`& .${navSectionClasses.item.icon}`]: { ...baseStyles.icon }, + [`& .${navSectionClasses.item.texts}`]: { ...baseStyles.texts }, + [`& .${navSectionClasses.item.title}`]: { ...baseStyles.title }, + [`& .${navSectionClasses.item.caption}`]: { ...baseStyles.caption }, + [`& .${navSectionClasses.item.arrow}`]: { ...baseStyles.arrow }, + [`& .${navSectionClasses.item.info}`]: { ...baseStyles.info }, + // Shape + '&::before': { + left: 0, + content: '""', + position: 'absolute', + width: 'var(--nav-bullet-size)', + height: 'var(--nav-bullet-size)', + transform: 'translate(calc(var(--nav-bullet-size) * -1), calc(var(--nav-bullet-size) * -0.4))', + backgroundColor: 'var(--nav-bullet-light-color)', + mask: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath d='M1 1v4a8 8 0 0 0 8 8h4' stroke='%23efefef' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat 50% 50%/100% auto`, + WebkitMask: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' viewBox='0 0 14 14'%3E%3Cpath d='M1 1v4a8 8 0 0 0 8 8h4' stroke='%23efefef' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat 50% 50%/100% auto`, + [stylesMode.dark]: { + backgroundColor: 'var(--nav-bullet-dark-color)', + }, + }, + // State + ...(active && { + color: 'var(--nav-item-sub-active-color)', + backgroundColor: 'var(--nav-item-sub-active-bg)', + }), + ...(open && { + color: 'var(--nav-item-sub-open-color)', + backgroundColor: 'var(--nav-item-sub-open-bg)', + }), + }), + /** + * Disabled + */ + ...(disabled && sharedStyles.disabled), + }; +}); diff --git a/dashboard/src/components/nav-section/vertical/nav-list.tsx b/dashboard/src/components/nav-section/vertical/nav-list.tsx new file mode 100644 index 00000000..d235a81f --- /dev/null +++ b/dashboard/src/components/nav-section/vertical/nav-list.tsx @@ -0,0 +1,118 @@ +import { useState, useEffect, useCallback } from 'react'; + +import { usePathname } from 'src/routes/hooks'; +import { isExternalLink } from 'src/routes/utils'; +import { useActiveLink } from 'src/routes/hooks/use-active-link'; + +import { useTranslate } from 'src/locales'; + +import { useAuthContext } from 'src/auth/hooks'; +import { hasAllPermissions } from 'src/auth/permissions'; + +import { NavItem } from './nav-item'; +import { navSectionClasses } from '../classes'; +import { NavUl, NavLi, NavCollapse } from '../styles'; + +import type { NavListProps, NavSubListProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavList({ data, render, depth, slotProps, enabledRootRedirect }: NavListProps) { + const { user } = useAuthContext(); + const { t } = useTranslate(); + const pathname = usePathname(); + + const active = useActiveLink(data.path, !!data.children); + + const [openMenu, setOpenMenu] = useState(active); + + useEffect(() => { + if (!active) { + handleCloseMenu(); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [pathname]); + + const handleToggleMenu = useCallback(() => { + if (data.children) { + setOpenMenu((prev) => !prev); + } + }, [data.children]); + + const handleCloseMenu = useCallback(() => { + setOpenMenu(false); + }, []); + + const renderNavItem = ( + + ); + + // Hidden item by role + if (data.permissions && user) { + if (!hasAllPermissions(data.permissions, user.permissions)) { + return null; + } + } + + // Has children + if (data.children) { + return ( + + {renderNavItem} + + + + + + ); + } + + // Default + return {renderNavItem}; +} + +// ---------------------------------------------------------------------- + +function NavSubList({ data, render, depth, slotProps, enabledRootRedirect }: NavSubListProps) { + return ( + + {data.map((list) => ( + + ))} + + ); +} diff --git a/dashboard/src/components/nav-section/vertical/nav-section-vertical.tsx b/dashboard/src/components/nav-section/vertical/nav-section-vertical.tsx new file mode 100644 index 00000000..0fad0764 --- /dev/null +++ b/dashboard/src/components/nav-section/vertical/nav-section-vertical.tsx @@ -0,0 +1,84 @@ +import { useState, useCallback } from 'react'; + +import Stack from '@mui/material/Stack'; +import Collapse from '@mui/material/Collapse'; +import { useTheme } from '@mui/material/styles'; + +import { useAuthContext } from 'src/auth/hooks'; +import { hasAllPermissions } from 'src/auth/permissions'; + +import { NavList } from './nav-list'; +import { navSectionClasses } from '../classes'; +import { navSectionCssVars } from '../css-vars'; +import { NavUl, NavLi, Subheader } from '../styles'; + +import type { NavGroupProps, NavSectionProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function NavSectionVertical({ sx, data, render, slotProps, enabledRootRedirect, cssVars: overridesVars }: NavSectionProps) { + const theme = useTheme(); + + const cssVars = { + ...navSectionCssVars.vertical(theme), + ...overridesVars, + }; + + return ( + + + {data.map((group) => ( + + ))} + + + ); +} + +// ---------------------------------------------------------------------- + +function Group({ items, render, subheader, slotProps, enabledRootRedirect }: NavGroupProps) { + const [open, setOpen] = useState(true); + const { user } = useAuthContext(); + + const handleToggle = useCallback(() => { + setOpen((prev) => !prev); + }, []); + + const filteredItems = items.filter((item) => !item.permissions || hasAllPermissions(item.permissions, user?.permissions || [])); + + if (filteredItems.length === 0) { + return null; + } + + const renderContent = ( + + {filteredItems.map((list) => ( + + ))} + + ); + + return ( + + {subheader ? ( + <> + + {subheader} + + + {renderContent} + + ) : ( + renderContent + )} + + ); +} diff --git a/dashboard/src/components/phone-input/index.ts b/dashboard/src/components/phone-input/index.ts new file mode 100644 index 00000000..5992c809 --- /dev/null +++ b/dashboard/src/components/phone-input/index.ts @@ -0,0 +1,3 @@ +export type * from './types'; + +export * from './phone-input'; diff --git a/dashboard/src/components/phone-input/list.tsx b/dashboard/src/components/phone-input/list.tsx new file mode 100644 index 00000000..a0955f06 --- /dev/null +++ b/dashboard/src/components/phone-input/list.tsx @@ -0,0 +1,133 @@ +import type { Country } from 'react-phone-number-input/input'; + +import { useState, useCallback } from 'react'; + +import Box from '@mui/material/Box'; +import Popover from '@mui/material/Popover'; +import Divider from '@mui/material/Divider'; +import MenuList from '@mui/material/MenuList'; +import MenuItem from '@mui/material/MenuItem'; +import TextField from '@mui/material/TextField'; +import ButtonBase from '@mui/material/ButtonBase'; +import ListItemText from '@mui/material/ListItemText'; +import InputAdornment from '@mui/material/InputAdornment'; + +import { countries } from 'src/assets/data/countries'; + +import { Iconify, FlagIcon } from 'src/components/iconify'; +import { SearchNotFound } from 'src/components/search-not-found'; + +import { usePopover } from '../custom-popover'; +import { getCountry, applyFilter } from './utils'; + +import type { CountryListProps } from './types'; + +// ---------------------------------------------------------------------- + +export function CountryListPopover({ countryCode, onClickCountry }: CountryListProps) { + const popover = usePopover(); + + const selectedCountry = getCountry(countryCode); + + const [searchCountry, setSearchCountry] = useState(''); + + const handleSearchCountry = useCallback((event: React.ChangeEvent) => { + setSearchCountry(event.target.value); + }, []); + + const dataFiltered = applyFilter({ inputData: countries, query: searchCountry }); + + const notFound = !dataFiltered.length && !!setSearchCountry; + + const renderButton = ( + + + + + + + + ); + + const renderList = ( + + {dataFiltered.map((country) => { + if (!country.code) { + return null; + } + + return ( + { + popover.onClose(); + setSearchCountry(''); + onClickCountry(country.code as Country); + }} + > + + + + + ); + })} + + ); + + return ( + <> + {renderButton} + + { + popover.onClose(); + setSearchCountry(''); + }} + anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }} + transformOrigin={{ vertical: 'top', horizontal: 'left' }} + slotProps={{ + paper: { + sx: { + width: 1, + height: 320, + maxWidth: 320, + display: 'flex', + flexDirection: 'column', + }, + }, + }} + > + + + + + ), + }} + /> + + + + {notFound ? : renderList} + + + + ); +} diff --git a/dashboard/src/components/phone-input/phone-input.tsx b/dashboard/src/components/phone-input/phone-input.tsx new file mode 100644 index 00000000..94eff7f8 --- /dev/null +++ b/dashboard/src/components/phone-input/phone-input.tsx @@ -0,0 +1,53 @@ +import type { TextFieldProps } from '@mui/material/TextField'; +import type { Country } from 'react-phone-number-input/input'; + +import { useState, forwardRef } from 'react'; +import PhoneNumberInput from 'react-phone-number-input/input'; + +import TextField from '@mui/material/TextField'; +import InputAdornment from '@mui/material/InputAdornment'; + +import { getCountryCode } from './utils'; +import { CountryListPopover } from './list'; + +import type { PhoneInputProps } from './types'; + +// ---------------------------------------------------------------------- + +export const PhoneInput = forwardRef( + ({ value, onChange, placeholder, country: inputCountryCode, disableSelect, ...other }, ref) => { + const defaultCountryCode = getCountryCode(value, inputCountryCode); + + const [selectedCountry, setSelectedCountry] = useState(defaultCountryCode); + + return ( + + setSelectedCountry(inputValue)} + /> + + ), + } + } + {...other} + /> + ); + } +); + +// ---------------------------------------------------------------------- + +const CustomInput = forwardRef(({ ...props }, ref) => ); diff --git a/dashboard/src/components/phone-input/types.ts b/dashboard/src/components/phone-input/types.ts new file mode 100644 index 00000000..7b6b4ff5 --- /dev/null +++ b/dashboard/src/components/phone-input/types.ts @@ -0,0 +1,16 @@ +import type { TextFieldProps } from '@mui/material/TextField'; +import type { Value, Country } from 'react-phone-number-input/input'; + +// ---------------------------------------------------------------------- + +export type PhoneInputProps = Omit & { + value: string; + country?: Country; + disableSelect?: boolean; + onChange: (newValue: Value) => void; +}; + +export type CountryListProps = { + countryCode?: Country; + onClickCountry: (inputValue: Country) => void; +}; diff --git a/dashboard/src/components/phone-input/utils.ts b/dashboard/src/components/phone-input/utils.ts new file mode 100644 index 00000000..03cb58ae --- /dev/null +++ b/dashboard/src/components/phone-input/utils.ts @@ -0,0 +1,46 @@ +import type { Country } from 'react-phone-number-input'; + +import { parsePhoneNumber } from 'react-phone-number-input'; + +import { countries } from 'src/assets/data/countries'; + +// ---------------------------------------------------------------------- + +export function getCountryCode(inputValue: string, countryCode?: Country) { + if (inputValue) { + const phoneNumber = parsePhoneNumber(inputValue); + + if (phoneNumber) { + return phoneNumber?.country; + } + } + + return countryCode ?? 'US'; +} + +// ---------------------------------------------------------------------- + +export function getCountry(countryCode?: Country) { + const option = countries.filter((country) => country.code === countryCode)[0]; + return option; +} + +// ---------------------------------------------------------------------- + +type ApplyFilterProps = { + query: string; + inputData: typeof countries; +}; + +export function applyFilter({ inputData, query }: ApplyFilterProps) { + if (query) { + return inputData.filter( + (country) => + country.label.toLowerCase().indexOf(query.toLowerCase()) !== -1 || + country.code.toLowerCase().indexOf(query.toLowerCase()) !== -1 || + country.phone.toLowerCase().indexOf(query.toLowerCase()) !== -1 + ); + } + + return inputData; +} diff --git a/dashboard/src/components/progress-bar/index.ts b/dashboard/src/components/progress-bar/index.ts new file mode 100644 index 00000000..d71d9b1b --- /dev/null +++ b/dashboard/src/components/progress-bar/index.ts @@ -0,0 +1 @@ +export * from './progress-bar'; diff --git a/dashboard/src/components/progress-bar/progress-bar.tsx b/dashboard/src/components/progress-bar/progress-bar.tsx new file mode 100644 index 00000000..c96111f7 --- /dev/null +++ b/dashboard/src/components/progress-bar/progress-bar.tsx @@ -0,0 +1,77 @@ +'use client'; + +import './styles.css'; + +import NProgress from 'nprogress'; +import { Suspense, useEffect } from 'react'; + +import { useRouter, usePathname, useSearchParams } from 'src/routes/hooks'; + +// ---------------------------------------------------------------------- + +type PushStateInput = [data: any, unused: string, url?: string | URL | null | undefined]; + +export function ProgressBar() { + useEffect(() => { + NProgress.configure({ showSpinner: false }); + + const handleAnchorClick = (event: MouseEvent) => { + const targetUrl = (event.currentTarget as HTMLAnchorElement).href; + + const currentUrl = window.location.href; + + if (targetUrl !== currentUrl) { + NProgress.start(); + } + }; + + const handleMutation = () => { + const anchorElements: NodeListOf = document.querySelectorAll('a[href]'); + + const filteredAnchors = Array.from(anchorElements).filter((element) => { + const rel = element.getAttribute('rel'); + + const href = element.getAttribute('href'); + + const target = element.getAttribute('target'); + + return href?.startsWith('/') && target !== '_blank' && rel !== 'noopener'; + }); + + filteredAnchors.forEach((anchor) => anchor.addEventListener('click', handleAnchorClick)); + }; + + const mutationObserver = new MutationObserver(handleMutation); + + mutationObserver.observe(document, { childList: true, subtree: true }); + + window.history.pushState = new Proxy(window.history.pushState, { + apply: (target, thisArg, argArray: PushStateInput) => { + NProgress.done(); + return target.apply(thisArg, argArray); + }, + }); + }); + + return ( + + + + ); +} + +// ---------------------------------------------------------------------- + +function NProgressDone() { + const pathname = usePathname(); + + const router = useRouter(); + + const searchParams = useSearchParams(); + + useEffect(() => { + NProgress.done(); + }, [pathname, router, searchParams]); + + return null; +} diff --git a/dashboard/src/components/progress-bar/styles.css b/dashboard/src/components/progress-bar/styles.css new file mode 100644 index 00000000..38c3ce0b --- /dev/null +++ b/dashboard/src/components/progress-bar/styles.css @@ -0,0 +1,26 @@ +#nprogress { + top: 0; + left: 0; + width: 100%; + height: 2.5px; + z-index: 9999; + position: fixed; + pointer-events: none; +} +#nprogress .bar { + height: 100%; + background-color: var(--palette-primary-main); + box-shadow: 0 0 2.5px var(--palette-primary-main); +} +#nprogress .peg { + right: 0; + opacity: 1; + width: 100px; + height: 100%; + display: block; + position: absolute; + transform: rotate(3deg) translate(0px, -4px); + box-shadow: + 0 0 10px var(--palette-primary-main), + 0 0 5px var(--palette-primary-main); +} diff --git a/dashboard/src/components/qr/index.ts b/dashboard/src/components/qr/index.ts new file mode 100644 index 00000000..cc8ed83a --- /dev/null +++ b/dashboard/src/components/qr/index.ts @@ -0,0 +1 @@ +export * from './qr-dialog'; diff --git a/dashboard/src/components/qr/qr-dialog.tsx b/dashboard/src/components/qr/qr-dialog.tsx new file mode 100644 index 00000000..9b608e06 --- /dev/null +++ b/dashboard/src/components/qr/qr-dialog.tsx @@ -0,0 +1,79 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +import { useCallback } from 'react'; +import { QRCode } from 'react-qrcode-logo'; + +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; + +import { useCopyToClipboard } from 'src/hooks/use-copy-to-clipboard'; + +import { toast } from 'src/components/snackbar'; +import { Iconify } from 'src/components/iconify'; + +interface QRDialogProps extends DialogProps { + value: string; + onClose: VoidFunction; +} + +export function QRDialog({ open, value, title, onClose }: QRDialogProps) { + const { copy } = useCopyToClipboard(); + + const onCopy = useCallback(() => { + if (value) { + copy(value); + toast.success('Copied to clipboard!'); + } + }, [copy, value]); + + return ( + + {title || 'Receive Bitcoin'} + + + canvas': { + width: '100% !important', + height: 'auto !important', + }, + }} + > + + + + + + + + + + + ); +} diff --git a/dashboard/src/components/scrollbar/classes.ts b/dashboard/src/components/scrollbar/classes.ts new file mode 100644 index 00000000..ac2cf913 --- /dev/null +++ b/dashboard/src/components/scrollbar/classes.ts @@ -0,0 +1,3 @@ +// ---------------------------------------------------------------------- + +export const scrollbarClasses = { root: 'mnl__scrollbar__root' }; diff --git a/dashboard/src/components/scrollbar/index.ts b/dashboard/src/components/scrollbar/index.ts new file mode 100644 index 00000000..a483df68 --- /dev/null +++ b/dashboard/src/components/scrollbar/index.ts @@ -0,0 +1,5 @@ +export * from './classes'; + +export * from './scrollbar'; + +export type * from './types'; diff --git a/dashboard/src/components/scrollbar/scrollbar.tsx b/dashboard/src/components/scrollbar/scrollbar.tsx new file mode 100644 index 00000000..e056eb48 --- /dev/null +++ b/dashboard/src/components/scrollbar/scrollbar.tsx @@ -0,0 +1,43 @@ +import { forwardRef } from 'react'; +import SimpleBar from 'simplebar-react'; + +import Box from '@mui/material/Box'; + +import { scrollbarClasses } from './classes'; + +import type { ScrollbarProps } from './types'; + +// ---------------------------------------------------------------------- + +export const Scrollbar = forwardRef( + ({ slotProps, children, fillContent, naturalScroll, sx, ...other }, ref) => ( + + {children} + + ) +); diff --git a/dashboard/src/components/scrollbar/styles.css b/dashboard/src/components/scrollbar/styles.css new file mode 100644 index 00000000..2fbf4d99 --- /dev/null +++ b/dashboard/src/components/scrollbar/styles.css @@ -0,0 +1,8 @@ +@import 'simplebar-react/dist/simplebar.min.css'; + +.simplebar-scrollbar:before { + background-color: var(--palette-text-disabled); +} +.simplebar-scrollbar.simplebar-visible:before { + opacity: 0.48; +} diff --git a/dashboard/src/components/scrollbar/types.ts b/dashboard/src/components/scrollbar/types.ts new file mode 100644 index 00000000..1a9e1607 --- /dev/null +++ b/dashboard/src/components/scrollbar/types.ts @@ -0,0 +1,16 @@ +import type { Theme, SxProps } from '@mui/material/styles'; +import type { Props as SimplebarProps } from 'simplebar-react'; + +// ---------------------------------------------------------------------- + +export type ScrollbarProps = SimplebarProps & { + sx?: SxProps; + children?: React.ReactNode; + fillContent?: boolean; + naturalScroll?: boolean; + slotProps?: { + wrapper?: SxProps; + contentWrapper?: SxProps; + content?: Partial>; + }; +}; diff --git a/dashboard/src/components/search-not-found/index.ts b/dashboard/src/components/search-not-found/index.ts new file mode 100644 index 00000000..7b4e68e3 --- /dev/null +++ b/dashboard/src/components/search-not-found/index.ts @@ -0,0 +1 @@ +export * from './search-not-found'; diff --git a/dashboard/src/components/search-not-found/search-not-found.tsx b/dashboard/src/components/search-not-found/search-not-found.tsx new file mode 100644 index 00000000..bead4402 --- /dev/null +++ b/dashboard/src/components/search-not-found/search-not-found.tsx @@ -0,0 +1,33 @@ +import type { BoxProps } from '@mui/material/Box'; + +import Box from '@mui/material/Box'; +import Typography from '@mui/material/Typography'; + +// ---------------------------------------------------------------------- + +type SearchNotFoundProps = BoxProps & { + query?: string; +}; + +export function SearchNotFound({ query, sx, ...other }: SearchNotFoundProps) { + if (!query) { + return ( + + Please enter keywords + + ); + } + + return ( + + Not found + + + No results found for   + {`"${query}"`} + . +
    Try checking for typos or using complete words. +
    +
    + ); +} diff --git a/dashboard/src/components/settings/config-settings.ts b/dashboard/src/components/settings/config-settings.ts new file mode 100644 index 00000000..4d0ba558 --- /dev/null +++ b/dashboard/src/components/settings/config-settings.ts @@ -0,0 +1,19 @@ +import { defaultFont } from 'src/theme/core/typography'; + +import type { SettingsState } from './types'; + +// ---------------------------------------------------------------------- + +export const STORAGE_KEY = 'app-settings'; + +export const defaultSettings: SettingsState = { + colorScheme: 'dark', + direction: 'ltr', + contrast: 'hight', + navLayout: 'vertical', + primaryColor: 'default', + navColor: 'integrate', + compactLayout: true, + fontFamily: defaultFont, + currency: 'USD', +} as const; diff --git a/dashboard/src/components/settings/context/index.ts b/dashboard/src/components/settings/context/index.ts new file mode 100644 index 00000000..02e1eea7 --- /dev/null +++ b/dashboard/src/components/settings/context/index.ts @@ -0,0 +1,3 @@ +export * from './settings-provider'; + +export * from './use-settings-context'; diff --git a/dashboard/src/components/settings/context/settings-provider.tsx b/dashboard/src/components/settings/context/settings-provider.tsx new file mode 100644 index 00000000..f18f1c91 --- /dev/null +++ b/dashboard/src/components/settings/context/settings-provider.tsx @@ -0,0 +1,52 @@ +'use client'; + +import { useMemo, useState, useCallback, createContext } from 'react'; + +import { useCookies } from 'src/hooks/use-cookies'; +import { useLocalStorage } from 'src/hooks/use-local-storage'; + +import { STORAGE_KEY, defaultSettings } from '../config-settings'; + +import type { SettingsState, SettingsContextValue, SettingsProviderProps } from '../types'; + +// ---------------------------------------------------------------------- + +export const SettingsContext = createContext(undefined); + +export const SettingsConsumer = SettingsContext.Consumer; + +// ---------------------------------------------------------------------- + +export function SettingsProvider({ children, settings, caches = 'localStorage' }: SettingsProviderProps) { + const cookies = useCookies(STORAGE_KEY, settings, defaultSettings); + + const localStorage = useLocalStorage(STORAGE_KEY, settings); + + const values = caches === 'cookie' ? cookies : localStorage; + + const [openDrawer, setOpenDrawer] = useState(false); + + const onToggleDrawer = useCallback(() => { + setOpenDrawer((prev) => !prev); + }, []); + + const onCloseDrawer = useCallback(() => { + setOpenDrawer(false); + }, []); + + const memoizedValue = useMemo( + () => ({ + ...values.state, + canReset: values.canReset, + onReset: values.resetState, + onUpdate: values.setState, + onUpdateField: values.setField, + openDrawer, + onCloseDrawer, + onToggleDrawer, + }), + [values.canReset, values.resetState, values.setField, values.setState, values.state, openDrawer, onCloseDrawer, onToggleDrawer] + ); + + return {children}; +} diff --git a/dashboard/src/components/settings/context/use-settings-context.ts b/dashboard/src/components/settings/context/use-settings-context.ts new file mode 100644 index 00000000..90c5e4b4 --- /dev/null +++ b/dashboard/src/components/settings/context/use-settings-context.ts @@ -0,0 +1,15 @@ +'use client'; + +import { useContext } from 'react'; + +import { SettingsContext } from './settings-provider'; + +// ---------------------------------------------------------------------- + +export function useSettingsContext() { + const context = useContext(SettingsContext); + + if (!context) throw new Error('useSettingsContext must be use inside SettingsProvider'); + + return context; +} diff --git a/dashboard/src/components/settings/drawer/base-option.tsx b/dashboard/src/components/settings/drawer/base-option.tsx new file mode 100644 index 00000000..4dc2eb90 --- /dev/null +++ b/dashboard/src/components/settings/drawer/base-option.tsx @@ -0,0 +1,74 @@ +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; + +import Box from '@mui/material/Box'; +import Switch from '@mui/material/Switch'; +import Tooltip from '@mui/material/Tooltip'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { CONFIG } from 'src/config-global'; +import { varAlpha } from 'src/theme/styles'; + +import { Iconify } from 'src/components/iconify'; + +import { SvgColor } from '../../svg-color'; + +// ---------------------------------------------------------------------- + +type Props = ButtonBaseProps & { + icon: string; + label: string; + selected: boolean; + tooltip?: string; +}; + +export function BaseOption({ icon, label, tooltip, selected, ...other }: Props) { + return ( + `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.12)}`, + '&:hover': { bgcolor: (theme) => varAlpha(theme.vars.palette.grey['500Channel'], 0.08) }, + ...(selected && { + bgcolor: (theme) => varAlpha(theme.vars.palette.grey['500Channel'], 0.08), + }), + }} + {...other} + > + + + + + + + theme.typography.pxToRem(13), + }} + > + {label} + + + {tooltip && ( + + + + )} + + + ); +} diff --git a/dashboard/src/components/settings/drawer/font-options.tsx b/dashboard/src/components/settings/drawer/font-options.tsx new file mode 100644 index 00000000..e505b89c --- /dev/null +++ b/dashboard/src/components/settings/drawer/font-options.tsx @@ -0,0 +1,75 @@ +import Box from '@mui/material/Box'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { CONFIG } from 'src/config-global'; +import { setFont, varAlpha, stylesMode } from 'src/theme/styles'; + +import { Block } from './styles'; +import { SvgColor } from '../../svg-color'; + +// ---------------------------------------------------------------------- + +type Props = { + value: string; + options: string[]; + onClickOption: (newValue: string) => void; +}; + +export function FontOptions({ value, options, onClickOption }: Props) { + return ( + + + {options.map((option) => { + const selected = value === option; + + return ( + + onClickOption(option)} + sx={{ + py: 2, + width: 1, + gap: 0.75, + borderWidth: 1, + borderRadius: 1.5, + borderStyle: 'solid', + display: 'inline-flex', + flexDirection: 'column', + borderColor: 'transparent', + fontFamily: setFont(option), + fontWeight: 'fontWeightMedium', + fontSize: (theme) => theme.typography.pxToRem(12), + color: (theme) => theme.vars.palette.text.disabled, + ...(selected && { + color: (theme) => theme.vars.palette.text.primary, + borderColor: (theme) => varAlpha(theme.vars.palette.grey['500Channel'], 0.08), + boxShadow: (theme) => `-8px 8px 20px -4px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.12)}`, + [stylesMode.dark]: { + boxShadow: (theme) => `-8px 8px 20px -4px ${varAlpha(theme.vars.palette.common.blackChannel, 0.12)}`, + }, + }), + }} + > + + `linear-gradient(135deg, ${theme.vars.palette.primary.light}, ${theme.vars.palette.primary.main})`, + }), + }} + /> + + {option} + + + ); + })} + + + ); +} diff --git a/dashboard/src/components/settings/drawer/fullscreen-button.tsx b/dashboard/src/components/settings/drawer/fullscreen-button.tsx new file mode 100644 index 00000000..0cdf1bda --- /dev/null +++ b/dashboard/src/components/settings/drawer/fullscreen-button.tsx @@ -0,0 +1,48 @@ +'use client'; + +import { useState, useCallback } from 'react'; + +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; + +import { CONFIG } from 'src/config-global'; + +import { SvgColor, svgColorClasses } from '../../svg-color'; + +// ---------------------------------------------------------------------- + +export function FullScreenButton() { + const [fullscreen, setFullscreen] = useState(false); + + const onToggleFullScreen = useCallback(() => { + if (!document.fullscreenElement) { + document.documentElement.requestFullscreen(); + setFullscreen(true); + } else if (document.exitFullscreen) { + document.exitFullscreen(); + setFullscreen(false); + } + }, []); + + return ( + + `linear-gradient(135deg, ${theme.vars.palette.grey[500]} 0%, ${theme.vars.palette.grey[600]} 100%)`, + ...(fullscreen && { + background: (theme) => + `linear-gradient(135deg, ${theme.vars.palette.primary.light} 0%, ${theme.vars.palette.primary.main} 100%)`, + }), + }, + }} + > + + + + ); +} diff --git a/dashboard/src/components/settings/drawer/index.ts b/dashboard/src/components/settings/drawer/index.ts new file mode 100644 index 00000000..6bf08164 --- /dev/null +++ b/dashboard/src/components/settings/drawer/index.ts @@ -0,0 +1 @@ +export * from './settings-drawer'; diff --git a/dashboard/src/components/settings/drawer/nav-options.tsx b/dashboard/src/components/settings/drawer/nav-options.tsx new file mode 100644 index 00000000..ec71150e --- /dev/null +++ b/dashboard/src/components/settings/drawer/nav-options.tsx @@ -0,0 +1,258 @@ +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import { useTheme } from '@mui/material/styles'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { CONFIG } from 'src/config-global'; +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { Block } from './styles'; +import { SvgColor, svgColorClasses } from '../../svg-color'; + +import type { SettingsState } from '../types'; + +// ---------------------------------------------------------------------- + +type Props = { + value: { + color: SettingsState['navColor']; + layout: SettingsState['navLayout']; + }; + options: { + colors: SettingsState['navColor'][]; + layouts: SettingsState['navLayout'][]; + }; + onClickOption: { + color: (newValue: SettingsState['navColor']) => void; + layout: (newValue: SettingsState['navLayout']) => void; + }; + hideNavColor?: boolean; + hideNavLayout?: boolean; +}; + +export function NavOptions({ options, value, onClickOption, hideNavColor, hideNavLayout }: Props) { + const theme = useTheme(); + + const cssVars = { + '--item-radius': '12px', + '--item-bg': theme.vars.palette.grey[500], + '--item-border-color': varAlpha(theme.vars.palette.grey['500Channel'], 0.08), + '--item-active-color': `linear-gradient(135deg, ${theme.vars.palette.primary.light} 0%, ${theme.vars.palette.primary.main} 100%)`, + '--item-active-shadow-light': `-8px 8px 20px -4px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.12)}`, + '--item-active-shadow-dark': `-8px 8px 20px -4px ${varAlpha(theme.vars.palette.common.blackChannel, 0.12)}`, + }; + + const labelStyles: React.CSSProperties = { + display: 'block', + lineHeight: '14px', + color: 'text.secondary', + fontWeight: 'fontWeightSemiBold', + fontSize: theme.typography.pxToRem(11), + }; + + const renderLayout = ( +
    + + Layout + + + {options.layouts.map((option) => ( + onClickOption.layout(option)} /> + ))} + +
    + ); + + const renderColor = ( +
    + + Color + + + {options.colors.map((option) => ( + onClickOption.color(option)} /> + ))} + +
    + ); + + return ( + + {!hideNavLayout && renderLayout} + {!hideNavColor && renderColor} + + ); +} + +// ---------------------------------------------------------------------- + +type OptionProps = ButtonBaseProps & { + option: string; + selected: boolean; +}; + +export function LayoutOption({ option, selected, sx, ...other }: OptionProps) { + const renderNav = () => { + const baseStyles = { flexShrink: 0, borderRadius: 1, bgcolor: 'var(--item-bg)' }; + + const circle = ( + + ); + + const primaryItem = ( + + ); + + const secondaryItem = ( + + ); + + return ( + + {circle} + {primaryItem} + {secondaryItem} + + ); + }; + + const renderContent = ( + + + + ); + + return ( + + {renderNav()} + {renderContent} + + ); +} + +// ---------------------------------------------------------------------- + +export function ColorOption({ option, selected, sx, ...other }: OptionProps) { + return ( + + + + theme.typography.pxToRem(13), + }} + > + {option} + + + ); +} diff --git a/dashboard/src/components/settings/drawer/presets-options.tsx b/dashboard/src/components/settings/drawer/presets-options.tsx new file mode 100644 index 00000000..2f0efbb3 --- /dev/null +++ b/dashboard/src/components/settings/drawer/presets-options.tsx @@ -0,0 +1,54 @@ +import Box from '@mui/material/Box'; +import ButtonBase from '@mui/material/ButtonBase'; +import { alpha as hexAlpha } from '@mui/material/styles'; + +import { CONFIG } from 'src/config-global'; + +import { Block } from './styles'; +import { SvgColor } from '../../svg-color'; + +import type { SettingsState } from '../types'; + +// ---------------------------------------------------------------------- + +type Value = SettingsState['primaryColor']; + +type Props = { + value: Value; + options: { name: Value; value: string }[]; + onClickOption: (newValue: Value) => void; +}; + +export function PresetsOptions({ value, options, onClickOption }: Props) { + return ( + + + {options.map((option) => { + const selected = value === option.name; + + return ( + + onClickOption(option.name)} + sx={{ + width: 1, + height: 64, + borderRadius: 1.5, + color: option.value, + ...(selected && { + bgcolor: hexAlpha(option.value, 0.08), + }), + }} + > + + + + ); + })} + + + ); +} diff --git a/dashboard/src/components/settings/drawer/settings-drawer.tsx b/dashboard/src/components/settings/drawer/settings-drawer.tsx new file mode 100644 index 00000000..55173a6e --- /dev/null +++ b/dashboard/src/components/settings/drawer/settings-drawer.tsx @@ -0,0 +1,193 @@ +'use client'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Badge from '@mui/material/Badge'; +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; +import Typography from '@mui/material/Typography'; +import Drawer, { drawerClasses } from '@mui/material/Drawer'; +import { useTheme, useColorScheme } from '@mui/material/styles'; + +import COLORS from 'src/theme/core/colors.json'; +import { paper, varAlpha } from 'src/theme/styles'; +import { defaultFont } from 'src/theme/core/typography'; +import PRIMARY_COLOR from 'src/theme/with-settings/primary-color.json'; + +import { Iconify } from '../../iconify'; +import { BaseOption } from './base-option'; +import { NavOptions } from './nav-options'; +import { Scrollbar } from '../../scrollbar'; +import { FontOptions } from './font-options'; +import { useSettingsContext } from '../context'; +import { PresetsOptions } from './presets-options'; +import { defaultSettings } from '../config-settings'; +import { FullScreenButton } from './fullscreen-button'; + +import type { SettingsDrawerProps } from '../types'; + +// ---------------------------------------------------------------------- + +export function SettingsDrawer({ + sx, + hideFont, + hideCompact, + hidePresets, + hideNavColor, + hideContrast, + hideNavLayout, + hideDirection, + hideColorScheme, +}: SettingsDrawerProps) { + const theme = useTheme(); + + const settings = useSettingsContext(); + + const { mode, setMode } = useColorScheme(); + + const renderHead = ( + + + Theme + + + + + + { + settings.onReset(); + setMode(defaultSettings.colorScheme); + }} + > + + + + + + + + + + + + + ); + + const renderMode = ( + { + settings.onUpdateField('colorScheme', mode === 'light' ? 'dark' : 'light'); + setMode(mode === 'light' ? 'dark' : 'light'); + }} + /> + ); + + const renderContrast = ( + settings.onUpdateField('contrast', settings.contrast === 'default' ? 'hight' : 'default')} + /> + ); + + const renderRTL = ( + settings.onUpdateField('direction', settings.direction === 'ltr' ? 'rtl' : 'ltr')} + /> + ); + + const renderCompact = ( + settings.onUpdateField('compactLayout', !settings.compactLayout)} + /> + ); + + const renderPresets = ( + settings.onUpdateField('primaryColor', newValue)} + options={[ + { name: 'default', value: COLORS.primary.main }, + { name: 'cyan', value: PRIMARY_COLOR.cyan.main }, + { name: 'purple', value: PRIMARY_COLOR.purple.main }, + { name: 'blue', value: PRIMARY_COLOR.blue.main }, + { name: 'orange', value: PRIMARY_COLOR.orange.main }, + { name: 'red', value: PRIMARY_COLOR.red.main }, + ]} + /> + ); + + const renderNav = ( + settings.onUpdateField('navColor', newValue), + layout: (newValue) => settings.onUpdateField('navLayout', newValue), + }} + options={{ + colors: ['integrate', 'apparent'], + layouts: ['vertical', 'horizontal', 'mini'], + }} + hideNavColor={hideNavColor} + hideNavLayout={hideNavLayout} + /> + ); + + const renderFont = ( + settings.onUpdateField('fontFamily', newValue)} + options={[defaultFont, 'Inter']} + /> + ); + + return ( + + {renderHead} + + + + + {!hideColorScheme && renderMode} + {!hideContrast && renderContrast} + {!hideDirection && renderRTL} + {!hideCompact && renderCompact} + + {!(hideNavLayout && hideNavColor) && renderNav} + {!hidePresets && renderPresets} + {!hideFont && renderFont} + + + + ); +} diff --git a/dashboard/src/components/settings/drawer/styles.tsx b/dashboard/src/components/settings/drawer/styles.tsx new file mode 100644 index 00000000..f192ddc5 --- /dev/null +++ b/dashboard/src/components/settings/drawer/styles.tsx @@ -0,0 +1,63 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import Tooltip from '@mui/material/Tooltip'; + +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { Iconify } from 'src/components/iconify'; + +// ---------------------------------------------------------------------- + +type Props = { + title: string; + tooltip?: string; + sx?: SxProps; + children: React.ReactNode; +}; + +export function Block({ title, tooltip, children, sx }: Props) { + return ( + `solid 1px ${varAlpha(theme.vars.palette.grey['500Channel'], 0.12)}`, + ...sx, + }} + > + + {title} + + {tooltip && ( + + + + )} + + + {children} + + ); +} diff --git a/dashboard/src/components/settings/index.ts b/dashboard/src/components/settings/index.ts new file mode 100644 index 00000000..22824208 --- /dev/null +++ b/dashboard/src/components/settings/index.ts @@ -0,0 +1,7 @@ +export * from './drawer'; + +export * from './context'; + +export type * from './types'; + +export * from './config-settings'; diff --git a/dashboard/src/components/settings/server.ts b/dashboard/src/components/settings/server.ts new file mode 100644 index 00000000..0cab1462 --- /dev/null +++ b/dashboard/src/components/settings/server.ts @@ -0,0 +1,13 @@ +import { cookies } from 'next/headers'; + +import { STORAGE_KEY, defaultSettings } from './config-settings'; + +// ---------------------------------------------------------------------- + +export async function detectSettings() { + const cookieStore = cookies(); + + const settingsStore = cookieStore.get(STORAGE_KEY); + + return settingsStore ? JSON.parse(settingsStore?.value) : defaultSettings; +} diff --git a/dashboard/src/components/settings/types.ts b/dashboard/src/components/settings/types.ts new file mode 100644 index 00000000..f3e70b63 --- /dev/null +++ b/dashboard/src/components/settings/types.ts @@ -0,0 +1,48 @@ +import type { CurrencyValue } from 'src/types/currency'; +import type { Theme, SxProps } from '@mui/material/styles'; +import type { ThemeDirection, ThemeColorScheme } from 'src/theme/types'; + +// ---------------------------------------------------------------------- + +export type SettingsCaches = 'localStorage' | 'cookie'; + +export type SettingsDrawerProps = { + sx?: SxProps; + hideFont?: boolean; + hideCompact?: boolean; + hidePresets?: boolean; + hideNavColor?: boolean; + hideContrast?: boolean; + hideDirection?: boolean; + hideNavLayout?: boolean; + hideColorScheme?: boolean; +}; + +export type SettingsState = { + fontFamily: string; + compactLayout: boolean; + direction: ThemeDirection; + colorScheme: ThemeColorScheme; + contrast: 'default' | 'hight'; + navColor: 'integrate' | 'apparent'; + navLayout: 'vertical' | 'horizontal' | 'mini'; + primaryColor: 'default' | 'cyan' | 'purple' | 'blue' | 'orange' | 'red'; + currency: CurrencyValue; +}; + +export type SettingsContextValue = SettingsState & { + canReset: boolean; + onReset: () => void; + onUpdate: (updateValue: Partial) => void; + onUpdateField: (name: keyof SettingsState, updateValue: SettingsState[keyof SettingsState]) => void; + // Drawer + openDrawer: boolean; + onCloseDrawer: () => void; + onToggleDrawer: () => void; +}; + +export type SettingsProviderProps = { + settings: SettingsState; + caches?: SettingsCaches; + children: React.ReactNode; +}; diff --git a/dashboard/src/components/snackbar/classes.ts b/dashboard/src/components/snackbar/classes.ts new file mode 100644 index 00000000..e4c0e519 --- /dev/null +++ b/dashboard/src/components/snackbar/classes.ts @@ -0,0 +1,25 @@ +// ---------------------------------------------------------------------- + +export const toasterClasses = { + root: 'toaster__root', + toast: 'toaster__toast', + title: 'toaster__title', + icon: 'toaster__icon', + iconSvg: 'toaster__icon__svg', + content: 'toaster__content', + description: 'toaster__description', + actionButton: 'toaster__action__button', + cancelButton: 'toaster__cancel__button', + closeButton: 'toaster__close_button', + loadingIcon: 'toaster__loading_icon', + // + default: 'toaster__default', + error: 'toaster__error', + success: 'toaster__success', + warning: 'toaster__warning', + info: 'toaster__info', + // + loader: 'sonner-loader', + loaderVisible: '&[data-visible="true"]', + closeBtnVisible: '[data-close-button="true"]', +}; diff --git a/dashboard/src/components/snackbar/index.ts b/dashboard/src/components/snackbar/index.ts new file mode 100644 index 00000000..801d8ecd --- /dev/null +++ b/dashboard/src/components/snackbar/index.ts @@ -0,0 +1,3 @@ +export * from 'sonner'; + +export * from './snackbar'; diff --git a/dashboard/src/components/snackbar/snackbar.tsx b/dashboard/src/components/snackbar/snackbar.tsx new file mode 100644 index 00000000..cc95e490 --- /dev/null +++ b/dashboard/src/components/snackbar/snackbar.tsx @@ -0,0 +1,53 @@ +'use client'; + +import Portal from '@mui/material/Portal'; + +import { Iconify } from '../iconify'; +import { StyledToaster } from './styles'; +import { toasterClasses } from './classes'; + +// ---------------------------------------------------------------------- + +export function Snackbar() { + return ( + + , + info: , + success: , + warning: , + error: , + }} + /> + + ); +} diff --git a/dashboard/src/components/snackbar/styles.tsx b/dashboard/src/components/snackbar/styles.tsx new file mode 100644 index 00000000..2c4660b7 --- /dev/null +++ b/dashboard/src/components/snackbar/styles.tsx @@ -0,0 +1,178 @@ +import { Toaster } from 'sonner'; + +import { styled } from '@mui/material/styles'; + +import { varAlpha } from 'src/theme/styles'; + +import { toasterClasses } from './classes'; + +// ---------------------------------------------------------------------- + +export const StyledToaster = styled(Toaster)(({ theme }) => { + const baseStyles = { + toastDefault: { + padding: theme.spacing(1, 1, 1, 1.5), + boxShadow: theme.customShadows.z8, + color: theme.vars.palette.background.paper, + backgroundColor: theme.vars.palette.text.primary, + }, + toastColor: { + padding: theme.spacing(0.5, 1, 0.5, 0.5), + boxShadow: theme.customShadows.z8, + color: theme.vars.palette.text.primary, + backgroundColor: theme.vars.palette.background.paper, + }, + toastLoader: { + padding: theme.spacing(0.5, 1, 0.5, 0.5), + boxShadow: theme.customShadows.z8, + color: theme.vars.palette.text.primary, + backgroundColor: theme.vars.palette.background.paper, + }, + }; + + const loadingStyles = { + top: 0, + left: 0, + width: '100%', + height: '100%', + display: 'none', + transform: 'none', + overflow: 'hidden', + alignItems: 'center', + position: 'relative', + borderRadius: 'inherit', + justifyContent: 'center', + background: theme.vars.palette.background.neutral, + [`& .${toasterClasses.loadingIcon}`]: { + zIndex: 9, + width: 24, + height: 24, + borderRadius: '50%', + animation: 'rotate 3s infinite linear', + background: `conic-gradient(${varAlpha(theme.vars.palette.text.primaryChannel, 0)}, ${varAlpha(theme.vars.palette.text.disabledChannel, 0.64)})`, + }, + [toasterClasses.loaderVisible]: { display: 'flex' }, + }; + + return { + width: 300, + [`& .${toasterClasses.toast}`]: { + gap: 12, + width: '100%', + minHeight: 52, + display: 'flex', + borderRadius: 12, + alignItems: 'center', + }, + /* + * Content + */ + [`& .${toasterClasses.content}`]: { + gap: 0, + flex: '1 1 auto', + }, + [`& .${toasterClasses.title}`]: { + fontSize: theme.typography.subtitle2.fontSize, + }, + [`& .${toasterClasses.description}`]: { + ...theme.typography.caption, + opacity: 0.64, + }, + /* + * Buttons + */ + [`& .${toasterClasses.actionButton}`]: {}, + [`& .${toasterClasses.cancelButton}`]: {}, + [`& .${toasterClasses.closeButton}`]: { + top: 0, + right: 0, + left: 'auto', + color: 'currentColor', + backgroundColor: 'transparent', + transform: 'translate(-6px, 6px)', + borderColor: varAlpha(theme.vars.palette.grey['500Channel'], 0.16), + transition: theme.transitions.create(['background-color', 'border-color']), + '&:hover': { + borderColor: varAlpha(theme.vars.palette.grey['500Channel'], 0.24), + backgroundColor: varAlpha(theme.vars.palette.grey['500Channel'], 0.08), + }, + }, + /* + * Icon + */ + [`& .${toasterClasses.icon}`]: { + margin: 0, + width: 48, + height: 48, + alignItems: 'center', + borderRadius: 'inherit', + justifyContent: 'center', + alignSelf: 'flex-start', + [`& .${toasterClasses.iconSvg}`]: { + width: 24, + height: 24, + fontSize: 0, + }, + }, + + /* + * Default + */ + '@keyframes rotate': { to: { transform: 'rotate(1turn)' } }, + + [`& .${toasterClasses.default}`]: { + ...baseStyles.toastDefault, + [`&:has(${toasterClasses.closeBtnVisible})`]: { + [`& .${toasterClasses.content}`]: { + paddingRight: 32, + }, + }, + [`&:has(.${toasterClasses.loader})`]: baseStyles.toastLoader, + /* + * With loader + */ + [`&:has(.${toasterClasses.loader})`]: baseStyles.toastLoader, + [`& .${toasterClasses.loader}`]: loadingStyles, + }, + /* + * Error + */ + [`& .${toasterClasses.error}`]: { + ...baseStyles.toastColor, + [`& .${toasterClasses.icon}`]: { + color: theme.vars.palette.error.main, + backgroundColor: varAlpha(theme.vars.palette.error.mainChannel, 0.08), + }, + }, + /* + * Success + */ + [`& .${toasterClasses.success}`]: { + ...baseStyles.toastColor, + [`& .${toasterClasses.icon}`]: { + color: theme.vars.palette.success.main, + backgroundColor: varAlpha(theme.vars.palette.success.mainChannel, 0.08), + }, + }, + /* + * Warning + */ + [`& .${toasterClasses.warning}`]: { + ...baseStyles.toastColor, + [`& .${toasterClasses.icon}`]: { + color: theme.vars.palette.warning.main, + backgroundColor: varAlpha(theme.vars.palette.warning.mainChannel, 0.08), + }, + }, + /* + * Info + */ + [`& .${toasterClasses.info}`]: { + ...baseStyles.toastColor, + [`& .${toasterClasses.icon}`]: { + color: theme.vars.palette.info.main, + backgroundColor: varAlpha(theme.vars.palette.info.mainChannel, 0.08), + }, + }, + }; +}); diff --git a/dashboard/src/components/svg-color/classes.ts b/dashboard/src/components/svg-color/classes.ts new file mode 100644 index 00000000..2d56bc83 --- /dev/null +++ b/dashboard/src/components/svg-color/classes.ts @@ -0,0 +1,3 @@ +// ---------------------------------------------------------------------- + +export const svgColorClasses = { root: 'mnl__svg__color__root' }; diff --git a/dashboard/src/components/svg-color/index.ts b/dashboard/src/components/svg-color/index.ts new file mode 100644 index 00000000..372c31dd --- /dev/null +++ b/dashboard/src/components/svg-color/index.ts @@ -0,0 +1,5 @@ +export * from './classes'; + +export * from './svg-color'; + +export type * from './types'; diff --git a/dashboard/src/components/svg-color/svg-color.tsx b/dashboard/src/components/svg-color/svg-color.tsx new file mode 100644 index 00000000..51092fbe --- /dev/null +++ b/dashboard/src/components/svg-color/svg-color.tsx @@ -0,0 +1,28 @@ +import { forwardRef } from 'react'; + +import Box from '@mui/material/Box'; + +import { svgColorClasses } from './classes'; + +import type { SvgColorProps } from './types'; + +// ---------------------------------------------------------------------- + +export const SvgColor = forwardRef(({ src, width = 24, className, sx, ...other }, ref) => ( + +)); diff --git a/dashboard/src/components/svg-color/types.ts b/dashboard/src/components/svg-color/types.ts new file mode 100644 index 00000000..c795d7b3 --- /dev/null +++ b/dashboard/src/components/svg-color/types.ts @@ -0,0 +1,7 @@ +import type { BoxProps } from '@mui/material/Box'; + +// ---------------------------------------------------------------------- + +export type SvgColorProps = BoxProps & { + src: string; +}; diff --git a/dashboard/src/components/table/index.ts b/dashboard/src/components/table/index.ts new file mode 100644 index 00000000..aa4dcd7c --- /dev/null +++ b/dashboard/src/components/table/index.ts @@ -0,0 +1,17 @@ +export * from './utils'; + +export * from './use-table'; + +export type * from './types'; + +export * from './table-no-data'; + +export * from './table-skeleton'; + +export * from './table-empty-rows'; + +export * from './table-head-custom'; + +export * from './table-selected-action'; + +export * from './table-pagination-custom'; diff --git a/dashboard/src/components/table/table-empty-rows.tsx b/dashboard/src/components/table/table-empty-rows.tsx new file mode 100644 index 00000000..62dc9816 --- /dev/null +++ b/dashboard/src/components/table/table-empty-rows.tsx @@ -0,0 +1,21 @@ +import TableRow from '@mui/material/TableRow'; +import TableCell from '@mui/material/TableCell'; + +// ---------------------------------------------------------------------- + +export type TableEmptyRowsProps = { + height?: number; + emptyRows: number; +}; + +export function TableEmptyRows({ emptyRows, height }: TableEmptyRowsProps) { + if (!emptyRows) { + return null; + } + + return ( + + + + ); +} diff --git a/dashboard/src/components/table/table-head-custom.tsx b/dashboard/src/components/table/table-head-custom.tsx new file mode 100644 index 00000000..5c057d6b --- /dev/null +++ b/dashboard/src/components/table/table-head-custom.tsx @@ -0,0 +1,92 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import TableRow from '@mui/material/TableRow'; +import Checkbox from '@mui/material/Checkbox'; +import TableHead from '@mui/material/TableHead'; +import TableCell from '@mui/material/TableCell'; +import TableSortLabel from '@mui/material/TableSortLabel'; + +// ---------------------------------------------------------------------- + +const visuallyHidden = { + border: 0, + margin: -1, + padding: 0, + width: '1px', + height: '1px', + overflow: 'hidden', + position: 'absolute', + whiteSpace: 'nowrap', + clip: 'rect(0 0 0 0)', +} as const; + +// ---------------------------------------------------------------------- + +export type TableHeadCustomProps = { + orderBy?: string; + rowCount?: number; + sx?: SxProps; + numSelected?: number; + order?: 'asc' | 'desc'; + onSort?: (id: string) => void; + headLabel: Record[]; + onSelectAllRows?: (checked: boolean) => void; +}; + +export function TableHeadCustom({ + sx, + order, + onSort, + orderBy, + headLabel, + rowCount = 0, + numSelected = 0, + onSelectAllRows, +}: TableHeadCustomProps) { + return ( + + + {onSelectAllRows && ( + + ) => onSelectAllRows(event.target.checked)} + inputProps={{ + name: 'select-all-rows', + 'aria-label': 'select all rows', + }} + /> + + )} + + {headLabel.map((headCell) => ( + + {onSort ? ( + onSort(headCell.id)} + > + {headCell.label} + + {orderBy === headCell.id ? ( + {order === 'desc' ? 'sorted descending' : 'sorted ascending'} + ) : null} + + ) : ( + headCell.label + )} + + ))} + + + ); +} diff --git a/dashboard/src/components/table/table-no-data.tsx b/dashboard/src/components/table/table-no-data.tsx new file mode 100644 index 00000000..6fc8caa1 --- /dev/null +++ b/dashboard/src/components/table/table-no-data.tsx @@ -0,0 +1,27 @@ +import type { Theme, SxProps } from '@mui/material/styles'; + +import TableRow from '@mui/material/TableRow'; +import TableCell from '@mui/material/TableCell'; + +import { EmptyContent } from '../empty-content'; + +// ---------------------------------------------------------------------- + +export type TableNoDataProps = { + notFound: boolean; + sx?: SxProps; +}; + +export function TableNoData({ notFound, sx }: TableNoDataProps) { + return ( + + {notFound ? ( + + + + ) : ( + + )} + + ); +} diff --git a/dashboard/src/components/table/table-pagination-custom.tsx b/dashboard/src/components/table/table-pagination-custom.tsx new file mode 100644 index 00000000..83c77268 --- /dev/null +++ b/dashboard/src/components/table/table-pagination-custom.tsx @@ -0,0 +1,42 @@ +import type { Theme, SxProps } from '@mui/material/styles'; +import type { TablePaginationProps } from '@mui/material/TablePagination'; + +import Box from '@mui/material/Box'; +import Switch from '@mui/material/Switch'; +import TablePagination from '@mui/material/TablePagination'; +import FormControlLabel from '@mui/material/FormControlLabel'; + +// ---------------------------------------------------------------------- + +export type TablePaginationCustomProps = TablePaginationProps & { + dense?: boolean; + sx?: SxProps; + onChangeDense?: (event: React.ChangeEvent) => void; +}; + +export function TablePaginationCustom({ + sx, + dense, + onChangeDense, + rowsPerPageOptions = [5, 10, 25], + ...other +}: TablePaginationCustomProps) { + return ( + + + + {onChangeDense && ( + } + sx={{ + pl: 2, + py: 1.5, + top: 0, + position: { sm: 'absolute' }, + }} + /> + )} + + ); +} diff --git a/dashboard/src/components/table/table-selected-action.tsx b/dashboard/src/components/table/table-selected-action.tsx new file mode 100644 index 00000000..803311e3 --- /dev/null +++ b/dashboard/src/components/table/table-selected-action.tsx @@ -0,0 +1,62 @@ +import type { StackProps } from '@mui/material/Stack'; + +import Stack from '@mui/material/Stack'; +import Checkbox from '@mui/material/Checkbox'; +import Typography from '@mui/material/Typography'; + +// ---------------------------------------------------------------------- + +export type TableSelectedActionProps = StackProps & { + dense?: boolean; + rowCount: number; + numSelected: number; + action?: React.ReactNode; + onSelectAllRows: (checked: boolean) => void; +}; + +export function TableSelectedAction({ dense, action, rowCount, numSelected, onSelectAllRows, sx, ...other }: TableSelectedActionProps) { + if (!numSelected) { + return null; + } + + return ( + + ) => onSelectAllRows(event.target.checked)} + /> + + + {numSelected} selected + + + {action && action} + + ); +} diff --git a/dashboard/src/components/table/table-skeleton.tsx b/dashboard/src/components/table/table-skeleton.tsx new file mode 100644 index 00000000..f6532f12 --- /dev/null +++ b/dashboard/src/components/table/table-skeleton.tsx @@ -0,0 +1,32 @@ +import type { TableRowProps } from '@mui/material/TableRow'; + +import Stack from '@mui/material/Stack'; +import Skeleton from '@mui/material/Skeleton'; +import TableRow from '@mui/material/TableRow'; +import TableCell from '@mui/material/TableCell'; + +// ---------------------------------------------------------------------- + +export function TableSkeleton({ ...other }: TableRowProps) { + return ( + + + + + + + + + + + + + ); +} diff --git a/dashboard/src/components/table/types.ts b/dashboard/src/components/table/types.ts new file mode 100644 index 00000000..550e72e4 --- /dev/null +++ b/dashboard/src/components/table/types.ts @@ -0,0 +1,28 @@ +// ---------------------------------------------------------------------- + +export type TableProps = { + dense: boolean; + page: number; + rowsPerPage: number; + order: 'asc' | 'desc'; + orderBy: string; + // + selected: string[]; + onSelectRow: (id: string) => void; + onSelectAllRows: (checked: boolean, newSelecteds: string[]) => void; + // + onResetPage: () => void; + onSort: (id: string) => void; + onChangePage: (event: unknown, newPage: number) => void; + onChangeRowsPerPage: (event: React.ChangeEvent) => void; + onChangeDense: (event: React.ChangeEvent) => void; + onUpdatePageDeleteRow: (totalRowsInPage: number) => void; + onUpdatePageDeleteRows: ({ totalRowsInPage, totalRowsFiltered }: { totalRowsInPage: number; totalRowsFiltered: number }) => void; + // + setPage: React.Dispatch>; + setDense: React.Dispatch>; + setOrder: React.Dispatch>; + setOrderBy: React.Dispatch>; + setSelected: React.Dispatch>; + setRowsPerPage: React.Dispatch>; +}; diff --git a/dashboard/src/components/table/use-table.ts b/dashboard/src/components/table/use-table.ts new file mode 100644 index 00000000..fb39ad34 --- /dev/null +++ b/dashboard/src/components/table/use-table.ts @@ -0,0 +1,135 @@ +import { useState, useCallback } from 'react'; + +import type { TableProps } from './types'; + +// ---------------------------------------------------------------------- + +type UseTableReturn = TableProps; + +export type UseTableProps = { + defaultDense?: boolean; + defaultOrder?: 'asc' | 'desc'; + defaultOrderBy?: string; + defaultSelected?: string[]; + defaultRowsPerPage?: number; + defaultCurrentPage?: number; +}; + +export function useTable(props?: UseTableProps): UseTableReturn { + const [dense, setDense] = useState(!!props?.defaultDense); + + const [page, setPage] = useState(props?.defaultCurrentPage || 0); + + const [orderBy, setOrderBy] = useState(props?.defaultOrderBy || 'name'); + + const [rowsPerPage, setRowsPerPage] = useState(props?.defaultRowsPerPage || 10); + + const [order, setOrder] = useState<'asc' | 'desc'>(props?.defaultOrder || 'desc'); + + const [selected, setSelected] = useState(props?.defaultSelected || []); + + const onSort = useCallback( + (id: string) => { + const isAsc = orderBy === id && order === 'asc'; + if (id !== '') { + setOrder(isAsc ? 'desc' : 'asc'); + setOrderBy(id); + } + }, + [order, orderBy] + ); + + const onSelectRow = useCallback( + (inputValue: string) => { + const newSelected = selected.includes(inputValue) ? selected.filter((value) => value !== inputValue) : [...selected, inputValue]; + + setSelected(newSelected); + }, + [selected] + ); + + const onChangeRowsPerPage = useCallback((event: React.ChangeEvent) => { + setPage(0); + setRowsPerPage(parseInt(event.target.value, 10)); + }, []); + + const onChangeDense = useCallback((event: React.ChangeEvent) => { + setDense(event.target.checked); + }, []); + + const onSelectAllRows = useCallback((checked: boolean, inputValue: string[]) => { + if (checked) { + setSelected(inputValue); + return; + } + setSelected([]); + }, []); + + const onChangePage = useCallback((event: unknown, newPage: number) => { + setPage(newPage); + }, []); + + const onResetPage = useCallback(() => { + setPage(0); + }, []); + + const onUpdatePageDeleteRow = useCallback( + (totalRowsInPage: number) => { + setSelected([]); + if (page) { + if (totalRowsInPage < 2) { + setPage(page - 1); + } + } + }, + [page] + ); + + const onUpdatePageDeleteRows = useCallback( + ({ totalRowsInPage, totalRowsFiltered }: { totalRowsInPage: number; totalRowsFiltered: number }) => { + const totalSelected = selected.length; + + setSelected([]); + + if (page) { + if (totalSelected === totalRowsInPage) { + setPage(page - 1); + } else if (totalSelected === totalRowsFiltered) { + setPage(0); + } else if (totalSelected > totalRowsInPage) { + const newPage = Math.ceil((totalRowsFiltered - totalSelected) / rowsPerPage) - 1; + + setPage(newPage); + } + } + }, + [page, rowsPerPage, selected.length] + ); + + return { + dense, + order, + page, + orderBy, + rowsPerPage, + // + selected, + onSelectRow, + onSelectAllRows, + // + onSort, + onChangePage, + onChangeDense, + onResetPage, + onChangeRowsPerPage, + onUpdatePageDeleteRow, + onUpdatePageDeleteRows, + // + setPage, + setDense, + setOrder, + setOrderBy, + setSelected, + setRowsPerPage, + }; +} diff --git a/dashboard/src/components/table/utils.ts b/dashboard/src/components/table/utils.ts new file mode 100644 index 00000000..d9382971 --- /dev/null +++ b/dashboard/src/components/table/utils.ts @@ -0,0 +1,51 @@ +// ---------------------------------------------------------------------- + +export function rowInPage(data: T[], page: number, rowsPerPage: number) { + return data.slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage); +} + +// ---------------------------------------------------------------------- + +export function emptyRows(page: number, rowsPerPage: number, arrayLength: number) { + return page ? Math.max(0, (1 + page) * rowsPerPage - arrayLength) : 0; +} + +// ---------------------------------------------------------------------- + +function descendingComparator(a: T, b: T, orderBy: keyof T) { + if (a[orderBy] === undefined) { + return 1; + } + if (b[orderBy] === undefined) { + return -1; + } + if (a[orderBy] === null) { + return 1; + } + if (b[orderBy] === null) { + return -1; + } + if (b[orderBy] < a[orderBy]) { + return -1; + } + if (b[orderBy] > a[orderBy]) { + return 1; + } + return 0; +} + +// ---------------------------------------------------------------------- + +export function getComparator( + order: 'asc' | 'desc', + orderBy: Key +): ( + a: { + [key in Key]: number | string | Date; + }, + b: { + [key in Key]: number | string | Date; + } +) => number { + return order === 'desc' ? (a, b) => descendingComparator(a, b, orderBy) : (a, b) => -descendingComparator(a, b, orderBy); +} diff --git a/dashboard/src/components/transactions/clean-transactions-button.tsx b/dashboard/src/components/transactions/clean-transactions-button.tsx new file mode 100644 index 00000000..eaa4f747 --- /dev/null +++ b/dashboard/src/components/transactions/clean-transactions-button.tsx @@ -0,0 +1,65 @@ +import type { LoadingButtonProps } from '@mui/lab'; + +import { LoadingButton } from '@mui/lab'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { useTranslate } from 'src/locales'; +import { deleteFailedPayments, deleteExpiredInvoices } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; + +import { TransactionType } from 'src/types/transaction'; + +// ---------------------------------------------------------------------- + +interface Props { + onSuccess: VoidFunction; + buttonProps?: LoadingButtonProps; + children?: React.ReactNode; + transactionType?: TransactionType; +} + +export function CleanTransactionsButton({ onSuccess, buttonProps, transactionType, children }: Props) { + const { t } = useTranslate(); + const isDeleting = useBoolean(); + + const handleCleanTransactions = async () => { + try { + isDeleting.onTrue(); + + let nInvoicesDeleted = 0; + let nPaymentsDeleted = 0; + + if (transactionType === TransactionType.INVOICE || !transactionType) { + const { data } = await deleteExpiredInvoices(); + nInvoicesDeleted = data!; + } + + if (transactionType === TransactionType.PAYMENT || !transactionType) { + const { data } = await deleteFailedPayments(); + nPaymentsDeleted = data!; + } + + if (nInvoicesDeleted > 0) { + toast.success(t('clean_transactions_button.invoices_deleted_success', { count: nInvoicesDeleted })); + onSuccess(); + } + + if (nPaymentsDeleted > 0) { + toast.success(t('clean_transactions_button.payments_deleted_success', { count: nPaymentsDeleted })); + onSuccess(); + } + } catch (error) { + toast.error(error.reason); + } finally { + isDeleting.onFalse(); + } + }; + + return ( + + {children || t('clean_transactions_button.clean_transactions')}{' '} + + ); +} diff --git a/dashboard/src/components/transactions/confirm-payment-dialog.tsx b/dashboard/src/components/transactions/confirm-payment-dialog.tsx new file mode 100644 index 00000000..0815f8e9 --- /dev/null +++ b/dashboard/src/components/transactions/confirm-payment-dialog.tsx @@ -0,0 +1,339 @@ +import type { IFiatPrices } from 'src/types/bitcoin'; +import type { InputProps } from '@mui/material/Input'; +import type { DialogProps } from '@mui/material/Dialog'; +import type { PaymentResponse, SendPaymentRequest } from 'src/lib/swissknife'; + +import { m } from 'framer-motion'; +import { useForm } from 'react-hook-form'; +import { ajvResolver } from '@hookform/resolvers/ajv'; +import { useState, useEffect, useCallback } from 'react'; + +import Box from '@mui/material/Box'; +import { Link } from '@mui/material'; +import Stack from '@mui/material/Stack'; +import { LoadingButton } from '@mui/lab'; +import Button from '@mui/material/Button'; +import Avatar from '@mui/material/Avatar'; +import Dialog from '@mui/material/Dialog'; +import Tooltip from '@mui/material/Tooltip'; +import Typography from '@mui/material/Typography'; +import DialogTitle from '@mui/material/DialogTitle'; +import ListItemText from '@mui/material/ListItemText'; +import DialogActions from '@mui/material/DialogActions'; +import Input, { inputClasses } from '@mui/material/Input'; + +import { ajvOptions } from 'src/utils/ajv'; +import { satsToFiat } from 'src/utils/fiat'; +import { fCurrency } from 'src/utils/format-number'; +import { truncateText } from 'src/utils/format-string'; + +import { maxLine } from 'src/theme/styles'; +import { CONFIG } from 'src/config-global'; +import { useTranslate } from 'src/locales'; +import { pay, walletPay, SendPaymentRequestSchema } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; +import { SatsWithIcon } from 'src/components/bitcoin'; +import { Form } from 'src/components/hook-form/form-provider'; +import { varBounce, MotionContainer } from 'src/components/animate'; +import { RHFTextField, RHFWalletSelect } from 'src/components/hook-form'; + +import { useSettingsContext } from '../settings'; + +// ---------------------------------------------------------------------- + +const MIN_AMOUNT = 0; +const MAX_AMOUNT = 200000; + +// ---------------------------------------------------------------------- + +type ConfirmPaymentDialogProps = DialogProps & { + input: string; + fiatPrices: IFiatPrices; + bolt11?: any; + onClose: () => void; + onSuccess?: () => void; + isAdmin?: boolean; + walletId?: string; +}; + +// @ts-ignore +const resolver = ajvResolver(SendPaymentRequestSchema, ajvOptions); + +export function ConfirmPaymentDialog({ + open, + input, + isAdmin, + walletId, + fiatPrices, + bolt11, + onClose, + onSuccess, +}: ConfirmPaymentDialogProps) { + const { t } = useTranslate(); + + const [autoWidth, setAutoWidth] = useState(24); + const [payment, setPayment] = useState(undefined); + const { currency } = useSettingsContext(); + + const methods = useForm({ + resolver, + defaultValues: { + amount_msat: MIN_AMOUNT, + comment: '', + wallet: null, + input, + }, + }); + + const { + watch, + handleSubmit, + setValue, + formState: { isSubmitting }, + reset, + } = methods; + + const amount = watch('amount_msat'); + const wallet = watch('wallet'); + + const onSubmit = async (body: any) => { + try { + let paymentResponse; + const reqBody: SendPaymentRequest = { + wallet_id: walletId || body.wallet?.id, + amount_msat: body.amount_msat! * 1000, + comment: body.comment || undefined, + input: body.input, + }; + + if (isAdmin) { + const { data } = await pay({ body: reqBody }); + paymentResponse = data; + } else { + const { data } = await walletPay({ body: reqBody }); + paymentResponse = data; + } + + reset(); + setPayment(paymentResponse); + onSuccess?.(); + } catch (error) { + toast.error(error.reason); + } + }; + + useEffect(() => { + if (bolt11) { + const amountSection = bolt11.sections.find((s: any) => s.name === 'amount'); + const satsAmount = amountSection ? amountSection.value / 1000 : MIN_AMOUNT; + const comment = bolt11.description || ''; + + reset({ + amount_msat: satsAmount, + comment, + wallet: null, + input, + }); + } else { + reset({ + amount_msat: MIN_AMOUNT, + comment: '', + wallet: null, + input, + }); + } + }, [input, bolt11, reset]); + + const handleAutoWidth = useCallback(() => { + const getNumberLength = amount.toString().length; + setAutoWidth(getNumberLength * 24); + }, [amount]); + + useEffect(() => { + handleAutoWidth(); + }, [handleAutoWidth, amount]); + + const handleBlur = useCallback(() => { + if (amount !== undefined) { + if (amount < 0) { + setValue('amount_msat', 0); + } else if (amount > MAX_AMOUNT) { + setValue('amount_msat', MAX_AMOUNT); + } + } + }, [amount, setValue]); + + const handleChangeAmount = useCallback( + (event: React.ChangeEvent) => { + setValue('amount_msat', Number(event.target.value)); + }, + [setValue] + ); + + const handleClose = () => { + reset(); + setPayment(undefined); + onClose(); + }; + + const invoiceType = () => { + if (bolt11) { + return t('confirm_payment_dialog.bolt11_transfer'); + } + if (input.includes(CONFIG.site.domain)) { + return t('confirm_payment_dialog.internal_transfer'); + } + if (input.toLowerCase().startsWith('lnurl')) { + return t('confirm_payment_dialog.lnurl_transfer'); + } + return t('confirm_payment_dialog.lightning_transfer'); + }; + + return ( + + {t('confirm_payment_dialog.title')} + + {payment !== undefined ? ( + <> + + + + + + + + {t('confirm_payment_dialog.success_message')} {truncateText(input, 30)} + + + {payment.success_action?.message && ( + + + {payment.success_action.message} + + + )} + + + + + + + ) : ( +
    + + + + {input?.charAt(0).toUpperCase()} + + {truncateText(input, 30)}} + secondary={invoiceType()} + /> + + + + {fCurrency(satsToFiat(amount!, fiatPrices, currency), { currency })} + + + + + + + {walletId ? ( + + ) : ( + isAdmin && + )} + + + + + + {t('confirm_payment_dialog.confirm_send')} + + +
    + )} +
    + ); +} + +// ---------------------------------------------------------------------- + +type InputAmountProps = InputProps & { + autoWidth: number; + amount: number | number[]; +}; + +function InputAmount({ autoWidth, amount, disabled, onBlur, onChange, sx, ...other }: InputAmountProps) { + return ( + + + + + + + + ); +} diff --git a/dashboard/src/components/transactions/index.ts b/dashboard/src/components/transactions/index.ts new file mode 100644 index 00000000..34532323 --- /dev/null +++ b/dashboard/src/components/transactions/index.ts @@ -0,0 +1,10 @@ +export * from './new-invoice-form'; +export * from './new-invoice-card'; +export * from './new-payment-form'; + +export * from './new-payment-card'; +export * from './new-invoice-dialog'; +export * from './new-payment-dialog'; +export * from './confirm-payment-dialog'; + +export * from './clean-transactions-button'; diff --git a/dashboard/src/components/transactions/new-invoice-card.tsx b/dashboard/src/components/transactions/new-invoice-card.tsx new file mode 100644 index 00000000..8f88f60a --- /dev/null +++ b/dashboard/src/components/transactions/new-invoice-card.tsx @@ -0,0 +1,27 @@ +import type { CardProps } from '@mui/material'; + +import Box from '@mui/material/Box'; +import { Card, CardHeader } from '@mui/material'; + +import { NewInvoiceForm } from './new-invoice-form'; + +import type { NewInvoiceFormProps } from './new-invoice-form'; + +// ---------------------------------------------------------------------- + +type Props = CardProps & + NewInvoiceFormProps & { + subheader?: string; + }; + +export function NewInvoiceCard({ onSuccess, title, subheader, lnAddress, fiatPrices, sx, ...other }: Props) { + return ( + + + + + + + + ); +} diff --git a/dashboard/src/components/transactions/new-invoice-dialog.tsx b/dashboard/src/components/transactions/new-invoice-dialog.tsx new file mode 100644 index 00000000..f706b759 --- /dev/null +++ b/dashboard/src/components/transactions/new-invoice-dialog.tsx @@ -0,0 +1,38 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; + +import { useTranslate } from 'src/locales'; + +import { NewInvoiceForm } from './new-invoice-form'; + +import type { NewInvoiceFormProps } from './new-invoice-form'; + +// ---------------------------------------------------------------------- + +type Props = DialogProps & + NewInvoiceFormProps & { + onClose: VoidFunction; + }; + +export function NewInvoiceDialog({ title, open, onClose, ...other }: Props) { + const { t } = useTranslate(); + + return ( + + {title || t('new_invoice.generate_invoice')} + + + + + + + + + + ); +} diff --git a/dashboard/src/components/transactions/new-invoice-form.tsx b/dashboard/src/components/transactions/new-invoice-form.tsx new file mode 100644 index 00000000..c8003b72 --- /dev/null +++ b/dashboard/src/components/transactions/new-invoice-form.tsx @@ -0,0 +1,243 @@ +import type { IFiatPrices } from 'src/types/bitcoin'; +import type { InputProps } from '@mui/material/Input'; +import type { LnAddress, NewInvoiceRequest } from 'src/lib/swissknife'; + +import { useForm } from 'react-hook-form'; +import { ajvResolver } from '@hookform/resolvers/ajv'; +import { useState, useEffect, useCallback } from 'react'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import { LoadingButton } from '@mui/lab'; +import Button from '@mui/material/Button'; +import Typography from '@mui/material/Typography'; +import Input, { inputClasses } from '@mui/material/Input'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { ajvOptions } from 'src/utils/ajv'; +import { satsToFiat } from 'src/utils/fiat'; +import { displayLnAddress } from 'src/utils/lnurl'; +import { fCurrency } from 'src/utils/format-number'; + +import { useTranslate } from 'src/locales'; +import { generateInvoice, newWalletInvoice, NewInvoiceRequestSchema } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; +import { Iconify } from 'src/components/iconify'; +import { Form } from 'src/components/hook-form/form-provider'; +import { RHFSlider, RHFTextField, RHFWalletSelect } from 'src/components/hook-form'; + +import { QRDialog } from '../qr'; +import { useSettingsContext } from '../settings'; + +// ---------------------------------------------------------------------- + +const MIN_AMOUNT = 0; +const MAX_AMOUNT = 200000; + +// ---------------------------------------------------------------------- + +export type NewInvoiceFormProps = { + lnAddress?: LnAddress | null; + fiatPrices: IFiatPrices; + onSuccess?: VoidFunction; + isAdmin?: boolean; + walletId?: string; +}; + +// @ts-ignore +const resolver = ajvResolver(NewInvoiceRequestSchema, ajvOptions); + +export function NewInvoiceForm({ fiatPrices, isAdmin, walletId, lnAddress, onSuccess }: NewInvoiceFormProps) { + const { t } = useTranslate(); + const [autoWidth, setAutoWidth] = useState(24); + const [qrValue, setQrValue] = useState(''); + const confirm = useBoolean(); + const { currency } = useSettingsContext(); + + const methods = useForm({ + resolver, + defaultValues: { + amount_msat: MIN_AMOUNT, + description: '', + wallet: null, + }, + }); + + const { + watch, + setValue, + handleSubmit, + reset, + formState: { isSubmitting }, + } = methods; + + const amount = watch('amount_msat'); + const wallet = watch('wallet'); + + const handleAutoWidth = useCallback(() => { + const getNumberLength = amount.toString().length; + setAutoWidth(getNumberLength * 24); + }, [amount]); + + useEffect(() => { + handleAutoWidth(); + }, [amount, handleAutoWidth]); + + const handleChangeSlider = useCallback( + (_: Event, newValue: number | number[]) => { + setValue('amount_msat', newValue as number); + }, + [setValue] + ); + + const handleChangeAmount = useCallback( + (event: React.ChangeEvent) => { + setValue('amount_msat', Number(event.target.value)); + }, + [setValue] + ); + + const handleBlur = useCallback(() => { + if (amount < 0) { + setValue('amount_msat', 0); + } else if (amount > MAX_AMOUNT) { + setValue('amount_msat', MAX_AMOUNT); + } + }, [amount, setValue]); + + const onSubmit = async (body: any) => { + try { + let invoice; + const reqBody: NewInvoiceRequest = { + amount_msat: body.amount_msat * 1000, + description: body.description || undefined, + wallet_id: walletId || body.wallet?.id, + }; + + if (isAdmin) { + const { data } = await generateInvoice({ body: reqBody }); + invoice = data!; + } else { + const { data } = await newWalletInvoice({ body: reqBody }); + invoice = data!; + } + + setQrValue(invoice.ln_invoice!.bolt11); + confirm.onTrue(); + reset(); + onSuccess?.(); + } catch (error) { + toast.error(error.reason); + } + }; + + return ( + <> +
    + + + {t('new_invoice.insert_amount')} + + + + + + + + + {t('new_invoice.btc_exchange_rate', { rate: fCurrency(fiatPrices[currency], { currency }) })} + + {fCurrency(satsToFiat(amount, fiatPrices, currency), { currency })} + + + + + {walletId ? ( + + ) : ( + isAdmin && + )} + + + + {t('new_invoice.receive')} + + + {lnAddress && ( + + )} + + +
    + + + ); +} + +// ---------------------------------------------------------------------- + +type InputAmountProps = InputProps & { + autoWidth: number; + amount: number | number[]; +}; + +function InputAmount({ autoWidth, amount, onBlur, onChange, sx, ...other }: InputAmountProps) { + return ( + + + + + + + + ); +} diff --git a/dashboard/src/components/transactions/new-payment-card.tsx b/dashboard/src/components/transactions/new-payment-card.tsx new file mode 100644 index 00000000..e6e31d44 --- /dev/null +++ b/dashboard/src/components/transactions/new-payment-card.tsx @@ -0,0 +1,30 @@ +import type { CardProps } from '@mui/material'; +import type { IFiatPrices } from 'src/types/bitcoin'; + +import Box from '@mui/material/Box'; +import { Card, CardHeader } from '@mui/material'; + +import { NewPaymentForm } from './new-payment-form'; + +import type { NewPaymentFormProps } from './new-payment-form'; + +// ---------------------------------------------------------------------- + +interface Props extends CardProps, NewPaymentFormProps { + title?: string; + subheader?: string; + fiatPrices: IFiatPrices; + onSuccess: VoidFunction; +} + +export function NewPaymentCard({ title, subheader, sx, fiatPrices, onSuccess, ...other }: Props) { + return ( + + + + + + + + ); +} diff --git a/dashboard/src/components/transactions/new-payment-dialog.tsx b/dashboard/src/components/transactions/new-payment-dialog.tsx new file mode 100644 index 00000000..7efae329 --- /dev/null +++ b/dashboard/src/components/transactions/new-payment-dialog.tsx @@ -0,0 +1,38 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; + +import { useTranslate } from 'src/locales'; + +import { NewPaymentForm } from './new-payment-form'; + +import type { NewPaymentFormProps } from './new-payment-form'; + +// ---------------------------------------------------------------------- + +type Props = DialogProps & + NewPaymentFormProps & { + onClose: VoidFunction; + }; + +export function NewPaymentDialog({ title, open, onClose, ...other }: Props) { + const { t } = useTranslate(); + + return ( + + {title || t('new_payment.send_payment')} + + + + + + + + + + ); +} diff --git a/dashboard/src/components/transactions/new-payment-form.tsx b/dashboard/src/components/transactions/new-payment-form.tsx new file mode 100644 index 00000000..de1808e9 --- /dev/null +++ b/dashboard/src/components/transactions/new-payment-form.tsx @@ -0,0 +1,243 @@ +import type { Contact } from 'src/lib/swissknife'; +import type { IFiatPrices } from 'src/types/bitcoin'; +import type { DialogProps } from '@mui/material/Dialog'; +import type { IDetectedBarcode } from '@yudiel/react-qr-scanner'; + +import { decode } from 'light-bolt11-decoder'; +import { useState, useCallback } from 'react'; +import { Scanner } from '@yudiel/react-qr-scanner'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Button from '@mui/material/Button'; +import Avatar from '@mui/material/Avatar'; +import Dialog from '@mui/material/Dialog'; +import Tooltip from '@mui/material/Tooltip'; +import { useTheme } from '@mui/material/styles'; +import TextField from '@mui/material/TextField'; +import Typography from '@mui/material/Typography'; +import DialogActions from '@mui/material/DialogActions'; + +import { paths } from 'src/routes/paths'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { useTranslate } from 'src/locales'; +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { Iconify } from 'src/components/iconify'; +import { SatsWithIcon } from 'src/components/bitcoin'; +import { Carousel, useCarousel, CarouselArrowFloatButtons } from 'src/components/carousel'; + +import { ConfirmPaymentDialog } from './confirm-payment-dialog'; + +// ---------------------------------------------------------------------- + +export type NewPaymentFormProps = { + contacts?: Contact[]; + balance?: number; + fiatPrices: IFiatPrices; + onSuccess?: () => void; + isAdmin?: boolean; + walletId?: string; +}; + +export function NewPaymentForm({ balance, fiatPrices, isAdmin, walletId, contacts, onSuccess }: NewPaymentFormProps) { + const { t } = useTranslate(); + const theme = useTheme(); + const [input, setInput] = useState(''); + const [bolt11, setBolt11] = useState(undefined); + const confirm = useBoolean(); + const scanQR = useBoolean(); + + const carousel = useCarousel({ + loop: true, + dragFree: true, + slidesToShow: 'auto', + slideSpacing: '20px', + }); + + const handleChangeInput = useCallback((event: React.ChangeEvent) => { + setInput(event.target.value); + }, []); + + const handleConfirm = useCallback( + (event: any) => { + event.preventDefault(); + try { + const decodedBolt11 = decode(input); + setBolt11(decodedBolt11); + } catch (_) { + setBolt11(undefined); + } + confirm.onTrue(); + }, + [input, setBolt11, confirm] + ); + + const handlerClickDot = useCallback( + (index: number) => { + if (contacts === undefined) return; + + carousel.dots.onClickDot(index); + setInput(contacts[index].ln_address); + }, + [contacts, carousel.dots] + ); + + const handleClose = () => { + setInput(''); + setBolt11(undefined); + confirm.onFalse(); + }; + + return ( + <> + {contacts && contacts.length > 0 && ( + <> + + + {t('new_payment.recent')} + + + + + + + + + + {contacts.map((contact, index) => ( + + handlerClickDot(index)} + sx={{ + mx: 'auto', + opacity: 0.48, + cursor: 'pointer', + transition: theme.transitions.create('all'), + ...(index === carousel.dots.selectedIndex && { + opacity: 1, + transform: 'scale(1.25)', + boxShadow: `-4px 12px 24px 0 ${varAlpha(theme.vars.palette.common.blackChannel, 0.12)}`, + [stylesMode.dark]: { + boxShadow: `-4px 12px 24px 0 ${varAlpha(theme.vars.palette.common.blackChannel, 0.24)}`, + }, + }), + }} + > + {contact.ln_address?.charAt(0).toUpperCase()} + + + ))} + + + + )} + + + + + {balance != null && ( + + + {t('new_payment.your_balance')}{' '} + + + + )} + + + + + + + + + + + + ); +} + +// ---------------------------------------------------------------------- + +type ScanQRDialogProps = DialogProps & { + onClose: () => void; + onResult: (result: string) => void; +}; + +function ScanQRDialog({ open, onClose, onResult }: ScanQRDialogProps) { + const { t } = useTranslate(); + + const handleScannerResult = (detectedCodes: IDetectedBarcode[]) => { + const text = detectedCodes[0].rawValue; + onResult(text); + onClose(); + }; + + return ( + + + + + + + + ); +} diff --git a/dashboard/src/components/wallet/index.ts b/dashboard/src/components/wallet/index.ts new file mode 100644 index 00000000..b0b21524 --- /dev/null +++ b/dashboard/src/components/wallet/index.ts @@ -0,0 +1,2 @@ +export * from './register-wallet-form'; +export * from './register-wallet-dialog'; diff --git a/dashboard/src/components/wallet/register-wallet-dialog.tsx b/dashboard/src/components/wallet/register-wallet-dialog.tsx new file mode 100644 index 00000000..c599774d --- /dev/null +++ b/dashboard/src/components/wallet/register-wallet-dialog.tsx @@ -0,0 +1,38 @@ +import type { DialogProps } from '@mui/material/Dialog'; + +import Box from '@mui/material/Box'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogTitle from '@mui/material/DialogTitle'; +import DialogActions from '@mui/material/DialogActions'; + +import { useTranslate } from 'src/locales'; + +import { RegisterWalletForm } from './register-wallet-form'; + +import type { NewWalletFormProps } from './register-wallet-form'; + +// ---------------------------------------------------------------------- + +type Props = DialogProps & + NewWalletFormProps & { + onClose: VoidFunction; + }; + +export function RegisterWalletDialog({ title, open, onClose, onSuccess }: Props) { + const { t } = useTranslate(); + + return ( + + {title || t('register_wallet.title')} + + + + + + + + + + ); +} diff --git a/dashboard/src/components/wallet/register-wallet-form.tsx b/dashboard/src/components/wallet/register-wallet-form.tsx new file mode 100644 index 00000000..aa2dff57 --- /dev/null +++ b/dashboard/src/components/wallet/register-wallet-form.tsx @@ -0,0 +1,74 @@ +import type { RegisterWalletRequest } from 'src/lib/swissknife'; + +import { useForm } from 'react-hook-form'; +import { ajvResolver } from '@hookform/resolvers/ajv'; + +import { Stack } from '@mui/material'; +import { LoadingButton } from '@mui/lab'; + +import { ajvOptions } from 'src/utils/ajv'; + +import { useTranslate } from 'src/locales'; +import { registerWallet, RegisterWalletRequestSchema } from 'src/lib/swissknife'; + +import { toast } from 'src/components/snackbar'; +import { Form, RHFTextField } from 'src/components/hook-form'; + +// ---------------------------------------------------------------------- + +export type NewWalletFormProps = { + onSuccess: VoidFunction; +}; + +// @ts-ignore +const resolver = ajvResolver(RegisterWalletRequestSchema, ajvOptions); + +export function RegisterWalletForm({ onSuccess }: NewWalletFormProps) { + const { t } = useTranslate(); + + const methods = useForm({ + resolver, + defaultValues: { + user_id: '', + }, + }); + + const { + reset, + handleSubmit, + formState: { isSubmitting }, + watch, + } = methods; + + const user = watch('user_id'); + + const onSubmit = async (body: RegisterWalletRequest) => { + try { + await registerWallet({ body }); + toast.success(t('register_wallet.success_wallet_registration')); + reset(); + onSuccess(); + } catch (error) { + toast.error(error.reason); + } + }; + + return ( +
    + + + + + {t('register')} + + +
    + ); +} diff --git a/dashboard/src/config-global.ts b/dashboard/src/config-global.ts new file mode 100644 index 00000000..069c8f8f --- /dev/null +++ b/dashboard/src/config-global.ts @@ -0,0 +1,73 @@ +import { paths } from 'src/routes/paths'; + +import packageJson from '../package.json'; +import { client } from './lib/swissknife'; + +// ---------------------------------------------------------------------- + +export type ConfigValue = { + isStaticExport: boolean; + site: { + name: string; + serverUrl: string; + assetURL: string; + basePath: string; + version: string; + domain: string; + mempoolSpace: string; + }; + auth: { + method: 'jwt' | 'supabase' | 'auth0'; + skip: boolean; + redirectPath: string; + }; + auth0: { clientId: string; domain: string; callbackUrl: string; audience: string }; + supabase: { url: string; key: string }; +}; + +export type AuthMethod = 'jwt' | 'supabase' | 'auth0'; + +// ---------------------------------------------------------------------- + +export const CONFIG: ConfigValue = { + site: { + name: process.env.NEXT_PUBLIC_SITENAME ?? 'Numeraire SwissKnife', + serverUrl: process.env.NEXT_PUBLIC_SERVER_URL ?? '', + assetURL: process.env.NEXT_PUBLIC_ASSET_URL ?? '', + basePath: process.env.NEXT_PUBLIC_BASE_PATH ?? '', + domain: process.env.NEXT_PUBLIC_DOMAIN ?? 'numeraire.tech', + mempoolSpace: process.env.NEXT_PUBLIC_MEMPOOL_SPACE_URL ?? 'https://mempool.space/api/v1', + version: packageJson.version, + }, + isStaticExport: JSON.parse(`${process.env.BUILD_STATIC_EXPORT}`), + /** + * Auth + * @method {AuthMethod} + */ + auth: { + method: (process.env.NEXT_PUBLIC_AUTH_METHOD as AuthMethod) ?? 'jwt', + skip: false, + redirectPath: paths.wallet.root, + }, + /** + * Auth0 + */ + auth0: { + clientId: process.env.NEXT_PUBLIC_AUTH0_CLIENT_ID ?? '', + domain: process.env.NEXT_PUBLIC_AUTH0_DOMAIN ?? '', + callbackUrl: process.env.NEXT_PUBLIC_AUTH0_CALLBACK_URL ?? '', + audience: process.env.NEXT_PUBLIC_AUTH0_AUDIENCE ?? 'https://swissknife.numeraire.tech/api/v1', + }, + /** + * Supabase + */ + supabase: { + url: process.env.NEXT_PUBLIC_SUPABASE_URL ?? '', + key: process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ?? '', + }, +}; + +client.setConfig({ + baseUrl: CONFIG.site.serverUrl, + throwOnError: true, +}); diff --git a/dashboard/src/global.css b/dashboard/src/global.css new file mode 100644 index 00000000..d4dbfb11 --- /dev/null +++ b/dashboard/src/global.css @@ -0,0 +1,64 @@ +/** ************************************** +* Fonts: app +*************************************** */ + +@import '@fontsource/inter/400.css'; +@import '@fontsource/inter/500.css'; +@import '@fontsource/inter/600.css'; +@import '@fontsource/inter/700.css'; +@import '@fontsource/inter/800.css'; + +/** ************************************** +* Plugins +*************************************** */ +/* scrollbar */ +@import './components/scrollbar/styles.css'; + +/* image */ +@import './components/image/styles.css'; + +/* map */ +@import './components/map/styles.css'; + +/* lightbox */ +@import './components/lightbox/styles.css'; + +/* chart */ +@import './components/chart/styles.css'; + +/** ************************************** +* Baseline +*************************************** */ +html { + height: 100%; + -webkit-overflow-scrolling: touch; +} +body, +#root, +#root__layout { + display: flex; + flex: 1 1 auto; + min-height: 100%; + flex-direction: column; +} +img { + max-width: 100%; + vertical-align: middle; +} +ul { + margin: 0; + padding: 0; + list-style-type: none; +} +input[type='number'] { + -moz-appearance: textfield; + appearance: none; +} +input[type='number']::-webkit-outer-spin-button { + margin: 0; + -webkit-appearance: none; +} +input[type='number']::-webkit-inner-spin-button { + margin: 0; + -webkit-appearance: none; +} diff --git a/dashboard/src/hooks/use-boolean.ts b/dashboard/src/hooks/use-boolean.ts new file mode 100644 index 00000000..d10ebd4b --- /dev/null +++ b/dashboard/src/hooks/use-boolean.ts @@ -0,0 +1,42 @@ +'use client'; + +import { useMemo, useState, useCallback } from 'react'; + +// ---------------------------------------------------------------------- + +export type UseBooleanReturn = { + value: boolean; + onTrue: () => void; + onFalse: () => void; + onToggle: () => void; + setValue: React.Dispatch>; +}; + +export function useBoolean(defaultValue: boolean = false): UseBooleanReturn { + const [value, setValue] = useState(defaultValue); + + const onTrue = useCallback(() => { + setValue(true); + }, []); + + const onFalse = useCallback(() => { + setValue(false); + }, []); + + const onToggle = useCallback(() => { + setValue((prev) => !prev); + }, []); + + const memoizedValue = useMemo( + () => ({ + value, + onTrue, + onFalse, + onToggle, + setValue, + }), + [value, onTrue, onFalse, onToggle, setValue] + ); + + return memoizedValue; +} diff --git a/dashboard/src/hooks/use-client-rect.ts b/dashboard/src/hooks/use-client-rect.ts new file mode 100644 index 00000000..fd2b1dd6 --- /dev/null +++ b/dashboard/src/hooks/use-client-rect.ts @@ -0,0 +1,76 @@ +import { useRef, useMemo, useState, useEffect, useCallback, useLayoutEffect } from 'react'; + +import { useEventListener } from './use-event-listener'; + +// ---------------------------------------------------------------------- + +type ScrollElValue = { + scrollWidth: number; + scrollHeight: number; +}; + +type DOMRectValue = { + top: number; + right: number; + bottom: number; + left: number; + x: number; + y: number; + width: number; + height: number; +}; + +export type UseClientRectReturn = DOMRectValue & + ScrollElValue & { + elementRef: React.RefObject; + }; + +export function useClientRect(inputRef?: React.RefObject): UseClientRectReturn { + const initialRef = useRef(null); + + const elementRef = inputRef || initialRef; + + const [rect, setRect] = useState(undefined); + + const [scroll, setScroll] = useState(undefined); + + const useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect; + + const handleResize = useCallback(() => { + if (elementRef?.current) { + const clientRect = elementRef.current.getBoundingClientRect(); + + setRect(clientRect); + + setScroll({ + scrollWidth: elementRef.current?.scrollWidth, + scrollHeight: elementRef.current?.scrollHeight, + }); + } + }, [elementRef]); + + useEventListener('resize', handleResize); + + useIsomorphicLayoutEffect(() => { + handleResize(); + }, []); + + const memoizedRectValue = useMemo(() => rect, [rect]); + const memoizedScrollValue = useMemo(() => scroll, [scroll]); + + return { + elementRef, + // + top: memoizedRectValue?.top ?? 0, + right: memoizedRectValue?.right ?? 0, + bottom: memoizedRectValue?.bottom ?? 0, + left: memoizedRectValue?.left ?? 0, + x: memoizedRectValue?.x ?? 0, + y: memoizedRectValue?.y ?? 0, + width: memoizedRectValue?.width ?? 0, + height: memoizedRectValue?.height ?? 0, + // + scrollWidth: memoizedScrollValue?.scrollWidth ?? 0, + scrollHeight: memoizedScrollValue?.scrollHeight ?? 0, + }; +} diff --git a/dashboard/src/hooks/use-cookies.ts b/dashboard/src/hooks/use-cookies.ts new file mode 100644 index 00000000..38cfcba8 --- /dev/null +++ b/dashboard/src/hooks/use-cookies.ts @@ -0,0 +1,137 @@ +import { useMemo, useState, useEffect, useCallback } from 'react'; + +import { isEqual } from 'src/utils/helper'; + +// ---------------------------------------------------------------------- + +export type UseCookiesReturn = { + state: T; + canReset: boolean; + resetState: () => void; + setState: (updateState: T | Partial) => void; + setField: (name: keyof T, updateValue: T[keyof T]) => void; +}; + +export function useCookies( + key: string, + initialState: T, + defaultValues: T, + options?: { + daysUntilExpiration?: number; + } +): UseCookiesReturn { + const [state, set] = useState(initialState); + + const multiValue = initialState && typeof initialState === 'object'; + + const canReset = !isEqual(state, defaultValues); + + useEffect(() => { + const restoredValue: T = getStorage(key); + + if (restoredValue) { + if (multiValue) { + set((prevValue) => ({ ...prevValue, ...restoredValue })); + } else { + set(restoredValue); + } + } + }, [key, multiValue]); + + const setState = useCallback( + (updateState: T | Partial) => { + if (multiValue) { + set((prevValue) => { + setStorage(key, { ...prevValue, ...updateState }, options?.daysUntilExpiration); + return { ...prevValue, ...updateState }; + }); + } else { + setStorage(key, updateState as T, options?.daysUntilExpiration); + set(updateState as T); + } + }, + // eslint-disable-next-line react-hooks/exhaustive-deps + [key, multiValue] + ); + + const setField = useCallback( + (name: keyof T, updateValue: T[keyof T]) => { + if (multiValue) { + setState({ [name]: updateValue } as Partial); + } + }, + [multiValue, setState] + ); + + const resetState = useCallback(() => { + removeStorage(key); + set(defaultValues); + }, [defaultValues, key]); + + const memoizedValue = useMemo( + () => ({ + state, + setState, + setField, + resetState, + canReset, + }), + [canReset, resetState, setField, setState, state] + ); + + return memoizedValue; +} + +// ---------------------------------------------------------------------- + +function getStorage(key: string) { + try { + const keyName = `${key}=`; + + const cDecoded = decodeURIComponent(document.cookie); + + const cArr = cDecoded.split('; '); + + let res; + + cArr.forEach((val) => { + if (val.indexOf(keyName) === 0) res = val.substring(keyName.length); + }); + + if (res) { + return JSON.parse(res); + } + } catch (error) { + console.error('Error while getting from cookies:', error); + } + + return null; +} + +// ---------------------------------------------------------------------- + +function setStorage(key: string, value: T, daysUntilExpiration: number = 0) { + try { + const serializedValue = encodeURIComponent(JSON.stringify(value)); + let cookieOptions = `${key}=${serializedValue}; path=/`; + + if (daysUntilExpiration > 0) { + const expirationDate = new Date(Date.now() + daysUntilExpiration * 24 * 60 * 60 * 1000); + cookieOptions += `; expires=${expirationDate.toUTCString()}`; + } + + document.cookie = cookieOptions; + } catch (error) { + console.error('Error while setting cookie:', error); + } +} + +// ---------------------------------------------------------------------- + +function removeStorage(key: string) { + try { + document.cookie = `${key}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`; + } catch (error) { + console.error('Error while removing cookie:', error); + } +} diff --git a/dashboard/src/hooks/use-copy-to-clipboard.ts b/dashboard/src/hooks/use-copy-to-clipboard.ts new file mode 100644 index 00000000..267d7ec5 --- /dev/null +++ b/dashboard/src/hooks/use-copy-to-clipboard.ts @@ -0,0 +1,40 @@ +import { useMemo, useState, useCallback } from 'react'; + +// ---------------------------------------------------------------------- + +export type UseCopyToClipboardReturn = { + copy: CopyFn; + copiedText: CopiedValue; +}; + +export type CopiedValue = string | null; + +export type CopyFn = (text: string) => Promise; + +export function useCopyToClipboard(): UseCopyToClipboardReturn { + const [copiedText, setCopiedText] = useState(null); + + const copy: CopyFn = useCallback( + async (text) => { + if (!navigator?.clipboard) { + console.warn('Clipboard not supported'); + return false; + } + + try { + await navigator.clipboard.writeText(text); + setCopiedText(text); + return true; + } catch (error) { + console.warn('Copy failed', error); + setCopiedText(null); + return false; + } + }, + [setCopiedText] + ); + + const memoizedValue = useMemo(() => ({ copy, copiedText }), [copy, copiedText]); + + return memoizedValue; +} diff --git a/dashboard/src/hooks/use-countdown.ts b/dashboard/src/hooks/use-countdown.ts new file mode 100644 index 00000000..7c7ddb44 --- /dev/null +++ b/dashboard/src/hooks/use-countdown.ts @@ -0,0 +1,96 @@ +import { useRef, useState, useEffect, useCallback } from 'react'; + +// ---------------------------------------------------------------------- + +export type UseCountdownDateReturn = { + days: string; + hours: string; + minutes: string; + seconds: string; +}; + +export function useCountdownDate(date: Date): UseCountdownDateReturn { + const [countdown, setCountdown] = useState({ + days: '00', + hours: '00', + minutes: '00', + seconds: '00', + }); + + useEffect(() => { + setNewTime(); + const interval = setInterval(setNewTime, 1000); + return () => clearInterval(interval); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + const setNewTime = () => { + const startTime = date; + + const endTime = new Date(); + + const distanceToNow = startTime.valueOf() - endTime.valueOf(); + + const getDays = Math.floor(distanceToNow / (1000 * 60 * 60 * 24)); + + const getHours = `0${Math.floor((distanceToNow % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60))}`.slice(-2); + + const getMinutes = `0${Math.floor((distanceToNow % (1000 * 60 * 60)) / (1000 * 60))}`.slice(-2); + + const getSeconds = `0${Math.floor((distanceToNow % (1000 * 60)) / 1000)}`.slice(-2); + + setCountdown({ + days: getDays < 10 ? `0${getDays}` : `${getDays}`, + hours: getHours, + minutes: getMinutes, + seconds: getSeconds, + }); + }; + + return countdown; +} + +// Usage +// const countdown = useCountdown(new Date('07/07/2022 21:30')); + +// ---------------------------------------------------------------------- + +export type UseCountdownSecondsReturn = { + counting: boolean; + countdown: number; + startCountdown: () => void; + setCountdown: React.Dispatch>; +}; + +export function useCountdownSeconds(initCountdown: number): UseCountdownSecondsReturn { + const [countdown, setCountdown] = useState(initCountdown); + + const remainingSecondsRef = useRef(countdown); + + const startCountdown = useCallback(() => { + remainingSecondsRef.current = countdown; + + const intervalId = setInterval(() => { + remainingSecondsRef.current -= 1; + + if (remainingSecondsRef.current === 0) { + clearInterval(intervalId); + setCountdown(initCountdown); + } else { + setCountdown(remainingSecondsRef.current); + } + }, 1000); + }, [initCountdown, countdown]); + + const counting = initCountdown > countdown; + + return { + counting, + countdown, + startCountdown, + setCountdown, + }; +} + +// Usage +// const { countdown, startCountdown, counting } = useCountdownSeconds(30); diff --git a/dashboard/src/hooks/use-debounce.ts b/dashboard/src/hooks/use-debounce.ts new file mode 100644 index 00000000..1a5cc551 --- /dev/null +++ b/dashboard/src/hooks/use-debounce.ts @@ -0,0 +1,27 @@ +import { useMemo, useState, useEffect, useCallback } from 'react'; + +// ---------------------------------------------------------------------- + +export type UseDebounceReturn = string; + +export function useDebounce(value: string, delay = 500): UseDebounceReturn { + const [debouncedValue, setDebouncedValue] = useState(value); + + const debounceHandler = useCallback(() => { + const handler = setTimeout(() => { + setDebouncedValue(value); + }, delay); + + return () => { + clearTimeout(handler); + }; + }, [value, delay]); + + useEffect(() => { + debounceHandler(); + }, [debounceHandler]); + + const memoizedValue = useMemo(() => debouncedValue, [debouncedValue]); + + return memoizedValue; +} diff --git a/dashboard/src/hooks/use-double-click.ts b/dashboard/src/hooks/use-double-click.ts new file mode 100644 index 00000000..5d5b6ead --- /dev/null +++ b/dashboard/src/hooks/use-double-click.ts @@ -0,0 +1,41 @@ +import { useRef, useMemo, useCallback } from 'react'; + +// ---------------------------------------------------------------------- + +export type UseDoubleClickReturn = (event: React.MouseEvent) => void; + +type UseDoubleClickProps = { + timeout?: number; + click?: (e: React.SyntheticEvent) => void; + doubleClick: (e: React.SyntheticEvent) => void; +}; + +export function useDoubleClick({ click, doubleClick, timeout = 250 }: UseDoubleClickProps): UseDoubleClickReturn { + const clickTimeout = useRef(null); + + const clearClickTimeout = useCallback(() => { + if (clickTimeout.current) { + clearTimeout(clickTimeout.current); + clickTimeout.current = null; + } + }, []); + + const handleEvent = useCallback( + (event: React.MouseEvent) => { + clearClickTimeout(); + if (click && event.detail === 1) { + clickTimeout.current = setTimeout(() => { + click(event); + }, timeout); + } + if (event.detail % 2 === 0) { + doubleClick(event); + } + }, + [click, doubleClick, timeout, clearClickTimeout] + ); + + const memoizedValue = useMemo(() => handleEvent, [handleEvent]); + + return memoizedValue; +} diff --git a/dashboard/src/hooks/use-event-listener.ts b/dashboard/src/hooks/use-event-listener.ts new file mode 100644 index 00000000..e8c32da8 --- /dev/null +++ b/dashboard/src/hooks/use-event-listener.ts @@ -0,0 +1,68 @@ +import type { RefObject } from 'react'; + +import { useRef, useEffect, useLayoutEffect } from 'react'; + +// ---------------------------------------------------------------------- + +const useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect; + +// Window Event based useEventListener interface +export function useEventListener( + eventName: K, + handler: (event: WindowEventMap[K]) => void, + element?: undefined, + options?: boolean | AddEventListenerOptions +): void; + +// Element Event based useEventListener interface +export function useEventListener( + eventName: K, + handler: (event: HTMLElementEventMap[K]) => void, + element: RefObject, + options?: boolean | AddEventListenerOptions +): void; + +// Document Event based useEventListener interface +export function useEventListener( + eventName: K, + handler: (event: DocumentEventMap[K]) => void, + element: RefObject, + options?: boolean | AddEventListenerOptions +): void; + +export function useEventListener< + KW extends keyof WindowEventMap, + KH extends keyof HTMLElementEventMap, + T extends HTMLElement | void = void, +>( + eventName: KW | KH, + handler: (event: WindowEventMap[KW] | HTMLElementEventMap[KH] | Event) => void, + element?: RefObject, + options?: boolean | AddEventListenerOptions +) { + // Create a ref that stores handler + const savedHandler = useRef(handler); + + useIsomorphicLayoutEffect(() => { + savedHandler.current = handler; + }, [handler]); + + useEffect(() => { + // Define the listening target + const targetElement: T | Window = element?.current || window; + if (!(targetElement && targetElement.addEventListener)) { + return; + } + + // Create event listener that calls handler function stored in ref + const eventListener: typeof handler = (event) => savedHandler.current(event); + + targetElement.addEventListener(eventName, eventListener, options); + + // Remove event listener on cleanup + // eslint-disable-next-line consistent-return + return () => { + targetElement.removeEventListener(eventName, eventListener); + }; + }, [eventName, element, options]); +} diff --git a/dashboard/src/hooks/use-local-storage.ts b/dashboard/src/hooks/use-local-storage.ts new file mode 100644 index 00000000..141331b1 --- /dev/null +++ b/dashboard/src/hooks/use-local-storage.ts @@ -0,0 +1,109 @@ +import { useMemo, useState, useEffect, useCallback } from 'react'; + +import { isEqual } from 'src/utils/helper'; +import { localStorageGetItem } from 'src/utils/storage-available'; + +// ---------------------------------------------------------------------- + +export type UseLocalStorageReturn = { + state: T; + canReset: boolean; + resetState: () => void; + setState: (updateState: T | Partial) => void; + setField: (name: keyof T, updateValue: T[keyof T]) => void; +}; + +export function useLocalStorage(key: string, initialState: T): UseLocalStorageReturn { + const [state, set] = useState(initialState); + + const multiValue = initialState && typeof initialState === 'object'; + + const canReset = !isEqual(state, initialState); + + useEffect(() => { + const restoredValue: T = getStorage(key); + + if (restoredValue) { + if (multiValue) { + set((prevValue) => ({ ...prevValue, ...restoredValue })); + } else { + set(restoredValue); + } + } + }, [key, multiValue]); + + const setState = useCallback( + (updateState: T | Partial) => { + if (multiValue) { + set((prevValue) => { + setStorage(key, { ...prevValue, ...updateState }); + return { ...prevValue, ...updateState }; + }); + } else { + setStorage(key, updateState as T); + set(updateState as T); + } + }, + [key, multiValue] + ); + + const setField = useCallback( + (name: keyof T, updateValue: T[keyof T]) => { + if (multiValue) { + setState({ [name]: updateValue } as Partial); + } + }, + [multiValue, setState] + ); + + const resetState = useCallback(() => { + set(initialState); + removeStorage(key); + }, [initialState, key]); + + const memoizedValue = useMemo( + () => ({ + state, + setState, + setField, + resetState, + canReset, + }), + [canReset, resetState, setField, setState, state] + ); + + return memoizedValue; +} + +// ---------------------------------------------------------------------- + +export function getStorage(key: string) { + try { + const result = localStorageGetItem(key); + + if (result) { + return JSON.parse(result); + } + } catch (error) { + console.error('Error while getting from storage:', error); + } + + return null; +} + +export function setStorage(key: string, value: T) { + try { + const serializedValue = JSON.stringify(value); + window.localStorage.setItem(key, serializedValue); + } catch (error) { + console.error('Error while setting storage:', error); + } +} + +export function removeStorage(key: string) { + try { + window.localStorage.removeItem(key); + } catch (error) { + console.error('Error while removing from storage:', error); + } +} diff --git a/dashboard/src/hooks/use-negative-logo.ts b/dashboard/src/hooks/use-negative-logo.ts new file mode 100644 index 00000000..0a3cb90a --- /dev/null +++ b/dashboard/src/hooks/use-negative-logo.ts @@ -0,0 +1,7 @@ +import { useTheme } from '@mui/material'; + +export function useNegativeLogo(filename: string): string { + const theme = useTheme(); + + return theme.palette.mode === 'dark' ? filename : `${filename}_negative`; +} diff --git a/dashboard/src/hooks/use-responsive.ts b/dashboard/src/hooks/use-responsive.ts new file mode 100644 index 00000000..7e0ca017 --- /dev/null +++ b/dashboard/src/hooks/use-responsive.ts @@ -0,0 +1,56 @@ +import type { Breakpoint } from '@mui/material/styles'; + +import { useMemo } from 'react'; + +import { useTheme } from '@mui/material/styles'; +import useMediaQuery from '@mui/material/useMediaQuery'; + +// ---------------------------------------------------------------------- + +type UseResponsiveReturn = boolean; + +export type Query = 'up' | 'down' | 'between' | 'only'; + +export type Value = Breakpoint | number; + +export function useResponsive(query: Query, start?: Value, end?: Value): UseResponsiveReturn { + const theme = useTheme(); + + const getQuery = useMemo(() => { + switch (query) { + case 'up': + return theme.breakpoints.up(start as Value); + case 'down': + return theme.breakpoints.down(start as Value); + case 'between': + return theme.breakpoints.between(start as Value, end as Value); + case 'only': + return theme.breakpoints.only(start as Breakpoint); + default: + return theme.breakpoints.up('xs'); + } + }, [theme, query, start, end]); + + const mediaQueryResult = useMediaQuery(getQuery); + + return mediaQueryResult; +} + +// ---------------------------------------------------------------------- + +type UseWidthReturn = Breakpoint; + +export function useWidth(): UseWidthReturn { + const theme = useTheme(); + + const keys = useMemo(() => [...theme.breakpoints.keys].reverse(), [theme]); + + const width = keys.reduce((output: Breakpoint | null, key: Breakpoint) => { + // eslint-disable-next-line react-hooks/rules-of-hooks + const matches = useMediaQuery(theme.breakpoints.up(key)); + + return !output && matches ? key : output; + }, null); + + return width || 'xs'; +} diff --git a/dashboard/src/hooks/use-scroll-offset-top.ts b/dashboard/src/hooks/use-scroll-offset-top.ts new file mode 100644 index 00000000..4ea328f0 --- /dev/null +++ b/dashboard/src/hooks/use-scroll-offset-top.ts @@ -0,0 +1,57 @@ +'use client'; + +import { useScroll, useMotionValueEvent } from 'framer-motion'; +import { useRef, useMemo, useState, useCallback } from 'react'; + +// ---------------------------------------------------------------------- + +export type UseScrollOffSetTopReturn = { + offsetTop: boolean; + elementRef: React.RefObject; +}; + +export function useScrollOffSetTop(top = 0): UseScrollOffSetTopReturn { + const elementRef = useRef(null); + + const { scrollY } = useScroll(); + + const [offsetTop, setOffsetTop] = useState(false); + + const handleScrollChange = useCallback( + (val: number) => { + const scrollHeight = Math.round(val); + + if (elementRef?.current) { + const rect = elementRef.current.getBoundingClientRect(); + const elementTop = Math.round(rect.top); + + setOffsetTop(elementTop < top); + } else { + setOffsetTop(scrollHeight > top); + } + }, + [elementRef, top] + ); + + useMotionValueEvent( + scrollY, + 'change', + useMemo(() => handleScrollChange, [handleScrollChange]) + ); + + const memoizedValue = useMemo(() => ({ elementRef, offsetTop }), [offsetTop]); + + return memoizedValue; +} + +/* + * 1: Applies to top
    + * const { offsetTop } = useScrollOffSetTop(80); + * + * Or + * + * 2: Applies to element + * const { offsetTop, elementRef } = useScrollOffSetTop(80); + *
    + * + */ diff --git a/dashboard/src/hooks/use-set-state.ts b/dashboard/src/hooks/use-set-state.ts new file mode 100644 index 00000000..aaae28f9 --- /dev/null +++ b/dashboard/src/hooks/use-set-state.ts @@ -0,0 +1,47 @@ +import { useMemo, useState, useCallback } from 'react'; + +import { isEqual } from 'src/utils/helper'; + +// ---------------------------------------------------------------------- + +export type UseSetStateReturn = { + state: T; + canReset: boolean; + onResetState: () => void; + setState: (updateState: T | Partial) => void; + setField: (name: keyof T, updateValue: T[keyof T]) => void; +}; + +export function useSetState(initialState: T): UseSetStateReturn { + const [state, set] = useState(initialState); + + const canReset = !isEqual(state, initialState); + + const setState = useCallback((updateState: T | Partial) => { + set((prevValue) => ({ ...prevValue, ...updateState })); + }, []); + + const setField = useCallback( + (name: keyof T, updateValue: T[keyof T]) => { + setState({ [name]: updateValue } as Partial); + }, + [setState] + ); + + const onResetState = useCallback(() => { + set(initialState); + }, [initialState]); + + const memoizedValue = useMemo( + () => ({ + state, + setState, + setField, + onResetState, + canReset, + }), + [canReset, onResetState, setField, setState, state] + ); + + return memoizedValue; +} diff --git a/dashboard/src/hooks/use-tabs.ts b/dashboard/src/hooks/use-tabs.ts new file mode 100644 index 00000000..2774e4e3 --- /dev/null +++ b/dashboard/src/hooks/use-tabs.ts @@ -0,0 +1,47 @@ +import { useCallback } from 'react'; +import { useRouter, usePathname, useSearchParams } from 'next/navigation'; + +export type UseTabsReturn = { + value: string; + setValue: (newValue: string) => void; + onChange: (event: React.SyntheticEvent, newValue: string) => void; +}; + +export function useTabs(defaultValue: string): UseTabsReturn { + const router = useRouter(); + const pathname = usePathname(); + const searchParams = useSearchParams(); + + // Get the 'tab' parameter from the URL + const tab = searchParams.get('tab'); + + // Determine the current tab value + const value = tab || defaultValue; + + // Function to set a new tab value + const setValue = useCallback( + (newValue: string) => { + // Create a new URLSearchParams object to manipulate query parameters + const params = new URLSearchParams(searchParams.toString()); + params.set('tab', newValue); + + // Update the URL without reloading the page + router.push(`${pathname}?${params.toString()}`); + }, + [router, pathname, searchParams] + ); + + // Handle tab change event + const onChange = useCallback( + (event: React.SyntheticEvent, newValue: string) => { + setValue(newValue); + }, + [setValue] + ); + + return { + value, + setValue, + onChange, + }; +} diff --git a/dashboard/src/layouts/auth-centered/index.ts b/dashboard/src/layouts/auth-centered/index.ts new file mode 100644 index 00000000..a7173130 --- /dev/null +++ b/dashboard/src/layouts/auth-centered/index.ts @@ -0,0 +1,3 @@ +export * from './main'; + +export * from './layout'; diff --git a/dashboard/src/layouts/auth-centered/layout.tsx b/dashboard/src/layouts/auth-centered/layout.tsx new file mode 100644 index 00000000..e8bf852b --- /dev/null +++ b/dashboard/src/layouts/auth-centered/layout.tsx @@ -0,0 +1,95 @@ +'use client'; + +import type { Theme, SxProps, Breakpoint } from '@mui/material/styles'; + +import Alert from '@mui/material/Alert'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { allLangs } from 'src/locales'; +import { CONFIG } from 'src/config-global'; +import { stylesMode } from 'src/theme/styles'; + +import { Main } from './main'; +import { HeaderBase } from '../core/header-base'; +import { LayoutSection } from '../core/layout-section'; + +// ---------------------------------------------------------------------- + +export type AuthCenteredLayoutProps = { + sx?: SxProps; + children: React.ReactNode; +}; + +export function AuthCenteredLayout({ sx, children }: AuthCenteredLayoutProps) { + const mobileNavOpen = useBoolean(); + + const layoutQuery: Breakpoint = 'md'; + + return ( + + This is an info Alert. + + ), + }} + slotProps={{ container: { maxWidth: false } }} + sx={{ position: { [layoutQuery]: 'fixed' } }} + /> + } + /** ************************************** + * Footer + *************************************** */ + footerSection={null} + /** ************************************** + * Style + *************************************** */ + cssVars={{ + '--layout-auth-content-width': '420px', + }} + sx={{ + '&::before': { + width: 1, + height: 1, + zIndex: 1, + content: "''", + opacity: 0.24, + position: 'fixed', + backgroundSize: 'cover', + backgroundRepeat: 'no-repeat', + backgroundPosition: 'center center', + backgroundImage: `url(${CONFIG.site.basePath}/assets/background/background-3-blur.webp)`, + [stylesMode.dark]: { opacity: 0.08 }, + }, + ...sx, + }} + > +
    {children}
    +
    + ); +} diff --git a/dashboard/src/layouts/auth-centered/main.tsx b/dashboard/src/layouts/auth-centered/main.tsx new file mode 100644 index 00000000..5e8c539d --- /dev/null +++ b/dashboard/src/layouts/auth-centered/main.tsx @@ -0,0 +1,60 @@ +import type { BoxProps } from '@mui/material/Box'; +import type { Breakpoint } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +import { layoutClasses } from 'src/layouts/classes'; + +// ---------------------------------------------------------------------- + +type MainProps = BoxProps & { + layoutQuery: Breakpoint; +}; + +export function Main({ sx, children, layoutQuery, ...other }: MainProps) { + const theme = useTheme(); + + const renderContent = ( + + {children} + + ); + + return ( + + {renderContent} + + ); +} diff --git a/dashboard/src/layouts/auth-split/index.ts b/dashboard/src/layouts/auth-split/index.ts new file mode 100644 index 00000000..a7173130 --- /dev/null +++ b/dashboard/src/layouts/auth-split/index.ts @@ -0,0 +1,3 @@ +export * from './main'; + +export * from './layout'; diff --git a/dashboard/src/layouts/auth-split/layout.tsx b/dashboard/src/layouts/auth-split/layout.tsx new file mode 100644 index 00000000..0e020e8a --- /dev/null +++ b/dashboard/src/layouts/auth-split/layout.tsx @@ -0,0 +1,108 @@ +'use client'; + +import type { Theme, SxProps, Breakpoint } from '@mui/material/styles'; + +import Alert from '@mui/material/Alert'; + +import { paths } from 'src/routes/paths'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { CONFIG } from 'src/config-global'; + +import { Section } from './section'; +import { Main, Content } from './main'; +import { HeaderBase } from '../core/header-base'; +import { LayoutSection } from '../core/layout-section'; + +// ---------------------------------------------------------------------- + +export type AuthSplitLayoutProps = { + sx?: SxProps; + children: React.ReactNode; + section?: { + title?: string; + imgUrl?: string; + subtitle?: string; + }; +}; + +export function AuthSplitLayout({ sx, section, children }: AuthSplitLayoutProps) { + const mobileNavOpen = useBoolean(); + + const layoutQuery: Breakpoint = 'md'; + + return ( + + This is an info Alert. + + ), + }} + slotProps={{ container: { maxWidth: false } }} + sx={{ position: { [layoutQuery]: 'fixed' } }} + /> + } + /** ************************************** + * Footer + *************************************** */ + footerSection={null} + /** ************************************** + * Style + *************************************** */ + sx={sx} + cssVars={{ + '--layout-auth-content-width': '420px', + }} + > +
    +
    + {children} +
    +
    + ); +} diff --git a/dashboard/src/layouts/auth-split/main.tsx b/dashboard/src/layouts/auth-split/main.tsx new file mode 100644 index 00000000..637a53da --- /dev/null +++ b/dashboard/src/layouts/auth-split/main.tsx @@ -0,0 +1,78 @@ +import type { BoxProps } from '@mui/material/Box'; +import type { Breakpoint } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import { useTheme } from '@mui/material/styles'; + +import { layoutClasses } from 'src/layouts/classes'; + +// ---------------------------------------------------------------------- + +type MainProps = BoxProps & { + layoutQuery: Breakpoint; +}; + +export function Main({ sx, children, layoutQuery, ...other }: MainProps) { + const theme = useTheme(); + + return ( + + {children} + + ); +} + +// ---------------------------------------------------------------------- + +export function Content({ sx, children, layoutQuery, ...other }: MainProps) { + const theme = useTheme(); + + const renderContent = ( + + {children} + + ); + + return ( + + {renderContent} + + ); +} diff --git a/dashboard/src/layouts/auth-split/section.tsx b/dashboard/src/layouts/auth-split/section.tsx new file mode 100644 index 00000000..057afb5b --- /dev/null +++ b/dashboard/src/layouts/auth-split/section.tsx @@ -0,0 +1,111 @@ +import type { BoxProps } from '@mui/material/Box'; +import type { Breakpoint } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import Link from '@mui/material/Link'; +import Tooltip from '@mui/material/Tooltip'; +import { useTheme } from '@mui/material/styles'; +import Typography from '@mui/material/Typography'; + +import { RouterLink } from 'src/routes/components'; + +import { CONFIG } from 'src/config-global'; +import { varAlpha, bgGradient } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +type SectionProps = BoxProps & { + title?: string; + method?: string; + imgUrl?: string; + subtitle?: string; + layoutQuery: Breakpoint; + methods?: { + path: string; + icon: string; + label: string; + }[]; +}; + +export function Section({ + sx, + method, + layoutQuery, + methods, + title = 'Manage the job', + imgUrl = `${CONFIG.site.basePath}/assets/illustrations/illustration-dashboard.webp`, + subtitle = 'More effectively with optimized workflows.', + ...other +}: SectionProps) { + const theme = useTheme(); + + return ( + +
    + + {title} + + + {subtitle && {subtitle}} +
    + + + + {!!methods?.length && method && ( + + {methods.map((option) => { + const selected = method === option.label.toLowerCase(); + + return ( + + + + + + + + ); + })} + + )} + + ); +} diff --git a/dashboard/src/layouts/classes.ts b/dashboard/src/layouts/classes.ts new file mode 100644 index 00000000..5ea88e79 --- /dev/null +++ b/dashboard/src/layouts/classes.ts @@ -0,0 +1,9 @@ +// ---------------------------------------------------------------------- + +export const layoutClasses = { + root: 'layout__root', + main: 'layout__main', + header: 'layout__header', + content: 'layout__main__content', + hasSidebar: 'layout__has__sidebar', +}; diff --git a/dashboard/src/layouts/components/account-button.tsx b/dashboard/src/layouts/components/account-button.tsx new file mode 100644 index 00000000..348a4cc2 --- /dev/null +++ b/dashboard/src/layouts/components/account-button.tsx @@ -0,0 +1,57 @@ +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { m } from 'framer-motion'; + +import NoSsr from '@mui/material/NoSsr'; +import Avatar from '@mui/material/Avatar'; +import SvgIcon from '@mui/material/SvgIcon'; +import { useTheme } from '@mui/material/styles'; +import IconButton from '@mui/material/IconButton'; + +import { varHover, AnimateAvatar } from 'src/components/animate'; + +// ---------------------------------------------------------------------- + +export type AccountButtonProps = IconButtonProps & { + open: boolean; + photoURL: string; + displayName: string; +}; + +export function AccountButton({ open, photoURL, displayName, sx, ...other }: AccountButtonProps) { + const theme = useTheme(); + + const renderFallback = ( + + + + + + + ); + + return ( + + + + {displayName?.charAt(0).toUpperCase()} + + + + ); +} diff --git a/dashboard/src/layouts/components/account-drawer.tsx b/dashboard/src/layouts/components/account-drawer.tsx new file mode 100644 index 00000000..b36a2750 --- /dev/null +++ b/dashboard/src/layouts/components/account-drawer.tsx @@ -0,0 +1,161 @@ +'use client'; + +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { useCallback } from 'react'; + +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Drawer from '@mui/material/Drawer'; +import MenuItem from '@mui/material/MenuItem'; +import { useTheme } from '@mui/material/styles'; +import Typography from '@mui/material/Typography'; +import IconButton from '@mui/material/IconButton'; + +import { useRouter } from 'src/routes/hooks'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { CONFIG } from 'src/config-global'; +import { varAlpha } from 'src/theme/styles'; + +import { Label } from 'src/components/label'; +import { Iconify } from 'src/components/iconify'; +import { Scrollbar } from 'src/components/scrollbar'; +import { AnimateAvatar } from 'src/components/animate'; + +import { useAuthContext } from 'src/auth/hooks'; + +import { AccountButton } from './account-button'; +import { SignOutButton } from './sign-out-button'; + +// ---------------------------------------------------------------------- + +export type AccountDrawerProps = IconButtonProps & { + data?: { + label: string; + href: string; + icon?: React.ReactNode; + info?: React.ReactNode; + target?: string; + }[]; +}; + +export function AccountDrawer({ data = [], sx, ...other }: AccountDrawerProps) { + const theme = useTheme(); + + const router = useRouter(); + + const { user } = useAuthContext(); + + const open = useBoolean(false); + + const handleClickItem = useCallback( + (path: string, target: string = '_self') => { + open.onFalse(); + if (target === '_blank') { + window.open(path, target); + } else { + router.push(path); + } + }, + [open, router] + ); + + const renderAvatar = ( + + {user?.displayName?.charAt(0).toUpperCase()} + + ); + + return ( + <> + + + + + + + + + + {renderAvatar} + + + {user?.displayName} + + + + {user?.email} + + + + + {data.map((option) => ( + handleClickItem(option.label === 'Home' ? '/' : option.href, option.target)} + sx={{ + py: 1, + color: 'text.secondary', + '& svg': { width: 24, height: 24 }, + '&:hover': { color: 'text.primary' }, + }} + > + {option.icon} + + + {option.label === 'Home' ? 'Home' : option.label} + + + {option.info && ( + + )} + + ))} + + + + + + Version: {CONFIG.site.version} + + + + Built with from Switzerland + + + + + + + + + + ); +} diff --git a/dashboard/src/layouts/components/account-popover.tsx b/dashboard/src/layouts/components/account-popover.tsx new file mode 100644 index 00000000..4de7cbc4 --- /dev/null +++ b/dashboard/src/layouts/components/account-popover.tsx @@ -0,0 +1,107 @@ +import type { IconButtonProps } from '@mui/material/IconButton'; + +import Box from '@mui/material/Box'; +import Divider from '@mui/material/Divider'; +import MenuList from '@mui/material/MenuList'; +import MenuItem from '@mui/material/MenuItem'; +import Typography from '@mui/material/Typography'; + +import { useRouter } from 'src/routes/hooks'; + +import { Label } from 'src/components/label'; +import { usePopover, CustomPopover } from 'src/components/custom-popover'; + +import { useAuthContext } from 'src/auth/hooks'; + +import { AccountButton } from './account-button'; +import { SignOutButton } from './sign-out-button'; + +// ---------------------------------------------------------------------- + +export type AccountPopoverProps = IconButtonProps & { + data?: { + label: string; + href: string; + icon?: React.ReactNode; + info?: React.ReactNode; + }[]; +}; + +export function AccountPopover({ data = [], sx, ...other }: AccountPopoverProps) { + const router = useRouter(); + + const popover = usePopover(); + + const { user } = useAuthContext(); + + const handleClickItem = (path: string) => { + popover.onClose(); + router.push(path); + }; + + return ( + <> + + + + + + {user?.displayName} + + + + {user?.email} + + + + + + + {data.map((option) => ( + handleClickItem(option.label === 'Home' ? '/' : option.href)} + sx={{ + py: 1, + color: 'text.secondary', + '& svg': { width: 24, height: 24 }, + '&:hover': { color: 'text.primary' }, + }} + > + {option.icon} + + {option.label === 'Home' ? 'Home' : option.label} + + {option.info && ( + + )} + + ))} + + + + + + + + + + ); +} diff --git a/dashboard/src/layouts/components/contacts-popover.tsx b/dashboard/src/layouts/components/contacts-popover.tsx new file mode 100644 index 00000000..40a6c85f --- /dev/null +++ b/dashboard/src/layouts/components/contacts-popover.tsx @@ -0,0 +1,98 @@ +'use client'; + +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { m } from 'framer-motion'; + +import Badge from '@mui/material/Badge'; +import Avatar from '@mui/material/Avatar'; +import SvgIcon from '@mui/material/SvgIcon'; +import MenuItem from '@mui/material/MenuItem'; +import Typography from '@mui/material/Typography'; +import IconButton from '@mui/material/IconButton'; +import ListItemText from '@mui/material/ListItemText'; + +import { fFromNow } from 'src/utils/format-time'; + +import { varHover } from 'src/components/animate'; +import { Scrollbar } from 'src/components/scrollbar'; +import { usePopover, CustomPopover } from 'src/components/custom-popover'; + +// ---------------------------------------------------------------------- + +export type ContactsPopoverProps = IconButtonProps & { + data?: { + id: string; + role: string; + name: string; + email: string; + status: string; + address: string; + avatarUrl: string; + phoneNumber: string; + lastActivity: string; + }[]; +}; + +export function ContactsPopover({ data = [], sx, ...other }: ContactsPopoverProps) { + const popover = usePopover(); + + return ( + <> + theme.vars.palette.action.selected }), + ...sx, + }} + {...other} + > + + {/* https://icon-sets.iconify.design/solar/users-group-rounded-bold-duotone/ */} + + + + + + + + + + Contacts ({data.length}) + + + + {data.map((contact) => ( + + + + + + + + ))} + + + + ); +} diff --git a/dashboard/src/layouts/components/currency-popover.tsx b/dashboard/src/layouts/components/currency-popover.tsx new file mode 100644 index 00000000..12fb6648 --- /dev/null +++ b/dashboard/src/layouts/components/currency-popover.tsx @@ -0,0 +1,65 @@ +'use client'; + +import type { CurrencyValue } from 'src/types/currency'; +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { m } from 'framer-motion'; +import { useCallback } from 'react'; + +import MenuList from '@mui/material/MenuList'; +import MenuItem from '@mui/material/MenuItem'; +import IconButton from '@mui/material/IconButton'; + +import { Label } from 'src/components/label'; +import { varHover } from 'src/components/animate'; +import { useSettingsContext } from 'src/components/settings'; +import { usePopover, CustomPopover } from 'src/components/custom-popover'; + +// ---------------------------------------------------------------------- + +export type CurrencyPopoverProps = IconButtonProps & { + data?: Array; +}; + +export function CurrencyPopover({ data = [], sx, ...other }: CurrencyPopoverProps) { + const popover = usePopover(); + const { currency, onUpdateField } = useSettingsContext(); + + const handleChangeCurrency = useCallback( + (newCurr: CurrencyValue) => { + if (newCurr !== currency) { + onUpdateField('currency', newCurr); + } + popover.onClose(); + }, + [popover, currency, onUpdateField] + ); + + return ( + <> + + + + + + + {data?.map((option) => ( + handleChangeCurrency(option)}> + {option} + + ))} + + + + ); +} diff --git a/dashboard/src/layouts/components/language-popover.tsx b/dashboard/src/layouts/components/language-popover.tsx new file mode 100644 index 00000000..284309c5 --- /dev/null +++ b/dashboard/src/layouts/components/language-popover.tsx @@ -0,0 +1,78 @@ +'use client'; + +import type { LanguageValue } from 'src/locales'; +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { m } from 'framer-motion'; +import { useCallback } from 'react'; + +import MenuList from '@mui/material/MenuList'; +import MenuItem from '@mui/material/MenuItem'; +import IconButton from '@mui/material/IconButton'; + +import { useTranslate } from 'src/locales'; + +import { varHover } from 'src/components/animate'; +import { FlagIcon } from 'src/components/iconify'; +import { usePopover, CustomPopover } from 'src/components/custom-popover'; + +// ---------------------------------------------------------------------- + +export type LanguagePopoverProps = IconButtonProps & { + data?: { + value: string; + label: string; + countryCode: string; + }[]; +}; + +export function LanguagePopover({ data = [], sx, ...other }: LanguagePopoverProps) { + const popover = usePopover(); + + const { onChangeLang, currentLang } = useTranslate(); + + const handleChangeLang = useCallback( + (newLang: LanguageValue) => { + onChangeLang(newLang); + popover.onClose(); + }, + [onChangeLang, popover] + ); + + return ( + <> + + + + + + + {data?.map((option) => ( + handleChangeLang(option.value as LanguageValue)} + > + + {option.label} + + ))} + + + + ); +} diff --git a/dashboard/src/layouts/components/menu-button.tsx b/dashboard/src/layouts/components/menu-button.tsx new file mode 100644 index 00000000..8548c26e --- /dev/null +++ b/dashboard/src/layouts/components/menu-button.tsx @@ -0,0 +1,30 @@ +import type { IconButtonProps } from '@mui/material/IconButton'; + +import SvgIcon from '@mui/material/SvgIcon'; +import IconButton from '@mui/material/IconButton'; + +// ---------------------------------------------------------------------- + +export type MenuButtonProps = IconButtonProps; + +export function MenuButton({ sx, ...other }: IconButtonProps) { + return ( + + + + + + + + ); +} diff --git a/dashboard/src/layouts/components/nav-toggle-button.tsx b/dashboard/src/layouts/components/nav-toggle-button.tsx new file mode 100644 index 00000000..d71be533 --- /dev/null +++ b/dashboard/src/layouts/components/nav-toggle-button.tsx @@ -0,0 +1,58 @@ +import type { IconButtonProps } from '@mui/material/IconButton'; + +import SvgIcon from '@mui/material/SvgIcon'; +import IconButton from '@mui/material/IconButton'; + +import { varAlpha } from 'src/theme/styles'; + +// ---------------------------------------------------------------------- + +export type NavToggleButtonProps = IconButtonProps & { + isNavMini: boolean; +}; + +export function NavToggleButton({ isNavMini, sx, ...other }: NavToggleButtonProps) { + return ( + `1px solid ${varAlpha(theme.vars.palette.grey['500Channel'], 0.12)}`, + transition: (theme) => + theme.transitions.create(['left'], { + easing: 'var(--layout-transition-easing)', + duration: 'var(--layout-transition-duration)', + }), + '&:hover': { + color: 'text.primary', + bgcolor: 'background.neutral', + }, + ...sx, + }} + {...other} + > + + {/* https://icon-sets.iconify.design/eva/arrow-ios-back-fill/ */} + + + + ); +} diff --git a/dashboard/src/layouts/components/notifications-drawer/index.tsx b/dashboard/src/layouts/components/notifications-drawer/index.tsx new file mode 100644 index 00000000..e116e0d5 --- /dev/null +++ b/dashboard/src/layouts/components/notifications-drawer/index.tsx @@ -0,0 +1,167 @@ +'use client'; + +import type { IconButtonProps } from '@mui/material/IconButton'; + +import { m } from 'framer-motion'; +import { useState, useCallback } from 'react'; + +import Tab from '@mui/material/Tab'; +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Badge from '@mui/material/Badge'; +import Drawer from '@mui/material/Drawer'; +import Button from '@mui/material/Button'; +import SvgIcon from '@mui/material/SvgIcon'; +import Tooltip from '@mui/material/Tooltip'; +import Typography from '@mui/material/Typography'; +import IconButton from '@mui/material/IconButton'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { Label } from 'src/components/label'; +import { Iconify } from 'src/components/iconify'; +import { varHover } from 'src/components/animate'; +import { Scrollbar } from 'src/components/scrollbar'; +import { CustomTabs } from 'src/components/custom-tabs'; + +import { NotificationItem } from './notification-item'; + +import type { NotificationItemProps } from './notification-item'; + +// ---------------------------------------------------------------------- + +const TABS = [ + { value: 'all', label: 'All', count: 22 }, + { value: 'unread', label: 'Unread', count: 12 }, + { value: 'archived', label: 'Archived', count: 10 }, +]; + +// ---------------------------------------------------------------------- + +export type NotificationsDrawerProps = IconButtonProps & { + data?: NotificationItemProps[]; +}; + +export function NotificationsDrawer({ data = [], sx, ...other }: NotificationsDrawerProps) { + const drawer = useBoolean(); + + const [currentTab, setCurrentTab] = useState('all'); + + const handleChangeTab = useCallback((event: React.SyntheticEvent, newValue: string) => { + setCurrentTab(newValue); + }, []); + + const [notifications, setNotifications] = useState(data); + + const totalUnRead = notifications.filter((item) => item.isUnRead === true).length; + + const handleMarkAllAsRead = () => { + setNotifications(notifications.map((notification) => ({ ...notification, isUnRead: false }))); + }; + + const renderHead = ( + + + Notifications + + + {!!totalUnRead && ( + + + + + + )} + + + + + + + + + + ); + + const renderTabs = ( + + {TABS.map((tab) => ( + + {tab.count} + + } + /> + ))} + + ); + + const renderList = ( + + + {notifications?.map((notification) => ( + + + + ))} + + + ); + + return ( + <> + + + + {/* https://icon-sets.iconify.design/solar/bell-bing-bold-duotone/ */} + + + + + + + + {renderHead} + + {renderTabs} + + {renderList} + + + + + + + ); +} diff --git a/dashboard/src/layouts/components/notifications-drawer/notification-item.tsx b/dashboard/src/layouts/components/notifications-drawer/notification-item.tsx new file mode 100644 index 00000000..730085b9 --- /dev/null +++ b/dashboard/src/layouts/components/notifications-drawer/notification-item.tsx @@ -0,0 +1,237 @@ +import Box from '@mui/material/Box'; +import Stack from '@mui/material/Stack'; +import Button from '@mui/material/Button'; +import Avatar from '@mui/material/Avatar'; +import Typography from '@mui/material/Typography'; +import ListItemText from '@mui/material/ListItemText'; +import ListItemAvatar from '@mui/material/ListItemAvatar'; +import ListItemButton from '@mui/material/ListItemButton'; + +import { fFromNow } from 'src/utils/format-time'; + +import { CONFIG } from 'src/config-global'; + +import { Label } from 'src/components/label'; +import { FileThumbnail } from 'src/components/file-thumbnail'; + +// ---------------------------------------------------------------------- + +export type NotificationItemProps = { + id: string; + type: string; + title: string; + category: string; + isUnRead: boolean; + avatarUrl: string | null; + createdAt: string | number | null; +}; + +export function NotificationItem({ notification }: { notification: NotificationItemProps }) { + const renderAvatar = ( + + {notification.avatarUrl ? ( + + ) : ( + + + + )} + + ); + + const renderText = ( + + } + > + {fFromNow(notification.createdAt)} + {notification.category} + + } + /> + ); + + const renderUnReadBadge = notification.isUnRead && ( + + ); + + const friendAction = ( + + + + + ); + + const projectAction = ( + + + {reader(`

    @Jaydon Frankie feedback by asking questions or just leave a note of appreciation.

    `)} +
    + + +
    + ); + + const fileAction = ( + + + + + + design-suriname-2015.mp3 + + } + secondary={ + + } + > + 2.3 GB + 30 min ago + + } + /> + + + + + ); + + const tagsAction = ( + + + + + + ); + + const paymentAction = ( + + + + + ); + + return ( + `dashed 1px ${theme.vars.palette.divider}`, + }} + > + {renderUnReadBadge} + + {renderAvatar} + + + {renderText} + {notification.type === 'friend' && friendAction} + {notification.type === 'project' && projectAction} + {notification.type === 'file' && fileAction} + {notification.type === 'tags' && tagsAction} + {notification.type === 'payment' && paymentAction} + + + ); +} + +// ---------------------------------------------------------------------- + +function reader(data: string) { + return ( + + ); +} diff --git a/dashboard/src/layouts/components/searchbar/index.tsx b/dashboard/src/layouts/components/searchbar/index.tsx new file mode 100644 index 00000000..336d3dd7 --- /dev/null +++ b/dashboard/src/layouts/components/searchbar/index.tsx @@ -0,0 +1,190 @@ +'use client'; + +import type { BoxProps } from '@mui/material/Box'; +import type { NavSectionProps } from 'src/components/nav-section'; + +import { useState, useCallback } from 'react'; +import parse from 'autosuggest-highlight/parse'; +import match from 'autosuggest-highlight/match'; + +import Box from '@mui/material/Box'; +import SvgIcon from '@mui/material/SvgIcon'; +import InputBase from '@mui/material/InputBase'; +import { useTheme } from '@mui/material/styles'; +import IconButton from '@mui/material/IconButton'; +import InputAdornment from '@mui/material/InputAdornment'; +import Dialog, { dialogClasses } from '@mui/material/Dialog'; + +import { useRouter } from 'src/routes/hooks'; +import { isExternalLink } from 'src/routes/utils'; + +import { useBoolean } from 'src/hooks/use-boolean'; +import { useEventListener } from 'src/hooks/use-event-listener'; + +import { varAlpha } from 'src/theme/styles'; + +import { Label } from 'src/components/label'; +import { Iconify } from 'src/components/iconify'; +import { Scrollbar } from 'src/components/scrollbar'; +import { SearchNotFound } from 'src/components/search-not-found'; + +import { useAuthContext } from 'src/auth/hooks'; + +import { ResultItem } from './result-item'; +import { groupItems, applyFilter, getAllItems } from './utils'; + +// ---------------------------------------------------------------------- + +export type SearchbarProps = BoxProps & { + data?: NavSectionProps['data']; +}; + +export function Searchbar({ data: navItems = [], sx, ...other }: SearchbarProps) { + const theme = useTheme(); + const { user } = useAuthContext(); + + const router = useRouter(); + + const search = useBoolean(); + + const [searchQuery, setSearchQuery] = useState(''); + + const handleClose = useCallback(() => { + search.onFalse(); + setSearchQuery(''); + }, [search]); + + const handleKeyDown = (event: KeyboardEvent) => { + if (event.key === 'k' && event.metaKey) { + search.onToggle(); + setSearchQuery(''); + } + }; + + useEventListener('keydown', handleKeyDown); + + const handleClick = useCallback( + (path: string) => { + if (isExternalLink(path)) { + window.open(path); + } else { + router.push(path); + } + handleClose(); + }, + [handleClose, router] + ); + + const handleSearch = useCallback((event: React.ChangeEvent) => { + setSearchQuery(event.target.value); + }, []); + + const dataFiltered = applyFilter({ + inputData: getAllItems({ data: navItems, permissions: user?.permissions }), + query: searchQuery, + }); + + const notFound = searchQuery && !dataFiltered.length; + + const renderItems = () => { + const dataGroups = groupItems(dataFiltered); + + return Object.keys(dataGroups) + .sort((a, b) => -b.localeCompare(a)) + .map((group, index) => ( + + {dataGroups[group].map((item) => { + const { title, path } = item; + + const partsTitle = parse(title, match(title, searchQuery)); + + const partsPath = parse(path, match(path, searchQuery)); + + return ( + + handleClick(path)} /> + + ); + })} + + )); + }; + + const renderButton = ( + + + {/* https://icon-sets.iconify.design/eva/search-fill/ */} + + + + + + + + ); + + return ( + <> + {renderButton} + + + + + + + } + endAdornment={} + inputProps={{ sx: { typography: 'h6' } }} + /> + + + {notFound ? ( + + ) : ( + {renderItems()} + )} + + + ); +} diff --git a/dashboard/src/layouts/components/searchbar/result-item.tsx b/dashboard/src/layouts/components/searchbar/result-item.tsx new file mode 100644 index 00000000..7b72845f --- /dev/null +++ b/dashboard/src/layouts/components/searchbar/result-item.tsx @@ -0,0 +1,61 @@ +import Box from '@mui/material/Box'; +import ListItemText from '@mui/material/ListItemText'; +import ListItemButton from '@mui/material/ListItemButton'; + +import { useTranslate } from 'src/locales'; +import { varAlpha } from 'src/theme/styles'; + +import { Label } from 'src/components/label'; + +// ---------------------------------------------------------------------- + +type Props = { + title: { + text: string; + highlight: boolean; + }[]; + path: { + text: string; + highlight: boolean; + }[]; + groupLabel: string; + onClickItem: () => void; +}; + +export function ResultItem({ title, path, groupLabel, onClickItem }: Props) { + const { t } = useTranslate(); + + return ( + theme.vars.palette.divider, + '&:hover': { + borderRadius: 1, + borderColor: (theme) => theme.vars.palette.primary.main, + backgroundColor: (theme) => varAlpha(theme.vars.palette.primary.mainChannel, theme.vars.palette.action.hoverOpacity), + }, + }} + > + ( + + {t(part.text)} + + ))} + secondary={path.map((part, index) => ( + + {part.text} + + ))} + /> + + {groupLabel && } + + ); +} diff --git a/dashboard/src/layouts/components/searchbar/utils.ts b/dashboard/src/layouts/components/searchbar/utils.ts new file mode 100644 index 00000000..6e384e44 --- /dev/null +++ b/dashboard/src/layouts/components/searchbar/utils.ts @@ -0,0 +1,103 @@ +import type { NavSectionProps, NavItemBaseProps } from 'src/components/nav-section'; + +import { flattenArray } from 'src/utils/helper'; + +import { hasAllPermissions } from 'src/auth/permissions'; + +// ---------------------------------------------------------------------- + +type ItemProps = { + group: string; + title: string; + path: string; +}; + +export function getAllItems({ data, permissions = [] }: { data: NavSectionProps['data']; permissions: string[] }) { + const reduceItems = data.map((list) => handleLoop(list.items, list.subheader)).flat(); + + const items = flattenArray(reduceItems) + .filter((option) => !option.permissions || hasAllPermissions(option.permissions, permissions)) + .map((option) => { + const group = splitPath(reduceItems, option.path); + + return { + group: group && group.length > 1 ? group[0] : option.subheader, + title: option.title, + path: option.path, + }; + }); + + return items; +} + +// ---------------------------------------------------------------------- + +type ApplyFilterProps = { + inputData: ItemProps[]; + query: string; +}; + +export function applyFilter({ inputData, query }: ApplyFilterProps) { + if (query) { + inputData = inputData.filter( + (item) => item.title.toLowerCase().indexOf(query.toLowerCase()) !== -1 || item.path.toLowerCase().indexOf(query.toLowerCase()) !== -1 + ); + } + + return inputData; +} + +// ---------------------------------------------------------------------- + +export function splitPath(array: NavItemBaseProps[], key: string) { + let stack = array.map((item) => ({ path: [item.title], currItem: item })); + + while (stack.length) { + const { path, currItem } = stack.pop() as { + path: string[]; + currItem: NavItemBaseProps; + }; + + if (currItem.path === key) { + return path; + } + + if (currItem.children?.length) { + stack = stack.concat( + currItem.children.map((item: NavItemBaseProps) => ({ + path: path.concat(item.title), + currItem: item, + })) + ); + } + } + return null; +} + +// ---------------------------------------------------------------------- + +export function handleLoop(array: any, subheader?: string) { + return array?.map((list: any) => ({ + subheader, + ...list, + ...(list.children && { children: handleLoop(list.children, subheader) }), + })); +} + +// ---------------------------------------------------------------------- + +type GroupsProps = { + [key: string]: ItemProps[]; +}; + +export function groupItems(array: ItemProps[]) { + const group = array.reduce((groups: GroupsProps, item) => { + groups[item.group] = groups[item.group] || []; + + groups[item.group].push(item); + + return groups; + }, {}); + + return group; +} diff --git a/dashboard/src/layouts/components/settings-button.tsx b/dashboard/src/layouts/components/settings-button.tsx new file mode 100644 index 00000000..6025b6d7 --- /dev/null +++ b/dashboard/src/layouts/components/settings-button.tsx @@ -0,0 +1,38 @@ +'use client'; + +import type { IconButtonProps } from '@mui/material/IconButton'; + +import Badge from '@mui/material/Badge'; +import SvgIcon from '@mui/material/SvgIcon'; +import IconButton from '@mui/material/IconButton'; + +import { useSettingsContext } from 'src/components/settings/context'; + +// ---------------------------------------------------------------------- + +export type SettingsButtonProps = IconButtonProps; + +export function SettingsButton({ sx, ...other }: SettingsButtonProps) { + const settings = useSettingsContext(); + + return ( + + + + {/* https://yesicon.app/solar/pallete-2-bold-duotone */} + + + + + + ); +} diff --git a/dashboard/src/layouts/components/sign-in-button.tsx b/dashboard/src/layouts/components/sign-in-button.tsx new file mode 100644 index 00000000..7aa1b968 --- /dev/null +++ b/dashboard/src/layouts/components/sign-in-button.tsx @@ -0,0 +1,17 @@ +import type { ButtonProps } from '@mui/material/Button'; + +import Button from '@mui/material/Button'; + +import { RouterLink } from 'src/routes/components'; + +import { CONFIG } from 'src/config-global'; + +// ---------------------------------------------------------------------- + +export function SignInButton({ sx, ...other }: ButtonProps) { + return ( + + ); +} diff --git a/dashboard/src/layouts/components/sign-out-button.tsx b/dashboard/src/layouts/components/sign-out-button.tsx new file mode 100644 index 00000000..76de6c12 --- /dev/null +++ b/dashboard/src/layouts/components/sign-out-button.tsx @@ -0,0 +1,72 @@ +import type { ButtonProps } from '@mui/material/Button'; +import type { Theme, SxProps } from '@mui/material/styles'; + +import { useCallback } from 'react'; +import { useAuth0 } from '@auth0/auth0-react'; + +import Button from '@mui/material/Button'; + +import { useRouter } from 'src/routes/hooks'; + +import { CONFIG } from 'src/config-global'; + +import { toast } from 'src/components/snackbar'; + +import { useAuthContext } from 'src/auth/hooks'; +import { signOut as jwtSignOut } from 'src/auth/context/jwt/action'; +import { signOut as supabaseSignOut } from 'src/auth/context/supabase/action'; + +// ---------------------------------------------------------------------- + +const signOut = (CONFIG.auth.method === 'supabase' && supabaseSignOut) || jwtSignOut; + +type Props = ButtonProps & { + sx?: SxProps; + onClose: () => void; +}; + +export function SignOutButton({ onClose, ...other }: Props) { + const router = useRouter(); + + const { checkUserSession } = useAuthContext(); + + const { logout: signOutAuth0 } = useAuth0(); + + const handleLogout = useCallback(async () => { + try { + await signOut(); + await checkUserSession?.(); + + onClose(); + router.refresh(); + } catch (error) { + console.error(error); + toast.error('Unable to logout!'); + } + }, [checkUserSession, onClose, router]); + + const handleLogoutAuth0 = useCallback(async () => { + try { + await signOutAuth0({ logoutParams: { returnTo: window.location.origin } }); + + onClose?.(); + router.refresh(); + } catch (error) { + console.error(error); + toast.error('Unable to logout!'); + } + }, [onClose, router, signOutAuth0]); + + return ( + + ); +} diff --git a/dashboard/src/layouts/components/workspaces-popover.tsx b/dashboard/src/layouts/components/workspaces-popover.tsx new file mode 100644 index 00000000..aba0c4db --- /dev/null +++ b/dashboard/src/layouts/components/workspaces-popover.tsx @@ -0,0 +1,107 @@ +'use client'; + +import type { ButtonBaseProps } from '@mui/material/ButtonBase'; + +import { useState, useCallback } from 'react'; + +import Box from '@mui/material/Box'; +import Avatar from '@mui/material/Avatar'; +import MenuList from '@mui/material/MenuList'; +import MenuItem from '@mui/material/MenuItem'; +import ButtonBase from '@mui/material/ButtonBase'; + +import { Label } from 'src/components/label'; +import { Iconify } from 'src/components/iconify'; +import { usePopover, CustomPopover } from 'src/components/custom-popover'; + +// ---------------------------------------------------------------------- + +export type WorkspacesPopoverProps = ButtonBaseProps & { + data?: { + id: string; + name: string; + logo: string; + plan: string; + }[]; +}; + +export function WorkspacesPopover({ data = [], sx, ...other }: WorkspacesPopoverProps) { + const popover = usePopover(); + + const mediaQuery = 'sm'; + + const [workspace, setWorkspace] = useState(data[0]); + + const handleChangeWorkspace = useCallback( + (newValue: (typeof data)[0]) => { + setWorkspace(newValue); + popover.onClose(); + }, + [popover] + ); + + return ( + <> + + + + + {workspace?.name} + + + + + + + + + + {data.map((option) => ( + handleChangeWorkspace(option)} + sx={{ height: 48 }} + > + + + + {option.name} + + + + + ))} + + + + ); +} diff --git a/dashboard/src/layouts/config-nav-account.tsx b/dashboard/src/layouts/config-nav-account.tsx new file mode 100644 index 00000000..f83410f7 --- /dev/null +++ b/dashboard/src/layouts/config-nav-account.tsx @@ -0,0 +1,40 @@ +import { paths } from 'src/routes/paths'; + +import { CONFIG } from 'src/config-global'; + +import { Iconify } from 'src/components/iconify'; + +import type { AccountDrawerProps } from './components/account-drawer'; + +// ---------------------------------------------------------------------- + +export const accountNavData: AccountDrawerProps['data'] = [ + { + label: 'Home', + href: paths.wallet.root, + icon: , + }, + { + label: 'Settings', + href: paths.settings.root, + icon: , + }, + { + label: 'Documentation', + href: 'https://docs.numeraire.tech', + icon: , + target: '_blank', + }, + { + label: 'API Reference', + href: `${CONFIG.site.serverUrl}/docs`, + icon: , + target: '_blank', + }, + { + label: 'Support', + href: 'https://numeraire.tech/contact', + icon: , + target: '_blank', + }, +]; diff --git a/dashboard/src/layouts/config-nav-dashboard.tsx b/dashboard/src/layouts/config-nav-dashboard.tsx new file mode 100644 index 00000000..9c80bd93 --- /dev/null +++ b/dashboard/src/layouts/config-nav-dashboard.tsx @@ -0,0 +1,120 @@ +import type { NavGroupProps } from 'src/components/nav-section'; + +import { paths } from 'src/routes/paths'; + +import { CONFIG } from 'src/config-global'; +import { Permission } from 'src/lib/swissknife'; + +import { Iconify } from 'src/components/iconify'; +import { SvgColor } from 'src/components/svg-color'; + +// ---------------------------------------------------------------------- + +const icon = (name: string) => ; +const iconify = (name: string) => ; + +const ICONS = { + user: icon('ic-user'), + lock: icon('ic-lock'), + label: icon('ic-label'), + disabled: icon('ic-disabled'), + external: icon('ic-external'), + menuItem: icon('ic-menu-item'), + dashboard: icon('ic-dashboard'), + parameter: icon('ic-parameter'), + wallet: iconify('solar:wallet-bold-duotone'), + node: iconify('solar:server-minimalistic-bold-duotone'), + invoice: iconify('eva:diagonal-arrow-left-down-fill'), + payment: iconify('eva:diagonal-arrow-right-up-fill'), + lightning: iconify('solar:bolt-bold-duotone'), + nostr: , + contacts: iconify('solar:users-group-rounded-bold-duotone'), + apiKeys: iconify('solar:code-bold-duotone'), +}; + +// ---------------------------------------------------------------------- + +export const navData: Array = [ + /** + * User Wallet + */ + { + subheader: 'wallet', + items: [ + { + title: 'overview', + path: paths.wallet.root, + icon: ICONS.wallet, + }, + { + title: 'payments', + path: paths.wallet.payments, + icon: ICONS.payment, + }, + { + title: 'invoices', + path: paths.wallet.invoices, + icon: ICONS.invoice, + }, + { + title: 'lightning_address', + path: paths.wallet.lightningAddress, + icon: ICONS.lightning, + }, + { + title: 'nostr_address', + path: paths.wallet.nostrAddress, + icon: ICONS.nostr, + }, + { + title: 'contacts', + path: paths.wallet.contacts, + icon: ICONS.contacts, + }, + ], + }, + /** + * Administration + */ + { + subheader: 'administration', + items: [ + { + title: 'node', + path: paths.admin.node, + icon: ICONS.node, + permissions: [Permission.READ_TRANSACTION, Permission.READ_LN_NODE, Permission.READ_LN_ADDRESS], + }, + { + title: 'wallets', + path: paths.admin.wallets, + icon: ICONS.wallet, + permissions: [Permission.READ_WALLET], + }, + { + title: 'payments', + path: paths.admin.payments, + icon: ICONS.payment, + permissions: [Permission.READ_TRANSACTION], + }, + { + title: 'invoices', + path: paths.admin.invoices, + icon: ICONS.invoice, + permissions: [Permission.READ_TRANSACTION], + }, + { + title: 'lightning_addresses', + path: paths.admin.lnAddresses, + icon: ICONS.lightning, + permissions: [Permission.READ_LN_ADDRESS], + }, + { + title: 'api_keys', + path: paths.admin.apiKeys, + icon: ICONS.apiKeys, + permissions: [Permission.READ_API_KEY], + }, + ], + }, +]; diff --git a/dashboard/src/layouts/config-nav-workspace.tsx b/dashboard/src/layouts/config-nav-workspace.tsx new file mode 100644 index 00000000..7d3f38b4 --- /dev/null +++ b/dashboard/src/layouts/config-nav-workspace.tsx @@ -0,0 +1,12 @@ +import { CONFIG } from 'src/config-global'; + +// ---------------------------------------------------------------------- + +export const _workspaces = [ + { + id: 'main', + name: 'Main', + logo: `${CONFIG.site.basePath}/assets/icons/bitcoin/ic-bitcoin.svg`, + plan: 'BTC', + }, +]; diff --git a/dashboard/src/layouts/core/header-base.tsx b/dashboard/src/layouts/core/header-base.tsx new file mode 100644 index 00000000..8b63bf36 --- /dev/null +++ b/dashboard/src/layouts/core/header-base.tsx @@ -0,0 +1,227 @@ +import type { NavSectionProps } from 'src/components/nav-section'; + +import Box from '@mui/material/Box'; +import Link from '@mui/material/Link'; +import Button from '@mui/material/Button'; +import { styled, useTheme } from '@mui/material/styles'; + +import { paths } from 'src/routes/paths'; +import { RouterLink } from 'src/routes/components'; + +import { Logo } from 'src/components/logo'; + +import { HeaderSection } from './header-section'; +import { Searchbar } from '../components/searchbar'; +import { MenuButton } from '../components/menu-button'; +import { SignInButton } from '../components/sign-in-button'; +import { AccountDrawer } from '../components/account-drawer'; +import { SettingsButton } from '../components/settings-button'; +import { LanguagePopover } from '../components/language-popover'; +import { ContactsPopover } from '../components/contacts-popover'; +import { CurrencyPopover } from '../components/currency-popover'; +import { WorkspacesPopover } from '../components/workspaces-popover'; +import { NotificationsDrawer } from '../components/notifications-drawer'; + +import type { HeaderSectionProps } from './header-section'; +import type { AccountDrawerProps } from '../components/account-drawer'; +import type { CurrencyPopoverProps } from '../components/currency-popover'; +import type { ContactsPopoverProps } from '../components/contacts-popover'; +import type { LanguagePopoverProps } from '../components/language-popover'; +import type { WorkspacesPopoverProps } from '../components/workspaces-popover'; +import type { NotificationsDrawerProps } from '../components/notifications-drawer'; + +// ---------------------------------------------------------------------- + +const StyledDivider = styled('span')(({ theme }) => ({ + width: 1, + height: 10, + flexShrink: 0, + display: 'none', + position: 'relative', + alignItems: 'center', + flexDirection: 'column', + marginLeft: theme.spacing(2.5), + marginRight: theme.spacing(2.5), + backgroundColor: 'currentColor', + color: theme.vars.palette.divider, + '&::before, &::after': { + top: -5, + width: 3, + height: 3, + content: '""', + flexShrink: 0, + borderRadius: '50%', + position: 'absolute', + backgroundColor: 'currentColor', + }, + '&::after': { bottom: -5, top: 'auto' }, +})); + +// ---------------------------------------------------------------------- + +export type HeaderBaseProps = HeaderSectionProps & { + onOpenNav: () => void; + data?: { + nav?: NavSectionProps['data']; + account?: AccountDrawerProps['data']; + langs?: LanguagePopoverProps['data']; + currencies?: CurrencyPopoverProps['data']; + contacts?: ContactsPopoverProps['data']; + workspaces?: WorkspacesPopoverProps['data']; + notifications?: NotificationsDrawerProps['data']; + }; + slots?: { + navMobile?: { + topArea?: React.ReactNode; + bottomArea?: React.ReactNode; + }; + }; + slotsDisplay?: { + signIn?: boolean; + account?: boolean; + helpLink?: boolean; + settings?: boolean; + purchase?: boolean; + contacts?: boolean; + searchbar?: boolean; + workspaces?: boolean; + menuButton?: boolean; + localization?: boolean; + currencies?: boolean; + notifications?: boolean; + }; +}; + +export function HeaderBase({ + sx, + data, + slots, + slotProps, + onOpenNav, + layoutQuery, + slotsDisplay: { + signIn = true, + account = true, + helpLink = true, + settings = true, + purchase = true, + contacts = true, + searchbar = true, + workspaces = true, + menuButton = true, + localization = true, + currencies = true, + notifications = true, + } = {}, + ...other +}: HeaderBaseProps) { + const theme = useTheme(); + + return ( + + {slots?.leftAreaStart} + + {/* -- Menu button -- */} + {menuButton && ( + + )} + + {/* -- Logo -- */} + + + {/* -- Divider -- */} + + + {/* -- Workspace popover -- */} + {workspaces && } + + {slots?.leftAreaEnd} + + ), + rightArea: ( + <> + {slots?.rightAreaStart} + + + {/* -- Help link -- */} + {helpLink && ( + + Need help? + + )} + + {/* -- Searchbar -- */} + {searchbar && } + + {/* -- Language popover -- */} + {localization && } + + {/* -- Currencies popover -- */} + {currencies && } + + {/* -- Notifications popover -- */} + {notifications && } + + {/* -- Contacts popover -- */} + {contacts && } + + {/* -- Settings button -- */} + {settings && } + + {/* -- Account drawer -- */} + {account && } + + {/* -- Sign in button -- */} + {signIn && } + + {/* -- Purchase button -- */} + {purchase && ( + + )} + + + {slots?.rightAreaEnd} + + ), + }} + slotProps={slotProps} + {...other} + /> + ); +} diff --git a/dashboard/src/layouts/core/header-section.tsx b/dashboard/src/layouts/core/header-section.tsx new file mode 100644 index 00000000..08c32125 --- /dev/null +++ b/dashboard/src/layouts/core/header-section.tsx @@ -0,0 +1,125 @@ +import type { Breakpoint } from '@mui/material/styles'; +import type { AppBarProps } from '@mui/material/AppBar'; +import type { ToolbarProps } from '@mui/material/Toolbar'; +import type { ContainerProps } from '@mui/material/Container'; + +import Box from '@mui/material/Box'; +import AppBar from '@mui/material/AppBar'; +import Toolbar from '@mui/material/Toolbar'; +import Container from '@mui/material/Container'; +import { styled, useTheme } from '@mui/material/styles'; + +import { useScrollOffSetTop } from 'src/hooks/use-scroll-offset-top'; + +import { bgBlur, varAlpha } from 'src/theme/styles'; + +import { layoutClasses } from '../classes'; + +// ---------------------------------------------------------------------- + +const StyledElevation = styled('span')(({ theme }) => ({ + left: 0, + right: 0, + bottom: 0, + m: 'auto', + height: 24, + zIndex: -1, + opacity: 0.48, + borderRadius: '50%', + position: 'absolute', + width: `calc(100% - 48px)`, + boxShadow: theme.customShadows.z8, +})); + +// ---------------------------------------------------------------------- + +export type HeaderSectionProps = AppBarProps & { + layoutQuery: Breakpoint; + disableOffset?: boolean; + disableElevation?: boolean; + slots?: { + leftArea?: React.ReactNode; + leftAreaEnd?: React.ReactNode; + leftAreaStart?: React.ReactNode; + rightArea?: React.ReactNode; + rightAreaEnd?: React.ReactNode; + rightAreaStart?: React.ReactNode; + topArea?: React.ReactNode; + centerArea?: React.ReactNode; + bottomArea?: React.ReactNode; + }; + slotProps?: { + toolbar?: ToolbarProps; + container?: ContainerProps; + }; +}; + +export function HeaderSection({ sx, slots, slotProps, disableOffset, disableElevation, layoutQuery = 'md', ...other }: HeaderSectionProps) { + const theme = useTheme(); + + const { offsetTop } = useScrollOffSetTop(); + + const toolbarStyles = { + default: { + minHeight: 'auto', + height: 'var(--layout-header-mobile-height)', + transition: theme.transitions.create(['height', 'background-color'], { + easing: theme.transitions.easing.easeInOut, + duration: theme.transitions.duration.shorter, + }), + [theme.breakpoints.up('sm')]: { + minHeight: 'auto', + }, + [theme.breakpoints.up(layoutQuery)]: { + height: 'var(--layout-header-desktop-height)', + }, + }, + offset: { + ...bgBlur({ color: varAlpha(theme.vars.palette.background.defaultChannel, 0.8) }), + }, + }; + + return ( + + {slots?.topArea} + + + + {slots?.leftArea} + + {slots?.centerArea} + + {slots?.rightArea} + + + + {slots?.bottomArea} + + {!disableElevation && offsetTop && } + + ); +} diff --git a/dashboard/src/layouts/core/layout-section.tsx b/dashboard/src/layouts/core/layout-section.tsx new file mode 100644 index 00000000..0235f02f --- /dev/null +++ b/dashboard/src/layouts/core/layout-section.tsx @@ -0,0 +1,62 @@ +'use client'; + +import type { Theme, SxProps, CSSObject } from '@mui/material/styles'; + +import Box from '@mui/material/Box'; +import GlobalStyles from '@mui/material/GlobalStyles'; + +import { layoutClasses } from '../classes'; + +// ---------------------------------------------------------------------- + +export type LayoutSectionProps = { + sx?: SxProps; + cssVars?: CSSObject; + children?: React.ReactNode; + footerSection?: React.ReactNode; + headerSection?: React.ReactNode; + sidebarSection?: React.ReactNode; +}; + +export function LayoutSection({ sx, cssVars, children, footerSection, headerSection, sidebarSection }: LayoutSectionProps) { + const inputGlobalStyles = ( + + ); + + return ( + <> + {inputGlobalStyles} + + + {sidebarSection ? ( + <> + {sidebarSection} + + {headerSection} + {children} + {footerSection} + + + ) : ( + <> + {headerSection} + {children} + {footerSection} + + )} + + + ); +} diff --git a/dashboard/src/layouts/dashboard/index.ts b/dashboard/src/layouts/dashboard/index.ts new file mode 100644 index 00000000..a7173130 --- /dev/null +++ b/dashboard/src/layouts/dashboard/index.ts @@ -0,0 +1,3 @@ +export * from './main'; + +export * from './layout'; diff --git a/dashboard/src/layouts/dashboard/layout.tsx b/dashboard/src/layouts/dashboard/layout.tsx new file mode 100644 index 00000000..ca35f85c --- /dev/null +++ b/dashboard/src/layouts/dashboard/layout.tsx @@ -0,0 +1,268 @@ +'use client'; + +import type { SettingsState } from 'src/components/settings'; +import type { NavSectionProps } from 'src/components/nav-section'; +import type { Theme, SxProps, CSSObject, Breakpoint } from '@mui/material/styles'; + +import { useMemo } from 'react'; +import Script from 'next/script'; + +import Alert from '@mui/material/Alert'; +import { useTheme } from '@mui/material/styles'; +import { iconButtonClasses } from '@mui/material/IconButton'; + +import { useBoolean } from 'src/hooks/use-boolean'; + +import { allLangs } from 'src/locales'; +import { currencies } from 'src/assets/data'; +import { varAlpha, stylesMode } from 'src/theme/styles'; + +import { bulletColor } from 'src/components/nav-section'; +import { useSettingsContext } from 'src/components/settings'; + +import { Main } from './main'; +import { NavMobile } from './nav-mobile'; +import { layoutClasses } from '../classes'; +import { NavVertical } from './nav-vertical'; +import { NavHorizontal } from './nav-horizontal'; +import { HeaderBase } from '../core/header-base'; +import { _workspaces } from '../config-nav-workspace'; +import { accountNavData } from '../config-nav-account'; +import { LayoutSection } from '../core/layout-section'; +import { navData as dashboardNavData } from '../config-nav-dashboard'; + +// ---------------------------------------------------------------------- + +export type DashboardLayoutProps = { + sx?: SxProps; + children: React.ReactNode; + data?: { + nav?: NavSectionProps['data']; + }; +}; + +export function DashboardLayout({ sx, children, data }: DashboardLayoutProps) { + const theme = useTheme(); + + const mobileNavOpen = useBoolean(); + + const settings = useSettingsContext(); + + const navColorVars = useNavColorVars(theme, settings); + + const layoutQuery: Breakpoint = 'lg'; + + const navData = data?.nav ?? dashboardNavData; + + const isNavMini = settings.navLayout === 'mini'; + + const isNavHorizontal = settings.navLayout === 'horizontal'; + + const isNavVertical = isNavMini || settings.navLayout === 'vertical'; + + return ( + <> +

    Q-eiml*tZw4W`r3Ce7pT?CQ0bD40pq0iL2{`4ND4$dk3f|WI(=Upzs8K zMORBD*g``1=HdqMyXt*sRCJJnOzg(rL&ZXN=bI~Jb5rqPcUlnpU_ zD8jRD5~;$hCPuP#S=~A>6mG+jJ`_qB@pZnPo5o*{ECn+%k1vL z;(&=z5!f=JoOcKIT_3Rp9J&lFn$TZK;0%P!*99q88^d3ek^FSIu^c+o-s;toJXIJ~ zhE1zAjmPqAJ-d5LLnSDs_!|*XuBMS}rmqgqlhbf4ah&Dpkl~d?O zUMjg{E99eX;p1fQ8EF|g32B&wv;zE^yt2HKvWyZ`T3T6Jdhq+j!T&MA z1L^eWf&c$LArn*LPM%;M0JrclwSUU%>4kjo$laOO$KTVL_mQWMBe@ElO4y{QMVX0; zb{qBd-dZpPKmv4OfN%U5?JP7 W_Sw{we@os1xTSqZt3=c8*?$4u-Ky6B literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/mstile-310x150.png b/dashboard/public/favicon/mstile-310x150.png new file mode 100644 index 0000000000000000000000000000000000000000..bea82a78de627ae1f9e6cc93e429f5caec3b464e GIT binary patch literal 6415 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 literal 0 HcmV?d00001 diff --git a/dashboard/public/favicon/mstile-310x310.png b/dashboard/public/favicon/mstile-310x310.png new file mode 100644 index 0000000000000000000000000000000000000000..be5e503f793ebb5976b813e3933d7ef03922524c GIT binary patch literal 13101 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 sLQUrUBXcu@eWQKn``{xu?P6U?@P&gZ@Zg% + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + diff --git a/dashboard/public/logo/logo.png b/dashboard/public/logo/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b58b8cce47d2c5b4846026d5642e8a117cc66583 GIT binary patch literal 148856 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�B@G~P@zN52(OMgaOJi?R@b<7(jdv< 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 GU-*9(Hqd|o literal 0 HcmV?d00001 diff --git a/dashboard/public/logo/logo.svg b/dashboard/public/logo/logo.svg new file mode 100644 index 00000000..f9450325 --- /dev/null +++ b/dashboard/public/logo/logo.svg @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/dashboard/public/logo/logo_font.png b/dashboard/public/logo/logo_font.png new file mode 100644 index 0000000000000000000000000000000000000000..9b74b621a6f595877ed5c0ddb896ea991019b4ef GIT binary patch literal 75393 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%0DkWr^0@kGgI8@ulkGswWJ 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≻kkQL>j<`I0tDFe*1PnO=$Z-TO3Y2KW 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