@tryghost/activitypub 3.1.0 → 3.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/activitypub.js +2 -2
  2. package/dist/{at-sign-l8HMU0fk.mjs → at-sign-B8iQvS42.mjs} +2 -2
  3. package/dist/{at-sign-l8HMU0fk.mjs.map → at-sign-B8iQvS42.mjs.map} +1 -1
  4. package/dist/{avatar-flipboard-D12yCmyH.mjs → avatar-flipboard-DNwig8eO.mjs} +2 -2
  5. package/dist/{avatar-flipboard-D12yCmyH.mjs.map → avatar-flipboard-DNwig8eO.mjs.map} +1 -1
  6. package/dist/{bluesky-sharing-D65sfQFX.mjs → bluesky-sharing-Cx4y2eb_.mjs} +6 -6
  7. package/dist/{bluesky-sharing-D65sfQFX.mjs.map → bluesky-sharing-Cx4y2eb_.mjs.map} +1 -1
  8. package/dist/{copy-DCHXVz-9.mjs → copy-Dg0Olymi.mjs} +2 -2
  9. package/dist/{copy-DCHXVz-9.mjs.map → copy-Dg0Olymi.mjs.map} +1 -1
  10. package/dist/{deleted-feed-item-BkXeOOSC.mjs → deleted-feed-item-C6ttBewp.mjs} +2 -2
  11. package/dist/{deleted-feed-item-BkXeOOSC.mjs.map → deleted-feed-item-C6ttBewp.mjs.map} +1 -1
  12. package/dist/{edit-profile-DdCJ6UkE.mjs → edit-profile-D17SCzby.mjs} +6 -6
  13. package/dist/edit-profile-D17SCzby.mjs.map +1 -0
  14. package/dist/{feed-D4gYSgoO.mjs → feed-OJkCDmvZ.mjs} +7 -7
  15. package/dist/{feed-D4gYSgoO.mjs.map → feed-OJkCDmvZ.mjs.map} +1 -1
  16. package/dist/{hash-D_Ql6FHR.mjs → hash-CaF6a8FN.mjs} +2 -2
  17. package/dist/{hash-D_Ql6FHR.mjs.map → hash-CaF6a8FN.mjs.map} +1 -1
  18. package/dist/{inbox-BIeU-G-G.mjs → inbox-DKED2HYQ.mjs} +2 -2
  19. package/dist/{inbox-BIeU-G-G.mjs.map → inbox-DKED2HYQ.mjs.map} +1 -1
  20. package/dist/{index-DK0316YP.mjs → index-B3WQF6P6.mjs} +2 -2
  21. package/dist/{index-DK0316YP.mjs.map → index-B3WQF6P6.mjs.map} +1 -1
  22. package/dist/{index-DiYjJ67s.mjs → index-BTDCxNUL.mjs} +11 -11
  23. package/dist/index-BTDCxNUL.mjs.map +1 -0
  24. package/dist/{index-BvOcRwis.mjs → index-CVvjItO-.mjs} +2 -2
  25. package/dist/{index-BvOcRwis.mjs.map → index-CVvjItO-.mjs.map} +1 -1
  26. package/dist/{index-l72TqahD.mjs → index-Cjktkl_Z.mjs} +9 -9
  27. package/dist/index-Cjktkl_Z.mjs.map +1 -0
  28. package/dist/{index-CPG1Xmp8.mjs → index-Cl_bAvCu.mjs} +6 -6
  29. package/dist/{index-CPG1Xmp8.mjs.map → index-Cl_bAvCu.mjs.map} +1 -1
  30. package/dist/{index-BurflorF.mjs → index-Cty-No3l.mjs} +11 -11
  31. package/dist/{index-BurflorF.mjs.map → index-Cty-No3l.mjs.map} +1 -1
  32. package/dist/{index-BlNT1f8K.mjs → index-DUNT0yV6.mjs} +3 -3
  33. package/dist/{index-BlNT1f8K.mjs.map → index-DUNT0yV6.mjs.map} +1 -1
  34. package/dist/{index-DIicyWvr.mjs → index-q4Ygdo0-.mjs} +52 -52
  35. package/dist/{index-DIicyWvr.mjs.map → index-q4Ygdo0-.mjs.map} +1 -1
  36. package/dist/{moderation-B0rtiaEH.mjs → moderation-nXSBmheF.mjs} +5 -5
  37. package/dist/{moderation-B0rtiaEH.mjs.map → moderation-nXSBmheF.mjs.map} +1 -1
  38. package/dist/{note-DjaU27En.mjs → note-uNSHIe4G.mjs} +4 -4
  39. package/dist/{note-DjaU27En.mjs.map → note-uNSHIe4G.mjs.map} +1 -1
  40. package/dist/{reply-4cqNFwLY.mjs → reply-BVkBkA2M.mjs} +2 -2
  41. package/dist/{reply-4cqNFwLY.mjs.map → reply-BVkBkA2M.mjs.map} +1 -1
  42. package/dist/{separator-Dgj8LPTF.mjs → separator-BljDgTc9.mjs} +2 -2
  43. package/dist/{separator-Dgj8LPTF.mjs.map → separator-BljDgTc9.mjs.map} +1 -1
  44. package/dist/{settings-qNWc2HyW.mjs → settings-CjuIDMTF.mjs} +3 -3
  45. package/dist/{settings-qNWc2HyW.mjs.map → settings-CjuIDMTF.mjs.map} +1 -1
  46. package/dist/{step-1-CuRWXSkm.mjs → step-1-YV90JpzH.mjs} +4 -4
  47. package/dist/{step-1-CuRWXSkm.mjs.map → step-1-YV90JpzH.mjs.map} +1 -1
  48. package/dist/{step-2-BsxjLzY8.mjs → step-2-BO7QOUb7.mjs} +6 -6
  49. package/dist/{step-2-BsxjLzY8.mjs.map → step-2-BO7QOUb7.mjs.map} +1 -1
  50. package/dist/{step-3-NBvYqr7R.mjs → step-3-qgcA50w6.mjs} +7 -7
  51. package/dist/{step-3-NBvYqr7R.mjs.map → step-3-qgcA50w6.mjs.map} +1 -1
  52. package/dist/{tabs-ROut24vi.mjs → tabs-DdupTuil.mjs} +15 -15
  53. package/dist/{tabs-ROut24vi.mjs.map → tabs-DdupTuil.mjs.map} +1 -1
  54. package/dist/{topic-filter-YL1wy3Q1.mjs → topic-filter-DqTL6EKu.mjs} +2 -2
  55. package/dist/{topic-filter-YL1wy3Q1.mjs.map → topic-filter-DqTL6EKu.mjs.map} +1 -1
  56. package/package.json +1 -1
  57. package/dist/edit-profile-DdCJ6UkE.mjs.map +0 -1
  58. package/dist/index-DiYjJ67s.mjs.map +0 -1
  59. package/dist/index-l72TqahD.mjs.map +0 -1
@@ -1,6 +1,6 @@
1
- import { j as e, aq as k, A as N, c as f, d as y, b as v, ar as P, e as _, H as R, B as g, as as z, C as I, a9 as M, S as b, P as B, aa as W, L as U, F as A, i as E, k as $, E as H, f as D, at as O, au as Q, av as V, aw as q, ax as T } from "./index-DIicyWvr.mjs";
2
- import { S as C } from "./separator-Dgj8LPTF.mjs";
3
- import { H as X } from "./hash-D_Ql6FHR.mjs";
1
+ import { j as e, aq as k, A as N, c as f, d as y, b as v, ar as P, e as _, H as R, B as g, as as z, C as I, a9 as M, S as b, P as B, aa as W, L as U, F as A, i as E, k as $, E as H, f as D, at as O, au as Q, av as V, aw as q, ax as T } from "./index-q4Ygdo0-.mjs";
2
+ import { S as C } from "./separator-BljDgTc9.mjs";
3
+ import { H as X } from "./hash-CaF6a8FN.mjs";
4
4
  const p = ({ user: n }) => /* @__PURE__ */ e.jsx(k, { children: /* @__PURE__ */ e.jsxs("div", { className: "relative my-5 w-full hover:cursor-pointer", children: [
5
5
  /* @__PURE__ */ e.jsx("div", { className: "pointer-events-none absolute left-4 top-4", children: /* @__PURE__ */ e.jsx(N, { author: n }) }),
6
6
  /* @__PURE__ */ e.jsx("div", { "aria-label": "New post", className: "text inset-0 flex h-[72px] w-full items-center justify-start rounded-lg bg-white pl-[68px] text-left text-[1.5rem] font-normal tracking-normal text-gray-500 shadow-[0_5px_24px_0px_rgba(0,0,0,0.02),0px_2px_5px_0px_rgba(0,0,0,0.07),0px_0px_1px_0px_rgba(0,0,0,0.25)] transition-all hover:bg-white hover:shadow-[0_5px_24px_0px_rgba(0,0,0,0.05),0px_14px_12px_-9px_rgba(0,0,0,0.07),0px_0px_1px_0px_rgba(0,0,0,0.25)] dark:border dark:border-gray-925 dark:bg-black dark:shadow-none dark:hover:border-gray-800 dark:hover:bg-black dark:hover:shadow-none", children: "What's new?" })
@@ -47,7 +47,7 @@ const p = ({ user: n }) => /* @__PURE__ */ e.jsx(k, { children: /* @__PURE__ */
47
47
  className: "absolute -left-10 top-1/2 z-10 size-10 -translate-y-1/2 text-gray-700 hover:bg-transparent max-lg:hidden dark:text-gray-600 dark:hover:text-white",
48
48
  variant: "ghost",
49
49
  onClick: F,
50
- children: /* @__PURE__ */ e.jsx(z, { className: "!size-6" })
50
+ children: /* @__PURE__ */ e.jsx(z, { className: "size-6!" })
51
51
  }
52
52
  ),
53
53
  x && /* @__PURE__ */ e.jsx(
@@ -56,7 +56,7 @@ const p = ({ user: n }) => /* @__PURE__ */ e.jsx(k, { children: /* @__PURE__ */
56
56
  className: "absolute -right-10 top-1/2 z-10 size-10 -translate-y-1/2 text-gray-700 hover:bg-transparent max-lg:hidden dark:text-gray-600 dark:hover:text-white",
57
57
  variant: "ghost",
58
58
  onClick: L,
59
- children: /* @__PURE__ */ e.jsx(I, { className: "!size-6" })
59
+ children: /* @__PURE__ */ e.jsx(I, { className: "size-6!" })
60
60
  }
61
61
  ),
62
62
  /* @__PURE__ */ e.jsx(
@@ -169,7 +169,7 @@ const p = ({ user: n }) => /* @__PURE__ */ e.jsx(k, { children: /* @__PURE__ */
169
169
  },
170
170
  `${t.id}-${t.type}-${u}`
171
171
  )),
172
- d && /* @__PURE__ */ e.jsx("li", { className: "flex flex-col items-center justify-center space-y-4 text-center", children: /* @__PURE__ */ e.jsx($, { size: "md" }) })
172
+ d && /* @__PURE__ */ e.jsx("li", { className: "flex flex-col items-center justify-center gap-4 text-center", children: /* @__PURE__ */ e.jsx($, { size: "md" }) })
173
173
  ] }),
174
174
  /* @__PURE__ */ e.jsx("div", { ref: a, className: "h-1" })
175
175
  ] }) }) }) }) : /* @__PURE__ */ e.jsx("div", { className: "flex w-full flex-col items-center gap-10", children: /* @__PURE__ */ e.jsxs("div", { className: "mt-4 flex w-full max-w-[620px] flex-col items-center", children: [
@@ -204,4 +204,4 @@ const p = ({ user: n }) => /* @__PURE__ */ e.jsx(k, { children: /* @__PURE__ */
204
204
  export {
205
205
  ee as default
206
206
  };
207
- //# sourceMappingURL=feed-D4gYSgoO.mjs.map
207
+ //# sourceMappingURL=feed-OJkCDmvZ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"feed-D4gYSgoO.mjs","sources":["../src/views/feed/components/feed-input.tsx","../src/views/feed/components/suggested-profiles.tsx","../src/views/feed/components/feed-list.tsx","../src/views/feed/feed.tsx"],"sourcesContent":["import APAvatar from '@src/components/global/ap-avatar';\nimport NewNoteModal from '@src/components/modals/new-note-modal';\nimport {ActorProperties} from '@tryghost/admin-x-framework/api/activitypub';\n\nconst FeedInput: React.FC<{user?: ActorProperties}> = ({user}) => {\n return (\n <NewNoteModal>\n <div className='relative my-5 w-full hover:cursor-pointer'>\n <div className='pointer-events-none absolute left-4 top-4'>\n <APAvatar author={user as ActorProperties} />\n </div>\n <div aria-label='New post' className='text inset-0 flex h-[72px] w-full items-center justify-start rounded-lg bg-white pl-[68px] text-left text-[1.5rem] font-normal tracking-normal text-gray-500 shadow-[0_5px_24px_0px_rgba(0,0,0,0.02),0px_2px_5px_0px_rgba(0,0,0,0.07),0px_0px_1px_0px_rgba(0,0,0,0.25)] transition-all hover:bg-white hover:shadow-[0_5px_24px_0px_rgba(0,0,0,0.05),0px_14px_12px_-9px_rgba(0,0,0,0.07),0px_0px_1px_0px_rgba(0,0,0,0.25)] dark:border dark:border-gray-925 dark:bg-black dark:shadow-none dark:hover:border-gray-800 dark:hover:bg-black dark:hover:shadow-none'>What&apos;s new?</div>\n </div>\n </NewNoteModal>\n );\n};\n\nexport default FeedInput;","import APAvatar from '@src/components/global/ap-avatar';\nimport FollowButton from '@src/components/global/follow-button';\nimport ProfilePreviewHoverCard from '@components/global/profile-preview-hover-card';\nimport {Account} from '@src/api/activitypub';\nimport {Button, H4, LucideIcon, Separator, Skeleton} from '@tryghost/shade';\nimport {useEffect, useRef, useState} from 'react';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\nimport {useSuggestedProfilesForUser} from '@src/hooks/use-activity-pub-queries';\n\nconst SuggestedProfiles: React.FC = () => {\n const scrollContainerRef = useRef<HTMLDivElement>(null);\n const navigate = useNavigateWithBasePath();\n const [canScrollLeft, setCanScrollLeft] = useState(false);\n const [canScrollRight, setCanScrollRight] = useState(true);\n\n const {suggestedProfilesQuery, updateSuggestedProfile} = useSuggestedProfilesForUser('index', 10);\n const {data: suggestedProfilesData = [], isLoading: isLoadingSuggestedProfiles} = suggestedProfilesQuery;\n\n const updateScrollButtons = () => {\n const container = scrollContainerRef.current;\n if (!container) {\n return;\n }\n\n const canScrollL = container.scrollLeft > 0;\n const canScrollR = container.scrollLeft < container.scrollWidth - container.clientWidth;\n\n setCanScrollLeft(canScrollL);\n setCanScrollRight(canScrollR);\n };\n\n useEffect(() => {\n updateScrollButtons();\n }, [suggestedProfilesData]);\n\n if (!isLoadingSuggestedProfiles && (!suggestedProfilesData || suggestedProfilesData.length < 4)) {\n return null;\n }\n\n const handleDismiss = (profileId: string) => {\n // TODO: Implement dismiss functionality\n void profileId;\n };\n\n const handleFollow = (profile: Account) => {\n updateSuggestedProfile(profile.id, {\n followedByMe: true\n });\n };\n\n const handleUnfollow = (profile: Account) => {\n updateSuggestedProfile(profile.id, {\n followedByMe: false\n });\n };\n\n const scrollLeft = () => {\n const container = scrollContainerRef.current;\n if (!container) {\n return;\n }\n\n const cardWidth = 160 + 16; // w-40 (160px) + gap-4 (16px)\n container.scrollBy({left: -cardWidth * 2, behavior: 'smooth'});\n };\n\n const scrollRight = () => {\n const container = scrollContainerRef.current;\n if (!container) {\n return;\n }\n\n const cardWidth = 160 + 16; // w-40 (160px) + gap-4 (16px)\n container.scrollBy({left: cardWidth * 2, behavior: 'smooth'});\n };\n\n return (\n <>\n <div className='pb-7 pt-4'>\n <div className='mb-3 flex items-center justify-between'>\n <H4 className='text-lg font-semibold text-black dark:text-white'>More people to follow</H4>\n <Button className='px-0 font-medium text-gray-700 hover:text-black dark:text-gray-600 dark:hover:text-white' variant='link' onClick={() => navigate('/explore')}>\n Find more &rarr;\n </Button>\n </div>\n\n <div className='relative'>\n {canScrollLeft && (\n <Button\n className='absolute -left-10 top-1/2 z-10 size-10 -translate-y-1/2 text-gray-700 hover:bg-transparent max-lg:hidden dark:text-gray-600 dark:hover:text-white'\n variant='ghost'\n onClick={scrollLeft}\n >\n <LucideIcon.ChevronLeft className='!size-6' />\n </Button>\n )}\n\n {canScrollRight && (\n <Button\n className='absolute -right-10 top-1/2 z-10 size-10 -translate-y-1/2 text-gray-700 hover:bg-transparent max-lg:hidden dark:text-gray-600 dark:hover:text-white'\n variant='ghost'\n onClick={scrollRight}\n >\n <LucideIcon.ChevronRight className='!size-6' />\n </Button>\n )}\n\n <div\n ref={scrollContainerRef}\n className='flex snap-x snap-mandatory gap-4 overflow-x-auto'\n style={{\n scrollbarWidth: 'none',\n msOverflowStyle: 'none'\n }}\n onScroll={updateScrollButtons}\n >\n {(isLoadingSuggestedProfiles ? Array(10).fill(null) : (suggestedProfilesData || [])).map((profile, index) => (\n <div\n key={profile?.id || `loading-${index}`}\n className='relative w-40 shrink-0 snap-start rounded-lg bg-gray-75 p-4 dark:bg-gray-925/30'\n onClick={!isLoadingSuggestedProfiles && profile ? () => navigate(`/profile/${profile.handle}`) : undefined}\n >\n <Button\n className='absolute right-2 top-1 hidden p-1 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300'\n variant='link'\n onClick={(e) => {\n e.stopPropagation();\n handleDismiss(profile?.id || '');\n }}\n >\n <LucideIcon.X className='size-4' />\n </Button>\n\n <div className='flex flex-col items-center text-center'>\n <div className='mb-3'>\n {isLoadingSuggestedProfiles ? (\n <Skeleton className='size-16 rounded-full' />\n ) : (\n <ProfilePreviewHoverCard actor={profile} align='center'>\n <div>\n <APAvatar\n author={{\n icon: {url: profile?.avatarUrl || ''},\n name: profile?.name || '',\n handle: profile?.handle || ''\n }}\n size='md'\n />\n </div>\n </ProfilePreviewHoverCard>\n )}\n </div>\n\n <span className='mb-6 w-full truncate font-semibold text-black dark:text-white'>\n {isLoadingSuggestedProfiles ? (\n <Skeleton className='h-5 w-32' />\n ) : (\n profile?.name || ''\n )}\n </span>\n\n {isLoadingSuggestedProfiles ? (\n <Skeleton className='h-8 w-16' />\n ) : (\n <FollowButton\n following={profile?.followedByMe || false}\n handle={profile?.handle || ''}\n type='primary'\n onFollow={() => profile && handleFollow(profile)}\n onUnfollow={() => profile && handleUnfollow(profile)}\n />\n )}\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n <Separator />\n </>\n );\n};\n\nexport default SuggestedProfiles;\n","import FeedInput from './feed-input';\nimport FeedItem from '@src/components/feed/feed-item';\nimport Layout from '@src/components/layout';\nimport NewNoteModal from '@src/components/modals/new-note-modal';\nimport SuggestedProfiles from './suggested-profiles';\nimport {Activity} from '@src/api/activitypub';\nimport {ActorProperties} from '@tryghost/admin-x-framework/api/activitypub';\nimport {Button, LoadingIndicator, LucideIcon, Separator} from '@tryghost/shade';\nimport {EmptyViewIcon, EmptyViewIndicator} from '@src/components/global/empty-view-indicator';\nimport {isPendingActivity} from '@src/utils/pending-activity';\nimport {useEffect, useRef} from 'react';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\n\nexport type FeedListProps = {\n isLoading: boolean,\n activities: Activity[],\n user: ActorProperties,\n fetchNextPage: () => void,\n hasNextPage: boolean,\n isFetchingNextPage: boolean\n}\n\nconst FeedList:React.FC<FeedListProps> = ({\n isLoading,\n activities,\n user,\n fetchNextPage,\n hasNextPage,\n isFetchingNextPage\n}) => {\n const navigate = useNavigateWithBasePath();\n\n const observerRef = useRef<IntersectionObserver | null>(null);\n const loadMoreRef = useRef<HTMLDivElement | null>(null);\n const endLoadMoreRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n if (observerRef.current) {\n observerRef.current.disconnect();\n }\n\n observerRef.current = new IntersectionObserver((entries) => {\n if (entries[0].isIntersecting && hasNextPage && !isFetchingNextPage) {\n fetchNextPage();\n }\n });\n\n if (loadMoreRef.current) {\n observerRef.current.observe(loadMoreRef.current);\n }\n\n if (endLoadMoreRef.current) {\n observerRef.current.observe(endLoadMoreRef.current);\n }\n\n return () => {\n if (observerRef.current) {\n observerRef.current.disconnect();\n }\n };\n }, [hasNextPage, isFetchingNextPage, fetchNextPage]);\n\n const loadMoreIndex = Math.max(0, Math.floor(activities.length * 0.75) - 1);\n\n return (\n <Layout>\n <div className='flex w-full flex-col'>\n <div className='w-full'>\n {activities.length > 0 ? (\n <div className='my-4'>\n <div className='mx-auto flex items-start gap-11'>\n <div className='flex w-full min-w-0 flex-col items-center'>\n <div className='flex w-full min-w-0 max-w-[620px] flex-col items-start'>\n <FeedInput user={user} />\n <ul className='mx-auto flex w-full flex-col px-4 max-lg:px-0' data-testid=\"feed-list\">\n {activities.map((activity, index) => (\n <li\n // eslint-disable-next-line react/no-array-index-key\n key={`${activity.id}-${activity.type}-${index}`} // We are using index here as activity.id is cannot be guaranteed to be unique at the moment\n data-testid=\"feed-item\"\n data-test-view-article\n >\n <FeedItem\n actor={activity.actor}\n allowDelete={activity.object.authored}\n commentCount={activity.object.replyCount ?? 0}\n isLoading={isLoading}\n isPending={isPendingActivity(activity.id)}\n layout={'feed'}\n likeCount={activity.object.likeCount ?? 0}\n object={activity.object}\n repostCount={activity.object.repostCount ?? 0}\n type={activity.type}\n onClick={() => {\n navigate(`/notes/${encodeURIComponent(activity.id)}`);\n }}\n />\n {index < activities.length - 1 && (\n <Separator />\n )}\n {index === 3 && (\n <SuggestedProfiles />\n )}\n {index === loadMoreIndex && (\n <div ref={loadMoreRef} className='h-1'></div>\n )}\n </li>\n ))}\n {isFetchingNextPage && (\n <li className='flex flex-col items-center justify-center space-y-4 text-center'>\n <LoadingIndicator size='md' />\n </li>\n )}\n </ul>\n <div ref={endLoadMoreRef} className='h-1'></div>\n </div>\n </div>\n </div>\n </div>\n ) : (\n <div className='flex w-full flex-col items-center gap-10'>\n <div className='mt-4 flex w-full max-w-[620px] flex-col items-center'>\n <FeedInput user={user} />\n <div className='mt-[-128px]'>\n <EmptyViewIndicator>\n <EmptyViewIcon><LucideIcon.Hash /></EmptyViewIcon>\n <div>The Feed is the stream of thoughts and <span className='text-black dark:text-white'>bite-sized updates</span> from people you follow in the Social Web. It&apos;s looking a little empty right now but once the people you follow start posting, their updates will show up here.</div>\n <NewNoteModal>\n <Button className='text-white dark:text-black'>\n <LucideIcon.FilePen />\n Write your first note\n </Button>\n </NewNoteModal>\n </EmptyViewIndicator>\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </Layout>\n );\n};\n\nexport default FeedList;\n","import AppError from '@components/layout/error';\nimport FeedList from './components/feed-list';\nimport React from 'react';\nimport {isApiError} from '@src/api/activitypub';\nimport {\n useFeedForUser,\n useUserDataForUser\n} from '@hooks/use-activity-pub-queries';\n\nconst Feed: React.FC = () => {\n const {feedQuery} = useFeedForUser({enabled: true});\n const {data, error, fetchNextPage, hasNextPage, isFetchingNextPage, isLoading} = feedQuery;\n\n const activities = (data?.pages.flatMap(page => page.posts) ?? Array.from({length: 5}, (_, index) => ({id: `placeholder-${index}`, object: {}})));\n\n const {data: user} = useUserDataForUser('index');\n\n if (error && isApiError(error)) {\n return <AppError errorCode={error.code} statusCode={error.statusCode}/>;\n }\n\n return <FeedList\n activities={activities}\n fetchNextPage={fetchNextPage}\n hasNextPage={hasNextPage!}\n isFetchingNextPage={isFetchingNextPage}\n isLoading={isLoading}\n user={user!}\n />;\n};\n\nexport default Feed;\n"],"names":["FeedInput","user","jsx","NewNoteModal","jsxs","APAvatar","SuggestedProfiles","scrollContainerRef","useRef","navigate","useNavigateWithBasePath","canScrollLeft","setCanScrollLeft","useState","canScrollRight","setCanScrollRight","suggestedProfilesQuery","updateSuggestedProfile","useSuggestedProfilesForUser","suggestedProfilesData","isLoadingSuggestedProfiles","updateScrollButtons","container","canScrollL","canScrollR","useEffect","handleDismiss","profileId","handleFollow","profile","handleUnfollow","scrollLeft","scrollRight","Fragment","H4","Button","LucideIcon.ChevronLeft","LucideIcon.ChevronRight","index","e","LucideIcon.X","Skeleton","ProfilePreviewHoverCard","FollowButton","Separator","FeedList","isLoading","activities","fetchNextPage","hasNextPage","isFetchingNextPage","observerRef","loadMoreRef","endLoadMoreRef","entries","loadMoreIndex","Layout","activity","FeedItem","isPendingActivity","LoadingIndicator","EmptyViewIndicator","EmptyViewIcon","LucideIcon.Hash","LucideIcon.FilePen","Feed","feedQuery","useFeedForUser","data","error","page","_","useUserDataForUser","isApiError","AppError"],"mappings":"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"}
1
+ {"version":3,"file":"feed-OJkCDmvZ.mjs","sources":["../src/views/feed/components/feed-input.tsx","../src/views/feed/components/suggested-profiles.tsx","../src/views/feed/components/feed-list.tsx","../src/views/feed/feed.tsx"],"sourcesContent":["import APAvatar from '@src/components/global/ap-avatar';\nimport NewNoteModal from '@src/components/modals/new-note-modal';\nimport {ActorProperties} from '@tryghost/admin-x-framework/api/activitypub';\n\nconst FeedInput: React.FC<{user?: ActorProperties}> = ({user}) => {\n return (\n <NewNoteModal>\n <div className='relative my-5 w-full hover:cursor-pointer'>\n <div className='pointer-events-none absolute left-4 top-4'>\n <APAvatar author={user as ActorProperties} />\n </div>\n <div aria-label='New post' className='text inset-0 flex h-[72px] w-full items-center justify-start rounded-lg bg-white pl-[68px] text-left text-[1.5rem] font-normal tracking-normal text-gray-500 shadow-[0_5px_24px_0px_rgba(0,0,0,0.02),0px_2px_5px_0px_rgba(0,0,0,0.07),0px_0px_1px_0px_rgba(0,0,0,0.25)] transition-all hover:bg-white hover:shadow-[0_5px_24px_0px_rgba(0,0,0,0.05),0px_14px_12px_-9px_rgba(0,0,0,0.07),0px_0px_1px_0px_rgba(0,0,0,0.25)] dark:border dark:border-gray-925 dark:bg-black dark:shadow-none dark:hover:border-gray-800 dark:hover:bg-black dark:hover:shadow-none'>What&apos;s new?</div>\n </div>\n </NewNoteModal>\n );\n};\n\nexport default FeedInput;","import APAvatar from '@src/components/global/ap-avatar';\nimport FollowButton from '@src/components/global/follow-button';\nimport ProfilePreviewHoverCard from '@components/global/profile-preview-hover-card';\nimport {Account} from '@src/api/activitypub';\nimport {Button, H4, LucideIcon, Separator, Skeleton} from '@tryghost/shade';\nimport {useEffect, useRef, useState} from 'react';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\nimport {useSuggestedProfilesForUser} from '@src/hooks/use-activity-pub-queries';\n\nconst SuggestedProfiles: React.FC = () => {\n const scrollContainerRef = useRef<HTMLDivElement>(null);\n const navigate = useNavigateWithBasePath();\n const [canScrollLeft, setCanScrollLeft] = useState(false);\n const [canScrollRight, setCanScrollRight] = useState(true);\n\n const {suggestedProfilesQuery, updateSuggestedProfile} = useSuggestedProfilesForUser('index', 10);\n const {data: suggestedProfilesData = [], isLoading: isLoadingSuggestedProfiles} = suggestedProfilesQuery;\n\n const updateScrollButtons = () => {\n const container = scrollContainerRef.current;\n if (!container) {\n return;\n }\n\n const canScrollL = container.scrollLeft > 0;\n const canScrollR = container.scrollLeft < container.scrollWidth - container.clientWidth;\n\n setCanScrollLeft(canScrollL);\n setCanScrollRight(canScrollR);\n };\n\n useEffect(() => {\n updateScrollButtons();\n }, [suggestedProfilesData]);\n\n if (!isLoadingSuggestedProfiles && (!suggestedProfilesData || suggestedProfilesData.length < 4)) {\n return null;\n }\n\n const handleDismiss = (profileId: string) => {\n // TODO: Implement dismiss functionality\n void profileId;\n };\n\n const handleFollow = (profile: Account) => {\n updateSuggestedProfile(profile.id, {\n followedByMe: true\n });\n };\n\n const handleUnfollow = (profile: Account) => {\n updateSuggestedProfile(profile.id, {\n followedByMe: false\n });\n };\n\n const scrollLeft = () => {\n const container = scrollContainerRef.current;\n if (!container) {\n return;\n }\n\n const cardWidth = 160 + 16; // w-40 (160px) + gap-4 (16px)\n container.scrollBy({left: -cardWidth * 2, behavior: 'smooth'});\n };\n\n const scrollRight = () => {\n const container = scrollContainerRef.current;\n if (!container) {\n return;\n }\n\n const cardWidth = 160 + 16; // w-40 (160px) + gap-4 (16px)\n container.scrollBy({left: cardWidth * 2, behavior: 'smooth'});\n };\n\n return (\n <>\n <div className='pb-7 pt-4'>\n <div className='mb-3 flex items-center justify-between'>\n <H4 className='text-lg font-semibold text-black dark:text-white'>More people to follow</H4>\n <Button className='px-0 font-medium text-gray-700 hover:text-black dark:text-gray-600 dark:hover:text-white' variant='link' onClick={() => navigate('/explore')}>\n Find more &rarr;\n </Button>\n </div>\n\n <div className='relative'>\n {canScrollLeft && (\n <Button\n className='absolute -left-10 top-1/2 z-10 size-10 -translate-y-1/2 text-gray-700 hover:bg-transparent max-lg:hidden dark:text-gray-600 dark:hover:text-white'\n variant='ghost'\n onClick={scrollLeft}\n >\n <LucideIcon.ChevronLeft className='size-6!' />\n </Button>\n )}\n\n {canScrollRight && (\n <Button\n className='absolute -right-10 top-1/2 z-10 size-10 -translate-y-1/2 text-gray-700 hover:bg-transparent max-lg:hidden dark:text-gray-600 dark:hover:text-white'\n variant='ghost'\n onClick={scrollRight}\n >\n <LucideIcon.ChevronRight className='size-6!' />\n </Button>\n )}\n\n <div\n ref={scrollContainerRef}\n className='flex snap-x snap-mandatory gap-4 overflow-x-auto'\n style={{\n scrollbarWidth: 'none',\n msOverflowStyle: 'none'\n }}\n onScroll={updateScrollButtons}\n >\n {(isLoadingSuggestedProfiles ? Array(10).fill(null) : (suggestedProfilesData || [])).map((profile, index) => (\n <div\n key={profile?.id || `loading-${index}`}\n className='relative w-40 shrink-0 snap-start rounded-lg bg-gray-75 p-4 dark:bg-gray-925/30'\n onClick={!isLoadingSuggestedProfiles && profile ? () => navigate(`/profile/${profile.handle}`) : undefined}\n >\n <Button\n className='absolute right-2 top-1 hidden p-1 text-gray-400 hover:text-gray-600 dark:hover:text-gray-300'\n variant='link'\n onClick={(e) => {\n e.stopPropagation();\n handleDismiss(profile?.id || '');\n }}\n >\n <LucideIcon.X className='size-4' />\n </Button>\n\n <div className='flex flex-col items-center text-center'>\n <div className='mb-3'>\n {isLoadingSuggestedProfiles ? (\n <Skeleton className='size-16 rounded-full' />\n ) : (\n <ProfilePreviewHoverCard actor={profile} align='center'>\n <div>\n <APAvatar\n author={{\n icon: {url: profile?.avatarUrl || ''},\n name: profile?.name || '',\n handle: profile?.handle || ''\n }}\n size='md'\n />\n </div>\n </ProfilePreviewHoverCard>\n )}\n </div>\n\n <span className='mb-6 w-full truncate font-semibold text-black dark:text-white'>\n {isLoadingSuggestedProfiles ? (\n <Skeleton className='h-5 w-32' />\n ) : (\n profile?.name || ''\n )}\n </span>\n\n {isLoadingSuggestedProfiles ? (\n <Skeleton className='h-8 w-16' />\n ) : (\n <FollowButton\n following={profile?.followedByMe || false}\n handle={profile?.handle || ''}\n type='primary'\n onFollow={() => profile && handleFollow(profile)}\n onUnfollow={() => profile && handleUnfollow(profile)}\n />\n )}\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n <Separator />\n </>\n );\n};\n\nexport default SuggestedProfiles;\n","import FeedInput from './feed-input';\nimport FeedItem from '@src/components/feed/feed-item';\nimport Layout from '@src/components/layout';\nimport NewNoteModal from '@src/components/modals/new-note-modal';\nimport SuggestedProfiles from './suggested-profiles';\nimport {Activity} from '@src/api/activitypub';\nimport {ActorProperties} from '@tryghost/admin-x-framework/api/activitypub';\nimport {Button, LoadingIndicator, LucideIcon, Separator} from '@tryghost/shade';\nimport {EmptyViewIcon, EmptyViewIndicator} from '@src/components/global/empty-view-indicator';\nimport {isPendingActivity} from '@src/utils/pending-activity';\nimport {useEffect, useRef} from 'react';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\n\nexport type FeedListProps = {\n isLoading: boolean,\n activities: Activity[],\n user: ActorProperties,\n fetchNextPage: () => void,\n hasNextPage: boolean,\n isFetchingNextPage: boolean\n}\n\nconst FeedList:React.FC<FeedListProps> = ({\n isLoading,\n activities,\n user,\n fetchNextPage,\n hasNextPage,\n isFetchingNextPage\n}) => {\n const navigate = useNavigateWithBasePath();\n\n const observerRef = useRef<IntersectionObserver | null>(null);\n const loadMoreRef = useRef<HTMLDivElement | null>(null);\n const endLoadMoreRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n if (observerRef.current) {\n observerRef.current.disconnect();\n }\n\n observerRef.current = new IntersectionObserver((entries) => {\n if (entries[0].isIntersecting && hasNextPage && !isFetchingNextPage) {\n fetchNextPage();\n }\n });\n\n if (loadMoreRef.current) {\n observerRef.current.observe(loadMoreRef.current);\n }\n\n if (endLoadMoreRef.current) {\n observerRef.current.observe(endLoadMoreRef.current);\n }\n\n return () => {\n if (observerRef.current) {\n observerRef.current.disconnect();\n }\n };\n }, [hasNextPage, isFetchingNextPage, fetchNextPage]);\n\n const loadMoreIndex = Math.max(0, Math.floor(activities.length * 0.75) - 1);\n\n return (\n <Layout>\n <div className='flex w-full flex-col'>\n <div className='w-full'>\n {activities.length > 0 ? (\n <div className='my-4'>\n <div className='mx-auto flex items-start gap-11'>\n <div className='flex w-full min-w-0 flex-col items-center'>\n <div className='flex w-full min-w-0 max-w-[620px] flex-col items-start'>\n <FeedInput user={user} />\n <ul className='mx-auto flex w-full flex-col px-4 max-lg:px-0' data-testid=\"feed-list\">\n {activities.map((activity, index) => (\n <li\n // eslint-disable-next-line react/no-array-index-key\n key={`${activity.id}-${activity.type}-${index}`} // We are using index here as activity.id is cannot be guaranteed to be unique at the moment\n data-testid=\"feed-item\"\n data-test-view-article\n >\n <FeedItem\n actor={activity.actor}\n allowDelete={activity.object.authored}\n commentCount={activity.object.replyCount ?? 0}\n isLoading={isLoading}\n isPending={isPendingActivity(activity.id)}\n layout={'feed'}\n likeCount={activity.object.likeCount ?? 0}\n object={activity.object}\n repostCount={activity.object.repostCount ?? 0}\n type={activity.type}\n onClick={() => {\n navigate(`/notes/${encodeURIComponent(activity.id)}`);\n }}\n />\n {index < activities.length - 1 && (\n <Separator />\n )}\n {index === 3 && (\n <SuggestedProfiles />\n )}\n {index === loadMoreIndex && (\n <div ref={loadMoreRef} className='h-1'></div>\n )}\n </li>\n ))}\n {isFetchingNextPage && (\n <li className='flex flex-col items-center justify-center gap-4 text-center'>\n <LoadingIndicator size='md' />\n </li>\n )}\n </ul>\n <div ref={endLoadMoreRef} className='h-1'></div>\n </div>\n </div>\n </div>\n </div>\n ) : (\n <div className='flex w-full flex-col items-center gap-10'>\n <div className='mt-4 flex w-full max-w-[620px] flex-col items-center'>\n <FeedInput user={user} />\n <div className='mt-[-128px]'>\n <EmptyViewIndicator>\n <EmptyViewIcon><LucideIcon.Hash /></EmptyViewIcon>\n <div>The Feed is the stream of thoughts and <span className='text-black dark:text-white'>bite-sized updates</span> from people you follow in the Social Web. It&apos;s looking a little empty right now but once the people you follow start posting, their updates will show up here.</div>\n <NewNoteModal>\n <Button className='text-white dark:text-black'>\n <LucideIcon.FilePen />\n Write your first note\n </Button>\n </NewNoteModal>\n </EmptyViewIndicator>\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </Layout>\n );\n};\n\nexport default FeedList;\n","import AppError from '@components/layout/error';\nimport FeedList from './components/feed-list';\nimport React from 'react';\nimport {isApiError} from '@src/api/activitypub';\nimport {\n useFeedForUser,\n useUserDataForUser\n} from '@hooks/use-activity-pub-queries';\n\nconst Feed: React.FC = () => {\n const {feedQuery} = useFeedForUser({enabled: true});\n const {data, error, fetchNextPage, hasNextPage, isFetchingNextPage, isLoading} = feedQuery;\n\n const activities = (data?.pages.flatMap(page => page.posts) ?? Array.from({length: 5}, (_, index) => ({id: `placeholder-${index}`, object: {}})));\n\n const {data: user} = useUserDataForUser('index');\n\n if (error && isApiError(error)) {\n return <AppError errorCode={error.code} statusCode={error.statusCode}/>;\n }\n\n return <FeedList\n activities={activities}\n fetchNextPage={fetchNextPage}\n hasNextPage={hasNextPage!}\n isFetchingNextPage={isFetchingNextPage}\n isLoading={isLoading}\n user={user!}\n />;\n};\n\nexport default Feed;\n"],"names":["FeedInput","user","jsx","NewNoteModal","jsxs","APAvatar","SuggestedProfiles","scrollContainerRef","useRef","navigate","useNavigateWithBasePath","canScrollLeft","setCanScrollLeft","useState","canScrollRight","setCanScrollRight","suggestedProfilesQuery","updateSuggestedProfile","useSuggestedProfilesForUser","suggestedProfilesData","isLoadingSuggestedProfiles","updateScrollButtons","container","canScrollL","canScrollR","useEffect","handleDismiss","profileId","handleFollow","profile","handleUnfollow","scrollLeft","scrollRight","Fragment","H4","Button","LucideIcon.ChevronLeft","LucideIcon.ChevronRight","index","e","LucideIcon.X","Skeleton","ProfilePreviewHoverCard","FollowButton","Separator","FeedList","isLoading","activities","fetchNextPage","hasNextPage","isFetchingNextPage","observerRef","loadMoreRef","endLoadMoreRef","entries","loadMoreIndex","Layout","activity","FeedItem","isPendingActivity","LoadingIndicator","EmptyViewIndicator","EmptyViewIcon","LucideIcon.Hash","LucideIcon.FilePen","Feed","feedQuery","useFeedForUser","data","error","page","_","useUserDataForUser","isApiError","AppError"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { a6 as e } from "./index-DIicyWvr.mjs";
1
+ import { a6 as e } from "./index-q4Ygdo0-.mjs";
2
2
  /**
3
3
  * @license lucide-react v0.553.0 - ISC
4
4
  *
@@ -14,4 +14,4 @@ const y = [
14
14
  export {
15
15
  x as H
16
16
  };
17
- //# sourceMappingURL=hash-D_Ql6FHR.mjs.map
17
+ //# sourceMappingURL=hash-CaF6a8FN.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hash-D_Ql6FHR.mjs","sources":["../../../node_modules/lucide-react/dist/esm/icons/hash.js"],"sourcesContent":["/**\n * @license lucide-react v0.553.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"9\", y2: \"9\", key: \"4lhtct\" }],\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"15\", y2: \"15\", key: \"vyu0kd\" }],\n [\"line\", { x1: \"10\", x2: \"8\", y1: \"3\", y2: \"21\", key: \"1ggp8o\" }],\n [\"line\", { x1: \"16\", x2: \"14\", y1: \"3\", y2: \"21\", key: \"weycgp\" }]\n];\nconst Hash = createLucideIcon(\"hash\", __iconNode);\n\nexport { __iconNode, Hash as default };\n//# sourceMappingURL=hash.js.map\n"],"names":["__iconNode","Hash","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,KAAK,SAAQ,CAAE;AAAA,EAC/D,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,SAAQ,CAAE;AAAA,EACjE,CAAC,QAAQ,EAAE,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,KAAK,SAAQ,CAAE;AAAA,EAChE,CAAC,QAAQ,EAAE,IAAI,MAAM,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,KAAK,SAAQ,CAAE;AACnE,GACMC,IAAOC,EAAiB,QAAQF,CAAU;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"hash-CaF6a8FN.mjs","sources":["../../../node_modules/lucide-react/dist/esm/icons/hash.js"],"sourcesContent":["/**\n * @license lucide-react v0.553.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"9\", y2: \"9\", key: \"4lhtct\" }],\n [\"line\", { x1: \"4\", x2: \"20\", y1: \"15\", y2: \"15\", key: \"vyu0kd\" }],\n [\"line\", { x1: \"10\", x2: \"8\", y1: \"3\", y2: \"21\", key: \"1ggp8o\" }],\n [\"line\", { x1: \"16\", x2: \"14\", y1: \"3\", y2: \"21\", key: \"weycgp\" }]\n];\nconst Hash = createLucideIcon(\"hash\", __iconNode);\n\nexport { __iconNode, Hash as default };\n//# sourceMappingURL=hash.js.map\n"],"names":["__iconNode","Hash","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,KAAK,SAAQ,CAAE;AAAA,EAC/D,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,SAAQ,CAAE;AAAA,EACjE,CAAC,QAAQ,EAAE,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,IAAI,MAAM,KAAK,SAAQ,CAAE;AAAA,EAChE,CAAC,QAAQ,EAAE,IAAI,MAAM,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,KAAK,SAAQ,CAAE;AACnE,GACMC,IAAOC,EAAiB,QAAQF,CAAU;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import { a6 as o } from "./index-DIicyWvr.mjs";
1
+ import { a6 as o } from "./index-q4Ygdo0-.mjs";
2
2
  /**
3
3
  * @license lucide-react v0.553.0 - ISC
4
4
  *
@@ -18,4 +18,4 @@ const t = [
18
18
  export {
19
19
  e as I
20
20
  };
21
- //# sourceMappingURL=inbox-BIeU-G-G.mjs.map
21
+ //# sourceMappingURL=inbox-DKED2HYQ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"inbox-BIeU-G-G.mjs","sources":["../../../node_modules/lucide-react/dist/esm/icons/inbox.js"],"sourcesContent":["/**\n * @license lucide-react v0.553.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"polyline\", { points: \"22 12 16 12 14 15 10 15 8 12 2 12\", key: \"o97t9d\" }],\n [\n \"path\",\n {\n d: \"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\",\n key: \"oot6mr\"\n }\n ]\n];\nconst Inbox = createLucideIcon(\"inbox\", __iconNode);\n\nexport { __iconNode, Inbox as default };\n//# sourceMappingURL=inbox.js.map\n"],"names":["__iconNode","Inbox","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,YAAY,EAAE,QAAQ,qCAAqC,KAAK,SAAQ,CAAE;AAAA,EAC3E;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AACA,GACMC,IAAQC,EAAiB,SAASF,CAAU;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"inbox-DKED2HYQ.mjs","sources":["../../../node_modules/lucide-react/dist/esm/icons/inbox.js"],"sourcesContent":["/**\n * @license lucide-react v0.553.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"polyline\", { points: \"22 12 16 12 14 15 10 15 8 12 2 12\", key: \"o97t9d\" }],\n [\n \"path\",\n {\n d: \"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\",\n key: \"oot6mr\"\n }\n ]\n];\nconst Inbox = createLucideIcon(\"inbox\", __iconNode);\n\nexport { __iconNode, Inbox as default };\n//# sourceMappingURL=inbox.js.map\n"],"names":["__iconNode","Inbox","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,YAAY,EAAE,QAAQ,qCAAqC,KAAK,SAAQ,CAAE;AAAA,EAC3E;AAAA,IACE;AAAA,IACA;AAAA,MACE,GAAG;AAAA,MACH,KAAK;AAAA,IACX;AAAA,EACA;AACA,GACMC,IAAQC,EAAiB,SAASF,CAAU;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import { aj as q, c as E, aE as R, e as Q, aF as T, ai as K, aG as tt, ah as et, aH as it, aI as st, aJ as X } from "./index-DIicyWvr.mjs";
1
+ import { aj as q, c as E, aE as R, e as Q, aF as T, ai as K, aG as tt, ah as et, aH as it, aI as st, aJ as X } from "./index-q4Ygdo0-.mjs";
2
2
  const nt = (n, t) => n == null ? t : t == null ? n : Math.max(n, t), A = /* @__PURE__ */ new WeakMap(), Rt = {
3
3
  onUpdate(n, t, e) {
4
4
  if (A.set(e, void 0), !e.computedTrend)
@@ -596,4 +596,4 @@ export {
596
596
  bt as useIsSupported,
597
597
  St as usePrefersReducedMotion
598
598
  };
599
- //# sourceMappingURL=index-DK0316YP.mjs.map
599
+ //# sourceMappingURL=index-B3WQF6P6.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-DK0316YP.mjs","sources":["../../../node_modules/number-flow/dist/plugins.mjs","../../../node_modules/number-flow/dist/lite-BTIaQdTe.mjs","../../../node_modules/@number-flow/react/dist/NumberFlow-client-48rw3j0J.mjs","../../../node_modules/@number-flow/react/dist/index.mjs"],"sourcesContent":["const f = (e, n) => e == null ? n : n == null ? e : Math.max(e, n), i = /* @__PURE__ */ new WeakMap(), l = {\n onUpdate(e, n, o) {\n if (i.set(o, void 0), !o.computedTrend)\n return;\n const s = n.integer.concat(n.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), r = e.integer.concat(e.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), u = s.find((t) => !r.find((c) => c.pos === t.pos && c.value === t.value)), a = r.find((t) => !s.find((c) => t.pos === c.pos && t.value === c.value));\n i.set(o, f(u == null ? void 0 : u.pos, a == null ? void 0 : a.pos));\n },\n getDelta(e, n, o) {\n const s = e - n, r = i.get(o.flow);\n if (!s && r != null && r >= o.pos)\n return o.length * o.flow.computedTrend;\n }\n};\nexport {\n l as continuous\n};\n","import { BROWSER as _ } from \"esm-env\";\nimport \"./plugins.mjs\";\nconst u = (n, t, e) => {\n const i = document.createElement(n), [s, a] = Array.isArray(t) ? [void 0, t] : [t, e];\n return s && Object.assign(i, s), a == null || a.forEach((r) => i.appendChild(r)), i;\n}, F = (n, t) => {\n var e;\n return t === \"left\" ? n.offsetLeft : (((e = n.offsetParent instanceof HTMLElement ? n.offsetParent : null) == null ? void 0 : e.offsetWidth) ?? 0) - n.offsetWidth - n.offsetLeft;\n}, H = (n) => n.offsetWidth > 0 && n.offsetHeight > 0, st = (n, t) => {\n _ && !customElements.get(n) && customElements.define(n, t);\n};\nfunction X(n, t, { reverse: e = !1 } = {}) {\n const i = n.length;\n for (let s = e ? i - 1 : 0; e ? s >= 0 : s < i; e ? s-- : s++)\n t(n[s], s);\n}\nfunction nt(n, t, e, i) {\n const s = t.formatToParts(n);\n e && s.unshift({ type: \"prefix\", value: e }), i && s.push({ type: \"suffix\", value: i });\n const a = [], r = [], o = [], c = [], d = {}, p = (h) => `${h}:${d[h] = (d[h] ?? -1) + 1}`;\n let x = \"\", g = !1, y = !1;\n for (const h of s) {\n x += h.value;\n const l = h.type === \"minusSign\" || h.type === \"plusSign\" ? \"sign\" : h.type;\n l === \"integer\" ? (g = !0, r.push(...h.value.split(\"\").map((C) => ({ type: l, value: parseInt(C) })))) : l === \"group\" ? r.push({ type: l, value: h.value }) : l === \"decimal\" ? (y = !0, o.push({ type: l, value: h.value, key: p(l) })) : l === \"fraction\" ? o.push(...h.value.split(\"\").map((C) => ({\n type: l,\n value: parseInt(C),\n key: p(l),\n pos: -1 - d[l]\n }))) : (g || y ? c : a).push({\n type: l,\n value: h.value,\n key: p(l)\n });\n }\n const T = [];\n for (let h = r.length - 1; h >= 0; h--) {\n const l = r[h];\n T.unshift(l.type === \"integer\" ? {\n ...l,\n key: p(l.type),\n pos: d[l.type]\n } : {\n ...l,\n key: p(l.type)\n });\n }\n return {\n pre: a,\n integer: T,\n fraction: o,\n post: c,\n valueAsString: x,\n value: typeof n == \"string\" ? parseFloat(n) : n\n };\n}\nconst I = String.raw, V = String.raw, O = _ && (() => {\n try {\n document.createElement(\"div\").animate({ opacity: 0 }, { easing: \"linear(0, 1)\" });\n } catch {\n return !1;\n }\n return !0;\n})(), z = _ && typeof CSS < \"u\" && CSS.supports && CSS.supports(\"line-height\", \"mod(1,1)\"), A = _ && typeof matchMedia < \"u\" ? matchMedia(\"(prefers-reduced-motion: reduce)\") : null, $ = \"--_number-flow-d-opacity\", U = \"--_number-flow-d-width\", S = \"--_number-flow-dx\", j = \"--_number-flow-d\", Y = (() => {\n try {\n return CSS.registerProperty({\n name: $,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: S,\n syntax: \"<length>\",\n inherits: !0,\n initialValue: \"0px\"\n }), CSS.registerProperty({\n name: U,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: j,\n syntax: \"<number>\",\n inherits: !0,\n initialValue: \"0\"\n }), !0;\n } catch {\n return !1;\n }\n})(), P = \"var(--number-flow-char-height, 1em)\", f = \"var(--number-flow-mask-height, 0.25em)\", k = `calc(${f} / 2)`, E = \"var(--number-flow-mask-width, 0.5em)\", m = `calc(${E} / var(--scale-x))`, w = \"#000 0, transparent 71%\", M = V`:host{display:inline-block;direction:ltr;white-space:nowrap;isolation:isolate;line-height:${P} !important}.number,.number__inner{display:inline-block;transform-origin:left top}:host([data-will-change]) :is(.number,.number__inner,.section,.digit,.digit__num,.symbol){will-change:transform}.number{--scale-x:calc(1 + var(${U}) / var(--width));transform:translateX(var(${S})) scaleX(var(--scale-x));margin:0 calc(-1 * ${E});position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 ${m},#000 calc(100% - ${m}),transparent ),linear-gradient(to bottom,transparent 0,#000 ${f},#000 calc(100% - ${f}),transparent 100% ),radial-gradient(at bottom right,${w}),radial-gradient(at bottom left,${w}),radial-gradient(at top left,${w}),radial-gradient(at top right,${w});-webkit-mask-size:100% calc(100% - ${f} * 2),calc(100% - ${m} * 2) 100%,${m} ${f},${m} ${f},${m} ${f},${m} ${f};-webkit-mask-position:center,center,top left,top right,bottom right,bottom left;-webkit-mask-repeat:no-repeat}.number__inner{padding:${k} ${E};transform:scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${S})))}:host > :not(.number){z-index:5}.section,.symbol{display:inline-block;position:relative;isolation:isolate}.section::after{content:'\\200b';display:inline-block}.section--justify-left{transform-origin:center left}.section--justify-right{transform-origin:center right}.section > [inert],.symbol > [inert]{margin:0 !important;position:absolute !important;z-index:-1}.digit{display:inline-block;position:relative;--c:var(--current) + var(${j})}.digit__num,.number .section::after{padding:${k} 0}.digit__num{display:inline-block;--offset-raw:mod(var(--length) + var(--n) - mod(var(--c),var(--length)),var(--length));--offset:calc( var(--offset-raw) - var(--length) * round(down,var(--offset-raw) / (var(--length) / 2),1) );--y:clamp(-100%,var(--offset) * 100%,100%);transform:translateY(var(--y))}.digit__num[inert]{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(var(--y))}.digit:not(.is-spinning) .digit__num[inert]{display:none}.symbol__value{display:inline-block;mix-blend-mode:plus-lighter;white-space:pre}.section--justify-left .symbol > [inert]{left:0}.section--justify-right .symbol > [inert]{right:0}.animate-presence{opacity:calc(1 + var(${$}))}`, G = _ ? HTMLElement : class {\n}, K = V`:host{display:inline-block;direction:ltr;white-space:nowrap;line-height:${P} !important}span{display:inline-block}:host([data-will-change]) span{will-change:transform}.number,.digit{padding:${k} 0}.symbol{white-space:pre}`, Z = (n) => `<span class=\"${n.type === \"integer\" || n.type === \"fraction\" ? \"digit\" : \"symbol\"}\" part=\"${n.type === \"integer\" || n.type === \"fraction\" ? `digit ${n.type}-digit` : `symbol ${n.type}`}\">${n.value}</span>`, v = (n, t) => `<span part=\"${t}\">${n.reduce((e, i) => e + Z(i), \"\")}</span>`, at = (n) => (\n // shadowroot=\"open\" non-standard attribute for old Chrome:\n I`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${K}</style\n\t\t\t><span role=\"img\" aria-label=\"${n.valueAsString}\"\n\t\t\t\t>${v(n.pre, \"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t\t>${v(n.integer, \"integer\")}${v(n.fraction, \"fraction\")}</span\n\t\t\t\t>${v(n.post, \"right\")}</span\n\t\t\t></template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${P} !important; padding: ${f} 0;\"\n\t\t\t>${n.valueAsString}</span\n\t\t>`\n), q = z && O && Y;\nlet b;\nclass J extends G {\n constructor() {\n super(), this.created = !1, this.batched = !1;\n const { animated: t, ...e } = this.constructor.defaultProps;\n this._animated = this.computedAnimated = t, Object.assign(this, e);\n }\n get animated() {\n return this._animated;\n }\n set animated(t) {\n var e;\n this.animated !== t && (this._animated = t, (e = this.shadowRoot) == null || e.getAnimations().forEach((i) => i.finish()));\n }\n /**\n * @internal\n */\n set data(t) {\n var o;\n if (t == null)\n return;\n const { pre: e, integer: i, fraction: s, post: a, value: r } = t;\n if (this.created) {\n const c = this._data;\n this._data = t, this.computedTrend = typeof this.trend == \"function\" ? this.trend(c.value, r) : this.trend, this.computedAnimated = q && this._animated && (!this.respectMotionPreference || !(A != null && A.matches)) && // https://github.com/barvian/number-flow/issues/9\n H(this), (o = this.plugins) == null || o.forEach((d) => {\n var p;\n return (p = d.onUpdate) == null ? void 0 : p.call(d, t, c, this);\n }), this.batched || this.willUpdate(), this._pre.update(e), this._num.update({ integer: i, fraction: s }), this._post.update(a), this.batched || this.didUpdate();\n } else {\n this._data = t, this.attachShadow({ mode: \"open\" });\n try {\n this._internals ?? (this._internals = this.attachInternals()), this._internals.role = \"img\";\n } catch {\n }\n if (typeof CSSStyleSheet < \"u\" && this.shadowRoot.adoptedStyleSheets)\n b || (b = new CSSStyleSheet(), b.replaceSync(M)), this.shadowRoot.adoptedStyleSheets = [b];\n else {\n const c = document.createElement(\"style\");\n c.textContent = M, this.shadowRoot.appendChild(c);\n }\n this._pre = new N(this, e, {\n justify: \"right\",\n part: \"left\"\n }), this.shadowRoot.appendChild(this._pre.el), this._num = new Q(this, i, s), this.shadowRoot.appendChild(this._num.el), this._post = new N(this, a, {\n justify: \"left\",\n part: \"right\"\n }), this.shadowRoot.appendChild(this._post.el), this.created = !0;\n }\n try {\n this._internals.ariaLabel = t.valueAsString;\n } catch {\n }\n }\n /**\n * @internal\n */\n willUpdate() {\n this._pre.willUpdate(), this._num.willUpdate(), this._post.willUpdate();\n }\n /**\n * @internal\n */\n didUpdate() {\n if (!this.computedAnimated)\n return;\n this._abortAnimationsFinish ? this._abortAnimationsFinish.abort() : this.dispatchEvent(new Event(\"animationsstart\")), this._pre.didUpdate(), this._num.didUpdate(), this._post.didUpdate();\n const t = new AbortController();\n Promise.all(this.shadowRoot.getAnimations().map((e) => e.finished)).then(() => {\n t.signal.aborted || (this.dispatchEvent(new Event(\"animationsfinish\")), this._abortAnimationsFinish = void 0);\n }), this._abortAnimationsFinish = t;\n }\n}\nJ.defaultProps = {\n transformTiming: {\n duration: 900,\n // Make sure to keep this minified:\n easing: \"linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)\"\n },\n spinTiming: void 0,\n opacityTiming: { duration: 450, easing: \"ease-out\" },\n animated: !0,\n trend: (n, t) => Math.sign(t - n),\n respectMotionPreference: !0,\n plugins: void 0,\n digits: void 0\n};\nclass Q {\n constructor(t, e, i, { className: s, ...a } = {}) {\n this.flow = t, this._integer = new L(t, e, {\n justify: \"right\",\n part: \"integer\"\n }), this._fraction = new L(t, i, {\n justify: \"left\",\n part: \"fraction\"\n }), this._inner = u(\"span\", {\n className: \"number__inner\"\n }, [this._integer.el, this._fraction.el]), this.el = u(\"span\", {\n ...a,\n part: \"number\",\n className: `number ${s ?? \"\"}`\n }, [this._inner]);\n }\n willUpdate() {\n this._prevWidth = this.el.offsetWidth, this._prevLeft = this.el.getBoundingClientRect().left, this._integer.willUpdate(), this._fraction.willUpdate();\n }\n update({ integer: t, fraction: e }) {\n this._integer.update(t), this._fraction.update(e);\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this._integer.didUpdate(), this._fraction.didUpdate();\n const e = this._prevLeft - t.left, i = this.el.offsetWidth, s = this._prevWidth - i;\n this.el.style.setProperty(\"--width\", String(i)), this.el.animate({\n [S]: [`${e}px`, \"0px\"],\n [U]: [s, 0]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass W {\n constructor(t, e, { justify: i, className: s, ...a }, r) {\n this.flow = t, this.children = /* @__PURE__ */ new Map(), this.onCharRemove = (c) => () => {\n this.children.delete(c);\n }, this.justify = i;\n const o = e.map((c) => this.addChar(c).el);\n this.el = u(\"span\", {\n ...a,\n className: `section section--justify-${i} ${s ?? \"\"}`\n }, r ? r(o) : o);\n }\n addChar(t, { startDigitsAtZero: e = !1, ...i } = {}) {\n const s = t.type === \"integer\" || t.type === \"fraction\" ? new D(this, t.type, e ? 0 : t.value, t.pos, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n }) : new tt(this, t.type, t.value, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n });\n return this.children.set(t.key, s), s;\n }\n unpop(t) {\n t.el.removeAttribute(\"inert\"), t.el.style.top = \"\", t.el.style[this.justify] = \"\";\n }\n pop(t) {\n t.forEach((e) => {\n e.el.style.top = `${e.el.offsetTop}px`, e.el.style[this.justify] = `${F(e.el, this.justify)}px`;\n }), t.forEach((e) => {\n e.el.setAttribute(\"inert\", \"\"), e.present = !1;\n });\n }\n addNewAndUpdateExisting(t) {\n const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = this.justify === \"left\", a = s ? \"prepend\" : \"append\";\n if (X(t, (r) => {\n let o;\n this.children.has(r.key) ? (o = this.children.get(r.key), i.set(r, o), this.unpop(o), o.present = !0) : (o = this.addChar(r, { startDigitsAtZero: !0, animateIn: !0 }), e.set(r, o)), this.el[a](o.el);\n }, { reverse: s }), this.flow.computedAnimated) {\n const r = this.el.getBoundingClientRect();\n e.forEach((o) => {\n o.willUpdate(r);\n });\n }\n e.forEach((r, o) => {\n r.update(o.value);\n }), i.forEach((r, o) => {\n r.update(o.value);\n });\n }\n willUpdate() {\n const t = this.el.getBoundingClientRect();\n this._prevOffset = t[this.justify], this.children.forEach((e) => e.willUpdate(t));\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this.children.forEach((s) => s.didUpdate(t));\n const e = t[this.justify], i = this._prevOffset - e;\n i && this.children.size && this.el.animate({\n transform: [`translateX(${i}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass L extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i), this.unpop(i);\n }), this.addNewAndUpdateExisting(t), e.forEach((i) => {\n i instanceof D && i.update(0);\n }), this.pop(e);\n }\n}\nclass N extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i);\n }), this.pop(e), this.addNewAndUpdateExisting(t);\n }\n}\nclass R {\n constructor(t, e, { onRemove: i, animateIn: s = !1 } = {}) {\n this.flow = t, this.el = e, this._present = !0, this._remove = () => {\n var a;\n this.el.remove(), (a = this._onRemove) == null || a.call(this);\n }, this.el.classList.add(\"animate-presence\"), this.flow.computedAnimated && s && this.el.animate({\n [$]: [-0.9999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), this._onRemove = i;\n }\n get present() {\n return this._present;\n }\n set present(t) {\n if (this._present !== t) {\n if (this._present = t, t ? this.el.removeAttribute(\"inert\") : this.el.setAttribute(\"inert\", \"\"), !this.flow.computedAnimated) {\n t || this._remove();\n return;\n }\n this.el.style.setProperty(\"--_number-flow-d-opacity\", t ? \"0\" : \"-.999\"), this.el.animate({\n [$]: t ? [-0.9999, 0] : [0.999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), t ? this.flow.removeEventListener(\"animationsfinish\", this._remove) : this.flow.addEventListener(\"animationsfinish\", this._remove, {\n once: !0\n });\n }\n }\n}\nclass B extends R {\n constructor(t, e, i, s) {\n super(t.flow, i, s), this.section = t, this.value = e, this.el = i;\n }\n}\nclass D extends B {\n constructor(t, e, i, s, a) {\n var d, p;\n const r = (((p = (d = t.flow.digits) == null ? void 0 : d[s]) == null ? void 0 : p.max) ?? 9) + 1, o = Array.from({ length: r }).map((x, g) => {\n const y = u(\"span\", { className: \"digit__num\" }, [\n document.createTextNode(String(g))\n ]);\n return g !== i && y.setAttribute(\"inert\", \"\"), y.style.setProperty(\"--n\", String(g)), y;\n }), c = u(\"span\", {\n part: `digit ${e}-digit`,\n className: \"digit\"\n }, o);\n c.style.setProperty(\"--current\", String(i)), c.style.setProperty(\"--length\", String(r)), super(t, i, c, a), this.pos = s, this._onAnimationsFinish = () => {\n this.el.classList.remove(\"is-spinning\");\n }, this._numbers = o, this.length = r;\n }\n willUpdate(t) {\n const e = this.el.getBoundingClientRect();\n this._prevValue = this.value;\n const i = e[this.section.justify] - t[this.section.justify], s = e.width / 2;\n this._prevCenter = this.section.justify === \"left\" ? i + s : i - s;\n }\n update(t) {\n this.el.style.setProperty(\"--current\", String(t)), this._numbers.forEach((e, i) => i === t ? e.removeAttribute(\"inert\") : e.setAttribute(\"inert\", \"\")), this.value = t;\n }\n didUpdate(t) {\n const e = this.el.getBoundingClientRect(), i = e[this.section.justify] - t[this.section.justify], s = e.width / 2, a = this.section.justify === \"left\" ? i + s : i - s, r = this._prevCenter - a;\n r && this.el.animate({\n transform: [`translateX(${r}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n const o = this.getDelta();\n o && (this.el.classList.add(\"is-spinning\"), this.el.animate({\n [j]: [-o, 0]\n }, {\n ...this.flow.spinTiming ?? this.flow.transformTiming,\n composite: \"accumulate\"\n }), this.flow.addEventListener(\"animationsfinish\", this._onAnimationsFinish, { once: !0 }));\n }\n getDelta() {\n var i;\n if (this.flow.plugins)\n for (const s of this.flow.plugins) {\n const a = (i = s.getDelta) == null ? void 0 : i.call(s, this.value, this._prevValue, this);\n if (a != null)\n return a;\n }\n const t = this.value - this._prevValue, e = this.flow.computedTrend || Math.sign(t);\n return e < 0 && this.value > this._prevValue ? this.value - this.length - this._prevValue : e > 0 && this.value < this._prevValue ? this.length - this._prevValue + this.value : t;\n }\n}\nclass tt extends B {\n constructor(t, e, i, s) {\n const a = u(\"span\", {\n className: \"symbol__value\",\n textContent: i\n });\n super(t, i, u(\"span\", {\n part: `symbol ${e}`,\n className: \"symbol\"\n }, [a]), s), this.type = e, this._children = /* @__PURE__ */ new Map(), this._onChildRemove = (r) => () => {\n this._children.delete(r);\n }, this._children.set(i, new R(this.flow, a, {\n onRemove: this._onChildRemove(i)\n }));\n }\n willUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const e = this.el.getBoundingClientRect();\n this._prevOffset = e[this.section.justify] - t[this.section.justify];\n }\n update(t) {\n if (this.value !== t) {\n const e = this._children.get(this.value);\n e && (e.present = !1);\n const i = this._children.get(t);\n if (i)\n i.present = !0;\n else {\n const s = u(\"span\", {\n className: \"symbol__value\",\n textContent: t\n });\n this.el.appendChild(s), this._children.set(t, new R(this.flow, s, {\n animateIn: !0,\n onRemove: this._onChildRemove(t)\n }));\n }\n }\n this.value = t;\n }\n didUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const i = this.el.getBoundingClientRect()[this.section.justify] - t[this.section.justify], s = this._prevOffset - i;\n s && this.el.animate({\n transform: [`translateX(${s}px)`, \"none\"]\n }, { ...this.flow.transformTiming, composite: \"accumulate\" });\n }\n}\nexport {\n D,\n J as N,\n G as S,\n q as c,\n st as d,\n nt as f,\n A as p,\n at as r\n};\n","'use client';\nimport * as React from 'react';\nimport NumberFlowLite, { define, formatToData, renderInnerHTML } from 'number-flow/lite';\nimport { BROWSER } from 'esm-env';\n\nconst REACT_MAJOR = parseInt(React.version.match(/^(\\d+)\\./)?.[1]);\nconst isReact19 = REACT_MAJOR >= 19;\n// Can't wait to not have to do this in React 19:\nconst OBSERVED_ATTRIBUTES = [\n 'data',\n 'digits'\n];\nclass NumberFlowElement extends NumberFlowLite {\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = JSON.parse(newValue);\n }\n}\nNumberFlowElement.observedAttributes = isReact19 ? [] : OBSERVED_ATTRIBUTES;\ndefine('number-flow-react', NumberFlowElement);\n// You're supposed to cache these between uses:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\n// Serialize to strings b/c React:\nconst formatters = {};\n// Tiny workaround to support React 19 until it's released:\nconst serialize = isReact19 ? (p)=>p : JSON.stringify;\nfunction splitProps(props) {\n const { transformTiming, spinTiming, opacityTiming, animated, respectMotionPreference, trend, plugins, ...rest } = props;\n return [\n {\n transformTiming,\n spinTiming,\n opacityTiming,\n animated,\n respectMotionPreference,\n trend,\n plugins\n },\n rest\n ];\n}\n// We need a class component to use getSnapshotBeforeUpdate:\nclass NumberFlowImpl extends React.Component {\n // Update the non-`data` props to avoid JSON serialization\n // Data needs to be set in render still:\n updateProperties(prevProps) {\n if (!this.el) return;\n this.el.batched = !this.props.isolate;\n const [nonData] = splitProps(this.props);\n Object.entries(nonData).forEach(([k, v])=>{\n // @ts-ignore\n this.el[k] = v ?? NumberFlowElement.defaultProps[k];\n });\n if (prevProps?.onAnimationsStart) this.el.removeEventListener('animationsstart', prevProps.onAnimationsStart);\n if (this.props.onAnimationsStart) this.el.addEventListener('animationsstart', this.props.onAnimationsStart);\n if (prevProps?.onAnimationsFinish) this.el.removeEventListener('animationsfinish', prevProps.onAnimationsFinish);\n if (this.props.onAnimationsFinish) this.el.addEventListener('animationsfinish', this.props.onAnimationsFinish);\n }\n componentDidMount() {\n this.updateProperties();\n if (isReact19 && this.el) {\n // React 19 needs this because the attributeChangedCallback isn't called:\n this.el.digits = this.props.digits;\n this.el.data = this.props.data;\n }\n }\n getSnapshotBeforeUpdate(prevProps) {\n this.updateProperties(prevProps);\n if (prevProps.data !== this.props.data) {\n if (this.props.group) {\n this.props.group.willUpdate();\n return ()=>this.props.group?.didUpdate();\n }\n if (!this.props.isolate) {\n this.el?.willUpdate();\n return ()=>this.el?.didUpdate();\n }\n }\n return null;\n }\n componentDidUpdate(_, __, didUpdate) {\n didUpdate?.();\n }\n handleRef(el) {\n if (this.props.innerRef) this.props.innerRef.current = el;\n this.el = el;\n }\n render() {\n const [_, { innerRef, className, data, willChange, isolate, group, digits, onAnimationsStart, onAnimationsFinish, ...rest }] = splitProps(this.props);\n return(// @ts-expect-error missing types\n /*#__PURE__*/ React.createElement(\"number-flow-react\", {\n ref: this.handleRef,\n \"data-will-change\": willChange ? '' : undefined,\n // Have to rename this:\n class: className,\n ...rest,\n dangerouslySetInnerHTML: {\n __html: BROWSER ? '' : renderInnerHTML(data)\n },\n suppressHydrationWarning: true,\n digits: serialize(digits),\n // Make sure data is set last, everything else is updated:\n data: serialize(data)\n }));\n }\n constructor(props){\n super(props);\n this.handleRef = this.handleRef.bind(this);\n }\n}\nconst NumberFlow = /*#__PURE__*/ React.forwardRef(function NumberFlow({ value, locales, format, prefix, suffix, ...props }, _ref) {\n React.useImperativeHandle(_ref, ()=>ref.current, []);\n const ref = React.useRef();\n const group = React.useContext(NumberFlowGroupContext);\n group?.useRegister(ref);\n const localesString = React.useMemo(()=>locales ? JSON.stringify(locales) : '', [\n locales\n ]);\n const formatString = React.useMemo(()=>format ? JSON.stringify(format) : '', [\n format\n ]);\n const data = React.useMemo(()=>{\n const formatter = formatters[`${localesString}:${formatString}`] ??= new Intl.NumberFormat(locales, format);\n return formatToData(value, formatter, prefix, suffix);\n }, [\n value,\n localesString,\n formatString,\n prefix,\n suffix\n ]);\n return /*#__PURE__*/ React.createElement(NumberFlowImpl, {\n ...props,\n group: group,\n data: data,\n innerRef: ref\n });\n});\nconst NumberFlowGroupContext = /*#__PURE__*/ React.createContext(undefined);\nfunction NumberFlowGroup({ children }) {\n const flows = React.useRef(new Set());\n const updating = React.useRef(false);\n const pending = React.useRef(new WeakMap());\n const value = React.useMemo(()=>({\n useRegister (ref) {\n React.useEffect(()=>{\n flows.current.add(ref);\n return ()=>{\n flows.current.delete(ref);\n };\n }, []);\n },\n willUpdate () {\n if (updating.current) return;\n updating.current = true;\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !f.created) return;\n f.willUpdate();\n pending.current.set(f, true);\n });\n },\n didUpdate () {\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !pending.current.get(f)) return;\n f.didUpdate();\n pending.current.delete(f);\n });\n updating.current = false;\n }\n }), []);\n return /*#__PURE__*/ React.createElement(NumberFlowGroupContext.Provider, {\n value: value\n }, children);\n}\n\nexport { NumberFlow as N, NumberFlowElement as a, NumberFlowGroup as b };\n","import * as React from 'react';\nimport { canAnimate, prefersReducedMotion } from 'number-flow/lite';\nexport * from 'number-flow/plugins';\nexport { a as NumberFlowElement, b as NumberFlowGroup, N as default } from './NumberFlow-client-48rw3j0J.mjs';\n\nconst useIsSupported = ()=>React.useSyncExternalStore(()=>()=>{}, ()=>canAnimate, ()=>false);\nconst usePrefersReducedMotion = ()=>React.useSyncExternalStore((cb)=>{\n prefersReducedMotion?.addEventListener('change', cb);\n return ()=>prefersReducedMotion?.removeEventListener('change', cb);\n }, ()=>prefersReducedMotion.matches, ()=>false);\nfunction useCanAnimate({ respectMotionPreference = true } = {}) {\n const isSupported = useIsSupported();\n const reducedMotion = usePrefersReducedMotion();\n return isSupported && (!respectMotionPreference || !reducedMotion);\n}\n\nexport { useCanAnimate, useIsSupported, usePrefersReducedMotion };\n"],"names":["f","e","n","i","l","o","s","t","r","u","c","a","F","H","st","X","nt","p","h","x","g","y","C","T","V","O","z","A","$","U","S","j","Y","P","k","E","m","w","M","G","q","b","N","Q","L","W","D","tt","R","B","d","REACT_MAJOR","React.version","isReact19","OBSERVED_ATTRIBUTES","NumberFlowElement","NumberFlowLite","attr","_oldValue","newValue","define","formatters","serialize","splitProps","props","transformTiming","spinTiming","opacityTiming","animated","respectMotionPreference","trend","plugins","rest","NumberFlowImpl","React.Component","prevProps","nonData","v","_a","_","__","didUpdate","el","innerRef","className","data","willChange","isolate","group","digits","onAnimationsStart","onAnimationsFinish","React.createElement","NumberFlow","React.forwardRef","value","locales","format","prefix","suffix","_ref","React.useImperativeHandle","ref","React.useRef","React.useContext","NumberFlowGroupContext","localesString","React.useMemo","formatString","formatter","formatToData","React.createContext","NumberFlowGroup","children","flows","updating","pending","React.useEffect","useIsSupported","React.useSyncExternalStore","canAnimate","usePrefersReducedMotion","cb","prefersReducedMotion","useCanAnimate","isSupported","reducedMotion"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}
1
+ {"version":3,"file":"index-B3WQF6P6.mjs","sources":["../../../node_modules/number-flow/dist/plugins.mjs","../../../node_modules/number-flow/dist/lite-BTIaQdTe.mjs","../../../node_modules/@number-flow/react/dist/NumberFlow-client-48rw3j0J.mjs","../../../node_modules/@number-flow/react/dist/index.mjs"],"sourcesContent":["const f = (e, n) => e == null ? n : n == null ? e : Math.max(e, n), i = /* @__PURE__ */ new WeakMap(), l = {\n onUpdate(e, n, o) {\n if (i.set(o, void 0), !o.computedTrend)\n return;\n const s = n.integer.concat(n.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), r = e.integer.concat(e.fraction).filter((t) => t.type === \"integer\" || t.type === \"fraction\"), u = s.find((t) => !r.find((c) => c.pos === t.pos && c.value === t.value)), a = r.find((t) => !s.find((c) => t.pos === c.pos && t.value === c.value));\n i.set(o, f(u == null ? void 0 : u.pos, a == null ? void 0 : a.pos));\n },\n getDelta(e, n, o) {\n const s = e - n, r = i.get(o.flow);\n if (!s && r != null && r >= o.pos)\n return o.length * o.flow.computedTrend;\n }\n};\nexport {\n l as continuous\n};\n","import { BROWSER as _ } from \"esm-env\";\nimport \"./plugins.mjs\";\nconst u = (n, t, e) => {\n const i = document.createElement(n), [s, a] = Array.isArray(t) ? [void 0, t] : [t, e];\n return s && Object.assign(i, s), a == null || a.forEach((r) => i.appendChild(r)), i;\n}, F = (n, t) => {\n var e;\n return t === \"left\" ? n.offsetLeft : (((e = n.offsetParent instanceof HTMLElement ? n.offsetParent : null) == null ? void 0 : e.offsetWidth) ?? 0) - n.offsetWidth - n.offsetLeft;\n}, H = (n) => n.offsetWidth > 0 && n.offsetHeight > 0, st = (n, t) => {\n _ && !customElements.get(n) && customElements.define(n, t);\n};\nfunction X(n, t, { reverse: e = !1 } = {}) {\n const i = n.length;\n for (let s = e ? i - 1 : 0; e ? s >= 0 : s < i; e ? s-- : s++)\n t(n[s], s);\n}\nfunction nt(n, t, e, i) {\n const s = t.formatToParts(n);\n e && s.unshift({ type: \"prefix\", value: e }), i && s.push({ type: \"suffix\", value: i });\n const a = [], r = [], o = [], c = [], d = {}, p = (h) => `${h}:${d[h] = (d[h] ?? -1) + 1}`;\n let x = \"\", g = !1, y = !1;\n for (const h of s) {\n x += h.value;\n const l = h.type === \"minusSign\" || h.type === \"plusSign\" ? \"sign\" : h.type;\n l === \"integer\" ? (g = !0, r.push(...h.value.split(\"\").map((C) => ({ type: l, value: parseInt(C) })))) : l === \"group\" ? r.push({ type: l, value: h.value }) : l === \"decimal\" ? (y = !0, o.push({ type: l, value: h.value, key: p(l) })) : l === \"fraction\" ? o.push(...h.value.split(\"\").map((C) => ({\n type: l,\n value: parseInt(C),\n key: p(l),\n pos: -1 - d[l]\n }))) : (g || y ? c : a).push({\n type: l,\n value: h.value,\n key: p(l)\n });\n }\n const T = [];\n for (let h = r.length - 1; h >= 0; h--) {\n const l = r[h];\n T.unshift(l.type === \"integer\" ? {\n ...l,\n key: p(l.type),\n pos: d[l.type]\n } : {\n ...l,\n key: p(l.type)\n });\n }\n return {\n pre: a,\n integer: T,\n fraction: o,\n post: c,\n valueAsString: x,\n value: typeof n == \"string\" ? parseFloat(n) : n\n };\n}\nconst I = String.raw, V = String.raw, O = _ && (() => {\n try {\n document.createElement(\"div\").animate({ opacity: 0 }, { easing: \"linear(0, 1)\" });\n } catch {\n return !1;\n }\n return !0;\n})(), z = _ && typeof CSS < \"u\" && CSS.supports && CSS.supports(\"line-height\", \"mod(1,1)\"), A = _ && typeof matchMedia < \"u\" ? matchMedia(\"(prefers-reduced-motion: reduce)\") : null, $ = \"--_number-flow-d-opacity\", U = \"--_number-flow-d-width\", S = \"--_number-flow-dx\", j = \"--_number-flow-d\", Y = (() => {\n try {\n return CSS.registerProperty({\n name: $,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: S,\n syntax: \"<length>\",\n inherits: !0,\n initialValue: \"0px\"\n }), CSS.registerProperty({\n name: U,\n syntax: \"<number>\",\n inherits: !1,\n initialValue: \"0\"\n }), CSS.registerProperty({\n name: j,\n syntax: \"<number>\",\n inherits: !0,\n initialValue: \"0\"\n }), !0;\n } catch {\n return !1;\n }\n})(), P = \"var(--number-flow-char-height, 1em)\", f = \"var(--number-flow-mask-height, 0.25em)\", k = `calc(${f} / 2)`, E = \"var(--number-flow-mask-width, 0.5em)\", m = `calc(${E} / var(--scale-x))`, w = \"#000 0, transparent 71%\", M = V`:host{display:inline-block;direction:ltr;white-space:nowrap;isolation:isolate;line-height:${P} !important}.number,.number__inner{display:inline-block;transform-origin:left top}:host([data-will-change]) :is(.number,.number__inner,.section,.digit,.digit__num,.symbol){will-change:transform}.number{--scale-x:calc(1 + var(${U}) / var(--width));transform:translateX(var(${S})) scaleX(var(--scale-x));margin:0 calc(-1 * ${E});position:relative;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 ${m},#000 calc(100% - ${m}),transparent ),linear-gradient(to bottom,transparent 0,#000 ${f},#000 calc(100% - ${f}),transparent 100% ),radial-gradient(at bottom right,${w}),radial-gradient(at bottom left,${w}),radial-gradient(at top left,${w}),radial-gradient(at top right,${w});-webkit-mask-size:100% calc(100% - ${f} * 2),calc(100% - ${m} * 2) 100%,${m} ${f},${m} ${f},${m} ${f},${m} ${f};-webkit-mask-position:center,center,top left,top right,bottom right,bottom left;-webkit-mask-repeat:no-repeat}.number__inner{padding:${k} ${E};transform:scaleX(calc(1 / var(--scale-x))) translateX(calc(-1 * var(${S})))}:host > :not(.number){z-index:5}.section,.symbol{display:inline-block;position:relative;isolation:isolate}.section::after{content:'\\200b';display:inline-block}.section--justify-left{transform-origin:center left}.section--justify-right{transform-origin:center right}.section > [inert],.symbol > [inert]{margin:0 !important;position:absolute !important;z-index:-1}.digit{display:inline-block;position:relative;--c:var(--current) + var(${j})}.digit__num,.number .section::after{padding:${k} 0}.digit__num{display:inline-block;--offset-raw:mod(var(--length) + var(--n) - mod(var(--c),var(--length)),var(--length));--offset:calc( var(--offset-raw) - var(--length) * round(down,var(--offset-raw) / (var(--length) / 2),1) );--y:clamp(-100%,var(--offset) * 100%,100%);transform:translateY(var(--y))}.digit__num[inert]{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(var(--y))}.digit:not(.is-spinning) .digit__num[inert]{display:none}.symbol__value{display:inline-block;mix-blend-mode:plus-lighter;white-space:pre}.section--justify-left .symbol > [inert]{left:0}.section--justify-right .symbol > [inert]{right:0}.animate-presence{opacity:calc(1 + var(${$}))}`, G = _ ? HTMLElement : class {\n}, K = V`:host{display:inline-block;direction:ltr;white-space:nowrap;line-height:${P} !important}span{display:inline-block}:host([data-will-change]) span{will-change:transform}.number,.digit{padding:${k} 0}.symbol{white-space:pre}`, Z = (n) => `<span class=\"${n.type === \"integer\" || n.type === \"fraction\" ? \"digit\" : \"symbol\"}\" part=\"${n.type === \"integer\" || n.type === \"fraction\" ? `digit ${n.type}-digit` : `symbol ${n.type}`}\">${n.value}</span>`, v = (n, t) => `<span part=\"${t}\">${n.reduce((e, i) => e + Z(i), \"\")}</span>`, at = (n) => (\n // shadowroot=\"open\" non-standard attribute for old Chrome:\n I`<template shadowroot=\"open\" shadowrootmode=\"open\"\n\t\t\t><style>\n\t\t\t\t${K}</style\n\t\t\t><span role=\"img\" aria-label=\"${n.valueAsString}\"\n\t\t\t\t>${v(n.pre, \"left\")}<span part=\"number\" class=\"number\"\n\t\t\t\t\t>${v(n.integer, \"integer\")}${v(n.fraction, \"fraction\")}</span\n\t\t\t\t>${v(n.post, \"right\")}</span\n\t\t\t></template\n\t\t><span\n\t\t\tstyle=\"font-kerning: none; display: inline-block; line-height: ${P} !important; padding: ${f} 0;\"\n\t\t\t>${n.valueAsString}</span\n\t\t>`\n), q = z && O && Y;\nlet b;\nclass J extends G {\n constructor() {\n super(), this.created = !1, this.batched = !1;\n const { animated: t, ...e } = this.constructor.defaultProps;\n this._animated = this.computedAnimated = t, Object.assign(this, e);\n }\n get animated() {\n return this._animated;\n }\n set animated(t) {\n var e;\n this.animated !== t && (this._animated = t, (e = this.shadowRoot) == null || e.getAnimations().forEach((i) => i.finish()));\n }\n /**\n * @internal\n */\n set data(t) {\n var o;\n if (t == null)\n return;\n const { pre: e, integer: i, fraction: s, post: a, value: r } = t;\n if (this.created) {\n const c = this._data;\n this._data = t, this.computedTrend = typeof this.trend == \"function\" ? this.trend(c.value, r) : this.trend, this.computedAnimated = q && this._animated && (!this.respectMotionPreference || !(A != null && A.matches)) && // https://github.com/barvian/number-flow/issues/9\n H(this), (o = this.plugins) == null || o.forEach((d) => {\n var p;\n return (p = d.onUpdate) == null ? void 0 : p.call(d, t, c, this);\n }), this.batched || this.willUpdate(), this._pre.update(e), this._num.update({ integer: i, fraction: s }), this._post.update(a), this.batched || this.didUpdate();\n } else {\n this._data = t, this.attachShadow({ mode: \"open\" });\n try {\n this._internals ?? (this._internals = this.attachInternals()), this._internals.role = \"img\";\n } catch {\n }\n if (typeof CSSStyleSheet < \"u\" && this.shadowRoot.adoptedStyleSheets)\n b || (b = new CSSStyleSheet(), b.replaceSync(M)), this.shadowRoot.adoptedStyleSheets = [b];\n else {\n const c = document.createElement(\"style\");\n c.textContent = M, this.shadowRoot.appendChild(c);\n }\n this._pre = new N(this, e, {\n justify: \"right\",\n part: \"left\"\n }), this.shadowRoot.appendChild(this._pre.el), this._num = new Q(this, i, s), this.shadowRoot.appendChild(this._num.el), this._post = new N(this, a, {\n justify: \"left\",\n part: \"right\"\n }), this.shadowRoot.appendChild(this._post.el), this.created = !0;\n }\n try {\n this._internals.ariaLabel = t.valueAsString;\n } catch {\n }\n }\n /**\n * @internal\n */\n willUpdate() {\n this._pre.willUpdate(), this._num.willUpdate(), this._post.willUpdate();\n }\n /**\n * @internal\n */\n didUpdate() {\n if (!this.computedAnimated)\n return;\n this._abortAnimationsFinish ? this._abortAnimationsFinish.abort() : this.dispatchEvent(new Event(\"animationsstart\")), this._pre.didUpdate(), this._num.didUpdate(), this._post.didUpdate();\n const t = new AbortController();\n Promise.all(this.shadowRoot.getAnimations().map((e) => e.finished)).then(() => {\n t.signal.aborted || (this.dispatchEvent(new Event(\"animationsfinish\")), this._abortAnimationsFinish = void 0);\n }), this._abortAnimationsFinish = t;\n }\n}\nJ.defaultProps = {\n transformTiming: {\n duration: 900,\n // Make sure to keep this minified:\n easing: \"linear(0,.005,.019,.039,.066,.096,.129,.165,.202,.24,.278,.316,.354,.39,.426,.461,.494,.526,.557,.586,.614,.64,.665,.689,.711,.731,.751,.769,.786,.802,.817,.831,.844,.856,.867,.877,.887,.896,.904,.912,.919,.925,.931,.937,.942,.947,.951,.955,.959,.962,.965,.968,.971,.973,.976,.978,.98,.981,.983,.984,.986,.987,.988,.989,.99,.991,.992,.992,.993,.994,.994,.995,.995,.996,.996,.9963,.9967,.9969,.9972,.9975,.9977,.9979,.9981,.9982,.9984,.9985,.9987,.9988,.9989,1)\"\n },\n spinTiming: void 0,\n opacityTiming: { duration: 450, easing: \"ease-out\" },\n animated: !0,\n trend: (n, t) => Math.sign(t - n),\n respectMotionPreference: !0,\n plugins: void 0,\n digits: void 0\n};\nclass Q {\n constructor(t, e, i, { className: s, ...a } = {}) {\n this.flow = t, this._integer = new L(t, e, {\n justify: \"right\",\n part: \"integer\"\n }), this._fraction = new L(t, i, {\n justify: \"left\",\n part: \"fraction\"\n }), this._inner = u(\"span\", {\n className: \"number__inner\"\n }, [this._integer.el, this._fraction.el]), this.el = u(\"span\", {\n ...a,\n part: \"number\",\n className: `number ${s ?? \"\"}`\n }, [this._inner]);\n }\n willUpdate() {\n this._prevWidth = this.el.offsetWidth, this._prevLeft = this.el.getBoundingClientRect().left, this._integer.willUpdate(), this._fraction.willUpdate();\n }\n update({ integer: t, fraction: e }) {\n this._integer.update(t), this._fraction.update(e);\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this._integer.didUpdate(), this._fraction.didUpdate();\n const e = this._prevLeft - t.left, i = this.el.offsetWidth, s = this._prevWidth - i;\n this.el.style.setProperty(\"--width\", String(i)), this.el.animate({\n [S]: [`${e}px`, \"0px\"],\n [U]: [s, 0]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass W {\n constructor(t, e, { justify: i, className: s, ...a }, r) {\n this.flow = t, this.children = /* @__PURE__ */ new Map(), this.onCharRemove = (c) => () => {\n this.children.delete(c);\n }, this.justify = i;\n const o = e.map((c) => this.addChar(c).el);\n this.el = u(\"span\", {\n ...a,\n className: `section section--justify-${i} ${s ?? \"\"}`\n }, r ? r(o) : o);\n }\n addChar(t, { startDigitsAtZero: e = !1, ...i } = {}) {\n const s = t.type === \"integer\" || t.type === \"fraction\" ? new D(this, t.type, e ? 0 : t.value, t.pos, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n }) : new tt(this, t.type, t.value, {\n ...i,\n onRemove: this.onCharRemove(t.key)\n });\n return this.children.set(t.key, s), s;\n }\n unpop(t) {\n t.el.removeAttribute(\"inert\"), t.el.style.top = \"\", t.el.style[this.justify] = \"\";\n }\n pop(t) {\n t.forEach((e) => {\n e.el.style.top = `${e.el.offsetTop}px`, e.el.style[this.justify] = `${F(e.el, this.justify)}px`;\n }), t.forEach((e) => {\n e.el.setAttribute(\"inert\", \"\"), e.present = !1;\n });\n }\n addNewAndUpdateExisting(t) {\n const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), s = this.justify === \"left\", a = s ? \"prepend\" : \"append\";\n if (X(t, (r) => {\n let o;\n this.children.has(r.key) ? (o = this.children.get(r.key), i.set(r, o), this.unpop(o), o.present = !0) : (o = this.addChar(r, { startDigitsAtZero: !0, animateIn: !0 }), e.set(r, o)), this.el[a](o.el);\n }, { reverse: s }), this.flow.computedAnimated) {\n const r = this.el.getBoundingClientRect();\n e.forEach((o) => {\n o.willUpdate(r);\n });\n }\n e.forEach((r, o) => {\n r.update(o.value);\n }), i.forEach((r, o) => {\n r.update(o.value);\n });\n }\n willUpdate() {\n const t = this.el.getBoundingClientRect();\n this._prevOffset = t[this.justify], this.children.forEach((e) => e.willUpdate(t));\n }\n didUpdate() {\n const t = this.el.getBoundingClientRect();\n this.children.forEach((s) => s.didUpdate(t));\n const e = t[this.justify], i = this._prevOffset - e;\n i && this.children.size && this.el.animate({\n transform: [`translateX(${i}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n }\n}\nclass L extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i), this.unpop(i);\n }), this.addNewAndUpdateExisting(t), e.forEach((i) => {\n i instanceof D && i.update(0);\n }), this.pop(e);\n }\n}\nclass N extends W {\n update(t) {\n const e = /* @__PURE__ */ new Map();\n this.children.forEach((i, s) => {\n t.find((a) => a.key === s) || e.set(s, i);\n }), this.pop(e), this.addNewAndUpdateExisting(t);\n }\n}\nclass R {\n constructor(t, e, { onRemove: i, animateIn: s = !1 } = {}) {\n this.flow = t, this.el = e, this._present = !0, this._remove = () => {\n var a;\n this.el.remove(), (a = this._onRemove) == null || a.call(this);\n }, this.el.classList.add(\"animate-presence\"), this.flow.computedAnimated && s && this.el.animate({\n [$]: [-0.9999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), this._onRemove = i;\n }\n get present() {\n return this._present;\n }\n set present(t) {\n if (this._present !== t) {\n if (this._present = t, t ? this.el.removeAttribute(\"inert\") : this.el.setAttribute(\"inert\", \"\"), !this.flow.computedAnimated) {\n t || this._remove();\n return;\n }\n this.el.style.setProperty(\"--_number-flow-d-opacity\", t ? \"0\" : \"-.999\"), this.el.animate({\n [$]: t ? [-0.9999, 0] : [0.999, 0]\n }, {\n ...this.flow.opacityTiming,\n composite: \"accumulate\"\n }), t ? this.flow.removeEventListener(\"animationsfinish\", this._remove) : this.flow.addEventListener(\"animationsfinish\", this._remove, {\n once: !0\n });\n }\n }\n}\nclass B extends R {\n constructor(t, e, i, s) {\n super(t.flow, i, s), this.section = t, this.value = e, this.el = i;\n }\n}\nclass D extends B {\n constructor(t, e, i, s, a) {\n var d, p;\n const r = (((p = (d = t.flow.digits) == null ? void 0 : d[s]) == null ? void 0 : p.max) ?? 9) + 1, o = Array.from({ length: r }).map((x, g) => {\n const y = u(\"span\", { className: \"digit__num\" }, [\n document.createTextNode(String(g))\n ]);\n return g !== i && y.setAttribute(\"inert\", \"\"), y.style.setProperty(\"--n\", String(g)), y;\n }), c = u(\"span\", {\n part: `digit ${e}-digit`,\n className: \"digit\"\n }, o);\n c.style.setProperty(\"--current\", String(i)), c.style.setProperty(\"--length\", String(r)), super(t, i, c, a), this.pos = s, this._onAnimationsFinish = () => {\n this.el.classList.remove(\"is-spinning\");\n }, this._numbers = o, this.length = r;\n }\n willUpdate(t) {\n const e = this.el.getBoundingClientRect();\n this._prevValue = this.value;\n const i = e[this.section.justify] - t[this.section.justify], s = e.width / 2;\n this._prevCenter = this.section.justify === \"left\" ? i + s : i - s;\n }\n update(t) {\n this.el.style.setProperty(\"--current\", String(t)), this._numbers.forEach((e, i) => i === t ? e.removeAttribute(\"inert\") : e.setAttribute(\"inert\", \"\")), this.value = t;\n }\n didUpdate(t) {\n const e = this.el.getBoundingClientRect(), i = e[this.section.justify] - t[this.section.justify], s = e.width / 2, a = this.section.justify === \"left\" ? i + s : i - s, r = this._prevCenter - a;\n r && this.el.animate({\n transform: [`translateX(${r}px)`, \"none\"]\n }, {\n ...this.flow.transformTiming,\n composite: \"accumulate\"\n });\n const o = this.getDelta();\n o && (this.el.classList.add(\"is-spinning\"), this.el.animate({\n [j]: [-o, 0]\n }, {\n ...this.flow.spinTiming ?? this.flow.transformTiming,\n composite: \"accumulate\"\n }), this.flow.addEventListener(\"animationsfinish\", this._onAnimationsFinish, { once: !0 }));\n }\n getDelta() {\n var i;\n if (this.flow.plugins)\n for (const s of this.flow.plugins) {\n const a = (i = s.getDelta) == null ? void 0 : i.call(s, this.value, this._prevValue, this);\n if (a != null)\n return a;\n }\n const t = this.value - this._prevValue, e = this.flow.computedTrend || Math.sign(t);\n return e < 0 && this.value > this._prevValue ? this.value - this.length - this._prevValue : e > 0 && this.value < this._prevValue ? this.length - this._prevValue + this.value : t;\n }\n}\nclass tt extends B {\n constructor(t, e, i, s) {\n const a = u(\"span\", {\n className: \"symbol__value\",\n textContent: i\n });\n super(t, i, u(\"span\", {\n part: `symbol ${e}`,\n className: \"symbol\"\n }, [a]), s), this.type = e, this._children = /* @__PURE__ */ new Map(), this._onChildRemove = (r) => () => {\n this._children.delete(r);\n }, this._children.set(i, new R(this.flow, a, {\n onRemove: this._onChildRemove(i)\n }));\n }\n willUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const e = this.el.getBoundingClientRect();\n this._prevOffset = e[this.section.justify] - t[this.section.justify];\n }\n update(t) {\n if (this.value !== t) {\n const e = this._children.get(this.value);\n e && (e.present = !1);\n const i = this._children.get(t);\n if (i)\n i.present = !0;\n else {\n const s = u(\"span\", {\n className: \"symbol__value\",\n textContent: t\n });\n this.el.appendChild(s), this._children.set(t, new R(this.flow, s, {\n animateIn: !0,\n onRemove: this._onChildRemove(t)\n }));\n }\n }\n this.value = t;\n }\n didUpdate(t) {\n if (this.type === \"decimal\")\n return;\n const i = this.el.getBoundingClientRect()[this.section.justify] - t[this.section.justify], s = this._prevOffset - i;\n s && this.el.animate({\n transform: [`translateX(${s}px)`, \"none\"]\n }, { ...this.flow.transformTiming, composite: \"accumulate\" });\n }\n}\nexport {\n D,\n J as N,\n G as S,\n q as c,\n st as d,\n nt as f,\n A as p,\n at as r\n};\n","'use client';\nimport * as React from 'react';\nimport NumberFlowLite, { define, formatToData, renderInnerHTML } from 'number-flow/lite';\nimport { BROWSER } from 'esm-env';\n\nconst REACT_MAJOR = parseInt(React.version.match(/^(\\d+)\\./)?.[1]);\nconst isReact19 = REACT_MAJOR >= 19;\n// Can't wait to not have to do this in React 19:\nconst OBSERVED_ATTRIBUTES = [\n 'data',\n 'digits'\n];\nclass NumberFlowElement extends NumberFlowLite {\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = JSON.parse(newValue);\n }\n}\nNumberFlowElement.observedAttributes = isReact19 ? [] : OBSERVED_ATTRIBUTES;\ndefine('number-flow-react', NumberFlowElement);\n// You're supposed to cache these between uses:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\n// Serialize to strings b/c React:\nconst formatters = {};\n// Tiny workaround to support React 19 until it's released:\nconst serialize = isReact19 ? (p)=>p : JSON.stringify;\nfunction splitProps(props) {\n const { transformTiming, spinTiming, opacityTiming, animated, respectMotionPreference, trend, plugins, ...rest } = props;\n return [\n {\n transformTiming,\n spinTiming,\n opacityTiming,\n animated,\n respectMotionPreference,\n trend,\n plugins\n },\n rest\n ];\n}\n// We need a class component to use getSnapshotBeforeUpdate:\nclass NumberFlowImpl extends React.Component {\n // Update the non-`data` props to avoid JSON serialization\n // Data needs to be set in render still:\n updateProperties(prevProps) {\n if (!this.el) return;\n this.el.batched = !this.props.isolate;\n const [nonData] = splitProps(this.props);\n Object.entries(nonData).forEach(([k, v])=>{\n // @ts-ignore\n this.el[k] = v ?? NumberFlowElement.defaultProps[k];\n });\n if (prevProps?.onAnimationsStart) this.el.removeEventListener('animationsstart', prevProps.onAnimationsStart);\n if (this.props.onAnimationsStart) this.el.addEventListener('animationsstart', this.props.onAnimationsStart);\n if (prevProps?.onAnimationsFinish) this.el.removeEventListener('animationsfinish', prevProps.onAnimationsFinish);\n if (this.props.onAnimationsFinish) this.el.addEventListener('animationsfinish', this.props.onAnimationsFinish);\n }\n componentDidMount() {\n this.updateProperties();\n if (isReact19 && this.el) {\n // React 19 needs this because the attributeChangedCallback isn't called:\n this.el.digits = this.props.digits;\n this.el.data = this.props.data;\n }\n }\n getSnapshotBeforeUpdate(prevProps) {\n this.updateProperties(prevProps);\n if (prevProps.data !== this.props.data) {\n if (this.props.group) {\n this.props.group.willUpdate();\n return ()=>this.props.group?.didUpdate();\n }\n if (!this.props.isolate) {\n this.el?.willUpdate();\n return ()=>this.el?.didUpdate();\n }\n }\n return null;\n }\n componentDidUpdate(_, __, didUpdate) {\n didUpdate?.();\n }\n handleRef(el) {\n if (this.props.innerRef) this.props.innerRef.current = el;\n this.el = el;\n }\n render() {\n const [_, { innerRef, className, data, willChange, isolate, group, digits, onAnimationsStart, onAnimationsFinish, ...rest }] = splitProps(this.props);\n return(// @ts-expect-error missing types\n /*#__PURE__*/ React.createElement(\"number-flow-react\", {\n ref: this.handleRef,\n \"data-will-change\": willChange ? '' : undefined,\n // Have to rename this:\n class: className,\n ...rest,\n dangerouslySetInnerHTML: {\n __html: BROWSER ? '' : renderInnerHTML(data)\n },\n suppressHydrationWarning: true,\n digits: serialize(digits),\n // Make sure data is set last, everything else is updated:\n data: serialize(data)\n }));\n }\n constructor(props){\n super(props);\n this.handleRef = this.handleRef.bind(this);\n }\n}\nconst NumberFlow = /*#__PURE__*/ React.forwardRef(function NumberFlow({ value, locales, format, prefix, suffix, ...props }, _ref) {\n React.useImperativeHandle(_ref, ()=>ref.current, []);\n const ref = React.useRef();\n const group = React.useContext(NumberFlowGroupContext);\n group?.useRegister(ref);\n const localesString = React.useMemo(()=>locales ? JSON.stringify(locales) : '', [\n locales\n ]);\n const formatString = React.useMemo(()=>format ? JSON.stringify(format) : '', [\n format\n ]);\n const data = React.useMemo(()=>{\n const formatter = formatters[`${localesString}:${formatString}`] ??= new Intl.NumberFormat(locales, format);\n return formatToData(value, formatter, prefix, suffix);\n }, [\n value,\n localesString,\n formatString,\n prefix,\n suffix\n ]);\n return /*#__PURE__*/ React.createElement(NumberFlowImpl, {\n ...props,\n group: group,\n data: data,\n innerRef: ref\n });\n});\nconst NumberFlowGroupContext = /*#__PURE__*/ React.createContext(undefined);\nfunction NumberFlowGroup({ children }) {\n const flows = React.useRef(new Set());\n const updating = React.useRef(false);\n const pending = React.useRef(new WeakMap());\n const value = React.useMemo(()=>({\n useRegister (ref) {\n React.useEffect(()=>{\n flows.current.add(ref);\n return ()=>{\n flows.current.delete(ref);\n };\n }, []);\n },\n willUpdate () {\n if (updating.current) return;\n updating.current = true;\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !f.created) return;\n f.willUpdate();\n pending.current.set(f, true);\n });\n },\n didUpdate () {\n flows.current.forEach((ref)=>{\n const f = ref.current;\n if (!f || !pending.current.get(f)) return;\n f.didUpdate();\n pending.current.delete(f);\n });\n updating.current = false;\n }\n }), []);\n return /*#__PURE__*/ React.createElement(NumberFlowGroupContext.Provider, {\n value: value\n }, children);\n}\n\nexport { NumberFlow as N, NumberFlowElement as a, NumberFlowGroup as b };\n","import * as React from 'react';\nimport { canAnimate, prefersReducedMotion } from 'number-flow/lite';\nexport * from 'number-flow/plugins';\nexport { a as NumberFlowElement, b as NumberFlowGroup, N as default } from './NumberFlow-client-48rw3j0J.mjs';\n\nconst useIsSupported = ()=>React.useSyncExternalStore(()=>()=>{}, ()=>canAnimate, ()=>false);\nconst usePrefersReducedMotion = ()=>React.useSyncExternalStore((cb)=>{\n prefersReducedMotion?.addEventListener('change', cb);\n return ()=>prefersReducedMotion?.removeEventListener('change', cb);\n }, ()=>prefersReducedMotion.matches, ()=>false);\nfunction useCanAnimate({ respectMotionPreference = true } = {}) {\n const isSupported = useIsSupported();\n const reducedMotion = usePrefersReducedMotion();\n return isSupported && (!respectMotionPreference || !reducedMotion);\n}\n\nexport { useCanAnimate, useIsSupported, usePrefersReducedMotion };\n"],"names":["f","e","n","i","l","o","s","t","r","u","c","a","F","H","st","X","nt","p","h","x","g","y","C","T","V","O","z","A","$","U","S","j","Y","P","k","E","m","w","M","G","q","b","N","Q","L","W","D","tt","R","B","d","REACT_MAJOR","React.version","isReact19","OBSERVED_ATTRIBUTES","NumberFlowElement","NumberFlowLite","attr","_oldValue","newValue","define","formatters","serialize","splitProps","props","transformTiming","spinTiming","opacityTiming","animated","respectMotionPreference","trend","plugins","rest","NumberFlowImpl","React.Component","prevProps","nonData","v","_a","_","__","didUpdate","el","innerRef","className","data","willChange","isolate","group","digits","onAnimationsStart","onAnimationsFinish","React.createElement","NumberFlow","React.forwardRef","value","locales","format","prefix","suffix","_ref","React.useImperativeHandle","ref","React.useRef","React.useContext","NumberFlowGroupContext","localesString","React.useMemo","formatString","formatter","formatToData","React.createContext","NumberFlowGroup","children","flows","updating","pending","React.useEffect","useIsSupported","React.useSyncExternalStore","canAnimate","usePrefersReducedMotion","cb","prefersReducedMotion","useCanAnimate","isSupported","reducedMotion"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}
@@ -1,9 +1,9 @@
1
- import { a6 as de, Q as X, c as y, e as C, d as z, j as e, N as O, J as _, b7 as Me, g as Be, R as Pe, P as De, M as Te, A as ce, B as u, aa as xe, h as Ie, k as Z, aP as Fe, F as he, b as v, W as Ae, Z as me, b8 as Re, _ as fe, $ as G, a0 as W, a1 as q, H as K, b9 as $e, ba as Ee, a2 as J, a3 as pe, O as B, bb as He, bc as Le, bd as Se, be as oe, a4 as ze, a5 as Oe, u as je, bf as _e, a as Ve, aE as Qe, x as Ye, y as Ge, z as We, G as qe, L as ae, E as Ke, f as Je, S as E, bg as Xe, D as Ze, m as es, n as ss, o as ls, p as rs, I as ns, Y as os, bh as as, ab as te, ac as ts, ad as is, bi as Q, K as ds, aw as cs, ax as xs, bj as hs, bk as be, bl as ms } from "./index-DIicyWvr.mjs";
2
- import { S as ue } from "./separator-Dgj8LPTF.mjs";
3
- import { E as fs } from "./edit-profile-DdCJ6UkE.mjs";
4
- import { T as ps, a as js, b as L, d as Y, c as S } from "./tabs-ROut24vi.mjs";
5
- import { S as bs } from "./settings-qNWc2HyW.mjs";
6
- import { C as us } from "./copy-DCHXVz-9.mjs";
1
+ import { a6 as de, Q as X, c as y, e as C, d as z, j as e, N as O, J as _, b7 as Me, g as Be, R as Pe, P as De, M as Te, A as ce, B as u, aa as xe, h as Ie, k as Z, aP as Fe, F as he, b as v, W as Ae, Z as me, b8 as Re, _ as fe, $ as G, a0 as W, a1 as q, H as K, b9 as $e, ba as Ee, a2 as J, a3 as pe, O as B, bb as He, bc as Le, bd as Se, be as oe, a4 as ze, a5 as Oe, u as je, bf as _e, a as Ve, aE as Qe, x as Ye, y as Ge, z as We, G as qe, L as ae, E as Ke, f as Je, S as E, bg as Xe, D as Ze, m as es, n as ss, o as ls, p as rs, I as ns, Y as os, bh as as, ab as te, ac as ts, ad as is, bi as Q, K as ds, aw as cs, ax as xs, bj as hs, bk as be, bl as ms } from "./index-q4Ygdo0-.mjs";
2
+ import { S as ue } from "./separator-BljDgTc9.mjs";
3
+ import { E as fs } from "./edit-profile-D17SCzby.mjs";
4
+ import { T as ps, a as js, b as L, d as Y, c as S } from "./tabs-DdupTuil.mjs";
5
+ import { S as bs } from "./settings-CjuIDMTF.mjs";
6
+ import { C as us } from "./copy-Dg0Olymi.mjs";
7
7
  /**
8
8
  * @license lucide-react v0.553.0 - ISC
9
9
  *
@@ -85,7 +85,7 @@ const ge = ({
85
85
  ) }) }) }, l.id);
86
86
  }) }),
87
87
  /* @__PURE__ */ e.jsx("div", { ref: i, className: "h-1" }),
88
- (c || r) && /* @__PURE__ */ e.jsx("div", { className: "mt-6 flex flex-col items-center justify-center space-y-4 text-center", children: /* @__PURE__ */ e.jsx(Z, { size: "md" }) })
88
+ (c || r) && /* @__PURE__ */ e.jsx("div", { className: "mt-6 flex flex-col items-center justify-center gap-4 text-center", children: /* @__PURE__ */ e.jsx(Z, { size: "md" }) })
89
89
  ] });
90
90
  }, Ns = ({
91
91
  posts: s,
@@ -136,7 +136,7 @@ const ge = ({
136
136
  },
137
137
  `likes-${x.id}`
138
138
  )),
139
- d && /* @__PURE__ */ e.jsx("li", { className: "flex flex-col items-center justify-center space-y-4 text-center", children: /* @__PURE__ */ e.jsx(Z, { size: "md" }) })
139
+ d && /* @__PURE__ */ e.jsx("li", { className: "flex flex-col items-center justify-center gap-4 text-center", children: /* @__PURE__ */ e.jsx(Z, { size: "md" }) })
140
140
  ] }),
141
141
  /* @__PURE__ */ e.jsx("div", { ref: a, className: "h-1" })
142
142
  ] });
@@ -190,7 +190,7 @@ const ge = ({
190
190
  },
191
191
  `posts-${l.id}`
192
192
  )),
193
- d && /* @__PURE__ */ e.jsx("li", { className: "flex flex-col items-center justify-center space-y-4 text-center", children: /* @__PURE__ */ e.jsx(Z, { size: "md" }) })
193
+ d && /* @__PURE__ */ e.jsx("li", { className: "flex flex-col items-center justify-center gap-4 text-center", children: /* @__PURE__ */ e.jsx(Z, { size: "md" }) })
194
194
  ] }),
195
195
  /* @__PURE__ */ e.jsx("div", { ref: o, className: "h-1" })
196
196
  ] });
@@ -243,7 +243,7 @@ const ge = ({
243
243
  }, A = s.split("@").filter(Boolean)[1], T = () => /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
244
244
  /* @__PURE__ */ e.jsxs(G, { children: [
245
245
  /* @__PURE__ */ e.jsx(W, { className: "mb-1 flex flex-col gap-1", children: "Unblock" }),
246
- /* @__PURE__ */ e.jsx(q, { className: "!mt-4", asChild: !0, children: /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col rounded-md border", children: [
246
+ /* @__PURE__ */ e.jsx(q, { className: "mt-4!", asChild: !0, children: /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col rounded-md border", children: [
247
247
  /* @__PURE__ */ e.jsxs("div", { className: "flex justify-between gap-6 p-5", children: [
248
248
  /* @__PURE__ */ e.jsxs("div", { className: "flex flex-col gap-1", children: [
249
249
  /* @__PURE__ */ e.jsx(K, { children: "Unblock user" }),
@@ -685,4 +685,4 @@ const ge = ({
685
685
  export {
686
686
  Ls as default
687
687
  };
688
- //# sourceMappingURL=index-DiYjJ67s.mjs.map
688
+ //# sourceMappingURL=index-BTDCxNUL.mjs.map