From 4be106b08ca96c24480f6ec73d26ec2a7b40f1c4 Mon Sep 17 00:00:00 2001 From: David Lee Date: Fri, 4 Oct 2024 11:12:11 -0700 Subject: [PATCH 01/77] Add lint rules enforcing unidirectional imports from workspace packages --- packages/app/.eslintrc.cjs | 8 ++++++++ packages/editor/.eslintrc.cjs | 8 ++++++++ packages/shared/.eslintrc.cjs | 8 ++++++++ packages/ui/.eslintrc.cjs | 8 ++++++++ 4 files changed, 32 insertions(+) create mode 100644 packages/app/.eslintrc.cjs create mode 100644 packages/editor/.eslintrc.cjs create mode 100644 packages/shared/.eslintrc.cjs create mode 100644 packages/ui/.eslintrc.cjs diff --git a/packages/app/.eslintrc.cjs b/packages/app/.eslintrc.cjs new file mode 100644 index 0000000000..25a6334fc8 --- /dev/null +++ b/packages/app/.eslintrc.cjs @@ -0,0 +1,8 @@ +module.exports = { + rules: { + 'no-restricted-imports': [ + 'error', + { patterns: ['tlon-mobile', 'tlon-web'] }, + ], + }, +}; diff --git a/packages/editor/.eslintrc.cjs b/packages/editor/.eslintrc.cjs new file mode 100644 index 0000000000..a279e53c57 --- /dev/null +++ b/packages/editor/.eslintrc.cjs @@ -0,0 +1,8 @@ +module.exports = { + rules: { + 'no-restricted-imports': [ + 'error', + { patterns: ['@tloncorp/*', 'tlon-mobile', 'tlon-web'] }, + ], + }, +}; diff --git a/packages/shared/.eslintrc.cjs b/packages/shared/.eslintrc.cjs new file mode 100644 index 0000000000..a279e53c57 --- /dev/null +++ b/packages/shared/.eslintrc.cjs @@ -0,0 +1,8 @@ +module.exports = { + rules: { + 'no-restricted-imports': [ + 'error', + { patterns: ['@tloncorp/*', 'tlon-mobile', 'tlon-web'] }, + ], + }, +}; diff --git a/packages/ui/.eslintrc.cjs b/packages/ui/.eslintrc.cjs new file mode 100644 index 0000000000..bacf6f455b --- /dev/null +++ b/packages/ui/.eslintrc.cjs @@ -0,0 +1,8 @@ +module.exports = { + rules: { + 'no-restricted-imports': [ + 'error', + { patterns: ['@tloncorp/app', 'tlon-mobile', 'tlon-web'] }, + ], + }, +}; From ed2bdcd39bf9d8d1206a744e5e3473741b8db765 Mon Sep 17 00:00:00 2001 From: David Lee Date: Fri, 4 Oct 2024 13:21:45 -0700 Subject: [PATCH 02/77] Add missing key prop for useRegisterChannelHeaderItem children --- packages/ui/src/components/draftInputs/GalleryInput.tsx | 1 + packages/ui/src/components/draftInputs/NotebookInput.tsx | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/ui/src/components/draftInputs/GalleryInput.tsx b/packages/ui/src/components/draftInputs/GalleryInput.tsx index cf456f5833..5d9b18c224 100644 --- a/packages/ui/src/components/draftInputs/GalleryInput.tsx +++ b/packages/ui/src/components/draftInputs/GalleryInput.tsx @@ -76,6 +76,7 @@ export function GalleryInput({ () => showBigInput ? null : ( setShowAddGalleryPost(true)} /> diff --git a/packages/ui/src/components/draftInputs/NotebookInput.tsx b/packages/ui/src/components/draftInputs/NotebookInput.tsx index f7637239d2..4b4a95a0d5 100644 --- a/packages/ui/src/components/draftInputs/NotebookInput.tsx +++ b/packages/ui/src/components/draftInputs/NotebookInput.tsx @@ -39,6 +39,7 @@ export function NotebookInput({ () => showBigInput ? null : ( setShowBigInput(true)} /> From a7deed4ff97bf67d33c20010d749d0ce9be36a40 Mon Sep 17 00:00:00 2001 From: James Acklin Date: Fri, 4 Oct 2024 16:39:47 -0400 Subject: [PATCH 03/77] ListItem: less-aggressive mute treatment --- .../components/ListItem/ChannelListItem.tsx | 18 ++------------ .../src/components/ListItem/GroupListItem.tsx | 15 ++---------- .../ui/src/components/ListItem/ListItem.tsx | 24 +++++++++---------- 3 files changed, 15 insertions(+), 42 deletions(-) diff --git a/packages/ui/src/components/ListItem/ChannelListItem.tsx b/packages/ui/src/components/ListItem/ChannelListItem.tsx index fdf1eb9b65..7365ac7d7c 100644 --- a/packages/ui/src/components/ListItem/ChannelListItem.tsx +++ b/packages/ui/src/components/ListItem/ChannelListItem.tsx @@ -53,23 +53,9 @@ export function ChannelListItem({ return ( - + - - {title} - + {title} {customSubtitle ? ( {customSubtitle} ) : ( diff --git a/packages/ui/src/components/ListItem/GroupListItem.tsx b/packages/ui/src/components/ListItem/GroupListItem.tsx index ae42a5825d..fa7a379000 100644 --- a/packages/ui/src/components/ListItem/GroupListItem.tsx +++ b/packages/ui/src/components/ListItem/GroupListItem.tsx @@ -28,20 +28,9 @@ export const GroupListItem = ({ onPress={useBoundHandler(model, onPress)} onLongPress={useBoundHandler(model, onLongPress)} > - + - - {title} - + {title} {customSubtitle && ( {customSubtitle} )} diff --git a/packages/ui/src/components/ListItem/ListItem.tsx b/packages/ui/src/components/ListItem/ListItem.tsx index b8e5009c30..df282fc4d6 100644 --- a/packages/ui/src/components/ListItem/ListItem.tsx +++ b/packages/ui/src/components/ListItem/ListItem.tsx @@ -175,28 +175,26 @@ const ListItemCount = ({ return ( - {muted ? ( - - ) : ( - ); }; -const ListItemCountNumber = styled(SizableText, { +const ListItemCountNumber = styled(XStack, { name: 'ListItemCountNumber', - size: '$s', - color: '$secondaryText', - textAlign: 'center', + gap: '$s', + alignItems: 'center', variants: { hidden: { true: { From 78cfc100628a331bb88bc2ac62eb7f519cb7fb2e Mon Sep 17 00:00:00 2001 From: Hunter Miller Date: Sun, 6 Oct 2024 10:22:03 -0500 Subject: [PATCH 04/77] lure: make sure we include relevant data for previews --- apps/tlon-web/package.json | 4 +- apps/tlon-web/src/logic/branch.ts | 23 +- apps/tlon-web/src/state/lure/lure.ts | 94 ++- packages/shared/src/logic/branch.ts | 9 +- packages/shared/src/store/lure.ts | 15 + pnpm-lock.yaml | 879 ++++++++++++++++++++++----- 6 files changed, 847 insertions(+), 177 deletions(-) diff --git a/apps/tlon-web/package.json b/apps/tlon-web/package.json index f0417db966..03efcbc7a8 100644 --- a/apps/tlon-web/package.json +++ b/apps/tlon-web/package.json @@ -53,7 +53,7 @@ "@radix-ui/react-toggle": "^1.0.2", "@radix-ui/react-toggle-group": "^1.0.4", "@radix-ui/react-tooltip": "^1.0.0", - "@tamagui/vite-plugin": "~1.112.12", + "@tamagui/vite-plugin": "~1.101.3", "@tanstack/react-query": "^4.28.0", "@tanstack/react-query-devtools": "^4.28.0", "@tanstack/react-query-persist-client": "^4.28.0", @@ -84,10 +84,10 @@ "@tiptap/pm": "^2.6.6", "@tiptap/react": "^2.6.6", "@tiptap/suggestion": "^2.6.6", + "@tloncorp/app": "workspace:*", "@tloncorp/mock-http-api": "^1.2.0", "@tloncorp/shared": "workspace:*", "@tloncorp/ui": "workspace:*", - "@tloncorp/app": "workspace:*", "@types/marked": "^4.3.0", "@urbit/api": "^2.2.0", "@urbit/aura": "^1.0.0", diff --git a/apps/tlon-web/src/logic/branch.ts b/apps/tlon-web/src/logic/branch.ts index 4f8a6b146d..c1854a7f9b 100644 --- a/apps/tlon-web/src/logic/branch.ts +++ b/apps/tlon-web/src/logic/branch.ts @@ -23,7 +23,24 @@ export const getDeepLink = async (alias: string) => { }; export type DeepLinkType = 'lure' | 'wer'; -interface DeepLinkData { +export interface DeepLinkMetadata { + $og_title?: string; + $og_description?: string; + $og_image_url?: string; + $twitter_title?: string; + $twitter_description?: string; + $twitter_image_url?: string; + $twitter_card?: string; + inviterUserId?: string; + inviterNickname?: string; + inviterAvatarImage?: string; + invitedGroupId?: string; + invitedGroupTitle?: string; + invitedGroupDescription?: string; + invitedGroupIconImageUrl?: string; + invitedGroupiconImageColor?: string; +} +export interface DeepLinkData extends DeepLinkMetadata { $desktop_url: string; $canonical_url: string; lure?: string; @@ -40,7 +57,8 @@ export async function getDmLink(): Promise { export const createDeepLink = async ( fallbackUrl: string | undefined, type: DeepLinkType, - path: string + path: string, + metadata?: DeepLinkMetadata ) => { if (!fallbackUrl || !path) { return undefined; @@ -64,6 +82,7 @@ export const createDeepLink = async ( const token = parsedURL.pathname.split('/').pop(); const alias = token || path.replace('~', '').replace('/', '-'); const data: DeepLinkData = { + ...(metadata || {}), $desktop_url: fallbackUrl, $canonical_url: fallbackUrl, }; diff --git a/apps/tlon-web/src/state/lure/lure.ts b/apps/tlon-web/src/state/lure/lure.ts index 9c4e36bf32..3141e79241 100644 --- a/apps/tlon-web/src/state/lure/lure.ts +++ b/apps/tlon-web/src/state/lure/lure.ts @@ -1,12 +1,13 @@ import { useQuery } from '@tanstack/react-query'; import { GroupMeta } from '@tloncorp/shared/dist/urbit/groups'; import produce from 'immer'; +import { Contact } from 'packages/shared/dist/urbit'; import { useCallback, useEffect, useMemo, useRef } from 'react'; import create from 'zustand'; import { persist } from 'zustand/middleware'; import api from '@/api'; -import { createDeepLink } from '@/logic/branch'; +import { DeepLinkMetadata, createDeepLink } from '@/logic/branch'; import { getPreviewTracker } from '@/logic/subscriptionTracking'; import { asyncWithDefault, @@ -18,6 +19,7 @@ import { stringToTa, } from '@/logic/utils'; +import { useContact } from '../contact'; import { useGroup } from '../groups'; import { useLocalState } from '../local'; @@ -44,9 +46,17 @@ type Lures = Record; interface LureState { bait: Bait | null; lures: Lures; - fetchLure: (flag: string, fetchIfData?: boolean) => Promise; - describe: (flag: string, metadata: LureMetadata) => Promise; - toggle: (flag: string, metadata: GroupMeta) => Promise; + fetchLure: (flag: string, linkMetadata: DeepLinkMetadata) => Promise; + describe: ( + flag: string, + lureMetadata: LureMetadata, + linkMetadata: DeepLinkMetadata + ) => Promise; + toggle: ( + flag: string, + lureMetadata: LureMetadata, + linkMetadata: DeepLinkMetadata + ) => Promise; start: () => Promise; } @@ -69,19 +79,19 @@ export const useLureState = create( (set, get) => ({ bait: null, lures: {}, - describe: async (flag, metadata) => { + describe: async (flag, lureMetadata, linkMetadata) => { await api.poke({ app: 'reel', mark: 'reel-describe', json: { token: flag, - metadata, + metadata: lureMetadata, }, }); - return get().fetchLure(flag); + return get().fetchLure(flag, linkMetadata); }, - toggle: async (flag, meta) => { + toggle: async (flag, lureMetadata, linkMetadata) => { const { name } = getFlagParts(flag); const lure = get().lures[flag]; const enabled = !lure?.enabled; @@ -94,7 +104,7 @@ export const useLureState = create( }, }); } else { - get().describe(flag, groupsDescribe(meta)); + get().describe(flag, lureMetadata, linkMetadata); } set( @@ -112,7 +122,7 @@ export const useLureState = create( json: name, }); - return get().fetchLure(flag); + return get().fetchLure(flag, linkMetadata); }, start: async () => { const bait = await api.scry({ @@ -126,7 +136,7 @@ export const useLureState = create( }) ); }, - fetchLure: async (flag) => { + fetchLure: async (flag, linkMetadata) => { const prevLure = get().lures[flag]; const [enabled, url, metadata] = await Promise.all([ // enabled @@ -176,7 +186,7 @@ export const useLureState = create( let deepLinkUrl: string | undefined; if (enabled && url) { - deepLinkUrl = await createDeepLink(url, 'lure', flag); + deepLinkUrl = await createDeepLink(url, 'lure', flag, linkMetadata); } set( @@ -200,6 +210,44 @@ export const useLureState = create( ) ); +function getLureMetadata(flag: string, meta: GroupMeta, profile: Contact) { + const title = `Join ${meta.title || flag}`; + const description = meta.description || ''; + const image = meta.cover || meta.image || undefined; + const iconIsColor = meta.image ? meta.image.startsWith('#') : false; + + return { + $og_title: title, + $og_description: description, + $og_image_url: image, + $twitter_title: title, + $twitter_description: description, + $twitter_image_url: image, + $twitter_card: meta.cover + ? 'summary_large_image' + : meta.image + ? 'summary' + : undefined, + inviterUserId: window.our, + inviterNickname: profile.nickname || undefined, + inviterAvatarImage: profile.avatar || undefined, + invitedGroupId: flag, + invitedGroupTitle: title, + invitedGroupDescription: title, + invitedGroupIconImageUrl: + meta.image && !iconIsColor ? meta.image : undefined, + invitedGroupiconImageColor: + meta.image && iconIsColor ? meta.image : undefined, + }; +} + +const emptyMeta = { + title: '', + description: '', + image: '', + cover: '', +}; + const selLure = (flag: string) => (s: LureState) => ({ lure: s.lures[flag] || { fetched: false, url: '' }, bait: s.bait, @@ -208,31 +256,39 @@ const { shouldLoad, newAttempt, finished } = getPreviewTracker(30 * 1000); export function useLure(flag: string, disableLoading = false) { const { bait, lure } = useLureState(selLure(flag)); const group = useGroup(flag); + const contact = useContact(window.our); + const linkMetadata = useMemo(() => { + return getLureMetadata(flag, group?.meta || emptyMeta, contact); + }, [group, contact]); useEffect(() => { - if (!bait || disableLoading || !shouldLoad(flag)) { + if (!bait || disableLoading || !shouldLoad(flag) || !group) { return; } newAttempt(flag); useLureState .getState() - .fetchLure(flag) + .fetchLure(flag, linkMetadata) .finally(() => finished(flag)); - }, [bait, flag, disableLoading]); + }, [bait, group, linkMetadata, flag, disableLoading]); const toggle = useCallback( (meta: GroupMeta) => async () => { - return useLureState.getState().toggle(flag, meta); + return useLureState + .getState() + .toggle(flag, groupsDescribe(meta), linkMetadata); }, - [flag] + [flag, linkMetadata] ); const describe = useCallback( (meta: GroupMeta) => { - return useLureState.getState().describe(flag, groupsDescribe(meta)); + return useLureState + .getState() + .describe(flag, groupsDescribe(meta), linkMetadata); }, - [flag] + [flag, linkMetadata] ); useEffect(() => { diff --git a/packages/shared/src/logic/branch.ts b/packages/shared/src/logic/branch.ts index d3f8fb0386..a3e077e8bd 100644 --- a/packages/shared/src/logic/branch.ts +++ b/packages/shared/src/logic/branch.ts @@ -51,6 +51,13 @@ export const getBranchLinkMeta = async ( export type DeepLinkType = 'lure' | 'wer'; export interface DeepLinkMetadata { + $og_title?: string; + $og_description?: string; + $og_image_url?: string; + $twitter_title?: string; + $twitter_description?: string; + $twitter_image_url?: string; + $twitter_card?: string; inviterUserId?: string; inviterNickname?: string; inviterAvatarImage?: string; @@ -145,8 +152,6 @@ export const createDeepLink = async ({ $canonical_url: fallbackUrl, ...(metadata ?? {}), }; - data['$desktop_url'] = fallbackUrl; - data['$canonical_url'] = fallbackUrl; if (type === 'lure') { data.lure = token; diff --git a/packages/shared/src/store/lure.ts b/packages/shared/src/store/lure.ts index 20820747bd..caee1556b6 100644 --- a/packages/shared/src/store/lure.ts +++ b/packages/shared/src/store/lure.ts @@ -173,7 +173,22 @@ export const useLureState = create((set, get) => ({ const currentUserId = getCurrentUserId(); const group = await db.getGroup({ id: flag }); const user = await db.getContact({ id: currentUserId }); + const name = group?.title || group?.id; + const title = name ? `Join ${name}` : undefined; + const description = group?.description ?? undefined; + const image = group?.coverImage ?? group?.iconImage ?? undefined; const metadata: DeepLinkMetadata = { + $og_title: title, + $og_description: description, + $og_image_url: image, + $twitter_title: title, + $twitter_description: description, + $twitter_image_url: image, + $twitter_card: group?.coverImage + ? 'summary_large_image' + : group?.iconImage + ? 'summary' + : undefined, inviterUserId: currentUserId, inviterNickname: user?.nickname ?? undefined, inviterAvatarImage: user?.avatarImage ?? undefined, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0bc0e15f4c..3db8c4cee5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -92,7 +92,7 @@ importers: version: 8.0.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(postcss@8.4.35)(typescript@5.4.5) vitest: specifier: ^1.2.2 - version: 1.2.2(@types/node@20.14.10)(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1) + version: 1.2.2(@types/node@20.14.10)(jsdom@23.2.0)(terser@5.19.1) apps/tlon-mobile: dependencies: @@ -257,7 +257,7 @@ importers: version: 4.17.21 posthog-react-native: specifier: ^2.7.1 - version: 2.11.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0)))(@react-navigation/native@6.1.10(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0))(expo-application@5.8.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(expo-device@5.9.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(expo-file-system@16.0.9(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(expo-localization@14.8.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(react-native-device-info@10.12.0(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))) + version: 2.11.3(jwrxiw3lzqzjxcpw4mvkvmmdfa) react: specifier: ^18.2.0 version: 18.2.0 @@ -426,7 +426,7 @@ importers: version: 3.4.1 vitest: specifier: ^1.0.4 - version: 1.2.2(@types/node@20.14.10)(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1) + version: 1.2.2(@types/node@20.14.10)(jsdom@23.2.0)(terser@5.19.1) apps/tlon-web: dependencies: @@ -476,8 +476,8 @@ importers: specifier: ^1.0.0 version: 1.0.0(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tamagui/vite-plugin': - specifier: ~1.112.12 - version: 1.112.12(@swc/helpers@0.5.13)(encoding@0.1.13)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + specifier: ~1.101.3 + version: 1.101.3(encoding@0.1.13)(react@18.2.0) '@tanstack/react-query': specifier: ^4.28.0 version: 4.36.1(react-dom@18.2.0(react@18.2.0))(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0) @@ -798,7 +798,7 @@ importers: version: 0.16.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) vite-plugin-svgr: specifier: ^4.2.0 - version: 4.2.0(rollup@4.13.0)(typescript@5.4.5)(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1)) + version: 4.2.0(rollup@2.79.1)(typescript@5.4.5)(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1)) workbox-precaching: specifier: ^6.5.4 version: 6.6.0 @@ -889,10 +889,10 @@ importers: version: 2.0.1 '@vitejs/plugin-basic-ssl': specifier: ^1.1.0 - version: 1.1.0(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1)) + version: 1.1.0(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1)) '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.2.1(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1)) + version: 4.2.1(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1)) '@welldone-software/why-did-you-render': specifier: ^7.0.1 version: 7.0.1(react@18.2.0) @@ -934,7 +934,7 @@ importers: version: 6.1.1 react-cosmos-plugin-vite: specifier: 6.1.1 - version: 6.1.1(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1)) + version: 6.1.1(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1)) react-test-renderer: specifier: ^18.2.0 version: 18.2.0(react@18.2.0) @@ -943,7 +943,7 @@ importers: version: 4.0.0 rollup-plugin-visualizer: specifier: ^5.6.0 - version: 5.12.0(rollup@4.13.0) + version: 5.12.0(rollup@2.79.1) tailwindcss: specifier: ^3.2.7 version: 3.4.1 @@ -958,13 +958,13 @@ importers: version: 1.1.4(typescript@5.4.5) vite: specifier: ^5.1.6 - version: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + version: 5.1.6(@types/node@20.10.8)(terser@5.19.1) vite-plugin-pwa: specifier: ^0.17.5 - version: 0.17.5(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0) + version: 0.17.5(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0) vitest: specifier: ^0.34.1 - version: 0.34.6(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1) + version: 0.34.6(jsdom@23.2.0)(terser@5.19.1) workbox-window: specifier: ^7.0.0 version: 7.0.0 @@ -1348,7 +1348,7 @@ importers: version: 0.16.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) vite-plugin-svgr: specifier: ^4.2.0 - version: 4.2.0(rollup@4.13.0)(typescript@5.4.5)(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)) + version: 4.2.0(rollup@4.13.0)(typescript@5.4.5)(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)) workbox-precaching: specifier: ^6.5.4 version: 6.6.0 @@ -1442,10 +1442,10 @@ importers: version: 2.0.1 '@vitejs/plugin-basic-ssl': specifier: ^1.1.0 - version: 1.1.0(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)) + version: 1.1.0(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)) '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.2.1(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)) + version: 4.2.1(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)) '@welldone-software/why-did-you-render': specifier: ^7.0.1 version: 7.0.1(react@18.2.0) @@ -1490,7 +1490,7 @@ importers: version: 6.1.1 react-cosmos-plugin-vite: specifier: 6.1.1 - version: 6.1.1(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)) + version: 6.1.1(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)) react-test-renderer: specifier: ^18.2.0 version: 18.2.0(react@18.2.0) @@ -1514,13 +1514,13 @@ importers: version: 1.1.4(typescript@5.4.5) vite: specifier: ^5.1.6 - version: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + version: 5.1.6(@types/node@20.14.10)(terser@5.19.1) vite-plugin-pwa: specifier: ^0.17.5 - version: 0.17.5(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0) + version: 0.17.5(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0) vitest: specifier: ^0.34.1 - version: 0.34.6(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1) + version: 0.34.6(jsdom@23.2.0)(terser@5.19.1) workbox-window: specifier: ^7.0.0 version: 7.0.0 @@ -1585,7 +1585,7 @@ importers: version: 6.21.0(eslint@8.56.0)(typescript@5.4.5) '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.2.1(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)) + version: 4.2.1(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)) eslint: specifier: ^8.50.0 version: 8.56.0 @@ -1597,13 +1597,13 @@ importers: version: 5.4.5 vite: specifier: ^5.1.6 - version: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + version: 5.1.6(@types/node@20.14.10)(terser@5.19.1) vite-plugin-singlefile: specifier: ^2.0.1 - version: 2.0.1(rollup@4.13.0)(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)) + version: 2.0.1(rollup@4.13.0)(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)) vitest: specifier: ^1.0.4 - version: 1.5.0(@types/node@20.14.10)(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1) + version: 1.5.0(@types/node@20.14.10)(jsdom@23.2.0)(terser@5.19.1) packages/shared: dependencies: @@ -1671,7 +1671,7 @@ importers: version: 5.4.5 vitest: specifier: ^1.4.0 - version: 1.5.0(@types/node@20.14.10)(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1) + version: 1.5.0(@types/node@20.14.10)(jsdom@23.2.0)(terser@5.19.1) packages/ui: dependencies: @@ -3147,6 +3147,12 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + '@esbuild/aix-ppc64@0.24.0': resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==} engines: {node: '>=18'} @@ -3165,6 +3171,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.24.0': resolution: {integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==} engines: {node: '>=18'} @@ -3183,6 +3195,12 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.24.0': resolution: {integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==} engines: {node: '>=18'} @@ -3201,6 +3219,12 @@ packages: cpu: [x64] os: [android] + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.24.0': resolution: {integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==} engines: {node: '>=18'} @@ -3219,6 +3243,12 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.24.0': resolution: {integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==} engines: {node: '>=18'} @@ -3237,6 +3267,12 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.24.0': resolution: {integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==} engines: {node: '>=18'} @@ -3255,6 +3291,12 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.24.0': resolution: {integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==} engines: {node: '>=18'} @@ -3273,6 +3315,12 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.24.0': resolution: {integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==} engines: {node: '>=18'} @@ -3291,6 +3339,12 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.24.0': resolution: {integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==} engines: {node: '>=18'} @@ -3309,6 +3363,12 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.24.0': resolution: {integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==} engines: {node: '>=18'} @@ -3327,6 +3387,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.24.0': resolution: {integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==} engines: {node: '>=18'} @@ -3345,6 +3411,12 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.24.0': resolution: {integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==} engines: {node: '>=18'} @@ -3363,6 +3435,12 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.24.0': resolution: {integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==} engines: {node: '>=18'} @@ -3381,6 +3459,12 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-ppc64@0.24.0': resolution: {integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==} engines: {node: '>=18'} @@ -3399,6 +3483,12 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-riscv64@0.24.0': resolution: {integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==} engines: {node: '>=18'} @@ -3417,6 +3507,12 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-s390x@0.24.0': resolution: {integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==} engines: {node: '>=18'} @@ -3435,6 +3531,12 @@ packages: cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + '@esbuild/linux-x64@0.24.0': resolution: {integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==} engines: {node: '>=18'} @@ -3453,6 +3555,12 @@ packages: cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + '@esbuild/netbsd-x64@0.24.0': resolution: {integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==} engines: {node: '>=18'} @@ -3477,6 +3585,12 @@ packages: cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.24.0': resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==} engines: {node: '>=18'} @@ -3495,6 +3609,12 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.24.0': resolution: {integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==} engines: {node: '>=18'} @@ -3513,6 +3633,12 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.24.0': resolution: {integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==} engines: {node: '>=18'} @@ -3531,6 +3657,12 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.24.0': resolution: {integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==} engines: {node: '>=18'} @@ -3549,6 +3681,12 @@ packages: cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.24.0': resolution: {integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==} engines: {node: '>=18'} @@ -5195,6 +5333,9 @@ packages: '@tamagui/animate@1.112.12': resolution: {integrity: sha512-9FAGebvmukqOnhRO3Nd5PyUuLVCJmvM9M+g7XwwVRh38E2HNsk2eTyxt2BwsvvYV6CGN25wmWmR1pQtJ8rbl3w==} + '@tamagui/animations-css@1.101.3': + resolution: {integrity: sha512-Rfidmg6xEuU6+uE+oCmCrZpbaxxzTsbWy6TjLsAmeBcahodICHVciu+vl2EjGpIbZ0zWXzutlhmH9Rlgss1sEw==} + '@tamagui/animations-css@1.112.12': resolution: {integrity: sha512-0mAZbo2ZjpmK3394CwHfNA8bmBJXac32Ao5XmzOXWUJdJmibTFfgdsSyeo99zxj4UK6wKhailLz56P4nJelWhg==} peerDependencies: @@ -5221,12 +5362,19 @@ packages: peerDependencies: react: '*' + '@tamagui/babel-plugin-fully-specified@1.101.3': + resolution: {integrity: sha512-uYA6sp1kFb1a3QlN8CCn5ClSKd7rw2RzRXCctuLDeVS2bp/dnpgxMu05Sa7TKNGXsXTGP8KC6dfBTKo5lP1fQg==} + '@tamagui/babel-plugin-fully-specified@1.112.12': resolution: {integrity: sha512-IeWEDDYcX0WR1FTCMfMLkpKSxWTy7UtOfNJLtiYdhYGS99ttYxU7VCBDEEkp1qY8TwD0wi4GVvqRY4t6o5GUZw==} '@tamagui/babel-plugin@1.112.12': resolution: {integrity: sha512-ZbJenBHgCb3Av3BA9HMYTx79+6xg/E4OzWXCZ71kD+ong2IKwkN6/U4P/DHnrq1lvUUkOGPfCFdhdEdLbvlozA==} + '@tamagui/build@1.101.3': + resolution: {integrity: sha512-fZZV6SuGXq2wA84XjgiJO/yr4TMETkdWWN4+gD0WZ/OG/Xgs8tLy/XLb7Z1TItFwODz3gTAJI6mtL+Q00WukUw==} + hasBin: true + '@tamagui/build@1.112.12': resolution: {integrity: sha512-gVuZJl0rCGWzy0JLrdn5Niw4jqZk96bRAINVMOpmPNKCBXWKe/PmMxvB2dzOfM9rduxfNOlF/J/ggxhMMr5e+Q==} hasBin: true @@ -5251,6 +5399,9 @@ packages: peerDependencies: react: '*' + '@tamagui/cli-color@1.101.3': + resolution: {integrity: sha512-UiCDbBZGiq0tJ00m/hAZKQrg0k5WOtMpp3Ln8zsOqU7EC/r8bhELTH56GWemDE1ojw39YMo2t7B5vaJTYzpYZw==} + '@tamagui/cli-color@1.112.12': resolution: {integrity: sha512-wTOUE9n6xKEJyWfj0asri0KGrYk9Yj2agbZhjG57KcR8RIbM02hoZ84Ljn3M43F8J8LxNRIti8s6aW6SnSJ1QA==} @@ -5264,19 +5415,31 @@ packages: peerDependencies: react: '*' + '@tamagui/compose-refs@1.101.3': + resolution: {integrity: sha512-p4T4ea0qDzRN8n7+pgvn5XkGcFZf+gxS/JAq2DCUupJSjhzA3ZTdVCoMTzEfiZDTYHfx0mj12z7V4PU3WObXNg==} + '@tamagui/compose-refs@1.112.12': resolution: {integrity: sha512-xwijG1j+IAn5RmhQ+8KoiJ9HtQQyKjsOLWGLBvQ5MdN9NHH9hTt83W4FbY4tTdWOgwQ9KywP9doMvzK69SgBMg==} peerDependencies: react: '*' + '@tamagui/config-default@1.101.3': + resolution: {integrity: sha512-VnKKZmdb8HFwhDRKVPHZggtWfjf/FQ5K3dbEnbu0BogvtU7V9OVGAJ/qYqoPD9Y+tfJrJ9keUcfpBt6io7dEWA==} + '@tamagui/config-default@1.112.12': resolution: {integrity: sha512-j/wpsBsBF4hj9r778Kq7ANsgPh50bUVa7VLzWLe48FrV35J+MjafBGjwSPThLkFcPM8TRnHBFRPuKL4GAX4MuQ==} + '@tamagui/constants@1.101.3': + resolution: {integrity: sha512-nVppG0HaS7R0Tq3rAY0zVjcc5xszKcmCee4JRIJ8T6k4yPxW6Aqv8NJyAnS/5npET3ku72exVv9DeyU0WaJ07w==} + '@tamagui/constants@1.112.12': resolution: {integrity: sha512-GkcqeF0m0ZHThPcAeDx9Z4qYGt7Cm1J72P8NQ7ax2WpilLlheGILRhrN9TUbKb0DXCz789GOjk+HnbksG1ihZw==} peerDependencies: react: '*' + '@tamagui/core@1.101.3': + resolution: {integrity: sha512-dhCguFJd/gfvULHBFh2OQPs8KVeMHbcBuY0WXeBIuU4h088QtNG5U0pgrwqHa05yuV4LirpIJc9y7j0OePqlBg==} + '@tamagui/core@1.112.12': resolution: {integrity: sha512-s6GbHi0c2HgaFm/LOVuMIalb2ntXmSk9C+tsKFgwK6tg6k6w2qhWvrR05Gfm3IUN19Yb9X2VBqnXOzICwjaf+w==} @@ -5285,9 +5448,15 @@ packages: peerDependencies: react: '*' + '@tamagui/create-theme@1.101.3': + resolution: {integrity: sha512-YFZUyAduxyrQ33wAewFT1cos5mgaRnCItetdHC5g+R8TpwEpSzfC+1e9t+ZBbWDP48usEp9euEnm3MbxpDqp6w==} + '@tamagui/create-theme@1.112.12': resolution: {integrity: sha512-EVsV2UfihuGS8ThIQtUNAkft1+7nfABE8hHMiIm4djx2p/OOvJPy8u8oB0rUacygtFHQqTQ5uoVHuCxz8yPMfA==} + '@tamagui/cubic-bezier-animator@1.101.3': + resolution: {integrity: sha512-l7KuR1pOiKbe1N7cW08U7t0LxlAH0gA2f9XN8E5nMt3wftA7jLAE7FvbRPbaPXD4OPR2DwH/scWM8tY2i1SjYg==} + '@tamagui/cubic-bezier-animator@1.112.12': resolution: {integrity: sha512-7M8iyfd5hFjwB4IlCjjuqP4rj6a61reLjaFuWLOCkEF+qOtlAhGPE8IJQgmlz8//RN/DrxsICXXvXuk9O5dmPg==} @@ -5306,6 +5475,9 @@ packages: peerDependencies: react: '*' + '@tamagui/fake-react-native@1.101.3': + resolution: {integrity: sha512-Qsp5NBd4f/RN/qxPIRzKZJ5UWHWbIoVyzZVOdg9gkEYmIo6ZLIx0heRtIsuLY1bAu1u5SwB/lX8LnX3chzXaEA==} + '@tamagui/fake-react-native@1.112.12': resolution: {integrity: sha512-ZsGGq6w74VgdBzgQ0m7YyBibDXPdxJK1I3Z28HoO7mtRhSMRXl/u0jE+r/KAkquMz78n5JP+ZLDa/jaKfKqbhA==} @@ -5334,6 +5506,9 @@ packages: peerDependencies: react: '*' + '@tamagui/generate-themes@1.101.3': + resolution: {integrity: sha512-T+PXN2ZxBhmc3l2XO8hOrFA5ZBn9LfMWYV80srPR4W1LHd/Zc+wX3uwVVjbLPpUEvssUFfGpG6Y09542Wo9xWg==} + '@tamagui/generate-themes@1.112.12': resolution: {integrity: sha512-hSVjTGQ9fq5HOwnMB1NAhvEnVgrigQiQstlxxRWmHf9bfPioTcvxkhKbfD6xQIg7BzbhGxf567aNr5wT9adkSg==} @@ -5357,6 +5532,9 @@ packages: peerDependencies: react: '*' + '@tamagui/helpers-node@1.101.3': + resolution: {integrity: sha512-ZWXSeHHcxKkSb+IHweevnjCtH7r9jyDJ8meAPcdmkhUMuxtiz4+BZAHD/wOf1uHUTaSZF/o7mf1LylE6j4n+fA==} + '@tamagui/helpers-node@1.112.12': resolution: {integrity: sha512-EABUdvWOe3LLnZKd++FrtNZy058GrTNhhs2GilswRIjwA2HLPDbcqGmdJwq5FWo7tBbvi5CW98fcVKINrI1uUg==} @@ -5365,6 +5543,9 @@ packages: peerDependencies: react: '*' + '@tamagui/helpers@1.101.3': + resolution: {integrity: sha512-ertVEdjXUmkVRQA6/dHHG9P12ai7z6Upt+/N6Fguo84qcdlHVA2aSYshI3eOOatVjd4HOlNUpVHaqQ/JtuJboA==} + '@tamagui/helpers@1.112.12': resolution: {integrity: sha512-OxnUIiaY27DPyZ0/N3RB4gqFGNr0yf3EUehjDLtTH9Hcpt1Z8ZVDXRrngdGd7p+jrktaXts5BWDelN3sXJiRWA==} @@ -5389,6 +5570,9 @@ packages: peerDependencies: react: '*' + '@tamagui/normalize-css-color@1.101.3': + resolution: {integrity: sha512-F10Ao6btHQnBJb5yHtqbZYnWDXoWWMluusPNyS6WkOCTXky8FGA7P1rUkXG/CD6g8l1A8CZ7WmBBsX4lkC/ICg==} + '@tamagui/normalize-css-color@1.112.12': resolution: {integrity: sha512-r8KU0h0bmad5i0fWx9pVwYLXLnYQ0OJp7C70KmJtP751cp/6y8BK2OZTGeJUq5DjyQhIf8M4foLvsM6ZarBe+g==} @@ -5415,6 +5599,9 @@ packages: peerDependencies: react: '*' + '@tamagui/proxy-worm@1.101.3': + resolution: {integrity: sha512-9pGPhOTy2JFbKpJwcaBcTeCLJxhqGyXymcRlkwQKSBKlDRCEsC1R76b1IEBdxDMXzIXtI0xkRa2aNMwd3IoOLw==} + '@tamagui/proxy-worm@1.112.12': resolution: {integrity: sha512-+uCBd4OraEmdS2wnYzc3XzZyBnuf8ewKplgXEHF3vpj8jGbRgPybFMTuFcdgZ5rLltYpnJg9JKAJ3ZPizQX5OA==} @@ -5433,14 +5620,23 @@ packages: peerDependencies: react-native: '*' + '@tamagui/react-native-svg@1.101.3': + resolution: {integrity: sha512-/HOiFsCyEf79H1E+0BCte1x4godcGKJEKAv+crcoLKE4IWsbsgQuC8xsx+Dnv/cxuqKx0RqryP3yeA+CysVRiQ==} + '@tamagui/react-native-svg@1.112.12': resolution: {integrity: sha512-ZLVdySFRrqwj4nqkxUSCC5IPCIVxRb9+JyZXdiVw444+bZ8ssfh5tu8iaPaltFkl2A41Xq69Y/217gi5Juw1sA==} + '@tamagui/react-native-use-pressable@1.101.3': + resolution: {integrity: sha512-nhz23ImLaAtmkG/5GvSsCCnpoS3uUS5iSQiU6kqY1AB5UOtIjZzS+613lB24ap5gXjagpUVmzrtJcB3Czx852Q==} + '@tamagui/react-native-use-pressable@1.112.12': resolution: {integrity: sha512-JodPKfCanZR3hyn694rN22ExzPdINRJim63vZ5eKVnXnyTJ7ml/6JvzxlBgkozt3RBJjzUHm4Xha0JNwmG+law==} peerDependencies: react: '*' + '@tamagui/react-native-use-responder-events@1.101.3': + resolution: {integrity: sha512-iMDAGggb2DflmxptMYNwDIj6/0bfAuNtcnQXlB1Ar/C4xfG6Ubc6LhfUyyH++50PcFxYVpxN0KMqnsWSAptMdQ==} + '@tamagui/react-native-use-responder-events@1.112.12': resolution: {integrity: sha512-vI4ORRAgfuiXTtSuEIbfcwsES9dy4Jqs9zdnD+vLII+5cdkjV9njM9AWS2kXnz+zvPdblXcIvaaH3hDOX14YeA==} peerDependencies: @@ -5489,9 +5685,15 @@ packages: peerDependencies: react: '*' + '@tamagui/shorthands@1.101.3': + resolution: {integrity: sha512-ADtfyBk+6JnS4xHQCWyEiVIn/jdtx4OZNxs5LLN4epUDYdTRem2w/xvV2uPPshMrqRRiMGYTYG4pPNTjBKRWlg==} + '@tamagui/shorthands@1.112.12': resolution: {integrity: sha512-ei9uWmnszNFzi+9CBKx+v9pDe3XQuyweBQNolZxgAzRE/pLBkKMCfPZfK4xEaU8BgIwZBleg2iIf2LExH1IrTA==} + '@tamagui/simple-hash@1.101.3': + resolution: {integrity: sha512-yzRJXgzW1nxksCduzfZ03RjaFHZr3yzanaNUCUtQA6PFweIHnYw2UQTK26ZCWCSNjkrwVmL7RsB6h3WTjl/XUw==} + '@tamagui/simple-hash@1.112.12': resolution: {integrity: sha512-G860Qc76HaxhPShNlcyifeMGJOqVD0brTQIQniv/+/8Zj12tSZezLvUVzt4XEWaGGt46VM8G4asM1ns0TEq3fg==} @@ -5508,6 +5710,9 @@ packages: '@tamagui/start-transition@1.112.12': resolution: {integrity: sha512-idb/Rm9Oex/7JorjHVh6MT299ipqz0G1Gvgek5n8keX+VamaRPqmCSK4MakHIDIUV4h6+sHFbhfKTJ85WvlN0w==} + '@tamagui/static@1.101.3': + resolution: {integrity: sha512-8Z6tYK5uh3eKxv4p+Xu5HtmsY+PoLd9PF4EEZ/dfEtby22vCmVJClH+ukt1ykCdB0ysgw6vFqoZSptBIl9w1lg==} + '@tamagui/static@1.112.12': resolution: {integrity: sha512-Vt8TV7CWbDypV3JklQ3TFacKkCIz7aOPq0A/nSs++4KM2/0YSoKth6s03o4uaWLunOcSqW0VdOx9FnMAEGtlTw==} peerDependencies: @@ -5533,6 +5738,9 @@ packages: peerDependencies: react: '*' + '@tamagui/theme-builder@1.101.3': + resolution: {integrity: sha512-PS9juD8yxO8r0h5A9F4+1ywmZ0G2iGIPLm6IbRj5z33cKL8Q4DfKWFdbo2RIwFoondkNG1dG5ObpHyYmkKvRqw==} + '@tamagui/theme-builder@1.112.12': resolution: {integrity: sha512-EhYiUNGiRfqx9/URZlQRza/2t4S1dpKsjSthzA0arJhPv5H3wGmF1qw1XBS43wjTEy8X1hF+1fa+1zm8NLoYnA==} @@ -5541,6 +5749,9 @@ packages: peerDependencies: react: '*' + '@tamagui/timer@1.101.3': + resolution: {integrity: sha512-chQEvSRnXHy9iJirxcf3D/z29b+YuMow2opyBZf8ce0IcCA8hOpQtqVmF6tvNcOSf2CE+UN+SLVglCWrnR0phg==} + '@tamagui/timer@1.112.12': resolution: {integrity: sha512-/mH+iaPJfr91OShPL4cHnswbPv810+17JX/bLQmeeMo2Db4Nu3dMlf0CHdgxXHeL8jHdhWaC50U2Dj2ZmMxQqA==} @@ -5554,6 +5765,9 @@ packages: peerDependencies: react: '*' + '@tamagui/types@1.101.3': + resolution: {integrity: sha512-CjPh6+Oyy7KVt5TRVxtqLrS/36GuvdrKYEHz7Zq1N4R8r3OwmjzUDiSCyJizLxD896DLiTMbDz9abAeDB5XWJA==} + '@tamagui/types@1.112.12': resolution: {integrity: sha512-L/HgxcHwwnx0QV0f6aJFxIIUgRJ9WydDP8tBlvAropF0tinMSzqET8oMZ75/hVni/04vNrU1Mk+Ey12kERXvxg==} @@ -5575,6 +5789,9 @@ packages: peerDependencies: react: '*' + '@tamagui/use-did-finish-ssr@1.101.3': + resolution: {integrity: sha512-5MOehyuYLeNwwHM973YNKbV39XE2/LFsUJmrR/EgXgI5fJZa452IdICkOrhVh6T86yohURh9NHAEG6oybcdPrA==} + '@tamagui/use-did-finish-ssr@1.112.12': resolution: {integrity: sha512-Avi9xdYZ79rgN08O3znaZypVlSEMq1vq07qmmly7XH237Q5dIVstZfJtcrkc9uvw9/RpecrYne8UmMuy1sM1KQ==} peerDependencies: @@ -5588,11 +5805,17 @@ packages: '@tamagui/use-escape-keydown@1.112.12': resolution: {integrity: sha512-3WAa48LJts55TOgiHY/NmeOEq98MALzpjXsT96SLuSe4mtGtfhBwFca1EbwkA/ZHNMPt7lCMXufsxMqP+IW/lg==} + '@tamagui/use-event@1.101.3': + resolution: {integrity: sha512-ruB/ztONB7yxgYYIhOvWbWQeyjzFVcrgmgkwhzFn6UVbcw6Nq2SsFdeHAkzbF87yvp5Sd4ESVysRkO9VILP1Mw==} + '@tamagui/use-event@1.112.12': resolution: {integrity: sha512-2Se3QquSRUcjomfVQHSrWFAEvBzSmSpNLiRIQIEFbevz1n7jE+u/AdKyQRH0KgU32urJ230Fyyij20conX8zjQ==} peerDependencies: react: '*' + '@tamagui/use-force-update@1.101.3': + resolution: {integrity: sha512-Smmd5wkzJ5noWuSRFuwxQcGnaPaDCInNcKeKLJDCWEj/9c0S7CFiOTW0109Ftv8dXAOmJp1t1pBWq8xk/KXy+A==} + '@tamagui/use-force-update@1.112.12': resolution: {integrity: sha512-x4Vf5IOpNfeHjax/K7Ow7roMPAHcmw+K6EWdBG8uKpIVQjzQ3U+JlbAcmvzRWCNiwCqS8sd5k/GzttvRDgQtzA==} peerDependencies: @@ -5603,6 +5826,9 @@ packages: peerDependencies: react: '*' + '@tamagui/use-presence@1.101.3': + resolution: {integrity: sha512-o1LxS/6J/vseO1fVh+vbTe6Y8iEXGHNnnGRQL5z0XfLacnL8936OaOnc0PvEKENvZE/7Tnxgo7a/QJpLvIDJsA==} + '@tamagui/use-presence@1.112.12': resolution: {integrity: sha512-qpU6AvQMLubb9xqY6zKr0Ihk6PeJ3vxRjivoXCQL/JWBMe64TM9Tk1cYd7QkyuO3wN1ydLLgpSl7Dn3ANAdYBg==} peerDependencies: @@ -5621,9 +5847,15 @@ packages: peerDependencies: react: '*' + '@tamagui/vite-plugin@1.101.3': + resolution: {integrity: sha512-+FPYUuJyUEn4JFBcqEXYaeQhzmQqKfcIUzyyuEgXvy8KlCkT8iRTtu11tyAAqpPaivIous0aifQHRVwSBn47jA==} + '@tamagui/vite-plugin@1.112.12': resolution: {integrity: sha512-iMIPmfcrJALKIQ9E5E8+RuE3d9+HKY9M0QZSmLjv+u7gdFUrnSYIOsaVfPFNPva5yvvKcnWOoIdnrRvpom/93A==} + '@tamagui/web@1.101.3': + resolution: {integrity: sha512-JQqyOxbDyDsQ+7ddsTI6zFGmhFKK2SOlTiFo4jXTGvPiooVSxZxkXufvXbsLp887VrdhnhOWZruFYGoCkorv2A==} + '@tamagui/web@1.112.12': resolution: {integrity: sha512-6JqU0gyogmMX3ofPALyeVKAze1bshXm+1DSJ2PYJR8hNR5WQhikN0XBX1X65Iq9Fr3wcCg3ZKGKy/5X3H6enCg==} @@ -8012,6 +8244,11 @@ packages: engines: {node: '>=12'} hasBin: true + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.24.0: resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} engines: {node: '>=18'} @@ -11345,6 +11582,14 @@ packages: peerDependencies: react-native: '*' + react-native-web-internals@1.101.3: + resolution: {integrity: sha512-xjisf0UVxkxiZQwnnsYlo3ms11qHoo7TIGWnH78exkfsgfFrAOzVodH/Mu0p5Yeofs7KQ9YFUhj31/fuaKF4yA==} + + react-native-web-lite@1.101.3: + resolution: {integrity: sha512-6MD+R3M+UmlopPM6/QEMHPflg6gfiS8Kssr36GNxADwCykvr3/e2Eo6Bv89yarClL1LWG5bBix53wtgu9M4//Q==} + peerDependencies: + react: '*' + react-native-web@0.19.12: resolution: {integrity: sha512-o2T0oztoVDQjztt4YksO9S1XRjoH/AqcSvifgWLrPJgGVbMWsfhILgl6lfUdEamVZzZSVV/2gqDVMAk/qq7mZw==} peerDependencies: @@ -14319,7 +14564,7 @@ snapshots: '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-annotate-as-pure': 7.24.7 regexpu-core: 5.3.2 semver: 6.3.1 @@ -14401,7 +14646,7 @@ snapshots: '@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.22.5 + '@babel/helper-annotate-as-pure': 7.24.7 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 @@ -14490,12 +14735,12 @@ snapshots: '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.25.2) @@ -14503,13 +14748,13 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.25.2) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) @@ -14517,7 +14762,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.23.10(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-proposal-decorators@7.23.9(@babel/core@7.25.2)': dependencies: @@ -14529,7 +14774,7 @@ snapshots: '@babel/plugin-proposal-export-default-from@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-export-default-from': 7.23.3(@babel/core@7.25.2) '@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.25.2)': @@ -14541,13 +14786,13 @@ snapshots: '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) '@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) '@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.25.2)': @@ -14555,20 +14800,20 @@ snapshots: '@babel/compat-data': 7.25.2 '@babel/core': 7.25.2 '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.25.2) '@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) '@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) @@ -14579,7 +14824,7 @@ snapshots: '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.25.2)': dependencies: @@ -14589,27 +14834,27 @@ snapshots: '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-decorators@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-export-default-from@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.2)': dependencies: @@ -14619,27 +14864,27 @@ snapshots: '@babel/plugin-syntax-flow@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.25.2)': dependencies: @@ -14654,7 +14899,7 @@ snapshots: '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': dependencies: @@ -14664,17 +14909,17 @@ snapshots: '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': dependencies: @@ -14684,12 +14929,12 @@ snapshots: '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.25.2)': dependencies: @@ -14700,7 +14945,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.25.2)': dependencies: @@ -14711,7 +14956,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.25.2) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) @@ -14727,24 +14972,24 @@ snapshots: '@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.23.10(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.23.10(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) '@babel/plugin-transform-classes@7.23.8(@babel/core@7.25.2)': @@ -14754,7 +14999,7 @@ snapshots: '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.25.2) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 @@ -14762,36 +15007,36 @@ snapshots: '@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/template': 7.25.0 '@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.25.2)': dependencies: @@ -14802,13 +15047,13 @@ snapshots: '@babel/plugin-transform-flow-strip-types@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.25.2) '@babel/plugin-transform-for-of@7.23.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-function-name@7.23.3(@babel/core@7.25.2)': @@ -14816,35 +15061,35 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-literals@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) '@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color @@ -14862,7 +15107,7 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-hoist-variables': 7.22.5 '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-validator-identifier': 7.22.20 transitivePeerDependencies: - supports-color @@ -14871,7 +15116,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color @@ -14879,12 +15124,12 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-new-target@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.25.2)': dependencies: @@ -14895,7 +15140,7 @@ snapshots: '@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) '@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.25.2)': @@ -14910,13 +15155,13 @@ snapshots: '@babel/plugin-transform-object-super@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-replace-supers': 7.22.20(@babel/core@7.25.2) '@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.25.2)': @@ -14935,30 +15180,32 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.23.10(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-create-class-features-plugin': 7.23.10(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) '@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color '@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.7)': dependencies: @@ -14985,9 +15232,9 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.25.2) - '@babel/types': 7.25.2 + '@babel/types': 7.25.6 '@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.25.2)': dependencies: @@ -15004,24 +15251,24 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 regenerator-transform: 0.15.2 '@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-runtime@7.23.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 babel-plugin-polyfill-corejs2: 0.4.8(@babel/core@7.25.2) babel-plugin-polyfill-corejs3: 0.9.0(@babel/core@7.25.2) babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.25.2) @@ -15037,13 +15284,13 @@ snapshots: '@babel/plugin-transform-spread@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.25.2)': dependencies: @@ -15053,7 +15300,7 @@ snapshots: '@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-typescript@7.23.6(@babel/core@7.25.2)': dependencies: @@ -15066,25 +15313,25 @@ snapshots: '@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.8 '@babel/preset-env@7.23.7(@babel/core@7.25.2)': dependencies: @@ -15182,8 +15429,8 @@ snapshots: '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/types': 7.25.6 esutils: 2.0.3 '@babel/preset-react@7.23.3(@babel/core@7.25.2)': @@ -15195,6 +15442,8 @@ snapshots: '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.25.2) '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.25.2) '@babel/plugin-transform-react-pure-annotations': 7.23.3(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color '@babel/preset-typescript@7.23.3(@babel/core@7.25.2)': dependencies: @@ -15412,6 +15661,9 @@ snapshots: '@esbuild/aix-ppc64@0.19.12': optional: true + '@esbuild/aix-ppc64@0.21.5': + optional: true + '@esbuild/aix-ppc64@0.24.0': optional: true @@ -15421,6 +15673,9 @@ snapshots: '@esbuild/android-arm64@0.19.12': optional: true + '@esbuild/android-arm64@0.21.5': + optional: true + '@esbuild/android-arm64@0.24.0': optional: true @@ -15430,6 +15685,9 @@ snapshots: '@esbuild/android-arm@0.19.12': optional: true + '@esbuild/android-arm@0.21.5': + optional: true + '@esbuild/android-arm@0.24.0': optional: true @@ -15439,6 +15697,9 @@ snapshots: '@esbuild/android-x64@0.19.12': optional: true + '@esbuild/android-x64@0.21.5': + optional: true + '@esbuild/android-x64@0.24.0': optional: true @@ -15448,6 +15709,9 @@ snapshots: '@esbuild/darwin-arm64@0.19.12': optional: true + '@esbuild/darwin-arm64@0.21.5': + optional: true + '@esbuild/darwin-arm64@0.24.0': optional: true @@ -15457,6 +15721,9 @@ snapshots: '@esbuild/darwin-x64@0.19.12': optional: true + '@esbuild/darwin-x64@0.21.5': + optional: true + '@esbuild/darwin-x64@0.24.0': optional: true @@ -15466,6 +15733,9 @@ snapshots: '@esbuild/freebsd-arm64@0.19.12': optional: true + '@esbuild/freebsd-arm64@0.21.5': + optional: true + '@esbuild/freebsd-arm64@0.24.0': optional: true @@ -15475,6 +15745,9 @@ snapshots: '@esbuild/freebsd-x64@0.19.12': optional: true + '@esbuild/freebsd-x64@0.21.5': + optional: true + '@esbuild/freebsd-x64@0.24.0': optional: true @@ -15484,6 +15757,9 @@ snapshots: '@esbuild/linux-arm64@0.19.12': optional: true + '@esbuild/linux-arm64@0.21.5': + optional: true + '@esbuild/linux-arm64@0.24.0': optional: true @@ -15493,6 +15769,9 @@ snapshots: '@esbuild/linux-arm@0.19.12': optional: true + '@esbuild/linux-arm@0.21.5': + optional: true + '@esbuild/linux-arm@0.24.0': optional: true @@ -15502,6 +15781,9 @@ snapshots: '@esbuild/linux-ia32@0.19.12': optional: true + '@esbuild/linux-ia32@0.21.5': + optional: true + '@esbuild/linux-ia32@0.24.0': optional: true @@ -15511,6 +15793,9 @@ snapshots: '@esbuild/linux-loong64@0.19.12': optional: true + '@esbuild/linux-loong64@0.21.5': + optional: true + '@esbuild/linux-loong64@0.24.0': optional: true @@ -15520,6 +15805,9 @@ snapshots: '@esbuild/linux-mips64el@0.19.12': optional: true + '@esbuild/linux-mips64el@0.21.5': + optional: true + '@esbuild/linux-mips64el@0.24.0': optional: true @@ -15529,6 +15817,9 @@ snapshots: '@esbuild/linux-ppc64@0.19.12': optional: true + '@esbuild/linux-ppc64@0.21.5': + optional: true + '@esbuild/linux-ppc64@0.24.0': optional: true @@ -15538,6 +15829,9 @@ snapshots: '@esbuild/linux-riscv64@0.19.12': optional: true + '@esbuild/linux-riscv64@0.21.5': + optional: true + '@esbuild/linux-riscv64@0.24.0': optional: true @@ -15547,6 +15841,9 @@ snapshots: '@esbuild/linux-s390x@0.19.12': optional: true + '@esbuild/linux-s390x@0.21.5': + optional: true + '@esbuild/linux-s390x@0.24.0': optional: true @@ -15556,6 +15853,9 @@ snapshots: '@esbuild/linux-x64@0.19.12': optional: true + '@esbuild/linux-x64@0.21.5': + optional: true + '@esbuild/linux-x64@0.24.0': optional: true @@ -15565,6 +15865,9 @@ snapshots: '@esbuild/netbsd-x64@0.19.12': optional: true + '@esbuild/netbsd-x64@0.21.5': + optional: true + '@esbuild/netbsd-x64@0.24.0': optional: true @@ -15577,6 +15880,9 @@ snapshots: '@esbuild/openbsd-x64@0.19.12': optional: true + '@esbuild/openbsd-x64@0.21.5': + optional: true + '@esbuild/openbsd-x64@0.24.0': optional: true @@ -15586,6 +15892,9 @@ snapshots: '@esbuild/sunos-x64@0.19.12': optional: true + '@esbuild/sunos-x64@0.21.5': + optional: true + '@esbuild/sunos-x64@0.24.0': optional: true @@ -15595,6 +15904,9 @@ snapshots: '@esbuild/win32-arm64@0.19.12': optional: true + '@esbuild/win32-arm64@0.21.5': + optional: true + '@esbuild/win32-arm64@0.24.0': optional: true @@ -15604,6 +15916,9 @@ snapshots: '@esbuild/win32-ia32@0.19.12': optional: true + '@esbuild/win32-ia32@0.21.5': + optional: true + '@esbuild/win32-ia32@0.24.0': optional: true @@ -15613,6 +15928,9 @@ snapshots: '@esbuild/win32-x64@0.19.12': optional: true + '@esbuild/win32-x64@0.21.5': + optional: true + '@esbuild/win32-x64@0.24.0': optional: true @@ -17751,6 +18069,14 @@ snapshots: picomatch: 2.3.1 rollup: 2.79.1 + '@rollup/pluginutils@5.1.0(rollup@2.79.1)': + dependencies: + '@types/estree': 1.0.5 + estree-walker: 2.0.2 + picomatch: 2.3.1 + optionalDependencies: + rollup: 2.79.1 + '@rollup/pluginutils@5.1.0(rollup@4.13.0)': dependencies: '@types/estree': 1.0.5 @@ -18064,6 +18390,13 @@ snapshots: transitivePeerDependencies: - react + '@tamagui/animations-css@1.101.3': + dependencies: + '@tamagui/constants': 1.101.3 + '@tamagui/cubic-bezier-animator': 1.101.3 + '@tamagui/use-presence': 1.101.3 + '@tamagui/web': 1.101.3 + '@tamagui/animations-css@1.112.12(react@18.2.0)': dependencies: '@tamagui/constants': 1.112.12(react@18.2.0) @@ -18100,6 +18433,12 @@ snapshots: '@tamagui/text': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/babel-plugin-fully-specified@1.101.3': + dependencies: + '@babel/core': 7.25.2 + transitivePeerDependencies: + - supports-color + '@tamagui/babel-plugin-fully-specified@1.112.12': dependencies: '@babel/core': 7.25.2 @@ -18119,6 +18458,24 @@ snapshots: - react - supports-color + '@tamagui/build@1.101.3': + dependencies: + '@babel/core': 7.25.2 + '@tamagui/babel-plugin-fully-specified': 1.101.3 + '@types/fs-extra': 9.0.13 + babel-plugin-fully-specified: 1.3.0(@babel/core@7.25.2) + chokidar: 3.5.3 + esbuild: 0.21.5 + esbuild-plugin-es5: 2.1.1(esbuild@0.21.5) + esbuild-register: 3.6.0(esbuild@0.21.5) + execa: 5.1.1 + fast-glob: 3.3.2 + fs-extra: 11.2.0 + get-tsconfig: 4.7.2 + lodash.debounce: 4.0.8 + transitivePeerDependencies: + - supports-color + '@tamagui/build@1.112.12(@swc/helpers@0.5.13)': dependencies: '@babel/core': 7.25.2 @@ -18192,6 +18549,8 @@ snapshots: transitivePeerDependencies: - react-native + '@tamagui/cli-color@1.101.3': {} + '@tamagui/cli-color@1.112.12': {} '@tamagui/collapsible@1.112.12(react@18.2.0)': @@ -18217,10 +18576,18 @@ snapshots: '@tamagui/use-controllable-state': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/compose-refs@1.101.3': {} + '@tamagui/compose-refs@1.112.12(react@18.2.0)': dependencies: react: 18.2.0 + '@tamagui/config-default@1.101.3': + dependencies: + '@tamagui/animations-css': 1.101.3 + '@tamagui/core': 1.101.3 + '@tamagui/shorthands': 1.101.3 + '@tamagui/config-default@1.112.12(react@18.2.0)': dependencies: '@tamagui/animations-css': 1.112.12(react@18.2.0) @@ -18229,10 +18596,19 @@ snapshots: transitivePeerDependencies: - react + '@tamagui/constants@1.101.3': {} + '@tamagui/constants@1.112.12(react@18.2.0)': dependencies: react: 18.2.0 + '@tamagui/core@1.101.3': + dependencies: + '@tamagui/react-native-use-pressable': 1.101.3 + '@tamagui/react-native-use-responder-events': 1.101.3 + '@tamagui/use-event': 1.101.3 + '@tamagui/web': 1.101.3 + '@tamagui/core@1.112.12(react@18.2.0)': dependencies: '@tamagui/react-native-use-pressable': 1.112.12(react@18.2.0) @@ -18246,12 +18622,18 @@ snapshots: dependencies: react: 18.2.0 + '@tamagui/create-theme@1.101.3': + dependencies: + '@tamagui/web': 1.101.3 + '@tamagui/create-theme@1.112.12(react@18.2.0)': dependencies: '@tamagui/web': 1.112.12(react@18.2.0) transitivePeerDependencies: - react + '@tamagui/cubic-bezier-animator@1.101.3': {} + '@tamagui/cubic-bezier-animator@1.112.12': {} '@tamagui/dialog@1.112.12(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0)': @@ -18294,6 +18676,8 @@ snapshots: '@tamagui/core': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/fake-react-native@1.101.3': {} + '@tamagui/fake-react-native@1.112.12': {} '@tamagui/floating@1.112.12(react-dom@18.2.0(react@18.2.0))(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0)': @@ -18335,6 +18719,17 @@ snapshots: '@tamagui/text': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/generate-themes@1.101.3(esbuild@0.21.5)': + dependencies: + '@tamagui/create-theme': 1.101.3 + '@tamagui/theme-builder': 1.101.3 + '@tamagui/types': 1.101.3 + esbuild-register: 3.6.0(esbuild@0.21.5) + fs-extra: 11.2.0 + transitivePeerDependencies: + - esbuild + - supports-color + '@tamagui/generate-themes@1.112.12(esbuild@0.24.0)(react@18.2.0)': dependencies: '@tamagui/create-theme': 1.112.12(react@18.2.0) @@ -18372,6 +18767,10 @@ snapshots: '@tamagui/use-controllable-state': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/helpers-node@1.101.3': + dependencies: + '@tamagui/types': 1.101.3 + '@tamagui/helpers-node@1.112.12': dependencies: '@tamagui/types': 1.112.12 @@ -18382,6 +18781,11 @@ snapshots: '@tamagui/web': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/helpers@1.101.3': + dependencies: + '@tamagui/constants': 1.101.3 + '@tamagui/simple-hash': 1.101.3 + '@tamagui/helpers@1.112.12(react@18.2.0)': dependencies: '@tamagui/constants': 1.112.12(react@18.2.0) @@ -18426,6 +18830,10 @@ snapshots: '@tamagui/web': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/normalize-css-color@1.101.3': + dependencies: + '@react-native/normalize-color': 2.1.0 + '@tamagui/normalize-css-color@1.112.12': dependencies: '@react-native/normalize-color': 2.1.0 @@ -18495,6 +18903,8 @@ snapshots: '@tamagui/stacks': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/proxy-worm@1.101.3': {} + '@tamagui/proxy-worm@1.112.12': {} '@tamagui/radio-group@1.112.12(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0)': @@ -18537,12 +18947,18 @@ snapshots: transitivePeerDependencies: - react + '@tamagui/react-native-svg@1.101.3': {} + '@tamagui/react-native-svg@1.112.12': {} + '@tamagui/react-native-use-pressable@1.101.3': {} + '@tamagui/react-native-use-pressable@1.112.12(react@18.2.0)': dependencies: react: 18.2.0 + '@tamagui/react-native-use-responder-events@1.101.3': {} + '@tamagui/react-native-use-responder-events@1.112.12(react@18.2.0)': dependencies: react: 18.2.0 @@ -18656,8 +19072,12 @@ snapshots: transitivePeerDependencies: - '@types/react' + '@tamagui/shorthands@1.101.3': {} + '@tamagui/shorthands@1.112.12': {} + '@tamagui/simple-hash@1.101.3': {} + '@tamagui/simple-hash@1.112.12': {} '@tamagui/slider@1.112.12(react@18.2.0)': @@ -18683,6 +19103,46 @@ snapshots: dependencies: react: 18.2.0 + '@tamagui/static@1.101.3(encoding@0.1.13)(react@18.2.0)': + dependencies: + '@babel/core': 7.25.2 + '@babel/generator': 7.25.6 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/parser': 7.25.6 + '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.25.2) + '@babel/runtime': 7.25.6 + '@babel/traverse': 7.25.6 + '@babel/types': 7.25.6 + '@tamagui/build': 1.101.3 + '@tamagui/cli-color': 1.101.3 + '@tamagui/config-default': 1.101.3 + '@tamagui/core': 1.101.3 + '@tamagui/fake-react-native': 1.101.3 + '@tamagui/generate-themes': 1.101.3(esbuild@0.21.5) + '@tamagui/helpers': 1.101.3 + '@tamagui/helpers-node': 1.101.3 + '@tamagui/proxy-worm': 1.101.3 + '@tamagui/shorthands': 1.101.3 + '@tamagui/types': 1.101.3 + babel-literal-to-ast: 2.1.0(@babel/core@7.25.2) + browserslist: 4.23.3 + check-dependency-version-consistency: 4.1.0 + esbuild: 0.21.5 + esbuild-register: 3.6.0(esbuild@0.21.5) + find-cache-dir: 3.3.2 + find-root: 1.1.0 + fs-extra: 11.2.0 + invariant: 2.2.4 + lodash: 4.17.21 + react-dom: 18.2.0(react@18.2.0) + react-native-web: 0.19.12(encoding@0.1.13)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + react-native-web-internals: 1.101.3 + react-native-web-lite: 1.101.3(react@18.2.0) + transitivePeerDependencies: + - encoding + - react + - supports-color + '@tamagui/static@1.112.12(@swc/helpers@0.5.13)(encoding@0.1.13)(react@18.2.0)': dependencies: '@babel/core': 7.25.2 @@ -18774,6 +19234,11 @@ snapshots: '@tamagui/web': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/theme-builder@1.101.3': + dependencies: + '@tamagui/create-theme': 1.101.3 + color2k: 2.0.3 + '@tamagui/theme-builder@1.112.12(react@18.2.0)': dependencies: '@tamagui/create-theme': 1.112.12(react@18.2.0) @@ -18787,6 +19252,8 @@ snapshots: '@tamagui/web': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/timer@1.101.3': {} + '@tamagui/timer@1.112.12': {} '@tamagui/toggle-group@1.112.12(react@18.2.0)': @@ -18827,6 +19294,8 @@ snapshots: - react-dom - react-native + '@tamagui/types@1.101.3': {} + '@tamagui/types@1.112.12': {} '@tamagui/use-callback-ref@1.112.12': {} @@ -18845,6 +19314,10 @@ snapshots: dependencies: react: 18.2.0 + '@tamagui/use-did-finish-ssr@1.101.3': + dependencies: + '@tamagui/constants': 1.101.3 + '@tamagui/use-did-finish-ssr@1.112.12(react@18.2.0)': dependencies: react: 18.2.0 @@ -18857,11 +19330,17 @@ snapshots: dependencies: '@tamagui/use-callback-ref': 1.112.12 + '@tamagui/use-event@1.101.3': + dependencies: + '@tamagui/constants': 1.101.3 + '@tamagui/use-event@1.112.12(react@18.2.0)': dependencies: '@tamagui/constants': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/use-force-update@1.101.3': {} + '@tamagui/use-force-update@1.112.12(react@18.2.0)': dependencies: react: 18.2.0 @@ -18870,6 +19349,10 @@ snapshots: dependencies: react: 18.2.0 + '@tamagui/use-presence@1.101.3': + dependencies: + '@tamagui/web': 1.101.3 + '@tamagui/use-presence@1.112.12(react@18.2.0)': dependencies: '@tamagui/web': 1.112.12(react@18.2.0) @@ -18887,6 +19370,20 @@ snapshots: '@tamagui/web': 1.112.12(react@18.2.0) react: 18.2.0 + '@tamagui/vite-plugin@1.101.3(encoding@0.1.13)(react@18.2.0)': + dependencies: + '@tamagui/fake-react-native': 1.101.3 + '@tamagui/proxy-worm': 1.101.3 + '@tamagui/react-native-svg': 1.101.3 + '@tamagui/static': 1.101.3(encoding@0.1.13)(react@18.2.0) + esm-resolve: 1.0.11 + fs-extra: 11.2.0 + outdent: 0.8.0 + transitivePeerDependencies: + - encoding + - react + - supports-color + '@tamagui/vite-plugin@1.112.12(@swc/helpers@0.5.13)(encoding@0.1.13)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@tamagui/fake-react-native': 1.112.12 @@ -18904,6 +19401,18 @@ snapshots: - react-dom - supports-color + '@tamagui/web@1.101.3': + dependencies: + '@tamagui/compose-refs': 1.101.3 + '@tamagui/constants': 1.101.3 + '@tamagui/helpers': 1.101.3 + '@tamagui/normalize-css-color': 1.101.3 + '@tamagui/timer': 1.101.3 + '@tamagui/types': 1.101.3 + '@tamagui/use-did-finish-ssr': 1.101.3 + '@tamagui/use-event': 1.101.3 + '@tamagui/use-force-update': 1.101.3 + '@tamagui/web@1.112.12(react@18.2.0)': dependencies: '@tamagui/compose-refs': 1.112.12(react@18.2.0) @@ -19801,33 +20310,33 @@ snapshots: graphql: 15.8.0 wonka: 4.0.15 - '@vitejs/plugin-basic-ssl@1.1.0(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1))': + '@vitejs/plugin-basic-ssl@1.1.0(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1))': dependencies: - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) - '@vitejs/plugin-basic-ssl@1.1.0(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1))': + '@vitejs/plugin-basic-ssl@1.1.0(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1))': dependencies: - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) - '@vitejs/plugin-react@4.2.1(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1))': + '@vitejs/plugin-react@4.2.1(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1))': dependencies: '@babel/core': 7.23.7 '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.7) '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.7) '@types/babel__core': 7.20.5 react-refresh: 0.14.0 - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) transitivePeerDependencies: - supports-color - '@vitejs/plugin-react@4.2.1(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1))': + '@vitejs/plugin-react@4.2.1(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1))': dependencies: - '@babel/core': 7.25.2 - '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.25.2) - '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.25.2) + '@babel/core': 7.23.7 + '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.7) + '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.7) '@types/babel__core': 7.20.5 react-refresh: 0.14.0 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) transitivePeerDependencies: - supports-color @@ -21676,6 +22185,13 @@ snapshots: es6-iterator: 2.0.3 es6-symbol: 3.1.4 + esbuild-plugin-es5@2.1.1(esbuild@0.21.5): + dependencies: + '@swc/core': 1.7.26(@swc/helpers@0.5.13) + '@swc/helpers': 0.5.13 + deepmerge: 4.3.1 + esbuild: 0.21.5 + esbuild-plugin-es5@2.1.1(esbuild@0.24.0): dependencies: '@swc/core': 1.7.26(@swc/helpers@0.5.13) @@ -21690,6 +22206,13 @@ snapshots: transitivePeerDependencies: - supports-color + esbuild-register@3.6.0(esbuild@0.21.5): + dependencies: + debug: 4.3.4 + esbuild: 0.21.5 + transitivePeerDependencies: + - supports-color + esbuild-register@3.6.0(esbuild@0.24.0): dependencies: debug: 4.3.4 @@ -21748,6 +22271,32 @@ snapshots: '@esbuild/win32-ia32': 0.19.12 '@esbuild/win32-x64': 0.19.12 + esbuild@0.21.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + esbuild@0.24.0: optionalDependencies: '@esbuild/aix-ppc64': 0.24.0 @@ -23687,10 +24236,10 @@ snapshots: jest-snapshot@29.7.0: dependencies: '@babel/core': 7.25.2 - '@babel/generator': 7.25.0 + '@babel/generator': 7.25.6 '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.25.2) '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.25.2) - '@babel/types': 7.25.2 + '@babel/types': 7.25.6 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -25163,8 +25712,8 @@ snapshots: dependencies: fflate: 0.4.8 - ? posthog-react-native@2.11.3(@react-native-async-storage/async-storage@1.21.0(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0)))(@react-navigation/native@6.1.10(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0))(expo-application@5.8.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(expo-device@5.9.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(expo-file-system@16.0.9(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(expo-localization@14.8.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)))(react-native-device-info@10.12.0(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))) - : optionalDependencies: + posthog-react-native@2.11.3(jwrxiw3lzqzjxcpw4mvkvmmdfa): + optionalDependencies: '@react-native-async-storage/async-storage': 1.21.0(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0)) '@react-navigation/native': 6.1.10(react-native@0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0))(react@18.2.0) expo-application: 5.8.3(expo@50.0.6(@babel/core@7.25.2)(@react-native/babel-preset@0.73.21(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2)))(encoding@0.1.13)) @@ -25507,17 +26056,17 @@ snapshots: react-cosmos-core: 6.1.1 react-cosmos-renderer: 6.1.1 - react-cosmos-plugin-vite@6.1.1(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1)): + react-cosmos-plugin-vite@6.1.1(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1)): dependencies: react-cosmos-core: 6.1.1 react-cosmos-dom: 6.1.1 - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) - react-cosmos-plugin-vite@6.1.1(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)): + react-cosmos-plugin-vite@6.1.1(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)): dependencies: react-cosmos-core: 6.1.1 react-cosmos-dom: 6.1.1 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) react-cosmos-renderer@6.1.1: dependencies: @@ -25816,6 +26365,25 @@ snapshots: react-native: 0.73.9(@babel/core@7.25.2)(@babel/preset-env@7.23.7(@babel/core@7.25.2))(encoding@0.1.13)(react@18.2.0) whatwg-url-without-unicode: 8.0.0-3 + react-native-web-internals@1.101.3: + dependencies: + '@tamagui/normalize-css-color': 1.101.3 + '@tamagui/react-native-use-pressable': 1.101.3 + '@tamagui/react-native-use-responder-events': 1.101.3 + '@tamagui/simple-hash': 1.101.3 + react: 18.2.0 + styleq: 0.1.3 + + react-native-web-lite@1.101.3(react@18.2.0): + dependencies: + '@tamagui/normalize-css-color': 1.101.3 + '@tamagui/react-native-use-pressable': 1.101.3 + '@tamagui/react-native-use-responder-events': 1.101.3 + invariant: 2.2.4 + react: 18.2.0 + react-native-web-internals: 1.101.3 + styleq: 0.1.3 + react-native-web@0.19.12(encoding@0.1.13)(react-dom@18.2.0(react@18.2.0))(react@18.2.0): dependencies: '@babel/runtime': 7.25.6 @@ -26309,6 +26877,15 @@ snapshots: serialize-javascript: 4.0.0 terser: 5.19.1 + rollup-plugin-visualizer@5.12.0(rollup@2.79.1): + dependencies: + open: 8.4.2 + picomatch: 2.3.1 + source-map: 0.7.4 + yargs: 17.7.2 + optionalDependencies: + rollup: 2.79.1 + rollup-plugin-visualizer@5.12.0(rollup@4.13.0): dependencies: open: 8.4.2 @@ -27610,14 +28187,14 @@ snapshots: react-dom: 18.2.0(react@18.2.0) redux: 4.2.0 - vite-node@0.34.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1): + vite-node@0.34.6(@types/node@20.10.8)(terser@5.19.1): dependencies: cac: 6.7.14 debug: 4.3.4 mlly: 1.5.0 pathe: 1.1.2 picocolors: 1.0.0 - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) transitivePeerDependencies: - '@types/node' - less @@ -27628,13 +28205,13 @@ snapshots: - supports-color - terser - vite-node@1.2.2(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1): + vite-node@1.2.2(@types/node@20.14.10)(terser@5.19.1): dependencies: cac: 6.7.14 debug: 4.3.4 pathe: 1.1.2 picocolors: 1.0.0 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) transitivePeerDependencies: - '@types/node' - less @@ -27645,13 +28222,13 @@ snapshots: - supports-color - terser - vite-node@1.5.0(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1): + vite-node@1.5.0(@types/node@20.14.10)(terser@5.19.1): dependencies: cac: 6.7.14 debug: 4.3.4 pathe: 1.1.2 picocolors: 1.0.1 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) transitivePeerDependencies: - '@types/node' - less @@ -27662,57 +28239,57 @@ snapshots: - supports-color - terser - vite-plugin-pwa@0.17.5(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0): + vite-plugin-pwa@0.17.5(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0): dependencies: debug: 4.3.4 fast-glob: 3.3.2 pretty-bytes: 6.1.1 - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) workbox-build: 7.0.0(@types/babel__core@7.20.5) workbox-window: 7.0.0 transitivePeerDependencies: - supports-color - vite-plugin-pwa@0.17.5(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0): + vite-plugin-pwa@0.17.5(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.0.0): dependencies: debug: 4.3.4 fast-glob: 3.3.2 pretty-bytes: 6.1.1 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) workbox-build: 7.0.0(@types/babel__core@7.20.5) workbox-window: 7.0.0 transitivePeerDependencies: - supports-color - vite-plugin-singlefile@2.0.1(rollup@4.13.0)(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)): + vite-plugin-singlefile@2.0.1(rollup@4.13.0)(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)): dependencies: micromatch: 4.0.5 rollup: 4.13.0 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) - vite-plugin-svgr@4.2.0(rollup@4.13.0)(typescript@5.4.5)(vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1)): + vite-plugin-svgr@4.2.0(rollup@2.79.1)(typescript@5.4.5)(vite@5.1.6(@types/node@20.10.8)(terser@5.19.1)): dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.13.0) + '@rollup/pluginutils': 5.1.0(rollup@2.79.1) '@svgr/core': 8.1.0(typescript@5.4.5) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.4.5)) - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) transitivePeerDependencies: - rollup - supports-color - typescript - vite-plugin-svgr@4.2.0(rollup@4.13.0)(typescript@5.4.5)(vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1)): + vite-plugin-svgr@4.2.0(rollup@4.13.0)(typescript@5.4.5)(vite@5.1.6(@types/node@20.14.10)(terser@5.19.1)): dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.13.0) '@svgr/core': 8.1.0(typescript@5.4.5) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.4.5)) - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) transitivePeerDependencies: - rollup - supports-color - typescript - vite@5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1): + vite@5.1.6(@types/node@20.10.8)(terser@5.19.1): dependencies: esbuild: 0.19.12 postcss: 8.4.35 @@ -27720,10 +28297,9 @@ snapshots: optionalDependencies: '@types/node': 20.10.8 fsevents: 2.3.3 - lightningcss: 1.19.0 terser: 5.19.1 - vite@5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1): + vite@5.1.6(@types/node@20.14.10)(terser@5.19.1): dependencies: esbuild: 0.19.12 postcss: 8.4.35 @@ -27731,10 +28307,9 @@ snapshots: optionalDependencies: '@types/node': 20.14.10 fsevents: 2.3.3 - lightningcss: 1.19.0 terser: 5.19.1 - vitest@0.34.6(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1): + vitest@0.34.6(jsdom@23.2.0)(terser@5.19.1): dependencies: '@types/chai': 4.3.11 '@types/chai-subset': 1.3.5 @@ -27757,8 +28332,8 @@ snapshots: strip-literal: 1.3.0 tinybench: 2.6.0 tinypool: 0.7.0 - vite: 5.1.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) - vite-node: 0.34.6(@types/node@20.10.8)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.10.8)(terser@5.19.1) + vite-node: 0.34.6(@types/node@20.10.8)(terser@5.19.1) why-is-node-running: 2.2.2 optionalDependencies: jsdom: 23.2.0 @@ -27771,7 +28346,7 @@ snapshots: - supports-color - terser - vitest@1.2.2(@types/node@20.14.10)(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1): + vitest@1.2.2(@types/node@20.14.10)(jsdom@23.2.0)(terser@5.19.1): dependencies: '@vitest/expect': 1.2.2 '@vitest/runner': 1.2.2 @@ -27791,8 +28366,8 @@ snapshots: strip-literal: 1.3.0 tinybench: 2.6.0 tinypool: 0.8.2 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) - vite-node: 1.2.2(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) + vite-node: 1.2.2(@types/node@20.14.10)(terser@5.19.1) why-is-node-running: 2.2.2 optionalDependencies: '@types/node': 20.14.10 @@ -27806,7 +28381,7 @@ snapshots: - supports-color - terser - vitest@1.5.0(@types/node@20.14.10)(jsdom@23.2.0)(lightningcss@1.19.0)(terser@5.19.1): + vitest@1.5.0(@types/node@20.14.10)(jsdom@23.2.0)(terser@5.19.1): dependencies: '@vitest/expect': 1.5.0 '@vitest/runner': 1.5.0 @@ -27825,8 +28400,8 @@ snapshots: strip-literal: 2.1.0 tinybench: 2.6.0 tinypool: 0.8.4 - vite: 5.1.6(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) - vite-node: 1.5.0(@types/node@20.14.10)(lightningcss@1.19.0)(terser@5.19.1) + vite: 5.1.6(@types/node@20.14.10)(terser@5.19.1) + vite-node: 1.5.0(@types/node@20.14.10)(terser@5.19.1) why-is-node-running: 2.2.2 optionalDependencies: '@types/node': 20.14.10 From 77551cc49ef30b3b0fa42790a721eb1504a14e3c Mon Sep 17 00:00:00 2001 From: James Acklin Date: Mon, 7 Oct 2024 08:55:53 -0400 Subject: [PATCH 05/77] MetaEditorScreenView: call handleSubmit as a function --- packages/ui/src/components/MetaEditorScreenView.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/ui/src/components/MetaEditorScreenView.tsx b/packages/ui/src/components/MetaEditorScreenView.tsx index 575f08e533..ba66c0af9b 100644 --- a/packages/ui/src/components/MetaEditorScreenView.tsx +++ b/packages/ui/src/components/MetaEditorScreenView.tsx @@ -56,7 +56,7 @@ export function MetaEditorScreenView({ }, [chat, modelLoaded, reset, defaultValues]); const runSubmit = useCallback( - () => handleSubmit(onSubmit), + () => handleSubmit(onSubmit)(), [handleSubmit, onSubmit] ); From 91d3a6fca23156be55f49cc695d114f9f8bba8df Mon Sep 17 00:00:00 2001 From: Hunter Miller Date: Mon, 7 Oct 2024 09:50:06 -0500 Subject: [PATCH 06/77] groups: make sure you only get one invite --- desk/app/groups.hoon | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/desk/app/groups.hoon b/desk/app/groups.hoon index 47071086be..ec23bed506 100644 --- a/desk/app/groups.hoon +++ b/desk/app/groups.hoon @@ -2039,7 +2039,8 @@ =/ =action:g [flag now.bowl %cordon %shut %del-ships %ask ships] (poke-host /rescind act:mar:g !>(action)) ++ get-preview - =/ =wire (welp ga-area /preview) + |= invite=? + =/ =wire (welp ga-area ?:(invite /preview/invite /preview)) =/ =dock [p.flag dap.bowl] =/ =path /groups/(scot %p p.flag)/[q.flag]/preview =/ watch [%pass wire %agent dock %watch path] @@ -2075,23 +2076,23 @@ ++ ga-watch |= =(pole knot) ^+ ga-core - =. cor get-preview:ga-pass + =. cor (get-preview:ga-pass |) ga-core :: ++ ga-give-update (give %fact ~[/gangs/updates] gangs+!>((~(put by xeno) flag gang))) ++ ga-agent - |= [=wire =sign:agent:gall] + |= [=(pole knot) =sign:agent:gall] ^+ ga-core - ?+ wire ~|(bad-agent-take/wire !!) + ?+ pole ~|(bad-agent-take/pole !!) [%invite ~] ?> ?=(%poke-ack -.sign) :: ?~ p.sign ga-core :: %- (slog leaf/"Failed to invite {}" u.p.sign) ga-core :: - [%preview ~] - ?+ -.sign ~|(weird-take/[wire -.sign] !!) + [%preview inv=?(~ [%invite ~])] + ?+ -.sign ~|(weird-take/[pole -.sign] !!) %kick ga-core :: kick for single response sub, just take it %watch-ack ?~ p.sign ga-core :: TODO: report retreival failure @@ -2111,19 +2112,10 @@ ?: from-self ga-core ?~ pev.gang ga-core ?~ vit.gang ga-core - =/ link /find - =/ =new-yarn:ha - %- spin - :* [`flag ~ q.byk.bowl /(scot %p p.flag)/[q.flag]/invite] - link - `['Join Group' link] - :~ [%ship src.bowl] - ' sent you an invite to ' - [%emph title.meta.u.pev.gang] - == - == - =? cor !(~(has by groups) flag) - (emit (pass-hark new-yarn)) + :: only send invites if this came from ga-invite and we + :: aren't already in the group somehow + ?~ inv.pole ga-core + ?: (~(has by groups) flag) ga-core (ga-activity %group-invite src.bowl) :: == @@ -2176,6 +2168,9 @@ ++ ga-invite |= =invite:g ^+ ga-core + :: prevent spamming invites + ?: ?=(~ vit.gang) ga-core + ?: (~(has by groups) p.invite) ga-core %- (log |.("received invite: {}")) ?: &(?=(^ cam.gang) ?=(%knocking progress.u.cam.gang)) %- (log |.("was knocking: {}")) @@ -2183,7 +2178,7 @@ ?> =(p.flag src.bowl) (ga-start-join join-all.u.cam.gang) =. vit.gang `invite - =. cor get-preview:ga-pass + =. cor (get-preview:ga-pass &) =. cor ga-give-update ga-core :: From c1276eba20a90721e4ef0ada58058baac3078268 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Fri, 4 Oct 2024 18:03:08 -0400 Subject: [PATCH 07/77] onboarding updates wip --- apps/tlon-mobile/assets/images/faces.png | Bin 0 -> 69536 bytes .../assets/images/welcome-icon.png | Bin 0 -> 229880 bytes apps/tlon-mobile/src/App.main.tsx | 97 +------- apps/tlon-mobile/src/OnboardingStack.tsx | 97 ++++++++ .../src/fixtures/Onboarding.fixture.tsx | 119 ++++++++++ apps/tlon-mobile/src/fixtures/fakeData.ts | 2 +- .../tlon-mobile/src/lib/OnboardingContext.tsx | 26 ++ .../screens/Onboarding/CheckVerifyScreen.tsx | 59 +++-- .../Onboarding/InventoryCheckScreen.tsx | 7 +- .../screens/Onboarding/JoinWaitListScreen.tsx | 47 ++-- ...nkScreen.tsx => PasteInviteLinkScreen.tsx} | 117 +++++---- .../screens/Onboarding/ReserveShipScreen.tsx | 31 +-- .../screens/Onboarding/SetNicknameScreen.tsx | 33 ++- .../screens/Onboarding/SetTelemetryScreen.tsx | 28 ++- .../screens/Onboarding/SignUpEmailScreen.tsx | 30 ++- .../Onboarding/SignUpPasswordScreen.tsx | 223 ++++++++---------- .../src/screens/Onboarding/WelcomeScreen.tsx | 199 +++++++++++++--- .../src/screens/Onboarding/shared.tsx | 34 +++ apps/tlon-mobile/src/types.ts | 2 +- packages/app/contexts/branch.tsx | 4 +- packages/shared/src/logic/deeplinks.ts | 2 +- .../ui/src/components/AppInviteDisplay.tsx | 11 +- packages/ui/src/components/Form/inputs.tsx | 56 +++-- packages/ui/src/components/ScreenHeader.tsx | 7 + packages/ui/src/index.tsx | 3 + 25 files changed, 791 insertions(+), 443 deletions(-) create mode 100644 apps/tlon-mobile/assets/images/faces.png create mode 100644 apps/tlon-mobile/assets/images/welcome-icon.png create mode 100644 apps/tlon-mobile/src/OnboardingStack.tsx create mode 100644 apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx create mode 100644 apps/tlon-mobile/src/lib/OnboardingContext.tsx rename apps/tlon-mobile/src/screens/Onboarding/{InviteLinkScreen.tsx => PasteInviteLinkScreen.tsx} (51%) create mode 100644 apps/tlon-mobile/src/screens/Onboarding/shared.tsx diff --git a/apps/tlon-mobile/assets/images/faces.png b/apps/tlon-mobile/assets/images/faces.png new file mode 100644 index 0000000000000000000000000000000000000000..836701efc4c52483705cb0afbbe0251a5e79cf90 GIT binary patch literal 69536 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 z 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

rUqPrmxq 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 literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/src/App.main.tsx b/apps/tlon-mobile/src/App.main.tsx index 25cca6511c..a8fe41e7ae 100644 --- a/apps/tlon-mobile/src/App.main.tsx +++ b/apps/tlon-mobile/src/App.main.tsx @@ -9,20 +9,23 @@ import { NavigationContainerRefWithCurrent, useNavigationContainerRef, } from '@react-navigation/native'; -import { createNativeStackNavigator } from '@react-navigation/native-stack'; import ErrorBoundary from '@tloncorp/app/ErrorBoundary'; import { BranchProvider, useBranch } from '@tloncorp/app/contexts/branch'; import { ShipProvider, useShip } from '@tloncorp/app/contexts/ship'; import { SignupProvider } from '@tloncorp/app/contexts/signup'; import { useIsDarkMode } from '@tloncorp/app/hooks/useIsDarkMode'; -import { useScreenOptions } from '@tloncorp/app/hooks/useScreenOptions'; import { useMigrations } from '@tloncorp/app/lib/nativeDb'; import { Provider as TamaguiProvider } from '@tloncorp/app/provider'; import { FeatureFlagConnectedInstrumentationProvider } from '@tloncorp/app/utils/perf'; import { posthogAsync } from '@tloncorp/app/utils/posthog'; import { QueryClientProvider, queryClient } from '@tloncorp/shared/dist/api'; -import { LoadingSpinner, PortalProvider, Text, View } from '@tloncorp/ui'; -import { usePreloadedEmojis } from '@tloncorp/ui'; +import { + LoadingSpinner, + PortalProvider, + Text, + View, + usePreloadedEmojis, +} from '@tloncorp/ui'; import { PostHogProvider } from 'posthog-react-native'; import type { PropsWithChildren } from 'react'; import { useEffect, useState } from 'react'; @@ -30,31 +33,14 @@ import { StatusBar } from 'react-native'; import { GestureHandlerRootView } from 'react-native-gesture-handler'; import { SafeAreaProvider } from 'react-native-safe-area-context'; +import { OnboardingStack } from './OnboardingStack'; import AuthenticatedApp from './components/AuthenticatedApp'; -import { CheckVerifyScreen } from './screens/Onboarding/CheckVerifyScreen'; -import { EULAScreen } from './screens/Onboarding/EULAScreen'; -import { InventoryCheckScreen } from './screens/Onboarding/InventoryCheckScreen'; -import { InviteLinkScreen } from './screens/Onboarding/InviteLinkScreen'; -import { JoinWaitListScreen } from './screens/Onboarding/JoinWaitListScreen'; -import { RequestPhoneVerifyScreen } from './screens/Onboarding/RequestPhoneVerifyScreen'; -import { ReserveShipScreen } from './screens/Onboarding/ReserveShipScreen'; -import { ResetPasswordScreen } from './screens/Onboarding/ResetPasswordScreen'; -import { SetNicknameScreen } from './screens/Onboarding/SetNicknameScreen'; -import { SetTelemetryScreen } from './screens/Onboarding/SetTelemetryScreen'; -import { ShipLoginScreen } from './screens/Onboarding/ShipLoginScreen'; -import { SignUpEmailScreen } from './screens/Onboarding/SignUpEmailScreen'; -import { SignUpPasswordScreen } from './screens/Onboarding/SignUpPasswordScreen'; -import { TlonLoginScreen } from './screens/Onboarding/TlonLoginScreen'; -import { WelcomeScreen } from './screens/Onboarding/WelcomeScreen'; -import type { OnboardingStackParamList } from './types'; type Props = { wer?: string; channelId?: string; }; -const OnboardingStack = createNativeStackNavigator(); - // Android notification tap handler passes initial params here const App = ({ wer: notificationPath, @@ -65,12 +51,6 @@ const App = ({ const { isLoading, isAuthenticated } = useShip(); const [connected, setConnected] = useState(true); const { lure, priorityToken } = useBranch(); - const screenOptions = useScreenOptions(); - - const onboardingScreenOptions = { - ...screenOptions, - headerShown: false, - }; usePreloadedEmojis(); @@ -101,66 +81,7 @@ const App = ({ }} /> ) : ( - - - - - - - - - - - - - - - - - + ) ) : ( (); + +export function OnboardingStack() { + const screenOptions = useScreenOptions(); + + const onboardingScreenOptions = { + ...screenOptions, + headerShown: false, + }; + + return ( + + + + + + + + + + + + + + + + + + ); +} diff --git a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx new file mode 100644 index 0000000000..6ec6c6e6f4 --- /dev/null +++ b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx @@ -0,0 +1,119 @@ +import { NavigationContainer } from '@react-navigation/native'; +import { + Context as BranchContext, + LureData, +} from '@tloncorp/app/contexts/branch'; +import { DeepLinkData } from 'packages/shared/dist'; +import { PropsWithChildren, useState } from 'react'; + +import { OnboardingStack } from '../OnboardingStack'; +import { OnboardingProvider } from '../lib/OnboardingContext'; +import { SetNicknameScreen } from '../screens/Onboarding/SetNicknameScreen'; +import { User } from '../types'; +import { exampleContacts } from './contentHelpers'; +import { group } from './fakeData'; + +const sampleUser = { + id: '1', + nickname: 'test', + email: 'dan@tlon.io', + ships: [], + admin: false, + verified: false, + requirePhoneNumberVerification: false, +}; + +function OnboardingFixture({ + hasGroupInvite, + children, +}: PropsWithChildren<{ hasGroupInvite: boolean }>) { + const [lure, setLure] = useState( + hasGroupInvite + ? { + id: group.id, + shouldAutoJoin: true, + inviterUserId: exampleContacts.ed.id, + inviterNickname: exampleContacts.ed.nickname, + invitedGroupId: group.id, + invitedGroupTitle: group.title ?? undefined, + invitedGroupDescription: group.description ?? undefined, + invitedGroupIconImageUrl: group.iconImage ?? undefined, + invitedGroupiconImageColor: group.iconImageColor ?? undefined, + } + : undefined + ); + return ( + Promise.resolve('abc'), + execRecaptchaLogin: () => Promise.resolve('abc'), + getLandscapeAuthCookie: () => Promise.resolve('abc'), + //@ts-expect-error partial implementation + hostingApi: { + signUpHostingUser: async () => Promise.resolve({}), + logInHostingUser: () => Promise.resolve(sampleUser), + getHostingAvailability: async () => + Promise.resolve({ enabled: true, validEmail: true }), + getHostingUser: async () => Promise.resolve(sampleUser as User), + getReservableShips: async () => + Promise.resolve([ + { id: '~solfer-magfed', readyForDistribution: true }, + ]), + getShipAccessCode: async () => Promise.resolve({ code: 'xyz' }), + allocateReservedShip: async () => Promise.resolve({}), + getShipsWithStatus: async () => + Promise.resolve({ + shipId: '~solfer-magfed', + status: 'Ready', + }), + reserveShip: async () => + Promise.resolve({ + id: '~solfer-magfed', + reservedBy: '1', + }), + checkPhoneVerify: async () => Promise.resolve({ verified: true }), + verifyEmailDigits: async () => Promise.resolve({ verified: true }), + requestPhoneVerify: async () => Promise.resolve({}), + }, + }} + > + void, + clearLure: () => setLure(undefined), + clearDeepLink: () => {}, + deepLinkPath: undefined, + priorityToken: undefined, + }} + > + + {children ?? } + + + + ); +} + +export default { + Stack: ( + + + + ), + StackWithGroupInvite: ( + + + + ), + Nickname: ( + + {} }} + // @ts-expect-error partial implementation + route={{ params: {} }} + /> + + ), +}; diff --git a/apps/tlon-mobile/src/fixtures/fakeData.ts b/apps/tlon-mobile/src/fixtures/fakeData.ts index 383f724db5..27c2967f98 100644 --- a/apps/tlon-mobile/src/fixtures/fakeData.ts +++ b/apps/tlon-mobile/src/fixtures/fakeData.ts @@ -571,7 +571,7 @@ export const group: db.Group = { coverImage: null, coverImageColor: '#000000', iconImage: 'https://tlon.io/local-icon.svg', - iconImageColor: '#FFFFFF', + iconImageColor: '#000000', currentUserIsMember: true, lastPostAt: null, lastPostId: null, diff --git a/apps/tlon-mobile/src/lib/OnboardingContext.tsx b/apps/tlon-mobile/src/lib/OnboardingContext.tsx new file mode 100644 index 0000000000..790d5c028c --- /dev/null +++ b/apps/tlon-mobile/src/lib/OnboardingContext.tsx @@ -0,0 +1,26 @@ +import { + RecaptchaAction, + execute, + initClient, +} from '@google-cloud/recaptcha-enterprise-react-native'; +import * as hostingApi from '@tloncorp/app/lib/hostingApi'; +import { getLandscapeAuthCookie } from '@tloncorp/shared/dist/api'; +import { createContext, useContext } from 'react'; + +interface OnboardingContextValue { + hostingApi: typeof hostingApi; + initRecaptcha: typeof initClient; + execRecaptchaLogin: () => Promise; + getLandscapeAuthCookie: typeof getLandscapeAuthCookie; +} + +export const OnboardingContext = createContext({ + initRecaptcha: initClient, + execRecaptchaLogin: () => execute(RecaptchaAction.LOGIN(), 10_000), + getLandscapeAuthCookie, + hostingApi, +}); + +export const OnboardingProvider = OnboardingContext.Provider; + +export const useOnboardingContext = () => useContext(OnboardingContext); diff --git a/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx index 963c57ccba..b6f9a9682f 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx @@ -1,19 +1,10 @@ import type { NativeStackScreenProps } from '@react-navigation/native-stack'; -import { - checkPhoneVerify, - requestPhoneVerify, - resendEmailVerification, - verifyEmailDigits, -} from '@tloncorp/app/lib/hostingApi'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; -import { formatPhoneNumber } from '@tloncorp/app/utils/string'; import { - Button, Field, ScreenHeader, - SizableText, - Text, TextInput, + TextV2, View, XStack, YStack, @@ -22,6 +13,7 @@ import { createRef, useMemo, useState } from 'react'; import type { TextInputKeyPressEventData } from 'react-native'; import { TextInput as RNTextInput } from 'react-native'; +import { useOnboardingContext } from '../../lib/OnboardingContext'; import type { OnboardingStackParamList } from '../../types'; type Props = NativeStackScreenProps; @@ -45,6 +37,7 @@ export const CheckVerifyScreen = ({ Array.from({ length: codeLength }).map(() => createRef()), [] ); + const { hostingApi } = useOnboardingContext(); const handleKeyPress = async ( index: number, @@ -84,9 +77,9 @@ export const CheckVerifyScreen = ({ try { if (isEmail) { - await verifyEmailDigits(user.email, code); + await hostingApi.verifyEmailDigits(user.email, code); } else { - await checkPhoneVerify(user.id, code); + await hostingApi.checkPhoneVerify(user.id, code); } trackOnboardingAction({ @@ -108,9 +101,9 @@ export const CheckVerifyScreen = ({ const handleResend = async () => { try { if (isEmail) { - await resendEmailVerification(user.id); + await hostingApi.resendEmailVerification(user.id); } else { - await requestPhoneVerify(user.id, user.phoneNumber ?? ''); + await hostingApi.requestPhoneVerify(user.id, user.phoneNumber ?? ''); } } catch (err) { console.error('Error resending verification code:', err); @@ -122,42 +115,48 @@ export const CheckVerifyScreen = ({ }; return ( - + navigation.goBack()} isLoading={isSubmitting} /> - - - We’ve sent a confirmation code to{' '} - {isEmail ? user.email : formatPhoneNumber(user.phoneNumber ?? '')}. - - - + + + {Array.from({ length: codeLength }).map((_, i) => ( handleKeyPress(i, nativeEvent.key) } + placeholder="5" onChangeText={(text) => handleChangeText(i, text)} value={code.length > i ? code[i] : ''} keyboardType="numeric" maxLength={1} + paddingHorizontal="$xl" + paddingVertical="$xl" + width="$4xl" /> ))} - - Didn’t receive a code? - - + + Request a new code + ); diff --git a/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx index 7ff9ba04fe..ce946d385a 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx @@ -1,6 +1,5 @@ import type { NativeStackScreenProps } from '@react-navigation/native-stack'; import { useSignupParams } from '@tloncorp/app/contexts/branch'; -import { getHostingAvailability } from '@tloncorp/app/lib/hostingApi'; import { trackError } from '@tloncorp/app/utils/posthog'; import { Icon, @@ -15,6 +14,7 @@ import { import { useState } from 'react'; import { Image } from 'react-native'; +import { useOnboardingContext } from '../../lib/OnboardingContext'; import type { OnboardingStackParamList } from '../../types'; type Props = NativeStackScreenProps; @@ -22,19 +22,20 @@ type Props = NativeStackScreenProps; export const InventoryCheckScreen = ({ navigation }: Props) => { const signupParams = useSignupParams(); const [isChecking, setIsChecking] = useState(false); + const { hostingApi } = useOnboardingContext(); const checkAvailability = async () => { setIsChecking(true); try { - const { enabled } = await getHostingAvailability({ + const { enabled } = await hostingApi.getHostingAvailability({ lure: signupParams.lureId, priorityToken: signupParams.priorityToken, }); if (enabled) { navigation.navigate('SignUpEmail'); } else { - navigation.navigate('InviteLink'); + navigation.navigate('PasteInviteLink'); } } catch (err) { console.error('Error checking hosting availability:', err); diff --git a/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx index 93ca184470..ae3e65ab71 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx @@ -4,15 +4,15 @@ import { addUserToWaitlist } from '@tloncorp/app/lib/hostingApi'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { Field, - PrimaryButton, ScreenHeader, - SizableText, TextInput, + TextV2, View, YStack, } from '@tloncorp/ui'; import { useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; +import { Alert } from 'react-native'; import type { OnboardingStackParamList } from '../../types'; @@ -36,9 +36,15 @@ export const JoinWaitListScreen = ({ navigation }: Props) => { trackOnboardingAction({ actionName: 'Waitlist Joined', }); - navigation.popToTop(); + Alert.alert('Success', 'You have been added to the waitlist.', [ + { + text: 'OK', + onPress: () => navigation.popToTop(), + }, + ]); } catch (err) { console.error('Error joining waitlist:', err); + Alert.alert('Failed', 'Unable to add you to the waitlist.'); if (err instanceof Error) { setRemoteError(err.message); trackError(err); @@ -47,18 +53,26 @@ export const JoinWaitListScreen = ({ navigation }: Props) => { }; return ( - + navigation.goBack()} + rightControls={ + + Submit + + } /> - - - We’ve given out all available accounts for today, but - we’ll have more soon. If you’d like, we can let you know - via email when they’re ready. - + + + + We’ll let you know as soon as space is available. + + { }, }} render={({ field: { onChange, onBlur, value } }) => ( - + { )} /> {remoteError ? ( - + {remoteError} - + ) : null} - - {isValid && ( - - Notify Me - - )} - ); diff --git a/apps/tlon-mobile/src/screens/Onboarding/InviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx similarity index 51% rename from apps/tlon-mobile/src/screens/Onboarding/InviteLinkScreen.tsx rename to apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index 1967b29c9d..e116cb95f2 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/InviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -9,12 +9,10 @@ import { getMetadaFromInviteLink, } from '@tloncorp/shared/dist'; import { - AppInviteDisplay, Field, - PrimaryButton, ScreenHeader, - SizableText, TextInputWithButton, + TextV2, View, YStack, } from '@tloncorp/ui'; @@ -26,13 +24,16 @@ import type { OnboardingStackParamList } from '../../types'; const INVITE_LINK_REGEX = createInviteLinkRegex(BRANCH_DOMAIN); -type Props = NativeStackScreenProps; +type Props = NativeStackScreenProps< + OnboardingStackParamList, + 'PasteInviteLink' +>; type FormData = { inviteLink: string; }; -export const InviteLinkScreen = ({ navigation }: Props) => { +export const PasteInviteLinkScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); const { setLure } = useBranch(); const [hasInvite, setHasInvite] = useState(Boolean(lureMeta)); @@ -60,6 +61,7 @@ export const InviteLinkScreen = ({ navigation }: Props) => { ); if (inviteLinkMeta) { setLure(inviteLinkMeta as DeepLinkData); + navigation.navigate('SignUpEmail'); return; } } @@ -83,72 +85,63 @@ export const InviteLinkScreen = ({ navigation }: Props) => { }, [setValue]); return ( - + navigation.goBack()} + rightControls={ + navigation.navigate('SignUpEmail')} + > + Next + + } /> Keyboard.dismiss()} flex={1} > - {!hasInvite ? ( - <> - - - We're growing slowly. Invites let you skip the waitlist - because we know someone wants to talk to you here. - - - Click your invite link now or paste it below. - - - ( - - - - )} - /> - - navigation.navigate('JoinWaitList', {})} + + + We're growing slowly. {'\n\n'}Invites let you skip the waitlist + because we know someone wants to talk to you here. + {'\n\n'} + Click your invite link now or paste it below. + + + ( + - I don't have an invite - - - ) : ( - <> - - Invite found! - - - navigation.navigate('SignUpEmail')}> - Sign up - - - )} + + + )} + /> ); diff --git a/apps/tlon-mobile/src/screens/Onboarding/ReserveShipScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/ReserveShipScreen.tsx index a62d21435e..fd461c7799 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/ReserveShipScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/ReserveShipScreen.tsx @@ -1,24 +1,14 @@ import type { NativeStackScreenProps } from '@react-navigation/native-stack'; import { useShip } from '@tloncorp/app/contexts/ship'; import { useSignupContext } from '@tloncorp/app/contexts/signup'; -import { - allocateReservedShip, - getHostingUser, - getReservableShips, - getShipAccessCode, - getShipsWithStatus, - reserveShip as reserveShipApi, -} from '@tloncorp/app/lib/hostingApi'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { getShipFromCookie, getShipUrl } from '@tloncorp/app/utils/ship'; -import { - configureApi, - getLandscapeAuthCookie, -} from '@tloncorp/shared/dist/api'; +import { configureApi } from '@tloncorp/shared/dist/api'; import { Spinner, Text, View, YStack } from '@tloncorp/ui'; import { useCallback, useEffect, useState } from 'react'; import { Alert } from 'react-native'; +import { useOnboardingContext } from '../../lib/OnboardingContext'; import type { OnboardingStackParamList } from '../../types'; type Props = NativeStackScreenProps; @@ -35,13 +25,15 @@ export const ReserveShipScreen = ({ }>({ state: 'loading', }); + const { hostingApi, getLandscapeAuthCookie } = useOnboardingContext(); const signupContext = useSignupContext(); const { setShip } = useShip(); const startShip = useCallback( async (shipIds: string[]) => { // Fetch statuses for the user's ships and start any required booting/resuming - const shipsWithStatus = await getShipsWithStatus(shipIds); + const shipsWithStatus = await hostingApi.getShipsWithStatus(shipIds); + console.log('shipsWithStatus', shipsWithStatus); if (!shipsWithStatus) { // you can only have gotten to this screen if a new hosting account was created and ship // was reserved. If we don't see the ship status, assume it's still booting @@ -56,7 +48,7 @@ export const ReserveShipScreen = ({ signupContext.telemetry === undefined ) { return navigation.navigate('SetNickname', { - user: await getHostingUser(user.id), + user: await hostingApi.getHostingUser(user.id), }); } @@ -66,7 +58,7 @@ export const ReserveShipScreen = ({ } // If it's ready, fetch the access code and auth cookie - const { code: accessCode } = await getShipAccessCode(shipId); + const { code: accessCode } = await hostingApi.getShipAccessCode(shipId); const shipUrl = getShipUrl(shipId); const authCookie = await getLandscapeAuthCookie(shipUrl, accessCode); if (!authCookie) { @@ -87,6 +79,8 @@ export const ReserveShipScreen = ({ }); }, [ + getLandscapeAuthCookie, + hostingApi, navigation, setShip, signupContext.nickname, @@ -103,7 +97,7 @@ export const ReserveShipScreen = ({ if (shipIds.length === 0) { try { // Get list of reservable ships and choose one that's ready for distribution - const ships = await getReservableShips(user.id); + const ships = await hostingApi.getReservableShips(user.id); const ship = ships.find( ({ id, readyForDistribution }) => id !== skipShipId && readyForDistribution @@ -117,13 +111,14 @@ export const ReserveShipScreen = ({ } // Reserve this ship and check it was successful - const { reservedBy } = await reserveShipApi(user.id, ship.id); + const { reservedBy } = await hostingApi.reserveShip(user.id, ship.id); + console.log('reserved', user, reservedBy); if (reservedBy !== user.id) { return reserveShip(ship.id); } // Finish allocating this ship to the user - await allocateReservedShip(user.id); + await hostingApi.allocateReservedShip(user.id); shipIds.push(ship.id); trackOnboardingAction({ actionName: 'Urbit ID Selected', diff --git a/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx index bc35e9952a..9c66faa7eb 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx @@ -4,10 +4,12 @@ import { requestNotificationToken } from '@tloncorp/app/lib/notifications'; import { trackError } from '@tloncorp/app/utils/posthog'; import { Field, + Image, ScreenHeader, - SizableText, TextInput, + TextV2, View, + XStack, YStack, } from '@tloncorp/ui'; import { useEffect } from 'react'; @@ -31,7 +33,7 @@ export const SetNicknameScreen = ({ const { control, handleSubmit, - formState: { errors }, + formState: { errors, isValid }, setValue, } = useForm({ defaultValues: { @@ -82,29 +84,44 @@ export const SetNicknameScreen = ({ }, [setValue]); return ( - + + Next } /> - - + + + + + + Choose the nickname you want to use on the Tlon network. By default, you will use a pseudonymous identifier. - + ( - - - - We’re trying to make the app better and knowing how people use - the app really helps. - + + + Next + + } + /> + + + + We’re trying to make the app better and knowing how people use + the app really helps. + + + - Next ); diff --git a/apps/tlon-mobile/src/screens/Onboarding/SignUpEmailScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SignUpEmailScreen.tsx index 7a45acf8bd..b913989873 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SignUpEmailScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SignUpEmailScreen.tsx @@ -4,14 +4,12 @@ import { useLureMetadata, useSignupParams, } from '@tloncorp/app/contexts/branch'; -import { getHostingAvailability } from '@tloncorp/app/lib/hostingApi'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { AppInviteDisplay, Field, KeyboardAvoidingView, ScreenHeader, - SizableText, TextInput, View, YStack, @@ -19,6 +17,7 @@ import { import { useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; +import { useOnboardingContext } from '../../lib/OnboardingContext'; import type { OnboardingStackParamList } from '../../types'; type Props = NativeStackScreenProps; @@ -29,6 +28,7 @@ type FormData = { export const SignUpEmailScreen = ({ navigation, route: { params } }: Props) => { const [isSubmitting, setIsSubmitting] = useState(false); + const { hostingApi } = useOnboardingContext(); const signupParams = useSignupParams(); const lureMeta = useLureMetadata(); @@ -45,7 +45,7 @@ export const SignUpEmailScreen = ({ navigation, route: { params } }: Props) => { setIsSubmitting(true); try { - const { enabled, validEmail } = await getHostingAvailability({ + const { enabled, validEmail } = await hostingApi.getHostingAvailability({ email, lure: signupParams.lureId, priorityToken: signupParams.priorityToken, @@ -85,27 +85,21 @@ export const SignUpEmailScreen = ({ navigation, route: { params } }: Props) => { }); return ( - + navigation.goBack()} isLoading={isSubmitting} rightControls={ - isValid && ( - - Next - - ) + + Next + } /> - + {lureMeta ? : null} - - Enter your email address. You’ll use it to log in to Tlon and - we’ll email you the occasional service update. - { }, }} render={({ field: { onChange, onBlur, value } }) => ( - + { onBlur(); trigger('email'); }} + backgroundColor={'$background'} onChangeText={onChange} onSubmitEditing={onSubmit} value={value} diff --git a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx index 81514a199c..24c8927433 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx @@ -1,8 +1,3 @@ -import { - RecaptchaAction, - execute, - initClient, -} from '@google-cloud/recaptcha-enterprise-react-native'; import type { NativeStackScreenProps } from '@react-navigation/native-stack'; import { RECAPTCHA_SITE_KEY } from '@tloncorp/app/constants'; import { @@ -10,28 +5,22 @@ import { useSignupParams, } from '@tloncorp/app/contexts/branch'; import { useSignupContext } from '@tloncorp/app/contexts/signup'; -import { - logInHostingUser, - signUpHostingUser, -} from '@tloncorp/app/lib/hostingApi'; -import { isEulaAgreed, setEulaAgreed } from '@tloncorp/app/utils/eula'; +import { setEulaAgreed } from '@tloncorp/app/utils/eula'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { AppInviteDisplay, - CheckboxInput, Field, - Icon, KeyboardAvoidingView, - ListItem, ScreenHeader, - SizableText, TextInput, + TextV2, View, YStack, } from '@tloncorp/ui'; import { useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; +import { useOnboardingContext } from '../../lib/OnboardingContext'; import type { OnboardingStackParamList } from '../../types'; type Props = NativeStackScreenProps; @@ -52,6 +41,8 @@ export const SignUpPasswordScreen = ({ const signupContext = useSignupContext(); const signupParams = useSignupParams(); const lureMeta = useLureMetadata(); + const { initRecaptcha, execRecaptchaLogin, hostingApi } = + useOnboardingContext(); const { control, setFocus, @@ -64,20 +55,16 @@ export const SignUpPasswordScreen = ({ defaultValues: { eulaAgreed: false, }, - mode: 'onChange', + mode: 'onBlur', }); - const handleEula = () => { - navigation.navigate('EULA'); - }; - const onSubmit = handleSubmit(async (params) => { const { password } = params; setIsSubmitting(true); let recaptchaToken: string | undefined; try { - recaptchaToken = await execute(RecaptchaAction.LOGIN(), 10_000); + recaptchaToken = await execRecaptchaLogin(); } catch (err) { console.error('Error executing reCAPTCHA:', err); if (err instanceof Error) { @@ -98,17 +85,8 @@ export const SignUpPasswordScreen = ({ return; } - if (!isEulaAgreed()) { - setError('eulaAgreed', { - type: 'custom', - message: 'Please agree to the End User License Agreement to continue.', - }); - setIsSubmitting(false); - return; - } - try { - await signUpHostingUser({ + await hostingApi.signUpHostingUser({ email, password, recaptchaToken, @@ -136,7 +114,7 @@ export const SignUpPasswordScreen = ({ }); try { - const user = await logInHostingUser({ + const user = await hostingApi.logInHostingUser({ email, password, }); @@ -163,7 +141,7 @@ export const SignUpPasswordScreen = ({ useEffect(() => { (async () => { try { - await initClient(RECAPTCHA_SITE_KEY, 10_000); + await initRecaptcha(RECAPTCHA_SITE_KEY, 10_000); } catch (err) { console.error('Error initializing reCAPTCHA client:', err); if (err instanceof Error) { @@ -178,111 +156,98 @@ export const SignUpPasswordScreen = ({ }, []); return ( - + navigation.goBack()} isLoading={isSubmitting} rightControls={ - isValid && - watch('eulaAgreed') && ( - - Next - - ) + + Next + } /> - - {lureMeta ? : null} - - Please set a strong password with at least 8 characters. - - ( - - { - onBlur(); - trigger('password'); - }} - onChangeText={onChange} - onSubmitEditing={() => setFocus('confirmPassword')} - value={value} - secureTextEntry - autoCapitalize="none" - autoCorrect={false} - returnKeyType="next" - enablesReturnKeyAutomatically - /> - - )} - /> - - value === password || 'Passwords must match.', - }} - render={({ field: { onChange, onBlur, value } }) => ( - - { - onBlur(); - trigger('confirmPassword'); - }} - onChangeText={onChange} - onSubmitEditing={onSubmit} - value={value} - secureTextEntry - autoCapitalize="none" - autoCorrect={false} - returnKeyType="send" - enablesReturnKeyAutomatically - /> - - )} - /> - ( - onChange(!value)} - /> - )} - /> - - - End User License Agreement - - - - - + + {/* {lureMeta ? : null} */} + + + Please set a strong password with at least 8 characters. + + + + ( + + setFocus('confirmPassword')} + value={value} + secureTextEntry + autoCapitalize="none" + autoCorrect={false} + returnKeyType="next" + enablesReturnKeyAutomatically + /> + + )} + /> + + value === password || 'Passwords must match.', + }} + render={({ field: { onChange, onBlur, value, ref } }) => ( + + + + )} + /> + + + By registering you agree to Tlon’s{' '} + + Terms of Service + + diff --git a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx index bd1d885778..43dd20f855 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx @@ -4,65 +4,99 @@ import { useIsDarkMode } from '@tloncorp/app/hooks/useIsDarkMode'; import { ActionSheet, AppInviteDisplay, + Button, + Icon, + Image, PrimaryButton, + Sheet, SizableText, + TextV2, View, + XStack, YStack, } from '@tloncorp/ui'; import { useState } from 'react'; -import { ImageBackground, Pressable } from 'react-native'; +import { Pressable } from 'react-native'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; import type { OnboardingStackParamList } from '../../types'; +import { OnboardingButton } from './shared'; + +const Text = TextV2.Text; type Props = NativeStackScreenProps; export const WelcomeScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); const isDarkMode = useIsDarkMode(); - const { bottom } = useSafeAreaInsets(); + const { bottom, top } = useSafeAreaInsets(); const [open, setOpen] = useState(false); - const bgSource = isDarkMode - ? require('../../../assets/images/welcome-bg-dark.png') - : require('../../../assets/images/welcome-bg.png'); - return ( - - + + + Tlon Messenger + + - {lureMeta ? ( - - ) : null} - - { - navigation.navigate('InventoryCheck'); - }} - > - Sign Up with Email - - setOpen(true)}> - - Have an account? Log in - - + + + {lureMeta ? ( + + + { + navigation.navigate('SignUpEmail'); + }} + > + Join with new account + + + ) : ( + <> + { + navigation.navigate('PasteInviteLink'); + }} + > + Claim invite + + { + navigation.navigate('JoinWaitList', {}); + }} + > + Join waitlist + + + )} + + + setOpen(true)}> + + Have an account? Log in + + + - + @@ -87,6 +121,93 @@ export const WelcomeScreen = ({ navigation }: Props) => { + ); }; + +function BenefitsSheet() { + const [open, setOpen] = useState(true); + return ( + + + + + + + + + + Welcome to Tlon + + + A messenger you can actually trust. + + + + + + + + + + + + Tlon operates on a peer-to-peer network. + + + Practically, this means your free account is a cloud computer. + You can run it yourself, or we can run it for you. + + + + + + + + + + + + Hassle-free messaging you can trust. + + We'll make sure your computer is online and up-to-date. + Interested in self-hosting? You can always change your mind. + + + + + + + + + + + + Sign up with your email address. + + We'll ask you a few questions to get you set up. + + + + + + + ); +} diff --git a/apps/tlon-mobile/src/screens/Onboarding/shared.tsx b/apps/tlon-mobile/src/screens/Onboarding/shared.tsx new file mode 100644 index 0000000000..fa33bdb20b --- /dev/null +++ b/apps/tlon-mobile/src/screens/Onboarding/shared.tsx @@ -0,0 +1,34 @@ +import { Button, View } from '@tloncorp/ui'; +import { ComponentProps, PropsWithChildren } from 'react'; + +export function OnboardingButton({ + secondary, + ...props +}: ComponentProps & { + secondary?: boolean; +}) { + const color = secondary ? '$secondaryText' : '$primaryText'; + return ( + - + + + {buttonText} + + + ); }); diff --git a/packages/ui/src/components/ScreenHeader.tsx b/packages/ui/src/components/ScreenHeader.tsx index d848ee3eb5..7657c058bd 100644 --- a/packages/ui/src/components/ScreenHeader.tsx +++ b/packages/ui/src/components/ScreenHeader.tsx @@ -79,6 +79,13 @@ const HeaderTextButton = styled(Text, { pressStyle: { opacity: 0.5, }, + variants: { + disabled: { + true: { + color: '$tertiaryText', + }, + }, + }, }); const HeaderBackButton = ({ onPress }: { onPress?: () => void }) => { diff --git a/packages/ui/src/index.tsx b/packages/ui/src/index.tsx index a81eea3b16..2a721e78e3 100644 --- a/packages/ui/src/index.tsx +++ b/packages/ui/src/index.tsx @@ -73,10 +73,13 @@ export * from './components/UserProfileScreenView'; export * from './components/View'; export * from './components/WelcomeSheet'; export * from './components/AppInviteDisplay'; +export * from './components/Image'; +export * as FormV2 from './components/Form'; export * from './contexts'; export * from './tamagui.config'; export * from './types'; export * from './utils'; +export * as TextV2 from './components/TextV2'; export { Circle, From b8a32f1806de4b7783ab70558fad8b5252dc8455 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Fri, 4 Oct 2024 18:48:40 -0400 Subject: [PATCH 08/77] fixture tweaks --- apps/tlon-mobile/cosmos.imports.ts | 158 +++++++++--------- apps/tlon-mobile/src/OnboardingStack.tsx | 2 +- .../src/fixtures/Onboarding.fixture.tsx | 32 +++- .../src/screens/Onboarding/WelcomeScreen.tsx | 2 +- 4 files changed, 106 insertions(+), 88 deletions(-) diff --git a/apps/tlon-mobile/cosmos.imports.ts b/apps/tlon-mobile/cosmos.imports.ts index 5e5e00059c..02858d1389 100644 --- a/apps/tlon-mobile/cosmos.imports.ts +++ b/apps/tlon-mobile/cosmos.imports.ts @@ -17,45 +17,46 @@ import * as fixture10 from './src/fixtures/PostScreen.fixture'; import * as fixture11 from './src/fixtures/PostReference.fixture'; import * as fixture12 from './src/fixtures/ParentAgnosticKeyboardAvoidingView.fixture'; import * as fixture13 from './src/fixtures/OutsideEmbed.fixture'; -import * as fixture14 from './src/fixtures/MetaEditorScreen.fixture'; -import * as fixture15 from './src/fixtures/MessageInput.fixture'; -import * as fixture16 from './src/fixtures/MessageActions.fixture'; -import * as fixture17 from './src/fixtures/InviteUsersSheet.fixture'; -import * as fixture18 from './src/fixtures/InputToolbar.fixture'; -import * as fixture19 from './src/fixtures/Input.fixture'; -import * as fixture20 from './src/fixtures/ImageViewer.fixture'; -import * as fixture21 from './src/fixtures/GroupListItem.fixture'; -import * as fixture22 from './src/fixtures/GroupList.fixture'; -import * as fixture23 from './src/fixtures/GalleryPost.fixture'; -import * as fixture24 from './src/fixtures/Form.fixture'; -import * as fixture25 from './src/fixtures/FindGroups.fixture'; -import * as fixture26 from './src/fixtures/CreateGroup.fixture'; -import * as fixture27 from './src/fixtures/ContactList.fixture'; -import * as fixture28 from './src/fixtures/ChatMessage.fixture'; -import * as fixture29 from './src/fixtures/ChannelSwitcherSheet.fixture'; -import * as fixture30 from './src/fixtures/ChannelHeader.fixture'; -import * as fixture31 from './src/fixtures/ChannelDivider.fixture'; -import * as fixture32 from './src/fixtures/Channel.fixture'; -import * as fixture33 from './src/fixtures/Button.fixture'; -import * as fixture34 from './src/fixtures/BlockSectionList.fixture'; -import * as fixture35 from './src/fixtures/Avatar.fixture'; -import * as fixture36 from './src/fixtures/AudioEmbed.fixture'; -import * as fixture37 from './src/fixtures/AttachmentPreviewList.fixture'; -import * as fixture38 from './src/fixtures/AddGroupSheet.fixture'; -import * as fixture39 from './src/fixtures/Activity.fixture'; -import * as fixture40 from './src/fixtures/DetailView/NotebookDetailView.fixture'; -import * as fixture41 from './src/fixtures/DetailView/GalleryDetailView.fixture'; -import * as fixture42 from './src/fixtures/DetailView/ChatDetailView.fixture'; -import * as fixture43 from './src/fixtures/ActionSheet/SendPostRetrySheet.fixture'; -import * as fixture44 from './src/fixtures/ActionSheet/ProfileSheet.fixture'; -import * as fixture45 from './src/fixtures/ActionSheet/GroupPreviewSheet.fixture'; -import * as fixture46 from './src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture'; -import * as fixture47 from './src/fixtures/ActionSheet/GenericActionSheet.fixture'; -import * as fixture48 from './src/fixtures/ActionSheet/EditSectionNameSheet.fixture'; -import * as fixture49 from './src/fixtures/ActionSheet/DeleteSheet.fixture'; -import * as fixture50 from './src/fixtures/ActionSheet/CreateChannelSheet.fixture'; -import * as fixture51 from './src/fixtures/ActionSheet/AttachmentSheet.fixture'; -import * as fixture52 from './src/fixtures/ActionSheet/AddGalleryPostSheet.fixture'; +import * as fixture14 from './src/fixtures/Onboarding.fixture'; +import * as fixture15 from './src/fixtures/MetaEditorScreen.fixture'; +import * as fixture16 from './src/fixtures/MessageInput.fixture'; +import * as fixture17 from './src/fixtures/MessageActions.fixture'; +import * as fixture18 from './src/fixtures/InviteUsersSheet.fixture'; +import * as fixture19 from './src/fixtures/InputToolbar.fixture'; +import * as fixture20 from './src/fixtures/Input.fixture'; +import * as fixture21 from './src/fixtures/ImageViewer.fixture'; +import * as fixture22 from './src/fixtures/GroupListItem.fixture'; +import * as fixture23 from './src/fixtures/GroupList.fixture'; +import * as fixture24 from './src/fixtures/GalleryPost.fixture'; +import * as fixture25 from './src/fixtures/Form.fixture'; +import * as fixture26 from './src/fixtures/FindGroups.fixture'; +import * as fixture27 from './src/fixtures/CreateGroup.fixture'; +import * as fixture28 from './src/fixtures/ContactList.fixture'; +import * as fixture29 from './src/fixtures/ChatMessage.fixture'; +import * as fixture30 from './src/fixtures/ChannelSwitcherSheet.fixture'; +import * as fixture31 from './src/fixtures/ChannelHeader.fixture'; +import * as fixture32 from './src/fixtures/ChannelDivider.fixture'; +import * as fixture33 from './src/fixtures/Channel.fixture'; +import * as fixture34 from './src/fixtures/Button.fixture'; +import * as fixture35 from './src/fixtures/BlockSectionList.fixture'; +import * as fixture36 from './src/fixtures/Avatar.fixture'; +import * as fixture37 from './src/fixtures/AudioEmbed.fixture'; +import * as fixture38 from './src/fixtures/AttachmentPreviewList.fixture'; +import * as fixture39 from './src/fixtures/AddGroupSheet.fixture'; +import * as fixture40 from './src/fixtures/Activity.fixture'; +import * as fixture41 from './src/fixtures/DetailView/NotebookDetailView.fixture'; +import * as fixture42 from './src/fixtures/DetailView/GalleryDetailView.fixture'; +import * as fixture43 from './src/fixtures/DetailView/ChatDetailView.fixture'; +import * as fixture44 from './src/fixtures/ActionSheet/SendPostRetrySheet.fixture'; +import * as fixture45 from './src/fixtures/ActionSheet/ProfileSheet.fixture'; +import * as fixture46 from './src/fixtures/ActionSheet/GroupPreviewSheet.fixture'; +import * as fixture47 from './src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture'; +import * as fixture48 from './src/fixtures/ActionSheet/GenericActionSheet.fixture'; +import * as fixture49 from './src/fixtures/ActionSheet/EditSectionNameSheet.fixture'; +import * as fixture50 from './src/fixtures/ActionSheet/DeleteSheet.fixture'; +import * as fixture51 from './src/fixtures/ActionSheet/CreateChannelSheet.fixture'; +import * as fixture52 from './src/fixtures/ActionSheet/AttachmentSheet.fixture'; +import * as fixture53 from './src/fixtures/ActionSheet/AddGalleryPostSheet.fixture'; import * as decorator0 from './src/fixtures/cosmos.decorator'; @@ -79,45 +80,46 @@ const fixtures = { 'src/fixtures/PostReference.fixture.tsx': { module: fixture11 }, 'src/fixtures/ParentAgnosticKeyboardAvoidingView.fixture.tsx': { module: fixture12 }, 'src/fixtures/OutsideEmbed.fixture.tsx': { module: fixture13 }, - 'src/fixtures/MetaEditorScreen.fixture.tsx': { module: fixture14 }, - 'src/fixtures/MessageInput.fixture.tsx': { module: fixture15 }, - 'src/fixtures/MessageActions.fixture.tsx': { module: fixture16 }, - 'src/fixtures/InviteUsersSheet.fixture.tsx': { module: fixture17 }, - 'src/fixtures/InputToolbar.fixture.tsx': { module: fixture18 }, - 'src/fixtures/Input.fixture.tsx': { module: fixture19 }, - 'src/fixtures/ImageViewer.fixture.tsx': { module: fixture20 }, - 'src/fixtures/GroupListItem.fixture.tsx': { module: fixture21 }, - 'src/fixtures/GroupList.fixture.tsx': { module: fixture22 }, - 'src/fixtures/GalleryPost.fixture.tsx': { module: fixture23 }, - 'src/fixtures/Form.fixture.tsx': { module: fixture24 }, - 'src/fixtures/FindGroups.fixture.tsx': { module: fixture25 }, - 'src/fixtures/CreateGroup.fixture.tsx': { module: fixture26 }, - 'src/fixtures/ContactList.fixture.tsx': { module: fixture27 }, - 'src/fixtures/ChatMessage.fixture.tsx': { module: fixture28 }, - 'src/fixtures/ChannelSwitcherSheet.fixture.tsx': { module: fixture29 }, - 'src/fixtures/ChannelHeader.fixture.tsx': { module: fixture30 }, - 'src/fixtures/ChannelDivider.fixture.tsx': { module: fixture31 }, - 'src/fixtures/Channel.fixture.tsx': { module: fixture32 }, - 'src/fixtures/Button.fixture.tsx': { module: fixture33 }, - 'src/fixtures/BlockSectionList.fixture.tsx': { module: fixture34 }, - 'src/fixtures/Avatar.fixture.tsx': { module: fixture35 }, - 'src/fixtures/AudioEmbed.fixture.tsx': { module: fixture36 }, - 'src/fixtures/AttachmentPreviewList.fixture.tsx': { module: fixture37 }, - 'src/fixtures/AddGroupSheet.fixture.tsx': { module: fixture38 }, - 'src/fixtures/Activity.fixture.tsx': { module: fixture39 }, - 'src/fixtures/DetailView/NotebookDetailView.fixture.tsx': { module: fixture40 }, - 'src/fixtures/DetailView/GalleryDetailView.fixture.tsx': { module: fixture41 }, - 'src/fixtures/DetailView/ChatDetailView.fixture.tsx': { module: fixture42 }, - 'src/fixtures/ActionSheet/SendPostRetrySheet.fixture.tsx': { module: fixture43 }, - 'src/fixtures/ActionSheet/ProfileSheet.fixture.tsx': { module: fixture44 }, - 'src/fixtures/ActionSheet/GroupPreviewSheet.fixture.tsx': { module: fixture45 }, - 'src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture.tsx': { module: fixture46 }, - 'src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx': { module: fixture47 }, - 'src/fixtures/ActionSheet/EditSectionNameSheet.fixture.tsx': { module: fixture48 }, - 'src/fixtures/ActionSheet/DeleteSheet.fixture.tsx': { module: fixture49 }, - 'src/fixtures/ActionSheet/CreateChannelSheet.fixture.tsx': { module: fixture50 }, - 'src/fixtures/ActionSheet/AttachmentSheet.fixture.tsx': { module: fixture51 }, - 'src/fixtures/ActionSheet/AddGalleryPostSheet.fixture.tsx': { module: fixture52 } + 'src/fixtures/Onboarding.fixture.tsx': { module: fixture14 }, + 'src/fixtures/MetaEditorScreen.fixture.tsx': { module: fixture15 }, + 'src/fixtures/MessageInput.fixture.tsx': { module: fixture16 }, + 'src/fixtures/MessageActions.fixture.tsx': { module: fixture17 }, + 'src/fixtures/InviteUsersSheet.fixture.tsx': { module: fixture18 }, + 'src/fixtures/InputToolbar.fixture.tsx': { module: fixture19 }, + 'src/fixtures/Input.fixture.tsx': { module: fixture20 }, + 'src/fixtures/ImageViewer.fixture.tsx': { module: fixture21 }, + 'src/fixtures/GroupListItem.fixture.tsx': { module: fixture22 }, + 'src/fixtures/GroupList.fixture.tsx': { module: fixture23 }, + 'src/fixtures/GalleryPost.fixture.tsx': { module: fixture24 }, + 'src/fixtures/Form.fixture.tsx': { module: fixture25 }, + 'src/fixtures/FindGroups.fixture.tsx': { module: fixture26 }, + 'src/fixtures/CreateGroup.fixture.tsx': { module: fixture27 }, + 'src/fixtures/ContactList.fixture.tsx': { module: fixture28 }, + 'src/fixtures/ChatMessage.fixture.tsx': { module: fixture29 }, + 'src/fixtures/ChannelSwitcherSheet.fixture.tsx': { module: fixture30 }, + 'src/fixtures/ChannelHeader.fixture.tsx': { module: fixture31 }, + 'src/fixtures/ChannelDivider.fixture.tsx': { module: fixture32 }, + 'src/fixtures/Channel.fixture.tsx': { module: fixture33 }, + 'src/fixtures/Button.fixture.tsx': { module: fixture34 }, + 'src/fixtures/BlockSectionList.fixture.tsx': { module: fixture35 }, + 'src/fixtures/Avatar.fixture.tsx': { module: fixture36 }, + 'src/fixtures/AudioEmbed.fixture.tsx': { module: fixture37 }, + 'src/fixtures/AttachmentPreviewList.fixture.tsx': { module: fixture38 }, + 'src/fixtures/AddGroupSheet.fixture.tsx': { module: fixture39 }, + 'src/fixtures/Activity.fixture.tsx': { module: fixture40 }, + 'src/fixtures/DetailView/NotebookDetailView.fixture.tsx': { module: fixture41 }, + 'src/fixtures/DetailView/GalleryDetailView.fixture.tsx': { module: fixture42 }, + 'src/fixtures/DetailView/ChatDetailView.fixture.tsx': { module: fixture43 }, + 'src/fixtures/ActionSheet/SendPostRetrySheet.fixture.tsx': { module: fixture44 }, + 'src/fixtures/ActionSheet/ProfileSheet.fixture.tsx': { module: fixture45 }, + 'src/fixtures/ActionSheet/GroupPreviewSheet.fixture.tsx': { module: fixture46 }, + 'src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture.tsx': { module: fixture47 }, + 'src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx': { module: fixture48 }, + 'src/fixtures/ActionSheet/EditSectionNameSheet.fixture.tsx': { module: fixture49 }, + 'src/fixtures/ActionSheet/DeleteSheet.fixture.tsx': { module: fixture50 }, + 'src/fixtures/ActionSheet/CreateChannelSheet.fixture.tsx': { module: fixture51 }, + 'src/fixtures/ActionSheet/AttachmentSheet.fixture.tsx': { module: fixture52 }, + 'src/fixtures/ActionSheet/AddGalleryPostSheet.fixture.tsx': { module: fixture53 } }; const decorators = { diff --git a/apps/tlon-mobile/src/OnboardingStack.tsx b/apps/tlon-mobile/src/OnboardingStack.tsx index fa1a69fc3b..6d7ccead88 100644 --- a/apps/tlon-mobile/src/OnboardingStack.tsx +++ b/apps/tlon-mobile/src/OnboardingStack.tsx @@ -18,7 +18,7 @@ import { TlonLoginScreen } from './screens/Onboarding/TlonLoginScreen'; import { WelcomeScreen } from './screens/Onboarding/WelcomeScreen'; import type { OnboardingStackParamList } from './types'; -const OnboardingStackNavigator = +export const OnboardingStackNavigator = createNativeStackNavigator(); export function OnboardingStack() { diff --git a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx index 6ec6c6e6f4..8d5193ef2c 100644 --- a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx +++ b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx @@ -6,9 +6,10 @@ import { import { DeepLinkData } from 'packages/shared/dist'; import { PropsWithChildren, useState } from 'react'; -import { OnboardingStack } from '../OnboardingStack'; +import { OnboardingStack, OnboardingStackNavigator } from '../OnboardingStack'; import { OnboardingProvider } from '../lib/OnboardingContext'; import { SetNicknameScreen } from '../screens/Onboarding/SetNicknameScreen'; +import { SignUpPasswordScreen } from '../screens/Onboarding/SignUpPasswordScreen'; import { User } from '../types'; import { exampleContacts } from './contentHelpers'; import { group } from './fakeData'; @@ -107,13 +108,28 @@ export default { ), Nickname: ( - - {} }} - // @ts-expect-error partial implementation - route={{ params: {} }} - /> + + + + + + ), + Password: ( + + + + ), }; diff --git a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx index 43dd20f855..87c3efe3a5 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx @@ -53,7 +53,7 @@ export const WelcomeScreen = ({ navigation }: Props) => { Date: Sun, 6 Oct 2024 17:23:42 -0400 Subject: [PATCH 09/77] advance screen automatically on invite click like we do with paste --- .../screens/Onboarding/PasteInviteLinkScreen.tsx | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index e116cb95f2..d6b5181045 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -16,7 +16,7 @@ import { View, YStack, } from '@tloncorp/ui'; -import { useCallback, useEffect, useState } from 'react'; +import { useCallback, useEffect } from 'react'; import { Controller, useForm } from 'react-hook-form'; import { Keyboard } from 'react-native'; @@ -36,7 +36,6 @@ type FormData = { export const PasteInviteLinkScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); const { setLure } = useBranch(); - const [hasInvite, setHasInvite] = useState(Boolean(lureMeta)); const { control, @@ -61,7 +60,6 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { ); if (inviteLinkMeta) { setLure(inviteLinkMeta as DeepLinkData); - navigation.navigate('SignUpEmail'); return; } } @@ -74,9 +72,12 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { // to signup useEffect(() => { if (lureMeta) { - setHasInvite(true); + navigation.reset({ + index: 0, + routes: [{ name: 'Welcome' }, { name: 'SignUpEmail' }], + }); } - }, [lureMeta]); + }, [lureMeta, navigation]); // handle paste button click const onHandlePasteClick = useCallback(async () => { @@ -87,12 +88,12 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { return ( navigation.goBack()} rightControls={ navigation.navigate('SignUpEmail')} > Next From acbb02486966ac3fa04d6684b68702550a21d6ec Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 10:33:15 -0400 Subject: [PATCH 10/77] cleanup --- apps/tlon-mobile/.env.sample | 1 + apps/tlon-mobile/README.md | 1 + apps/tlon-mobile/app.config.ts | 1 + .../src/fixtures/Onboarding.fixture.tsx | 139 ++++++++++-- .../screens/Onboarding/CheckVerifyScreen.tsx | 201 ++++++++++-------- .../src/screens/Onboarding/EULAScreen.tsx | 2 +- .../Onboarding/InventoryCheckScreen.tsx | 6 +- .../screens/Onboarding/JoinWaitListScreen.tsx | 10 +- .../Onboarding/PasteInviteLinkScreen.tsx | 33 +-- .../screens/Onboarding/SetNicknameScreen.tsx | 6 +- .../screens/Onboarding/SetTelemetryScreen.tsx | 6 +- .../screens/Onboarding/SignUpEmailScreen.tsx | 4 +- .../Onboarding/SignUpPasswordScreen.tsx | 46 ++-- .../src/screens/Onboarding/WelcomeScreen.tsx | 105 +-------- packages/app/constants.ts | 1 + .../ui/src/assets/raster}/welcome_blocks.jpg | Bin .../Onboarding/OnboardingBenefitsSheet.tsx | 90 ++++++++ .../Onboarding/OnboardingButton.tsx | 0 .../OnboardingInvite.tsx} | 10 +- .../ui/src/components/Onboarding/index.tsx | 2 + packages/ui/src/index.tsx | 6 +- 21 files changed, 404 insertions(+), 266 deletions(-) rename {apps/tlon-mobile/assets/images => packages/ui/src/assets/raster}/welcome_blocks.jpg (100%) create mode 100644 packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx rename apps/tlon-mobile/src/screens/Onboarding/shared.tsx => packages/ui/src/components/Onboarding/OnboardingButton.tsx (100%) rename packages/ui/src/components/{AppInviteDisplay.tsx => Onboarding/OnboardingInvite.tsx} (88%) create mode 100644 packages/ui/src/components/Onboarding/index.tsx diff --git a/apps/tlon-mobile/.env.sample b/apps/tlon-mobile/.env.sample index 7141de8b6f..2f3f03903a 100644 --- a/apps/tlon-mobile/.env.sample +++ b/apps/tlon-mobile/.env.sample @@ -6,6 +6,7 @@ NOTIFY_SERVICE=tlon-preview-debug # Prefills auth flow for quicker logins DEFAULT_TLON_LOGIN_EMAIL= DEFAULT_TLON_LOGIN_PASSWORD= +DEFAULT_INVITE_LINK_URL= DEFAULT_SHIP_LOGIN_URL= DEFAULT_SHIP_LOGIN_ACCESS_CODE= diff --git a/apps/tlon-mobile/README.md b/apps/tlon-mobile/README.md index d2abc94a82..667511662d 100644 --- a/apps/tlon-mobile/README.md +++ b/apps/tlon-mobile/README.md @@ -115,6 +115,7 @@ To streamline testing the login flow, you can use env variables to prepopulate f ``` DEFAULT_TLON_LOGIN_EMAIL= DEFAULT_TLON_LOGIN_PASSWORD= +DEFAULT_INVITE_LINK_URL= DEFAULT_SHIP_LOGIN_URL= DEFAULT_SHIP_LOGIN_ACCESS_CODE= ``` diff --git a/apps/tlon-mobile/app.config.ts b/apps/tlon-mobile/app.config.ts index 97f909c678..812545e96d 100644 --- a/apps/tlon-mobile/app.config.ts +++ b/apps/tlon-mobile/app.config.ts @@ -30,6 +30,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ defaultPriorityToken: process.env.DEFAULT_PRIORITY_TOKEN, defaultTlonLoginEmail: process.env.DEFAULT_TLON_LOGIN_EMAIL, defaultTlonLoginPassword: process.env.DEFAULT_TLON_LOGIN_PASSWORD, + defaultInviteLinkUrl: process.env.DEFAULT_INVITE_LINK_URL, defaultShipLoginUrl: process.env.DEFAULT_SHIP_LOGIN_URL, defaultShipLoginAccessCode: process.env.DEFAULT_SHIP_LOGIN_ACCESS_CODE, recaptchaSiteKeyAndroid: process.env.RECAPTCHA_SITE_KEY_ANDROID, diff --git a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx index 8d5193ef2c..6331a627e4 100644 --- a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx +++ b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx @@ -8,9 +8,21 @@ import { PropsWithChildren, useState } from 'react'; import { OnboardingStack, OnboardingStackNavigator } from '../OnboardingStack'; import { OnboardingProvider } from '../lib/OnboardingContext'; +import { CheckVerifyScreen } from '../screens/Onboarding/CheckVerifyScreen'; +import { EULAScreen } from '../screens/Onboarding/EULAScreen'; +import { InventoryCheckScreen } from '../screens/Onboarding/InventoryCheckScreen'; +import { JoinWaitListScreen } from '../screens/Onboarding/JoinWaitListScreen'; +import { PasteInviteLinkScreen } from '../screens/Onboarding/PasteInviteLinkScreen'; +import { RequestPhoneVerifyScreen } from '../screens/Onboarding/RequestPhoneVerifyScreen'; +import { ReserveShipScreen } from '../screens/Onboarding/ReserveShipScreen'; import { SetNicknameScreen } from '../screens/Onboarding/SetNicknameScreen'; +import { SetTelemetryScreen } from '../screens/Onboarding/SetTelemetryScreen'; +import { ShipLoginScreen } from '../screens/Onboarding/ShipLoginScreen'; +import { SignUpEmailScreen } from '../screens/Onboarding/SignUpEmailScreen'; import { SignUpPasswordScreen } from '../screens/Onboarding/SignUpPasswordScreen'; -import { User } from '../types'; +import { TlonLoginScreen } from '../screens/Onboarding/TlonLoginScreen'; +import { WelcomeScreen } from '../screens/Onboarding/WelcomeScreen'; +import { OnboardingStackParamList, User } from '../types'; import { exampleContacts } from './contentHelpers'; import { group } from './fakeData'; @@ -96,6 +108,30 @@ function OnboardingFixture({ ); } +function SingleScreenFixture({ + routeName, + params, + Component, +}: { + routeName: T; + params?: OnboardingStackParamList[T]; + Component: React.ComponentType; +}) { + return ( + + + + + + ); +} + export default { Stack: ( @@ -108,28 +144,87 @@ export default { ), Nickname: ( - - - - - + ), Password: ( - - - - - + + ), + JoinWaitlist: ( + + ), + RequestPhoneVerify: ( + + ), + CheckVerify: ( + + ), + ReserveShip: ( + + ), + SetNickname: ( + + ), + SetTelemetry: ( + + ), + Welcome: ( + + ), + InventoryCheck: ( + + ), + SignUpEmail: ( + + ), + EULA: , + PasteInviteLink: ( + + ), + TlonLogin: ( + + ), + ShipLogin: ( + ), }; diff --git a/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx index b6f9a9682f..a22f19b756 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx @@ -4,12 +4,12 @@ import { Field, ScreenHeader, TextInput, - TextV2, + TlonText, View, XStack, YStack, } from '@tloncorp/ui'; -import { createRef, useMemo, useState } from 'react'; +import { createRef, useCallback, useMemo, useState } from 'react'; import type { TextInputKeyPressEventData } from 'react-native'; import { TextInput as RNTextInput } from 'react-native'; @@ -32,71 +32,46 @@ export const CheckVerifyScreen = ({ const [code, setCode] = useState([]); const [isSubmitting, setIsSubmitting] = useState(false); const [error, setError] = useState(); - const inputRefs = useMemo( - () => - Array.from({ length: codeLength }).map(() => createRef()), - [] - ); const { hostingApi } = useOnboardingContext(); - const handleKeyPress = async ( - index: number, - key: TextInputKeyPressEventData['key'] - ) => { - if (key === 'Backspace' && !code[index] && index > 0) { - inputRefs[index - 1].current?.focus(); - } - }; - - const handleChangeText = (index: number, text: string) => { - const nextCode = [...code]; - if (text.length === 0) { - nextCode[index] = ''; - } else { - for (let i = 0; i < text.length; i += 1) { - nextCode[index + i] = text.charAt(i); - } - } + const handleSubmit = useCallback( + async (code: string) => { + setIsSubmitting(true); - if (nextCode.length === codeLength && nextCode.every(Boolean)) { - handleSubmit(nextCode.join('')); - } else if (index < inputRefs.length - 1 && nextCode[index]) { - for (let i = index + 1; i < inputRefs.length; i += 1) { - if (!nextCode[i]) { - inputRefs[i].current?.focus(); - break; + try { + if (isEmail) { + await hostingApi.verifyEmailDigits(user.email, code); + } else { + await hostingApi.checkPhoneVerify(user.id, code); } - } - } - - setCode(nextCode.slice(0, codeLength)); - }; - const handleSubmit = async (code: string) => { - setIsSubmitting(true); + trackOnboardingAction({ + actionName: 'Verification Submitted', + }); - try { - if (isEmail) { - await hostingApi.verifyEmailDigits(user.email, code); - } else { - await hostingApi.checkPhoneVerify(user.id, code); + navigation.navigate('ReserveShip', { user }); + } catch (err) { + console.error('Error submitting verification:', err); + if (err instanceof Error) { + setError(err.message); + trackError(err); + } } - trackOnboardingAction({ - actionName: 'Verification Submitted', - }); + setIsSubmitting(false); + }, + [hostingApi, isEmail, navigation, user] + ); - navigation.navigate('ReserveShip', { user }); - } catch (err) { - console.error('Error submitting verification:', err); - if (err instanceof Error) { - setError(err.message); - trackError(err); + const handleCodeChanged = useCallback( + (nextCode: string[]) => { + setCode(nextCode); + if (nextCode.length === codeLength && nextCode.every(Boolean)) { + handleSubmit(nextCode.join('')); } - } - - setIsSubmitting(false); - }; + }, + [codeLength, handleSubmit] + ); const handleResend = async () => { try { @@ -122,42 +97,98 @@ export const CheckVerifyScreen = ({ isLoading={isSubmitting} /> - - - {Array.from({ length: codeLength }).map((_, i) => ( - - handleKeyPress(i, nativeEvent.key) - } - placeholder="5" - onChangeText={(text) => handleChangeText(i, text)} - value={code.length > i ? code[i] : ''} - keyboardType="numeric" - maxLength={1} - paddingHorizontal="$xl" - paddingVertical="$xl" - width="$4xl" - /> - ))} - - - + Request a new code - + ); }; + +function CodeInput({ + length, + value, + onChange, + error, +}: { + length: number; + value: string[]; + onChange?: (value: string[]) => void; + error?: string; +}) { + const inputRefs = useMemo( + () => Array.from({ length }).map(() => createRef()), + [length] + ); + + const handleChangeText = useCallback( + (index: number, text: string) => { + const nextCode = [...value]; + if (text.length === 0) { + nextCode[index] = ''; + } else { + for (let i = 0; i < text.length; i += 1) { + nextCode[index + i] = text.charAt(i); + } + } + if (index < inputRefs.length - 1 && nextCode[index]) { + for (let i = index + 1; i < inputRefs.length; i += 1) { + if (!nextCode[i]) { + inputRefs[i].current?.focus(); + break; + } + } + } + onChange?.(nextCode.slice(0, length)); + }, + [onChange, value, inputRefs, length] + ); + + const handleKeyPress = async ( + index: number, + key: TextInputKeyPressEventData['key'] + ) => { + if (key === 'Backspace' && !value[index] && index > 0) { + inputRefs[index - 1].current?.focus(); + } + }; + + return ( + + + {Array.from({ length }).map((_, i) => ( + handleKeyPress(i, nativeEvent.key)} + placeholder="5" + onChangeText={(text) => handleChangeText(i, text)} + value={value.length > i ? value[i] : ''} + keyboardType="numeric" + maxLength={1} + paddingHorizontal="$xl" + paddingVertical="$xl" + width="$4xl" + /> + ))} + + + ); +} diff --git a/apps/tlon-mobile/src/screens/Onboarding/EULAScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/EULAScreen.tsx index 01d237c9e8..fda895295d 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/EULAScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/EULAScreen.tsx @@ -8,7 +8,7 @@ type Props = NativeStackScreenProps; export const EULAScreen = ({ navigation }: Props) => { return ( - + { - + diff --git a/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx index ae3e65ab71..a3240829c7 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/JoinWaitListScreen.tsx @@ -6,7 +6,7 @@ import { Field, ScreenHeader, TextInput, - TextV2, + TlonText, View, YStack, } from '@tloncorp/ui'; @@ -69,9 +69,9 @@ export const JoinWaitListScreen = ({ navigation }: Props) => { /> - + We’ll let you know as soon as space is available. - + { )} /> {remoteError ? ( - + {remoteError} - + ) : null} diff --git a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index d6b5181045..99ecfe1684 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -1,6 +1,10 @@ import Clipboard from '@react-native-clipboard/clipboard'; import type { NativeStackScreenProps } from '@react-navigation/native-stack'; -import { BRANCH_DOMAIN, BRANCH_KEY } from '@tloncorp/app/constants'; +import { + BRANCH_DOMAIN, + BRANCH_KEY, + DEFAULT_INVITE_LINK_URL, +} from '@tloncorp/app/constants'; import { useBranch, useLureMetadata } from '@tloncorp/app/contexts/branch'; import { DeepLinkData, @@ -12,11 +16,11 @@ import { Field, ScreenHeader, TextInputWithButton, - TextV2, + TlonText, View, YStack, } from '@tloncorp/ui'; -import { useCallback, useEffect } from 'react'; +import { useCallback, useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; import { Keyboard } from 'react-native'; @@ -36,6 +40,7 @@ type FormData = { export const PasteInviteLinkScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); const { setLure } = useBranch(); + const [hasInvite, setHasInvite] = useState(Boolean(lureMeta)); const { control, @@ -43,7 +48,11 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { setValue, watch, trigger, - } = useForm(); + } = useForm({ + defaultValues: { + inviteLink: DEFAULT_INVITE_LINK_URL, + }, + }); // watch for changes to the input & check for valid invite links const inviteLinkValue = watch('inviteLink'); @@ -60,6 +69,7 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { ); if (inviteLinkMeta) { setLure(inviteLinkMeta as DeepLinkData); + navigation.navigate('SignUpEmail'); return; } } @@ -72,12 +82,9 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { // to signup useEffect(() => { if (lureMeta) { - navigation.reset({ - index: 0, - routes: [{ name: 'Welcome' }, { name: 'SignUpEmail' }], - }); + setHasInvite(true); } - }, [lureMeta, navigation]); + }, [lureMeta]); // handle paste button click const onHandlePasteClick = useCallback(async () => { @@ -88,12 +95,12 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { return ( navigation.goBack()} rightControls={ navigation.navigate('SignUpEmail')} > Next @@ -107,12 +114,12 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { flex={1} > - + We're growing slowly. {'\n\n'}Invites let you skip the waitlist because we know someone wants to talk to you here. {'\n\n'} Click your invite link now or paste it below. - + - + Choose the nickname you want to use on the Tlon network. By default, you will use a pseudonymous identifier. - + - + We’re trying to make the app better and knowing how people use the app really helps. - + { /> - {lureMeta ? : null} + {lureMeta ? : null} ({ defaultValues: { eulaAgreed: false, @@ -58,6 +51,11 @@ export const SignUpPasswordScreen = ({ mode: 'onBlur', }); + const handlePressEula = useCallback(() => { + console.log('PRess eula'); + navigation.navigate('EULA'); + }, [navigation]); + const onSubmit = handleSubmit(async (params) => { const { password } = params; setIsSubmitting(true); @@ -172,9 +170,9 @@ export const SignUpPasswordScreen = ({ {/* {lureMeta ? : null} */} - + Please set a strong password with at least 8 characters. - + - - By registering you agree to Tlon’s{' '} - - Terms of Service - - + + + By registering you agree to Tlon’s{' '} + + Terms of Service + + + diff --git a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx index 87c3efe3a5..3d81494d07 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx @@ -3,32 +3,29 @@ import { useLureMetadata } from '@tloncorp/app/contexts/branch'; import { useIsDarkMode } from '@tloncorp/app/hooks/useIsDarkMode'; import { ActionSheet, - AppInviteDisplay, Button, - Icon, Image, - PrimaryButton, - Sheet, + OnboardingInviteBlock, SizableText, - TextV2, + TlonText, View, XStack, YStack, } from '@tloncorp/ui'; +import { OnboardingButton } from '@tloncorp/ui'; +import { OnboardingBenefitsSheet } from '@tloncorp/ui/src/components/Onboarding/OnboardingBenefitsSheet'; import { useState } from 'react'; import { Pressable } from 'react-native'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; import type { OnboardingStackParamList } from '../../types'; -import { OnboardingButton } from './shared'; -const Text = TextV2.Text; +export const Text = TlonText.Text; type Props = NativeStackScreenProps; export const WelcomeScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); - const isDarkMode = useIsDarkMode(); const { bottom, top } = useSafeAreaInsets(); const [open, setOpen] = useState(false); @@ -40,7 +37,7 @@ export const WelcomeScreen = ({ navigation }: Props) => { height={200} source={require('../../../assets/images/welcome-icon.png')} /> - Tlon Messenger + Tlon Messenger { borderColor="$shadow" borderWidth={1} > - + { navigation.navigate('SignUpEmail'); @@ -121,93 +118,7 @@ export const WelcomeScreen = ({ navigation }: Props) => { - + ); }; - -function BenefitsSheet() { - const [open, setOpen] = useState(true); - return ( - - - - - - - - - - Welcome to Tlon - - - A messenger you can actually trust. - - - - - - - - - - - - Tlon operates on a peer-to-peer network. - - - Practically, this means your free account is a cloud computer. - You can run it yourself, or we can run it for you. - - - - - - - - - - - - Hassle-free messaging you can trust. - - We'll make sure your computer is online and up-to-date. - Interested in self-hosting? You can always change your mind. - - - - - - - - - - - - Sign up with your email address. - - We'll ask you a few questions to get you set up. - - - - - - - ); -} diff --git a/packages/app/constants.ts b/packages/app/constants.ts index 752d7eeadd..6edcd1b889 100644 --- a/packages/app/constants.ts +++ b/packages/app/constants.ts @@ -29,6 +29,7 @@ export const DEFAULT_LURE = extra.defaultLure ?? '~nibset-napwyn/tlon'; export const DEFAULT_PRIORITY_TOKEN = extra.defaultPriorityToken ?? 'mobile'; export const DEFAULT_TLON_LOGIN_EMAIL = extra.defaultTlonLoginEmail ?? ''; export const DEFAULT_TLON_LOGIN_PASSWORD = extra.defaultTlonLoginPassword ?? ''; +export const DEFAULT_INVITE_LINK_URL = extra.defaultInviteLinkUrl ?? ''; export const DEFAULT_SHIP_LOGIN_URL = extra.defaultShipLoginUrl ?? ''; export const DEFAULT_SHIP_LOGIN_ACCESS_CODE = extra.defaultShipLoginAccessCode ?? ''; diff --git a/apps/tlon-mobile/assets/images/welcome_blocks.jpg b/packages/ui/src/assets/raster/welcome_blocks.jpg similarity index 100% rename from apps/tlon-mobile/assets/images/welcome_blocks.jpg rename to packages/ui/src/assets/raster/welcome_blocks.jpg diff --git a/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx b/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx new file mode 100644 index 0000000000..0a507696fc --- /dev/null +++ b/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx @@ -0,0 +1,90 @@ +import { ActionSheet, Icon, Image, View, XStack, YStack } from '@tloncorp/ui'; +import { useState } from 'react'; + +import { Text } from '../TextV2'; + +export function OnboardingBenefitsSheet() { + const [open, setOpen] = useState(true); + return ( + + + + + + + + + + Welcome to Tlon + + + A messenger you can actually trust. + + + + + + + + + + + + Tlon operates on a peer-to-peer network. + + + Practically, this means your free account is a cloud computer. + You can run it yourself, or we can run it for you. + + + + + + + + + + + + Hassle-free messaging you can trust. + + We’ll make sure your computer is online and up-to-date. + Interested in self-hosting? You can always change your mind. + + + + + + + + + + + + Sign up with your email address. + + We’ll ask you a few questions to get you set up. + + + + + + + ); +} diff --git a/apps/tlon-mobile/src/screens/Onboarding/shared.tsx b/packages/ui/src/components/Onboarding/OnboardingButton.tsx similarity index 100% rename from apps/tlon-mobile/src/screens/Onboarding/shared.tsx rename to packages/ui/src/components/Onboarding/OnboardingButton.tsx diff --git a/packages/ui/src/components/AppInviteDisplay.tsx b/packages/ui/src/components/Onboarding/OnboardingInvite.tsx similarity index 88% rename from packages/ui/src/components/AppInviteDisplay.tsx rename to packages/ui/src/components/Onboarding/OnboardingInvite.tsx index e20d98e6ef..b926d7f201 100644 --- a/packages/ui/src/components/AppInviteDisplay.tsx +++ b/packages/ui/src/components/Onboarding/OnboardingInvite.tsx @@ -1,10 +1,10 @@ import { DeepLinkMetadata } from '@tloncorp/shared/dist'; import React, { ComponentProps } from 'react'; -import { AppDataContextProvider } from '../contexts'; -import { ListItem } from './ListItem'; +import { AppDataContextProvider } from '../../contexts'; +import { ListItem } from '../ListItem'; -function AppInviteDisplayRaw({ +export const OnboardingInviteBlock = React.memo(function OnboardingInviteBlock({ metadata, ...rest }: { metadata: DeepLinkMetadata } & ComponentProps) { @@ -56,6 +56,4 @@ function AppInviteDisplayRaw({ ); -} - -export const AppInviteDisplay = React.memo(AppInviteDisplayRaw); +}); diff --git a/packages/ui/src/components/Onboarding/index.tsx b/packages/ui/src/components/Onboarding/index.tsx new file mode 100644 index 0000000000..7674059989 --- /dev/null +++ b/packages/ui/src/components/Onboarding/index.tsx @@ -0,0 +1,2 @@ +export * from './OnboardingButton'; +export * from './OnboardingInvite'; diff --git a/packages/ui/src/index.tsx b/packages/ui/src/index.tsx index 2a721e78e3..7d4a1e50e2 100644 --- a/packages/ui/src/index.tsx +++ b/packages/ui/src/index.tsx @@ -59,6 +59,7 @@ export * from './components/MessageInput/AttachmentPreviewList'; export * from './components/NavBarView'; export * from './components/Modal'; export * from './components/NavBar'; +export * from './components/Onboarding'; export * from './components/ParentAgnosticKeyboardAvoidingView'; export * from './components/PostScreenView'; export * from './components/ProfileScreenView'; @@ -72,14 +73,13 @@ export * from './components/UrbitSigil'; export * from './components/UserProfileScreenView'; export * from './components/View'; export * from './components/WelcomeSheet'; -export * from './components/AppInviteDisplay'; export * from './components/Image'; -export * as FormV2 from './components/Form'; +export * as Form from './components/Form'; export * from './contexts'; export * from './tamagui.config'; export * from './types'; export * from './utils'; -export * as TextV2 from './components/TextV2'; +export * as TlonText from './components/TextV2'; export { Circle, From c4ae1969c6246410bcc3c77634aebb14735464a8 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Sun, 6 Oct 2024 17:23:42 -0400 Subject: [PATCH 11/77] advance screen automatically on invite click like we do with paste --- .../screens/Onboarding/PasteInviteLinkScreen.tsx | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index 99ecfe1684..78b8f8611f 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -20,7 +20,7 @@ import { View, YStack, } from '@tloncorp/ui'; -import { useCallback, useEffect, useState } from 'react'; +import { useCallback, useEffect } from 'react'; import { Controller, useForm } from 'react-hook-form'; import { Keyboard } from 'react-native'; @@ -40,7 +40,6 @@ type FormData = { export const PasteInviteLinkScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); const { setLure } = useBranch(); - const [hasInvite, setHasInvite] = useState(Boolean(lureMeta)); const { control, @@ -69,7 +68,6 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { ); if (inviteLinkMeta) { setLure(inviteLinkMeta as DeepLinkData); - navigation.navigate('SignUpEmail'); return; } } @@ -82,9 +80,12 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { // to signup useEffect(() => { if (lureMeta) { - setHasInvite(true); + navigation.reset({ + index: 0, + routes: [{ name: 'Welcome' }, { name: 'SignUpEmail' }], + }); } - }, [lureMeta]); + }, [lureMeta, navigation]); // handle paste button click const onHandlePasteClick = useCallback(async () => { @@ -95,12 +96,12 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { return ( navigation.goBack()} rightControls={ navigation.navigate('SignUpEmail')} > Next From bcc35dcefe58f23f753c7a92514f6506f25e3a3e Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 10:38:42 -0400 Subject: [PATCH 12/77] link entire group preview block --- .../src/screens/Onboarding/WelcomeScreen.tsx | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx index 3d81494d07..463540cf56 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx @@ -1,10 +1,10 @@ import type { NativeStackScreenProps } from '@react-navigation/native-stack'; import { useLureMetadata } from '@tloncorp/app/contexts/branch'; -import { useIsDarkMode } from '@tloncorp/app/hooks/useIsDarkMode'; import { ActionSheet, Button, Image, + OnboardingButton, OnboardingInviteBlock, SizableText, TlonText, @@ -12,9 +12,8 @@ import { XStack, YStack, } from '@tloncorp/ui'; -import { OnboardingButton } from '@tloncorp/ui'; import { OnboardingBenefitsSheet } from '@tloncorp/ui/src/components/Onboarding/OnboardingBenefitsSheet'; -import { useState } from 'react'; +import { useCallback, useState } from 'react'; import { Pressable } from 'react-native'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; @@ -29,6 +28,10 @@ export const WelcomeScreen = ({ navigation }: Props) => { const { bottom, top } = useSafeAreaInsets(); const [open, setOpen] = useState(false); + const handlePressInvite = useCallback(() => { + navigation.navigate('SignUpEmail'); + }, [navigation]); + return ( @@ -55,13 +58,13 @@ export const WelcomeScreen = ({ navigation }: Props) => { backgroundColor="$shadow" borderColor="$shadow" borderWidth={1} + pressStyle={{ + opacity: 0.5, + }} + onPress={handlePressInvite} > - { - navigation.navigate('SignUpEmail'); - }} - > + Join with new account From 1dc43387f644eb9c45f159e80233e7b3578d34ba Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 11:01:03 -0400 Subject: [PATCH 13/77] fix up login screens --- .../Onboarding/RequestPhoneVerifyScreen.tsx | 39 +-- .../screens/Onboarding/ShipLoginScreen.tsx | 225 ++++++++---------- .../screens/Onboarding/TlonLoginScreen.tsx | 190 +++++++-------- .../Onboarding/OnboardingContent.tsx | 6 + .../ui/src/components/Onboarding/index.tsx | 1 + 5 files changed, 211 insertions(+), 250 deletions(-) create mode 100644 packages/ui/src/components/Onboarding/OnboardingContent.tsx diff --git a/apps/tlon-mobile/src/screens/Onboarding/RequestPhoneVerifyScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/RequestPhoneVerifyScreen.tsx index 46f5bbf06b..2886f7f15e 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/RequestPhoneVerifyScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/RequestPhoneVerifyScreen.tsx @@ -4,8 +4,9 @@ import { requestPhoneVerify } from '@tloncorp/app/lib/hostingApi'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { Field, + OnboardingTextBlock, ScreenHeader, - SizableText, + TlonText, View, YStack, useTheme, @@ -75,7 +76,7 @@ export const RequestPhoneVerifyScreen = ({ }); return ( - + } /> - - - Tlon is a platform for humans. We want to make sure you’re one - too. We’ll send you a verification code to the phone number you - enter below. - - {remoteError ? ( - - {remoteError} - - ) : null} - + + + + Tlon is a platform for humans. We want to make sure you’re one + too. We’ll send you a verification code to the phone number + you enter below. + + {remoteError ? ( + + {remoteError} + + ) : null} + + + { formState: { errors, isValid }, setValue, trigger, - watch, } = useForm({ defaultValues: { shipUrl: DEFAULT_SHIP_LOGIN_URL, @@ -70,18 +66,10 @@ export const ShipLoginScreen = ({ navigation }: Props) => { return true; }, []); - const handleEula = () => { - navigation.navigate('EULA'); - }; - const onSubmit = handleSubmit(async (params) => { const { shipUrl: rawShipUrl, accessCode } = params; setIsSubmitting(true); - if (params.eulaAgreed) { - await setEulaAgreed(); - } - const shipUrl = transformShipURL(rawShipUrl); setFormattedShipUrl(shipUrl); try { @@ -91,17 +79,11 @@ export const ShipLoginScreen = ({ navigation }: Props) => { ); if (authCookie) { const shipId = getShipFromCookie(authCookie); - if (await isEulaAgreed()) { - setShip({ - ship: shipId, - shipUrl, - authCookie, - }); - } else { - setRemoteError( - 'Please agree to the End User License Agreement to continue.' - ); - } + setShip({ + ship: shipId, + shipUrl, + authCookie, + }); } else { setRemoteError( "Sorry, we couldn't log in to your ship. It may be busy or offline." @@ -129,114 +111,97 @@ export const ShipLoginScreen = ({ navigation }: Props) => { backAction={() => navigation.goBack()} isLoading={isSubmitting} rightControls={ - isValid && - watch('eulaAgreed') && ( - - Connect - - ) + + Connect + } /> - - - Connect a self-hosted ship by entering its URL and access code. - - {remoteError ? ( - {remoteError} - ) : null} - - { - const urlValidation = isValidUrl(value); - if (urlValidation === false) { - return 'Please enter a valid URL.'; - } - if (urlValidation === 'hosted') { - return 'Please log in to your hosted Tlon ship using email and password.'; - } - return true; - }, - }} - render={({ field: { onChange, onBlur, value } }) => ( - - { - onBlur(); - trigger('shipUrl'); - }} - onChangeText={onChange} - onSubmitEditing={() => setFocus('accessCode')} - value={value} - keyboardType="url" - autoCapitalize="none" - autoCorrect={false} - returnKeyType="next" - enablesReturnKeyAutomatically - /> - - )} - /> - ( - - { - onBlur(); - trigger('accessCode'); - }} - onChangeText={onChange} - onSubmitEditing={onSubmit} - value={value} - secureTextEntry - autoCapitalize="none" - autoCorrect={false} - returnKeyType="send" - enablesReturnKeyAutomatically - /> - - )} - /> - ( - onChange(!value)} - /> - )} - /> - - - End User License Agreement - - - - - + + + + Connect a self-hosted ship by entering its URL and access code. + + {remoteError ? ( + + {remoteError} + + ) : null} + + + { + const urlValidation = isValidUrl(value); + if (urlValidation === false) { + return 'Please enter a valid URL.'; + } + if (urlValidation === 'hosted') { + return 'Please log in to your hosted Tlon ship using email and password.'; + } + return true; + }, + }} + render={({ field: { onChange, onBlur, value } }) => ( + + { + onBlur(); + trigger('shipUrl'); + }} + onChangeText={onChange} + onSubmitEditing={() => setFocus('accessCode')} + value={value} + keyboardType="url" + autoCapitalize="none" + autoCorrect={false} + returnKeyType="next" + enablesReturnKeyAutomatically + /> + + )} + /> + ( + + { + onBlur(); + trigger('accessCode'); + }} + onChangeText={onChange} + onSubmitEditing={onSubmit} + value={value} + secureTextEntry + autoCapitalize="none" + autoCorrect={false} + returnKeyType="send" + enablesReturnKeyAutomatically + /> + + )} + /> + diff --git a/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx index 56aa9e3b3e..43de729703 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx @@ -15,14 +15,12 @@ import { isEulaAgreed, setEulaAgreed } from '@tloncorp/app/utils/eula'; import { getShipUrl } from '@tloncorp/app/utils/ship'; import { getLandscapeAuthCookie } from '@tloncorp/shared/dist/api'; import { - CheckboxInput, Field, - Icon, KeyboardAvoidingView, - ListItem, + OnboardingTextBlock, ScreenHeader, - SizableText, TextInput, + TlonText, View, YStack, } from '@tloncorp/ui'; @@ -148,116 +146,96 @@ export const TlonLoginScreen = ({ navigation }: Props) => { return ( navigation.goBack()} isLoading={isSubmitting} rightControls={ - isValid && - watch('eulaAgreed') && ( - - Connect - - ) + + Submit + } /> - - - Enter the email and password associated with your Tlon account. - - {remoteError ? ( - {remoteError} - ) : null} + + + + Enter the email and password associated with your Tlon account. + + + {remoteError} + + - ( - - { - onBlur(); - trigger('email'); - }} - onChangeText={onChange} - onSubmitEditing={() => setFocus('password')} - value={value} - keyboardType="email-address" - autoCapitalize="none" - autoCorrect={false} - returnKeyType="next" - enablesReturnKeyAutomatically - /> - - )} - name="email" - /> - ( - - { - onBlur(); - trigger('password'); - }} - onChangeText={onChange} - onSubmitEditing={onSubmit} - value={value} - secureTextEntry - autoCapitalize="none" - autoCorrect={false} - returnKeyType="send" - enablesReturnKeyAutomatically - /> - - )} - name="password" - /> - ( - onChange(!value)} - /> - )} - /> - - - - End User License Agreement - - - - - - - - Forgot password? - - - - - + + ( + + { + onBlur(); + trigger('email'); + }} + onChangeText={onChange} + onSubmitEditing={() => setFocus('password')} + value={value} + keyboardType="email-address" + autoCapitalize="none" + autoCorrect={false} + returnKeyType="next" + enablesReturnKeyAutomatically + /> + + )} + name="email" + /> + ( + + { + onBlur(); + trigger('password'); + }} + onChangeText={onChange} + onSubmitEditing={onSubmit} + value={value} + secureTextEntry + autoCapitalize="none" + autoCorrect={false} + returnKeyType="send" + enablesReturnKeyAutomatically + /> + + )} + name="password" + /> + + Forgot password? + diff --git a/packages/ui/src/components/Onboarding/OnboardingContent.tsx b/packages/ui/src/components/Onboarding/OnboardingContent.tsx new file mode 100644 index 0000000000..391de25db1 --- /dev/null +++ b/packages/ui/src/components/Onboarding/OnboardingContent.tsx @@ -0,0 +1,6 @@ +import { YStack, styled } from 'tamagui'; + +export const OnboardingTextBlock = styled(YStack, { + padding: '$xl', + gap: '$3xl', +}); diff --git a/packages/ui/src/components/Onboarding/index.tsx b/packages/ui/src/components/Onboarding/index.tsx index 7674059989..4dacac25b9 100644 --- a/packages/ui/src/components/Onboarding/index.tsx +++ b/packages/ui/src/components/Onboarding/index.tsx @@ -1,2 +1,3 @@ export * from './OnboardingButton'; export * from './OnboardingInvite'; +export * from './OnboardingContent'; From c2e5bcd147b5bc89d088934c9295766ec6e0537d Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 11:03:38 -0400 Subject: [PATCH 14/77] fix import cycle --- packages/ui/src/components/Onboarding/OnboardingButton.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/ui/src/components/Onboarding/OnboardingButton.tsx b/packages/ui/src/components/Onboarding/OnboardingButton.tsx index fa33bdb20b..e43a53820b 100644 --- a/packages/ui/src/components/Onboarding/OnboardingButton.tsx +++ b/packages/ui/src/components/Onboarding/OnboardingButton.tsx @@ -1,5 +1,7 @@ -import { Button, View } from '@tloncorp/ui'; import { ComponentProps, PropsWithChildren } from 'react'; +import { View } from 'tamagui'; + +import { Button } from '../Button'; export function OnboardingButton({ secondary, From 58b22f0b0d9400e03958640624cd814d0775cf9e Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Sun, 6 Oct 2024 18:21:17 -0400 Subject: [PATCH 15/77] only show benefits sheet on first open --- .../src/screens/Onboarding/WelcomeScreen.tsx | 17 ++++++++++++++++- packages/shared/src/db/keyValue.ts | 12 ++++++++++++ packages/shared/src/store/dbHooks.ts | 7 +++++++ .../Onboarding/OnboardingBenefitsSheet.tsx | 12 ++++++++---- 4 files changed, 43 insertions(+), 5 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx index 463540cf56..423eaed4f9 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx @@ -1,5 +1,7 @@ import type { NativeStackScreenProps } from '@react-navigation/native-stack'; import { useLureMetadata } from '@tloncorp/app/contexts/branch'; +import { setDidShowBenefitsSheet } from '@tloncorp/shared/src/db'; +import { useDidShowBenefitsSheet } from '@tloncorp/shared/src/store'; import { ActionSheet, Button, @@ -27,6 +29,16 @@ export const WelcomeScreen = ({ navigation }: Props) => { const lureMeta = useLureMetadata(); const { bottom, top } = useSafeAreaInsets(); const [open, setOpen] = useState(false); + const { data: didShowBenefitsSheet } = useDidShowBenefitsSheet(); + + const handleBenefitsSheetOpenChange = useCallback((open: boolean) => { + if (!open) { + setTimeout(() => { + setDidShowBenefitsSheet(true); + }, 1000); + } + setOpen(open); + }, []); const handlePressInvite = useCallback(() => { navigation.navigate('SignUpEmail'); @@ -121,7 +133,10 @@ export const WelcomeScreen = ({ navigation }: Props) => { - + ); }; diff --git a/packages/shared/src/db/keyValue.ts b/packages/shared/src/db/keyValue.ts index 10343212ca..91c635fd3d 100644 --- a/packages/shared/src/db/keyValue.ts +++ b/packages/shared/src/db/keyValue.ts @@ -23,6 +23,7 @@ export const PUSH_NOTIFICATIONS_SETTING_QUERY_KEY = [ export const IS_TLON_EMPLOYEE_QUERY_KEY = ['settings', 'isTlonEmployee']; export const APP_INFO_QUERY_KEY = ['settings', 'appInfo']; export const BASE_VOLUME_SETTING_QUERY_KEY = ['volume', 'base']; +export const SHOW_BENEFITS_SHEET_QUERY_KEY = ['showBenefitsSheet']; export type ChannelSortPreference = 'recency' | 'arranged'; export async function storeChannelSortPreference( @@ -185,3 +186,14 @@ export async function getAppInfoSettings(): Promise { const appInfo = storedAppInfo ? (JSON.parse(storedAppInfo) as AppInfo) : null; return appInfo; } + +export async function setDidShowBenefitsSheet(didShow: boolean) { + await AsyncStorage.setItem('didShowBenefitsSheet', didShow.toString()); + queryClient.invalidateQueries({ queryKey: SHOW_BENEFITS_SHEET_QUERY_KEY }); + logger.log('stored didShowBenefitsSheet', didShow); +} + +export async function getDidShowBenefitsSheet() { + const didShow = await AsyncStorage.getItem('didShowBenefitsSheet'); + return didShow === 'true' ? true : false; +} diff --git a/packages/shared/src/store/dbHooks.ts b/packages/shared/src/store/dbHooks.ts index a5e1750d77..a177d5d9e9 100644 --- a/packages/shared/src/store/dbHooks.ts +++ b/packages/shared/src/store/dbHooks.ts @@ -100,6 +100,13 @@ export const useAppInfo = () => { }); }; +export const useDidShowBenefitsSheet = () => { + return useQuery({ + queryKey: db.SHOW_BENEFITS_SHEET_QUERY_KEY, + queryFn: db.getDidShowBenefitsSheet, + }); +}; + export const useActivitySeenMarker = () => { return useQuery({ queryKey: db.ACTIVITY_SEEN_MARKER_QUERY_KEY, diff --git a/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx b/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx index 0a507696fc..f1f28b43ad 100644 --- a/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx +++ b/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx @@ -1,12 +1,16 @@ import { ActionSheet, Icon, Image, View, XStack, YStack } from '@tloncorp/ui'; -import { useState } from 'react'; import { Text } from '../TextV2'; -export function OnboardingBenefitsSheet() { - const [open, setOpen] = useState(true); +export function OnboardingBenefitsSheet({ + open, + onOpenChange, +}: { + open: boolean; + onOpenChange: (isOpen: boolean) => void; +}) { return ( - + From 571d81a542744310d035704d1b666d637656bb79 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Sun, 6 Oct 2024 18:34:14 -0400 Subject: [PATCH 16/77] set branch keys based on app variant --- apps/tlon-mobile/app.config.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/tlon-mobile/app.config.ts b/apps/tlon-mobile/app.config.ts index 812545e96d..82f431db27 100644 --- a/apps/tlon-mobile/app.config.ts +++ b/apps/tlon-mobile/app.config.ts @@ -38,8 +38,12 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ enabledLoggers: process.env.ENABLED_LOGGERS, ignoreCosmos: process.env.IGNORE_COSMOS, TlonEmployeeGroup: process.env.TLON_EMPLOYEE_GROUP, - branchKey: process.env.BRANCH_KEY, - branchDomain: process.env.BRANCH_DOMAIN, + branchKey: isPreview + ? process.env.BRANCH_KEY_TEST + : process.env.BRANCH_KEY_PROD, + branchDomain: isPreview + ? process.env.BRANCH_DOMAIN_TEST + : process.env.BRANCH_DOMAIN_PROD, }, ios: { runtimeVersion: '4.0.1', From a351c5aff2532b97ea90c31b5f196da42e7ddfa3 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Sun, 6 Oct 2024 22:07:05 -0400 Subject: [PATCH 17/77] bump versions --- apps/tlon-mobile/android/app/build.gradle | 2 +- apps/tlon-mobile/app.config.ts | 4 ++-- apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/tlon-mobile/android/app/build.gradle b/apps/tlon-mobile/android/app/build.gradle index 8572d5c316..4e4b4f8f55 100644 --- a/apps/tlon-mobile/android/app/build.gradle +++ b/apps/tlon-mobile/android/app/build.gradle @@ -88,7 +88,7 @@ android { targetSdkVersion rootProject.ext.targetSdkVersion compileSdk rootProject.ext.compileSdkVersion versionCode 108 - versionName "4.0.1" + versionName "4.0.2" buildConfigField("boolean", "REACT_NATIVE_UNSTABLE_USE_RUNTIME_SCHEDULER_ALWAYS", (findProperty("reactNative.unstable_useRuntimeSchedulerAlways") ?: true).toString()) } diff --git a/apps/tlon-mobile/app.config.ts b/apps/tlon-mobile/app.config.ts index 82f431db27..0c2b6eb1f2 100644 --- a/apps/tlon-mobile/app.config.ts +++ b/apps/tlon-mobile/app.config.ts @@ -46,7 +46,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ : process.env.BRANCH_DOMAIN_PROD, }, ios: { - runtimeVersion: '4.0.1', + runtimeVersion: '4.0.2', // demo builds triggered by GitHub require this to be explicitly set rather than handled // elsewhere bundleIdentifier: @@ -56,7 +56,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({ }, }, android: { - runtimeVersion: '4.0.1', + runtimeVersion: '4.0.2', }, plugins: [ '@react-native-firebase/app', diff --git a/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj b/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj index 0758dac6f3..b6efc00385 100644 --- a/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj +++ b/apps/tlon-mobile/ios/Landscape.xcodeproj/project.pbxproj @@ -1395,7 +1395,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 4.0.1; + MARKETING_VERSION = 4.0.2; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -1433,7 +1433,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 4.0.1; + MARKETING_VERSION = 4.0.2; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", From cad2f967981a66ab6d4085657035ed7d9dff3328 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 11:45:23 -0400 Subject: [PATCH 18/77] use correct shared imports --- apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx index 423eaed4f9..cdee8e26b4 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/WelcomeScreen.tsx @@ -1,7 +1,7 @@ import type { NativeStackScreenProps } from '@react-navigation/native-stack'; import { useLureMetadata } from '@tloncorp/app/contexts/branch'; -import { setDidShowBenefitsSheet } from '@tloncorp/shared/src/db'; -import { useDidShowBenefitsSheet } from '@tloncorp/shared/src/store'; +import { setDidShowBenefitsSheet } from '@tloncorp/shared/dist/db'; +import { useDidShowBenefitsSheet } from '@tloncorp/shared/dist/store'; import { ActionSheet, Button, From 87fd50c6a15fea11bddcecf8b90061419770fe84 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 11:46:36 -0400 Subject: [PATCH 19/77] fix fixture --- .../src/fixtures/Onboarding.fixture.tsx | 100 ++++++++++-------- 1 file changed, 53 insertions(+), 47 deletions(-) diff --git a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx index 6331a627e4..5213491a43 100644 --- a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx +++ b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx @@ -3,7 +3,11 @@ import { Context as BranchContext, LureData, } from '@tloncorp/app/contexts/branch'; -import { DeepLinkData } from 'packages/shared/dist'; +import { + DeepLinkData, + QueryClientProvider, + queryClient, +} from 'packages/shared/dist'; import { PropsWithChildren, useState } from 'react'; import { OnboardingStack, OnboardingStackNavigator } from '../OnboardingStack'; @@ -56,55 +60,57 @@ function OnboardingFixture({ : undefined ); return ( - Promise.resolve('abc'), - execRecaptchaLogin: () => Promise.resolve('abc'), - getLandscapeAuthCookie: () => Promise.resolve('abc'), - //@ts-expect-error partial implementation - hostingApi: { - signUpHostingUser: async () => Promise.resolve({}), - logInHostingUser: () => Promise.resolve(sampleUser), - getHostingAvailability: async () => - Promise.resolve({ enabled: true, validEmail: true }), - getHostingUser: async () => Promise.resolve(sampleUser as User), - getReservableShips: async () => - Promise.resolve([ - { id: '~solfer-magfed', readyForDistribution: true }, - ]), - getShipAccessCode: async () => Promise.resolve({ code: 'xyz' }), - allocateReservedShip: async () => Promise.resolve({}), - getShipsWithStatus: async () => - Promise.resolve({ - shipId: '~solfer-magfed', - status: 'Ready', - }), - reserveShip: async () => - Promise.resolve({ - id: '~solfer-magfed', - reservedBy: '1', - }), - checkPhoneVerify: async () => Promise.resolve({ verified: true }), - verifyEmailDigits: async () => Promise.resolve({ verified: true }), - requestPhoneVerify: async () => Promise.resolve({}), - }, - }} - > - + void, - clearLure: () => setLure(undefined), - clearDeepLink: () => {}, - deepLinkPath: undefined, - priorityToken: undefined, + initRecaptcha: () => Promise.resolve('abc'), + execRecaptchaLogin: () => Promise.resolve('abc'), + getLandscapeAuthCookie: () => Promise.resolve('abc'), + //@ts-expect-error partial implementation + hostingApi: { + signUpHostingUser: async () => Promise.resolve({}), + logInHostingUser: () => Promise.resolve(sampleUser), + getHostingAvailability: async () => + Promise.resolve({ enabled: true, validEmail: true }), + getHostingUser: async () => Promise.resolve(sampleUser as User), + getReservableShips: async () => + Promise.resolve([ + { id: '~solfer-magfed', readyForDistribution: true }, + ]), + getShipAccessCode: async () => Promise.resolve({ code: 'xyz' }), + allocateReservedShip: async () => Promise.resolve({}), + getShipsWithStatus: async () => + Promise.resolve({ + shipId: '~solfer-magfed', + status: 'Ready', + }), + reserveShip: async () => + Promise.resolve({ + id: '~solfer-magfed', + reservedBy: '1', + }), + checkPhoneVerify: async () => Promise.resolve({ verified: true }), + verifyEmailDigits: async () => Promise.resolve({ verified: true }), + requestPhoneVerify: async () => Promise.resolve({}), + }, }} > - - {children ?? } - - - + void, + clearLure: () => setLure(undefined), + clearDeepLink: () => {}, + deepLinkPath: undefined, + priorityToken: undefined, + }} + > + + {children ?? } + + + + ); } From cdba74ce70bbc193903feaa127f934a5908d4c3b Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 12:18:01 -0400 Subject: [PATCH 20/77] fix broken import --- apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx index 5213491a43..02922c502f 100644 --- a/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx +++ b/apps/tlon-mobile/src/fixtures/Onboarding.fixture.tsx @@ -7,7 +7,7 @@ import { DeepLinkData, QueryClientProvider, queryClient, -} from 'packages/shared/dist'; +} from '@tloncorp/shared/dist'; import { PropsWithChildren, useState } from 'react'; import { OnboardingStack, OnboardingStackNavigator } from '../OnboardingStack'; From f90b5dd651cf556a3d5d309beb7701225dda666b Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 7 Oct 2024 16:24:06 +0000 Subject: [PATCH 21/77] update glob: [skip actions] --- desk/desk.docket-0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/desk.docket-0 b/desk/desk.docket-0 index d4843cc0f0..6f4a5826d5 100644 --- a/desk/desk.docket-0 +++ b/desk/desk.docket-0 @@ -2,7 +2,7 @@ info+'Start, host, and cultivate communities. Own your communications, organize your resources, and share documents. Tlon is a decentralized platform that offers a full, communal suite of tools for messaging, writing and sharing media with others.' color+0xde.dede image+'https://bootstrap.urbit.org/tlon.svg?v=1' - glob-http+['https://bootstrap.urbit.org/glob-0v6.slci9.jv3n5.rrkgt.a6plj.jnc26.glob' 0v6.slci9.jv3n5.rrkgt.a6plj.jnc26] + glob-http+['https://bootstrap.urbit.org/glob-0v5.gl5dc.qjt2h.m8fu3.u1c2q.3tjm1.glob' 0v5.gl5dc.qjt2h.m8fu3.u1c2q.3tjm1] base+'groups' version+[6 4 1] website+'https://tlon.io' From 37bf0e8841c2aeb593ff975c28e5cc15b1459653 Mon Sep 17 00:00:00 2001 From: Hunter Miller Date: Mon, 7 Oct 2024 11:27:18 -0500 Subject: [PATCH 22/77] groups: fix flipped logic --- desk/app/groups.hoon | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/app/groups.hoon b/desk/app/groups.hoon index ec23bed506..f39cadc05c 100644 --- a/desk/app/groups.hoon +++ b/desk/app/groups.hoon @@ -2169,7 +2169,7 @@ |= =invite:g ^+ ga-core :: prevent spamming invites - ?: ?=(~ vit.gang) ga-core + ?. ?=(~ vit.gang) ga-core ?: (~(has by groups) p.invite) ga-core %- (log |.("received invite: {}")) ?: &(?=(^ cam.gang) ?=(%knocking progress.u.cam.gang)) From 02fc15dc88524b814ac4f05dc0dddb77830701a9 Mon Sep 17 00:00:00 2001 From: Hunter Miller Date: Mon, 7 Oct 2024 11:31:20 -0500 Subject: [PATCH 23/77] groups: better hoon --- desk/app/groups.hoon | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/app/groups.hoon b/desk/app/groups.hoon index f39cadc05c..e659297f42 100644 --- a/desk/app/groups.hoon +++ b/desk/app/groups.hoon @@ -2169,7 +2169,7 @@ |= =invite:g ^+ ga-core :: prevent spamming invites - ?. ?=(~ vit.gang) ga-core + ?^ vit.gang ga-core ?: (~(has by groups) p.invite) ga-core %- (log |.("received invite: {}")) ?: &(?=(^ cam.gang) ?=(%knocking progress.u.cam.gang)) From 508ec7387d8f768e9d0a6fba4482d48df787bff8 Mon Sep 17 00:00:00 2001 From: Hunter Miller Date: Mon, 7 Oct 2024 11:41:23 -0500 Subject: [PATCH 24/77] groups: had to revert logic so we don't get TMI --- desk/app/groups.hoon | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/app/groups.hoon b/desk/app/groups.hoon index e659297f42..6d91854ceb 100644 --- a/desk/app/groups.hoon +++ b/desk/app/groups.hoon @@ -2169,7 +2169,7 @@ |= =invite:g ^+ ga-core :: prevent spamming invites - ?^ vit.gang ga-core + ?. =(~ vit.gang) ga-core ?: (~(has by groups) p.invite) ga-core %- (log |.("received invite: {}")) ?: &(?=(^ cam.gang) ?=(%knocking progress.u.cam.gang)) From 051e56db8d47a5891acfb5a10d16c2fa3d233c45 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Mon, 7 Oct 2024 12:16:29 -0500 Subject: [PATCH 25/77] onboarding: better recaptcha error handling --- .../Onboarding/SignUpPasswordScreen.tsx | 72 ++++++++++++++++--- 1 file changed, 62 insertions(+), 10 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx index 8d46147127..42d240702d 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx @@ -4,9 +4,13 @@ import { useSignupParams } from '@tloncorp/app/contexts/branch'; import { useSignupContext } from '@tloncorp/app/contexts/signup'; import { setEulaAgreed } from '@tloncorp/app/utils/eula'; import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; +import { createDevLogger } from '@tloncorp/shared'; import { + Button, Field, KeyboardAvoidingView, + ListItem, + Modal, ScreenHeader, TextInput, TlonText, @@ -15,6 +19,8 @@ import { } from '@tloncorp/ui'; import { useCallback, useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; +import { useWindowDimensions } from 'react-native'; +import { getTokenValue } from 'tamagui'; import { useOnboardingContext } from '../../lib/OnboardingContext'; import type { OnboardingStackParamList } from '../../types'; @@ -27,6 +33,8 @@ type FormData = { eulaAgreed: boolean; }; +const logger = createDevLogger('SignUpPassword', true); + export const SignUpPasswordScreen = ({ navigation, route: { @@ -34,6 +42,9 @@ export const SignUpPasswordScreen = ({ }, }: Props) => { const [isSubmitting, setIsSubmitting] = useState(false); + const [recaptchaError, setRecaptchaError] = useState(null); + const [recaptchaReInitError, setRecaptchaReInitError] = + useState(null); const signupContext = useSignupContext(); const signupParams = useSignupParams(); const { initRecaptcha, execRecaptchaLogin, hostingApi } = @@ -50,9 +61,9 @@ export const SignUpPasswordScreen = ({ }, mode: 'onBlur', }); + const { height } = useWindowDimensions(); const handlePressEula = useCallback(() => { - console.log('PRess eula'); navigation.navigate('EULA'); }, [navigation]); @@ -66,10 +77,8 @@ export const SignUpPasswordScreen = ({ } catch (err) { console.error('Error executing reCAPTCHA:', err); if (err instanceof Error) { - setError('password', { - type: 'custom', - message: err.message, - }); + setRecaptchaError(err); + logger.crumb('Error executing reCAPTCHA:', err); trackError(err); } } @@ -78,7 +87,7 @@ export const SignUpPasswordScreen = ({ await setEulaAgreed(); } - if (!recaptchaToken) { + if (!recaptchaToken || recaptchaError || recaptchaReInitError) { setIsSubmitting(false); return; } @@ -129,6 +138,7 @@ export const SignUpPasswordScreen = ({ message: err.message, }); trackError(err); + logger.crumb('Error logging in user:', err); } } @@ -143,16 +153,38 @@ export const SignUpPasswordScreen = ({ } catch (err) { console.error('Error initializing reCAPTCHA client:', err); if (err instanceof Error) { - setError('password', { - type: 'custom', - message: err.message, - }); + setRecaptchaError(err); trackError(err); + logger.crumb('Error initializing reCAPTCHA client:', err, { + siteKey: RECAPTCHA_SITE_KEY, + }); } } })(); }, []); + // Re-initialize reCAPTCHA client if an error occurred + useEffect(() => { + if (recaptchaError && !recaptchaReInitError) { + (async () => { + try { + await initRecaptcha(RECAPTCHA_SITE_KEY, 10_000); + setRecaptchaError(null); + await onSubmit(); + } catch (err) { + console.error('Error re-initializing reCAPTCHA client:', err); + if (err instanceof Error) { + logger.crumb('Error re-initializing reCAPTCHA client:', err, { + siteKey: RECAPTCHA_SITE_KEY, + }); + setRecaptchaReInitError(err); + trackError(err); + } + } + })(); + } + }, [recaptchaError]); + return ( + + + + + We encountered an error reaching Google's reCAPTCHA service. + + + This may be due to a network issue or a problem with the service + itself. + + + A retry may resolve the issue. If the problem persists, please + contact support. + + + + + ); }; From 1e8c5187d8b0eb50ef406fa73b81dca86a20da21 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 13:20:30 -0400 Subject: [PATCH 26/77] update app icons (#4023) * update android icon * new ios app icon --- .../app/src/main/ic_launcher-playstore.png | Bin 28992 -> 8460 bytes .../res/drawable/ic_launcher_background.xml | 78 ++++++++++++++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 3 +- .../mipmap-anydpi-v26/ic_launcher_round.xml | 2 +- .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 752 -> 544 bytes .../mipmap-hdpi/ic_launcher_foreground.webp | Bin 272 -> 280 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 1928 -> 1698 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 526 -> 418 bytes .../mipmap-mdpi/ic_launcher_foreground.webp | Bin 198 -> 222 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 1156 -> 1128 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 1302 -> 754 bytes .../mipmap-xhdpi/ic_launcher_foreground.webp | Bin 346 -> 390 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 2792 -> 2598 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 2530 -> 1080 bytes .../mipmap-xxhdpi/ic_launcher_foreground.webp | Bin 514 -> 514 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 5274 -> 3886 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 4986 -> 1484 bytes .../ic_launcher_foreground.webp | Bin 686 -> 732 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 8878 -> 5756 bytes .../AppIcon.appiconset/120.png | Bin 1691 -> 0 bytes .../AppIcon.appiconset/180.png | Bin 2957 -> 0 bytes .../AppIcon.appiconset/40.png | Bin 650 -> 0 bytes .../AppIcon.appiconset/58.png | Bin 955 -> 0 bytes .../AppIcon.appiconset/60.png | Bin 860 -> 0 bytes .../AppIcon.appiconset/80.png | Bin 1130 -> 0 bytes .../AppIcon.appiconset/87.png | Bin 1366 -> 0 bytes .../AppIcon.appiconset/Contents.json | 54 +----------- .../AppIcon.appiconset/Icon-App-iTunes.png | Bin 10152 -> 0 bytes .../AppIcon.appiconset/Icon.png | Bin 0 -> 9989 bytes .../AppIcon.appiconset/Contents.json | 54 +----------- .../AppIcon.appiconset/Icon-App-iTunes.png | Bin 305620 -> 0 bytes .../AppIcon.appiconset/Icon.png | Bin 0 -> 9879 bytes .../AppIcon.appiconset/Icon_120x120.png | Bin 6666 -> 0 bytes .../Icon_120\303\227120.png" | Bin 6680 -> 0 bytes .../Icon_180\303\227180.png" | Bin 13072 -> 0 bytes .../AppIcon.appiconset/Icon_40x40.png | Bin 1845 -> 0 bytes .../AppIcon.appiconset/Icon_58x58.png | Bin 2579 -> 0 bytes .../AppIcon.appiconset/Icon_60\303\22760.png" | Bin 2602 -> 0 bytes .../AppIcon.appiconset/Icon_80x80.png | Bin 3767 -> 0 bytes .../AppIcon.appiconset/Icon_87\303\22787.png" | Bin 4283 -> 0 bytes 40 files changed, 86 insertions(+), 105 deletions(-) create mode 100644 apps/tlon-mobile/android/app/src/main/res/drawable/ic_launcher_background.xml delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/120.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/180.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/40.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/58.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/60.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/80.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/87.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Icon-App-iTunes.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Icon.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon-App-iTunes.png create mode 100644 apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_120x120.png delete mode 100644 "apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_120\303\227120.png" delete mode 100644 "apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_180\303\227180.png" delete mode 100644 apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_40x40.png delete mode 100644 apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_58x58.png delete mode 100644 "apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_60\303\22760.png" delete mode 100644 apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_80x80.png delete mode 100644 "apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_87\303\22787.png" diff --git a/apps/tlon-mobile/android/app/src/main/ic_launcher-playstore.png b/apps/tlon-mobile/android/app/src/main/ic_launcher-playstore.png index 7404b4b8adc1f2da3b978c415d2ba59b99c6b078..6ba91a6664fe5e1286a7f714095a349e22774f74 100644 GIT binary patch literal 8460 zcmeI2X;c$go5u^JQCblN1vE%(wFPBsL=1bhQPdYCw%8)FsWikELK+YfBoGuE8Uo@5 z5!pmUoEAYr)`UbwK-m=~Y)LRNECPYBWrfTQF7M1abLQK8m_B}@PTfk?t*7que}2#Z zl6cs4zxwyZ*|Sh&6W2cb+@H=9XHqe*QWLPdId?bS2cF;@muxXcSrBW z9-dsY)^eHVja^qZ9o=L2-M=oRJN7+hOAr2r9U}ahUOf8~-?G?9Ozi3V?iB&wAbDs# zbZgY|JLpVXpsHL0dfIIOLAUpSnXTXQ?cg68gxlsu$BGP{(~Y;0bj(ai+9unV>zEoZ z*ETl9v7;+9EK93~xU5u*jcpeToXHXBC79KaU;i!3z^3achaTn_f_cuZ`olHnrjf#2 zpMdrp?|{}@zurUT`rJE|84!?S!k@QV;%YN;H?+$G9gcR)S{-uC*q27NwbkuYd8%7} ze)eN&P)})SAEq*GxoOpHy|5N@|J>-gZQz7=#?If5tV6~SB3lD}`~p(2`6;`$UpGMU z+v1~z%t~9M!M1GA;M&=)sTW$Pb7(cc>yWPBonH51uO9nW-1|Ru((6{*7P(~XC`RVVV;hX7cz630BS=ms4Zlg$@v=Q%|QB3hrwNJEZn=MZ^Q9hacSK)|$^vvr}F^^1+TWNDYsOo*ZBcd#$r^dAHnvgnV&+O4e zCzDkgRx16Zx;L#cC32*IoNh1d4;xn9W#P%L2g5E|mN{y=F!1iHP_6s2rGwaj{Aw#d zPLUw=Y4=9x8VND4snAm=m-KPaRy=1p8-A4oxPr~8Gyaaulb78kKQsy`o zPMo*~s?J6;r7K4XN6~~6?u3(#11Y};?CK?H=#tPIx%myR4nkYj<}x;v)QK-4Eut*7 z(WtCFA=+23LkG6A{)FZB+2h@AWz3d~q?!7?bZy!lJ&7&+potYdE5N+0W$Ljja{m_;*6E)cm(UOjoGXY&fj`36`WUUr^ zN!$4NVX*3Uo!bm1S8GM$xNL%h2@q5(p`XguYomY3I{0BTq^Su79BWqD?W4T$2c?q% zM1T8%HDz1dvJ&*q-?xo>=?rbrK@4zHkv=gC)44eMdeMTAPN(ur zu-n}3xoj&T&W~bLDtPIh5hb|GFhub1;U_iPj5E(Ksri#kDs*cu&o#}(BdB>}HKWD6 z+KFhaxPQpOJ(wzJP}C#QAX0T%tof$k2LI;tH1@(=r9Z#Fn)jsB)yQ{Yii}a2t2c{z ztOp{^d$~E)c&XkWyLH@IxL?{iCtg@425K>e%W~&~#LsnTKb_k!o;IFr(PpUQO9&CS zVq-ezzn}W}?!nSj_%%()@2JX!lzvV})Q7A4n`Gi?3f5FQK_~VEm9@sx)_KrLfvXst z57$xr;zM5fRmb8O?OoX9L&{Ls9=-TxvYFZRV5?EWhKS?BqtgS3A4k!GZg`C7J+mA? z^~xYR|6=$SXkaaVK|Dk$+?#5}S(aNrxjl%Rg5c{*t5icwV#5uJjj0*A$7``@pAk<#%2~Xi zu4k6v>pRyQSdxc5y32;tD2ay!Pu@Zn87M)cBj9TUia!`2t!Gl2oY1+V7Y0qP0mOFEwTS-WbqUl^YL3pzy zr7AwegnMhH589Jb@1coKV$0!Cpd_zO@RDtR3ktSdjJVl1-Kecy@B&Nx3hfwBM96c7(PtTS8u{ zk006su#z`QoP$w4~iMw=-x3lGslxAi(WI@PM|4i#kd zBSp_NY7kD=ADkjGv9w6*3F@@ZTxJS1j17cA0y%OhD~xc0yUdJZdgDQc4XRwpB2x7kY8(8UKYDhu}f(cW4mG&&q^w9U#{l8UI#Pb$T=}q)RTH%t#MIsrujaD_lJxbe?Dl$46%aD6 zN@qC*hs?R;I@I<9_KPFO0`d4+VA}tnxaRM%ioRe+L_x}!%5HBhC>#TxFdh@wfK~ml z1=38an|RTG|a;ii9_szCShZ*295~8Us!=kZqhXJVlHSz^%v!D^quHB5AjDK=9 z8@eB;e7m^588XPhpZ1{Q1q1#Yl@uh=-JZP8B0ks&CRU5B*$RE^13F8wNF;!{D1doC zJbDH&$!6r@L!wD#hHYEGM^vk)1Q#xHN$*P(^wv`8F#9XBsO%IySWXx{ZRl7j44KB=f{gPB;< zsEOK2w31VZpqpRL@bO=eiJ5*2>}CJ`_N&s3J&w?3A7axs;QD`2Nq){TkLJSI$AKnM zr$C)q;UJUmfo5#KM76S9J@(xLcQO%FK;9c?GZVP9yRk`8$0JygXxN2%zerG4(kEhs z6dqhI+V4?*_T5089ImpP{&j)&oqh1IslPg`d5YJ()U58xU$Kgc_vdn*bWdz;xs0Pj zH>~UrB|U89m?t;x(C@?txy$K|BHoMgq(E&(@Z@<#R(xXcc?_s5rb9VV!I3gSBe!~jDMne*!dwB`#%)M3YTSVHs-B=pRn3;9Nu+GK zkE_-DOZ;ASACw|hK_m3D@@@8p(3d~(-06~Eg`I}sQJ_B5kXNpB5Dnywp2@fP5)lgC zq9@Bbtf@`|X@}o-za>t?;kc{q_>)oq0xP}u!?M5LuHNmHTcN9oyKi)Oq-3OUsoB!B zzXHSF{py}JKiAh@a(d3{%RT9dS_bJFL{XhTiyCPrHM%fk#u5|9%NY?2!{T=Xvt_R{ zAq9?Xfqb$trLVT~;^4BA)glh5xmL*XRFKv)XUBGq-%YN&iWznC`P2ms!flFE9HZ3< z_c;vsS?%0?bSa-g&agm7j2bCnV?J?YCg_awXyl~8LCIEK} z&~Qx+BIwnWfH-i;m+Y9Kj90R0S%j%qJfOwKKhp!3Dk!G=nDqR^tDq3?zE{i@`}=`V0no|&X0z^`jLF2 zFz5W)$sN?;*Zbin;P`K7_>@4m(QiYln5gw{>dgJ}x|xe`M*E_|^iLr6ML#9qh8Jty zx3Dah)BkljJURJHS*fFQv1yn!`C=_T`Q!cb9nq4RJlJc%7`KbnVkKXl!xK-=`~o_b zuK$Vg6*gu|jy)wAj*J-&_}WA)(%s$bt{*>j0wx}%ce7$7BmQsh9t6h9*Oq1K!z*4< zS=)AJvgrouibbaeG_$y;m`Y~Ef4R=2?KbE%Ke;PF?2gU>UC4vIaf(=+XiWtmpa}G8 z;Dz4hcvm*+g(YKc^6eJ;342oDYV;NMViwH;Hy~Z1S-=|iA8vSZ^;6R1U;r5?Oo~sb ztmv?g1a=i|15@y{9(z<5AM66F{*-P#z)(J+aNhaGn}EmLUFzT5^rw!`afNW@Wp+9R zDB34KJ-X8LR|a&^hY}BHuOaKicetUP>Kx9P@<+1Wj-aW!w0f8b>knI_N|H?nSH9jNBt8p4$)K zj*AaI>M0+mN%=hB%or(vX~0o_$4bSlcIFMBtIQSAwJBp9^UICr-~IioLbCu?-l`qP zU;&SN$~O=upDogLk7Ka%#%lb$NlrXPHr3n=IL!K7S+B%|2aRtV@uoHwKTS{4jo7^uB(p|!NN@C=34K}a- zDU^gdVF%iBpDA^;JVHJ%#K9BS!&7WT?T@c|5N2jUSL(~BOwgVs5DyS`FcEZdEC2dO zRk`(ClQvt%O-_`)=Uu$1r?4(ij*Thn!u3(FBT-K!nEt8|CQ43}bmsa@jmU`rA%~iP zzrv2Tx-L{smT}BeauJd`Pkz6+se)kP{cshcSHvK&^>UbMZNSQd(eG)|AHd+< z?_qCxF`O5Pyy%H2-)c^hQBC1h2Ja~;H+z^!gyb9n zSxEl9^PVL|wADUpZY&h!J2|kVwjwI7rk z2$Dyn&ku3TlNz_{m*KSsiz)o=DCGQ%QPN|%5i9@knb&thTP+#q7&bqf70(aQ=>_$* zaP)4O5DqV1^J$mvMYF-E^rjn9spF=oEL-q)j#E#fEHMwB6FIF#O_x`JB~=(@%rRJS zpVAt1PFymxh#m2l$*LT-rD&p3?q%nsh>&(F^8isRDNv7LjG literal 28992 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml index 1a4bfc9386..c4a603d4cc 100644 --- a/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ b/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -1,6 +1,5 @@ - + - \ No newline at end of file diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml index 4ae7d12378..c4a603d4cc 100644 --- a/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ b/apps/tlon-mobile/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-hdpi/ic_launcher.webp index 3bf1858e283bc367fee4cb90b9f12b40ae3a4047..3bdb07fcfd845533152312ffa127d95d87730e31 100644 GIT binary patch literal 544 zcmV+*0^j{oNk&E(0ssJ4MM6+kP&iBs0ssInN5Byfbx5+dJ&~#(cXt^%TW}cqkP(MD zy$hDWB6J1r?ruY_ySr88S`sRMW3xY9nSC<4CD?!7}|jt0wIW?d-45K*cl=ew!42Yqe-Yggi6=S(cfF&{iM7f-r4?d zTZc+_1PO618JL3Qf!^5b!rN?ren3QX10rjQtY82xJ1};>?~lC>^o*{}%Fg#8D9u6# iW?>HIl@|#?yEq2{NrM;)P=T8AEEIgYR1t*e78L=VBK%hX literal 752 zcmV!ZF!TQ%FJY|cmt9-mDTlKA-0M^F@s7v z0}X)V^gZXhAh?mFNOFv7dAE+?32y3LC99NH@)|0+vs9t8M_e!Ol#j{>k~tT@$7EQ^^?yPRHLp@B-S9?CMv0Z;81iznwzLvt1G~1A zBJ%bWGBwD1&VnT@yuF274a(o=!PXF7+(DV*_k}$#@6-IcwCDN5#7I&}*@Clp_Mk<= zII!m4toM1VrEy@N?YE2H3FXoC-mCV=KQl2Jmr5z{XEU{Fk)eF1#=*&vel<5RqdV-^ z24t$uevENooeM02IiO3-JGIEBaEuDfEJH~3(QZ#lLxiHSgK3RVsaOQlJ_4gAthj^c$*Ul8`Ii}3aWs*pVXVPV3OeOrd zu;hGlq5!3Qf&mYo!JCSUS5qB@s+};vIL@;mk;a*0M-P^^JN~MxP0h6Dd^pk6^cb`O7H#;gAaaj1ZS4J*%n{~9(**$C%c2*GI;6bp2@|F>ox1~!#YQ@6SU zreL|VarWiv>!s$E7F}+UC-NRI;Jxbli+-2u*YnIV%oIGl;-{{-0o^njrT z)TG#U81G2Y!%3xZIqBagJWiezbDZX+XdQ0g2WWHyf7p_O^ks!&^#wY+yF8SO=o>ht zIMv&eBDVY}#ioOwf(r_TDU08f!Y3G|8YKv%a5=f(qpJNb+E&dXd=I2|VUw`)msf;3 z=NLuj{=VgfDAY3w|EWY#Qr{#-;etY8^rxI2PCZiWaN3rlmcY%zHHE?~E>V|4>)SnU e`!f}IJo+FDjJbP~=+}75f zHeaYq7H}J8rphCPv7{C&&J12e8X`1^DGat#OA`Rg|I7c+PH}|n8c0UPiik1rP=}@@f7JaYEb(D4&++sbb-epT|f5pgd6q01}3uXIT`{!^armHUtbG z>-TV(;Uc#Y!RIbL=sENrt~sus0Ga^C6Jr3aYvE;O&zLamt-P1H@3WYakgBhvom}|7Rzte|lN~ diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp index f2667dee87fb3aa442aaee73feda3e917b1e5c11..6b6aba3e4a68015ca038b83e5f37a00a387f4011 100644 GIT binary patch literal 1698 zcmV;T23`45Nk&GR1^@t8MM6+kP&iDD1^@srN5Byfwb0`K+l(Zg)zjcN=rR5tsUNd!+qP}n zwq0GYZQJTXY}=`K?^_c<|C&)ny_f+_bYeJ0maDOop%@gc7N9{y=)+;S8*kt*Ovf^< zUTe-5v@*XO<$#wM4@$%#Yg(q1YS7U$eyrM(&;G;`n(cEl_tEGgN7 zvBO$cXD33_G&CqR##6##i#jZuTE>FnnuI2anTSLPwrs+JiF3#?#i7*bP?E5P6P2QV zJUJ$~)Y%c6SO~UsqB@&~btN||)CirvN+cFfRBQJ49;##~UMgX+XyxTq4g3nzjRH^|L^Dvb-5WgOcl4x7s#k0I330-C&BLrAs{$L)Nx0TeXS zDpAK%C4`+49`+ivAdNouib9ssPH|XYd{ZP9)5Z|o3ozs(W7C&%5E0$z6~!DI z+lXF+dy)nB8Y~%#!}^jlW73|A64lvkh$S{8i{_e}+oU}jCmLAV_VU8!hMPO5-5>u? za6^~0TVql+9GkWabsWe(=vT`c$feaX=YX|p@p zQ`t8yhsOMHRK`$m8iY>%$wJsG(fIuzI8h}c2(G(jJHb~EAs96xf`DHSDw|2s&TFUp zQ3r(xj8`Wpwv_;x#9gzi&+0@3+P?Aa1uUhV{BUH^wyjl>h!Sv(f5Af7DG_}69^CI3 zL_`6Ee6pE+vxcxRhN?A_G}*$_dm-dYGpz{bUhUdSSW1(2;e8BMdd%^W(Pdk71+$n& z&jx_^j~kN2q&@i*Lq#@6iZ0%L0N$yT5q0eW_6%Ed-NfVT(Zc&$JC>PgCOdsX98jAZHy%X9cgv(?(1#>#o)6# zIQALXT%%&0YnT-S`|~x1`aJ`MS|%Zp5j8sw1INXN5xO`CB3?S$h9-0xsBO%KWZsh3 zY2gqyqBnEtU|Q(eg5JzQZ6HHl6BBvp3`Cp~Ool;S&jCr_zw1I;nJk>wtl+&*kX((7 z(G2j+*JW5bJ63bl4;l0H@QySo+ap83f6#>SHK7pJO2WTu_nK0hLD}!;gqSOqH^?xt zQWB1q=dXd-{hW~r(avs2xM@?J4EqFD$vfd_dBwKr+j$}~6SVa`kaY3NQPmR7%3CAv zY5ZMt&YHqHUeL%~wV4kR_n-VrMhBV{(h5Fx@?FLr)28JWC}yjzybwRM*9Y$>fb|FFoD=ZDGy8A42g6Pd%5#=&kEo7lc zXuZjpH(u70B9uZ%v;2H0sOPm;8;^z7)zv~G$}t#g`XCNEoU-i0Z*{VR5Tz7C3Ok!V zUx=QtR44yCWkuvnt5WVkT`go0KO{ltqZYn=|F5D+qzFSzNFjufDe3#Z@A^re!!X5U z{wkV&#G-1Uyjn;^mIQq*=R%PM=&;S_e7H1lWPdv6OAK~gp8 z2F0@7>p7P9LoBp`PKyjWZRNukUVrq}pI=gj6^tpbtDaFCUhr#5`He@9TsUoI6*|Wd zx4eHn2k4+!8nnd&*Y_;qhZsnPw$O35ZnO1TWYD^!Hys!KU!ARIkMbZnC_5o&WPP<< sz;aGHyB_-Kz~^6RuSbG0N0`@UH||9 literal 1928 zcmV;32Y2{VNk&G12LJ$9MM6+kP&iC<2LJ#sN5ByfwNTi$J#AZkhnblfyTi=P%*@Qp z%*@Qp%*@P8W9pc+7H5^mwr$(C zZQC|~!M1Jd7uvSnlM!(oNRrexGj|9bhEj6+0(zB-fEqS~0JCU7O=?NxC?gqUg-TRG zOX{XIX(QUApqg6PgAt945RpcWVVT{T8|hz}_)K29JY8KZrSpRHujb6ImIM*0B}EcZ zfk^A5S2R4&WT){BxcYu$!?W~?35Y=?>=o2Nr2R6NGX=h{3`JyYNTMP`n?^w~j`K?S zWjPVCLQOGML}O^fhYY?!F*cNPG>VH#`3)b8p@;&Cl?u{k4G+v-oL8)Qejy(#y-uU0n=P18IOH`DTia(aFDuvEq#J()l?fa1X)l@s!lyHz1sdP}{6@ zn>{=!osZl7aTs=ro;w{%)WlTNbcG^{z);7pe2dL*2wbaL*ypz}qT-iUNKHQEo}VcD zx^fIRGe0vj1Kw<&5443eOS1NHnFqCS^xzCc6HINjU-1F&&W~ar=!_o2uVZ*6Y9M*9 zh-6cKOS1r)1Ib)9U8=sH%N0&-WbZTtqLpL}WKuT$atoS4OelSv#-LJc-LITGQ zA#_M->q;5wbi08OQ|n)gSk zPgR%&49ybCZm+?x2B^TVBU&bbC=P6`y ztw-{~1pLH8jBxNS74k{(E*r86j4QJYQ^BDfS0=~U_AV*75LwTUhs%-KB*SkI9FTG} zgJ2xUf9ww%?YZ(m25I}j6q+R8Q0MP^<^UA|m~}twlNmD4$r>;@*P|%{@{vRJ6pWgMi4c4oXpxb7`sEzk6wQU^_SeOl3yJ@n zaagEV!mJUK0BQ{XDRr4$LW6(*K_Cc_n&9nsE9>Zd|FB3+^YZ~*e;-s?A(k=w`7nm} zPEW8tAHaHZg3{pp`iX@YfU$p*(HZ8%IL=NJOQ|WpN7nYO6YHPKCl&;2 zUswaN)rn)Fjioj6{d)+RTf_)_Uu}+cW$)Rh3&M7`Hi#O*(|f`9qZ85G1?N8PM&(E= zY#9rKRadHK-d0^p_CH|HyCCxKjaZX0N701!eDt8u$ow9NZkpIe&~>&b84TpSnc%aH zAmT}GsN3~ZtjTPF@i#x9-brq7FnnTx|JGS`no!~(rVR#g@uHUdoXC2p2kQU+ zOhdC-eqnwDFdsz*-ERBnbrXVv!}Dg#egg-Wn2Xqpqqzy+^Y6eyTayiF6kkWH(L4Z{YYf9S(l0ZS#uuj6))a@X#5kdzu%yfY`tf&3}AXPog8* zkl1Y>eu5So_{+%mQVYThb?F)(v#()pb%{gCB?b9w!U8=e9qmLXkM=>GLnibsQJNIH zMb)`@H zA?zj*!PqdIyJ%&P;+WWiA}kR)mz=XEw_YRxhdYxkqR{NX$$un_fhbLhpf#xDmxR5h zHT!0|jcp>(WY%7vz8{Q%Zfn{r6B9L<4?fP?yFGB9h~+JV&;U9mD9cIU4FX~)$ z_gUyv8DB>95^MMts|T$&8}t6lexxwaWvkmKwl!25{dniqremRX)%TW&2-ezBXbc@r zUiRs?S`{fn>9W;v`ovaEMyh3U`IHsVA-{IC3J&jr@Rz6q&7t#=3*WfkIcq2>6oJT4 zldUN=snx1u7%P=x7#(liKVnfew?rMYDnu~X2`pAG2OVmL-FE1scmJjiWH|Ncu>bZ6 zZ6g`Pe`z1Tz3mW|p?P(k0GQwqX43}#PIaIWw1G}b3_5k?gBRX;^xdC7W4dMZ%&#r3 z^vv&`@mEaayN@2daO%n`be;^2n>O%+i9!WqY4?WVc4!DKpe=NqrrR{VmKe1D=*`EK z+p5#_43kOFLbm5iV4!%D8rKH?^&%_Ro~JI^Wh zJ(WS8DGYv%t75KN6pFJV)pS$!E-?63CYred literal 526 zcmV+p0`dJ)Nk&En0ssJ4MM6+kP&iEa0RR9mFTe{BRmj=4&5*2beH_|OH$8TAVk5GD zf|X8sQX9X(Mr_+wq0d!8W2$NqfA3cjkR#hxt$cU?xVsYtOka9v1};%K_x&MqswaTE zN>_H3;8M+%5=WR)g~aT}ZpAGJ7BIU~Nn+Rff0n)4ui%`WxfT^%smxqttQfytQ?baE z`R9~*x6F?X6Mb+SyP;GFrMpFN<0s}x<{(ch6AKCGZqB>RuL zIY#ccnyu>J<_hs+q?9Dp5T65llcX+{M28e^<)w!&ED_OR`Pssg(TVKjrMDn=w3`6H zc>NW$8f^lAvECmc2mAXS$>GDYYkPlFBnOX+T$xWT z{rNQ1j}8@qb*LZf!`I#oK3~bPD^cVA&0m(Jz>@yB`9Muq;vyb%7 diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp index bbcc495eb46f27ef8b3230097cf3215a76e5152d..28f889dfa83e4660657b3803220b0e149d8b703c 100644 GIT binary patch literal 222 zcmV<403rWUNk&H200012MM6+kP&iD<0000lYrq;1HNdU4y-g<401V&-V1%R**eFAb z4;dE7OXL=2ptXB4sPcOb;v@e-Uqt^W!2Is4DE*bkt)z9VI5aqx(9?2Bs0dw|gtRvN z<3LxNE(yFEqn!{G>M*)gBy8*~*ibQuRU-@98xqO_4IU&UIVez@gtRv4H$_RJMdHlp zj1L8E#*Z87uKB?h@k1P?EwGD0@m+wl;6Xx?gKxizHWd^XgrpVEiv}OXc-yT{s#Qz;qXZj`p{^e#MY}!vDMhHZDq7YOQ9KzJZ^kU}O z#4Cgtx4_~MK;w&QiDAef5!HMeM0Of*gveZ_y5s@a4cGzj)TNS}Lh4Ow8y(aGYM|Rl z?IR6gB%`7U5g9dxFf}pVDw+XJJbRA&fIG(_+|EyMxCs>kH9;X5h%)WRh!NsXV;o*o AVgLXD diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp index d778996a6dd23d5640e4d0abfcf5d491696b60bd..e79652444ba7c0b5b734818312f5ae0fd4c14732 100644 GIT binary patch literal 1128 zcmV-u1eg0#Nk&Fs1ONb6MM6+kP&iCe1ONapFTe{B)lk;9ZEfTHQ`~jMXTS`5W@bE% zVO*7&nVFfHnVFdzCR@_Kuw=>Z3A|y|a_B8;NNv>0iDONAUGku=I1zGgYdbb)UX5+r zQ`zWj+nzY-Z2kb-scmcAf2w0UdEVzt0Dk6Dk*bb#kv=l8=bwU3>|`RAIsln0hvgCN zv1(J_YM)2i!trAJ-vHd$GHC$PQ}%0jwC@@!=?;~45$~qD4^v*#Fk4!K`{*nP!4-R#0*9O>yD1XF>;}<@uG+sjWjb!)q1!F z(m*0l6Dk481fTN>*8YG38F($?%Oco1F_4_4@}Fe!61HUvtlg70A!)OEUZ{vuTqGvF z$S1k@KY`UVA?dd!_;Mv&01l*k(n3X$WY3^wlOV~ZUbXcuZ^S^1`hHI}nGI}h;iFNw z0MLAgc6QkO_P$U7;JYN{JEQD~Bz51P$bbV>k9w+Pc2JY^-i&rq<*Dr+*T<6wgGpb?1&gjlzGJ0!r2YV5x z?#5jhc;7pY_5*GTNW3xnlr8Dk-GwRWt;Kb$M8EE2jB4Iq91GkTn*3zcGiX`fsP^*> zsle6YRvgcI=x)lbSa3-OaCUI>TXUOm6W5@7BWKWWs`}k&3BVEFjW%=r6EN&I_pRfo zU_iK3J-5KT5kH$1?!egBr?aT@^$WsqAe7fuQk8yo`2RO^-v*&Lz@?dquT)JFE3*m) zt79SvtG*pufY~Y_JimKL+r(BJfZiHRW?_0Z-+dx{07!N0u~nVEpWZJ8y|uWGk+c*k zWfM1V7?V2SV4J8aD;1FqOTEu*o5vys;0o7=HYU-epEZ> zxQI-O@Tb3X+H)@$(07IJU3>bZ44BcN(!h-e%2J1+bC4#&pT5|FG=oe8y?qZ~$+tR2 zh)W{w`Kx`BVe5v&zNfB>_|g)jE47?Rc>Gc$p{+=3ez(KILsvv%?qMD2kLN_}jR&g! zuwwsi?svPwAO2i(a40tpv++jG`N`dHFP6QE9jG!LKd>ua`K`r?z4`gqX)rI9>zsw3 zNV|IH$JPSFFbWK#Fl1rm%3UJeZ+C=~r7svc5xQ39g&SXe^8J@`5*05D!_ec>CVu$x z+LOw^i*hd*u-cg~+(d{-IkfiDEstG!YxXnSx37Qt(EZovwzp?Xt!0r~8J<5|MFwN3 u3qyEUh6dKl-mZM#iuv~PfuYLpB{xQC$nwa z%544s+b6cIbOHhsN`i)Adp^(c;|N z+Z3K-0-e}P*g;R>cP69m$FVFV$^LgA6cNoY4L&z$GVMaPk>G!l(~=B-`L>E^N_lJf zu$JhTg6g~GoXGo}fx^Q)NptqSf1?xvdNMg4qJ5t-8%9xeC1e#v2Te`()s!O+Ff8<0r|}x zXB8l4F(LlfXFk(V4eVHG&LzGqDW01YIS?&IXV>lEo593NUq4ck4g**tp zRzyT(A@cQc!~X*=)5|U2f z^%(2$2>)D#GBZh2x_tvhUme{0*GaEa80#3f=kMo-pePyBI!}#&oX4gwYc3&>z7x36 zr%`k}#`l*tKQa??PL23l>3qk(j(}vS{%qI!_7OrP9J;_I>@&L&=+oU$1Ib@U7znhS zZy*w~j;VWR(}JhFzLuyH;<=%BRA%?rg-^$hsVkD#Tc^=MG-N{MO(Q?pI_c_?`pq4? z-t7L!{Vg5K>!(~DziA{?K_*1cH&4rKe=cAkp$|n+eM0w32VXVBnO?{D4-^(9Wfa9E Wy&~f4hytP^7UIWqUl5vp^NkQ3urIj) diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher.webp index 54c42abd5e286c1f2438b4f5fe7da10a1859b7fb..dd9aa9cdeaa6a3b77321374f93620eb96c6b1c36 100644 GIT binary patch literal 754 zcmVPxPZLv}apB-J(T`##|gld*}_NBV_34 zH<3O?6CNs5qTlMsFYOQcD?!V5B6p|C5zvT7>NchQCjSX3y5x6~hdW&MWs+l^_Lq>P zZ@)Yrl81of?Pl_p(EiE7rQW>T*uw$g**@|`Chxv3A4g~m(cylny#2Cd0+BJqy9cH6 z_Urs9#J`9oi!-N2m=p(e(Mn5ZY;BBJL^&W6Fl!?rVkGMVOq<{;G2&V=k9~q5E&cA2 zq%-rRbCDSKMeVh~+DvY2>D17i%Q``XAgLa^i}9Y284@s+bkA#dv3^2`p;@nr3K%Qe zZMzJZYKiKg0@h|;6C+Vuz`TT!&uX%n&k!T7B@>DUX`XbL$~vnA=`68b228blR@2X*)=YGg z7@9HImNHPAfjk}&!+xca1Ps}obWL$A>GYPUE0#Q#Ng;?Ga@7fG-;g5JT_?F|pZAe% zo#CeGJ(7YDMcCf~-hSb-cStI4zb>5Sv8hLUCzBWNXN~fxQ=WLC)BeiBcW&R-uC)*v zLWIJbyQ%cw+J8Bu{`bT7?WxHL0%OQ)JNEQ3h5noT(f+0W6W-PS_}=xWji-=5AT@@t zeI9B@tloV389_-<7jpI4@Xeq_K0;#(Nu@Hh)t}$CfBoU{$LHUkfAxe8yeFUh%?EWC z&{m-w2?CA?ky*LM#Xzyywu`;idaMerykc`0aBT}A4}}O>g)8zjp&i}m5#C07P`CnF k4g$U&Qskl-<)}cV;FgPG&_x{IKC4@$j97#FLpWGq2_dl*G;nudTTG{)4clRGE?oLb%&<;g-0SrPi zIv{d)cX#==*8u>)KfnM4EC2xl2JiwdfPfVsU{$NYA0VItd;#Bp00C-a)Y=$mV_@I= z0Z0Wv;2(GazJX2^DgXg>pbiKq1OLD?AoUl>0gnGu1t36x00Doh^MC#qfOjq|sA^-(?t3SaEGF>)nKs7c z+ z*&Azd-}^E59@zJKt2OHCI_E(}wU~Qn`( zB*Ek7XMEpl=HBz?_j~U2dM)=k?MdjMc5Ry?IqA3uU&qIA)_OMXZun+#hqxy=#67dP zJA~lw@ax*Ds|)=!RnOCJNA!OJy#HBuv>Px_gLFnDm9=@U^@8)x&$!K-&b29`Yx%i! z*`=3Qdy!Rtv9*>~EUi*nTUeBSZgK5O+PrfwFITE2wAcOW+7z_ARoB|9dap2G;p~dd z9##BO?x|Icm|wZ{0R7QqNp4F@CgzC z0j(?u0wjWTWmSGZgCIdtFA@MjFgUHE3eyk*hU)~91V9jJ_|q5;Xvc)9fsw`vg}Fcy z3_Yb!Gf96s(IB7I=eZ;{B?Lf{tKZheuF)&@$}M|hKK05^agaM3bL&b!GYOYH-xXzZ z`l)I(|B;Q+L*&*UqijwNZH$&?W>&uN%@5HZ-NTJPME$UlHvb{|8(Eo^-4}Mo-IYW- z!ie(rm8!h2t}(<5r$5y=7&@~7ABMsk{a1CQbOib@&jsQxSnN!IX`P1r=6cOqKN`N9^)j?&9qHYqTgfNBr zoTzZ^L@1#Ki%dge`XX{fAE{Hn;LsUeaJwYbN18_(!#c`PJu{g#)`0P1{?|2NJo!tw zP08ai<{4n{po%9JM`a(?yN)I6DBfT0&(7RHnBzkqk9snR+dJve`8{*v%*#ahf}SC6r?dz|;mhr-UCsR(3g$g%v+~?mC}!GGydx@zWgfVbjA2F@RVcJ M=rNgZ7V!RG3ghp0xc~qF diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp index 77f8893a0c61c28aee06340f176608faa8c85dc2..aca7b0d56e89ce31ec9a918c85072d3ad4c05aa0 100644 GIT binary patch literal 390 zcmV;10eSvXNk&F~0RRA3MM6+kP&iC+0RR9m*T6LpHNesKPjNE)Jn^IoE+yPS&)`nw zegHcGlxg7t=~JcDX%{M&Et#!wXa8mXOD6w{C$s;E{!c(){BNQOG&TM+K~S=wM;Q>q z83_qphK3zVINd_0-3}p!g5D&ONnZ~opz{sKz)cw(Vhr%>DV;wP8EJ$i=UCbXtsem>6N=6>kl%?a#% z@LJH=gMEQL?~&omLRZO7|T1V=x@t@g%@qfei0G$Q3lmGw# literal 346 zcmV-g0j2&@Nk&Fe0RRA3MM6+kP&iCR0RR9m*T6LpfZ(=`B#Hn3_RQ?Mv4;2Vihx_& z*0Sh*5fZs%(82e0fK~tvXzES_?(Xyd6^wiA85%NQ1LF}(-vof;|KtDT{~ORK(F(6< zNx;V7wuLoqxu?KvVNqLj2?DH2T*9)8)e?9Y{0^LT7waWFb@8->SQm*U$jzIWlP>`n zJUF&+bk6{`L{NT#q@W6(^PwszkmN@ZFfxgvV@Qz%tdAIF3=yzDgH6JQ0el9%C%l85 z>13R`eYYD~>L+d!Zl6%ex^eq%XVP?IaQK2zGqP()&0y3Q#}thIV3_L~P8jyjw1g&1 z3tS_Rf|^U1b}?N7?}GouCj8(r;qgIuIp+uf6h0F^DF6U2mxJ0EvnLq!#DeO==|1N1 s-@O8>E|yCWyAYN@ZJXF)O8{=$9=6p~G!KKOB>(^b diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp index d860b0020b86bbc40a204716cb643366b305013b..735bb49be6fec88bc5cb2a51a49092a21a55bf88 100644 GIT binary patch literal 2598 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 literal 2530 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 diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp index a265b5ab8d1d5ee86974d84d4f248cdcf47b0e54..806a8ac7a6877e2b496f421b7fda04854422def1 100644 GIT binary patch literal 514 zcmV+d0{#6`Nk&Hc0RRA3MM6+kP&iEO0RR9mL%~oGHOSSrNwJifMIv{1zlF_?;O-7< z^N_7X?52=G?(Q1v6~JA%tTpa4r;wI-buaYKl7jY&-@ow z-0__Y3Sus(JMJ`+9UK)2JN!tdj;tk)#Ep?@<47C{93NDM8y<-~%IV^GBs6qUC)G|} zERYJiC`bkKpZV`^4<)Hex@eTDK^ON1%7nYR!1-Yk4ZT3hfV*+s|Fr}2`C$LG>;7-_ zk~)~aU(01Js4uVj&^d(1kZ#gi`pJ6*02c9BNI!n^p6cUyGHsmqQYQiHcz}S;@;L9) zl1^px&W<>?^XkYs&UU)k7qLuuB`os2x>zFBQe70JDwzMcbns{o9j{u71@C$DO9Glg z#VTUGDpU-4#OeN^P?6Vm@p)bw1&e&>wmnRD42c3p-)sJ}sm30TWx4S>c_kr1$s2M9>ae}CF7kZOT0c1l&Ji{nxq*M%D;({QH?9E>@% z5m3(q1hjF8kB~C5me^l>i-0RUE)#HvLEMsQ1KE+`-gZ|ANY``N@P&X%;%(HyjMM?R z<8=!P9yeZ2>BrA!*A_hICqL7V>7@+?j|+Alcl6U%H`TNG&-`cpGymz#{BQm@{~N{u E0Nl3&VgLXD literal 514 zcmV+d0{#6`Nk&Hc0RRA3MM6+kP&iEP0RR9mL%~oGfY>&YBZ>LPedc@cg_^e=0p;4Z zMauhqGq}4$+BVa15=0J_)!~^-y6_nr`lmaJK`~+TmV^ZkSh3A7ok}Dya?(CdTTp8p(Pc zcqF_IN+inq@Bc&Wk=X077|B8%3L+_}Lxj&jzD3mmlm=1;`Xm~RV~|(~AjtO-#hY9d zbjnADMk7XN&A4J5!fWV88)gRbNgp70&w`-C9h z4IHGh$>iDz$swH9g&c+Gg42#kjj(uz;|xhhNnngY&n$hQ_TYi)j#38?v`?%<3iAY` zM;SeVDY*_EFc8#Uhuuha>u?asK^>Gxl(mAfM?!~$Ju-GJ+;DmzeTek|XSde^szCq% zLR}0w7X|=8)WUngG$l=}9Jg@Vom{a}%`z{>r@Q`J|E>Ri^}{3Kby$yNwGJ#2RtJe1 zh(@jh=n147^vT^$96Q_#0o--dqEPj42c42Jt2iYiZXF|m_5b>R{lETS|F8eo|Lgzn E=IrMD;s5{u diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp index 77260788a85140668252091b52e5a041d7447931..1e316d7ed6672bf19f647fe5b4ba1631a46b06ac 100644 GIT binary patch literal 3886 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 w+}h=eYEsW*pOBhb6q$ZvX%Q literal 5274 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 diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp index 076d9cfc2b097876c6bafd4ba78aaf608b57328d..7f2aa9199fe3f82f157f08ca45a5fc3f8629d772 100644 GIT binary patch literal 1484 zcmV;-1vC0mNk&G*1pok7MM6+kP&iDt1pojqzrZgLmC)L@&5$I$GqcsRw)f25BilOm znT;P{+qP}nX1lNT*fy#wD>B+06_xR=cOy}mSs9g?5pu3=J0$6ptJ=24p2pg?cjL{> z$oBpL<#x22*|rtg@t|}&VjD@3oSkE4zQ6u|o4CM5E)h`XRc{q8Cz^s z4&J4FzNh=D!h$T*nvdrP_+9>m_i&Ty+sWZ>6p#|L z^CDCBL&!W?xNMe><(McSCfCfRbsB_F*1U#j-{A0m207XNOZn|S6bPQI`6ZJ$ra=$p z+Dze-c@UZvIX;#ll@9l}q-7!Cxvm7E6>jB5MNwSQ#7w|y5M3mt<$^Wv*z8Pjy z#I`NEe%{dTUn0wJuL7lOpxs9k*Je!LqvN1lqDlev+hN?~lpTuH%^2(6$xts*Aym!; z(7zgPn-NidweFmnouf$s{Q%`?K|bqOGzqrv;`Xu8}u(>-2? z_&ex$oif+Ya*r}3fY9r$F@%BdC3`+1n8hRbB!UuOp&SENxy>47)5%UpkCa)1zblrLtSNP!O zWe9oS;R!0ZOh->b$NLTz-*Fw6BiKt62|8E}ak_o{w$NkI(h;w5Ky#=GlV;s+M z2o^p{k>D-pa~)+Efh$}PxYt6T&3K1}ET@7RZ?h=`zV5L$dvX93lxX^2clsX`n{X_Z zz3*l+`rM7hdyGb06MmY}|GMA5n*EXb+{G+*!il_DsP(;3Ckic8611>B;y!}$BkLf} z{{hBFRPepsW{CLS^wvy*F^_{0XFNu-HAH-GIw;YM*!R}cgZTuDAn4>swj&WLID$?X zfkkYD4z3rrP=bcv4VcU#82v3JO@vD8L4ONL#eO${{@j#G>7R`T79tz)nx&#onQ(eTDJ|#&R+gZXV?~sLea}A;dkarEl(~jCO zha^*Z@j{&DQXCYFUt8D>r|eSnzd7w(w;J*NLNY+eH}E2c()cGunCX%;Z=17t?JXJ* zTh9mCNB{}OjtS)NT{IPovO~^lCBEXaHR1M27?7lZzD9WMJeuA-GM{$H!gjP~PF?vL4Xtfv@HzLMM;R>})FTEjl)g<$S&AT1>o%jkP`+gC>+f3_&jPv$ zILc>JViA-0p65TDyS`9H`?}3YxdWEVnL`x0)mm5SDwGR@F4*+=rPn`y^uMLQ-EOlK zugz{TKmGsO=SMG}x1}(+P+p}gKn~FX^K#~(!H+odqnp<+qg<#KYAXyobit{MPG72e zr!DinEH6||5Qm7@p-Gz8+CYYmKpdj6sbjs$deuUucLf6Sqk3JVF^p>&WLZNShlQrgx036RVr&%<27oE7ssoVBed2MztJ}!_L4Yx@F9!@vM8dijwUoKU#*V13|T); zy#Yhw1PLk(_~Ql=NF$RepC2L7i0erRY0!|lVhG($5kL^3G>sK5O;fi9AG}%EzpCtv miToT&=y{pqd0uF8KZ4Lds<9x7d;*H1{zcWx5Rm?li!=aJwcpDC literal 4986 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 E0D7~jn*aa+ diff --git a/apps/tlon-mobile/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp b/apps/tlon-mobile/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp index fd59597c9db48728b2b9b744d0b6b45ba75b4d28..193f32caf6e1ca9df8b388ffd99a6dc3bfa9846e 100644 GIT binary patch literal 732 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 literal 8878 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 M35|28I!22B7uppQ;Q#;t diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/180.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/180.png deleted file mode 100644 index 54b81b6271e0acaf93fe7004dd8275725fe0d2d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2957 zcmdUxc{JPU8pnTR$TV%zEsV8j9b3@WHmx;;+S*uRNn>qMY0@&a3n|(WZBfObu|#Ms zwWSEPl`(_16YAI2E-788hJ+g7qUC1pU-!>@&OK+&nfIJ``Rn;U=RME!eLlBcvG#D7 z0t^5ExTAxuyZC1RwZE4ZpB6*X1^}?v!_n5-BhFt?GL1!^JMhfe&JNy(X;asUYg2bn z&n{T`+5BcinRVuugCkmuL%$o&N|Z_-zAe|~VGS?n!>Gb^_@S8rxgpIU+vlm-n;nfw zxz+@7<&LPRkP%Z!DY^A^>)QoPiaHVx1s(eiYVLRgOlvi5DZup6Pw)4ke@DB+fGGEO zee%h)l!r)Q;o)z$4FNdBQ5ygqQxAs%3eq|505cb+`4TYNr(OY|HD$2H5=1!%Cy8XN zPVp%Sc;enKl0b>ascX{A3#xy6U@aqXaqRQE=JTkPMel3gTPP(E_Jsyl{P-+O#Xb04 zy&9YC9h|vWiVgFFU5kutzQS#LWstwyRlhvb!&zEd%0VoSvkFSBl4Q>m{00aD-!_G$ z7h6&ZTU%QX>+AI(g=J~*@Iu{g>b3?Bhg+TPg|x>mGjw%zgSTYoNciuWe)+_!SM$Vb zoH9(>m7}-vJZ0k6m*`4X*L^Fisw%YTrWB>*;t36 zf%NqBrps?M==bm6V=x%HxW$e5;gNPIq1W@;ao;x8aaO=^pjX-Cd()OaC%FIlW6fwveG9(ej4D1#H0-RQu8Cr31FF0^Rx)8E}?oH%LOjWsZW0FnA zeqd%w!Hu9`%8ktq2-~HsO#oc2JC0V|t3X6BAyR)vLy4s}*QO<=@BzstvPPg18VZ|V zM1Yp5?^_}4#%|!ME|GaU8G#%eS7uUS{a2yHAZol6=dVn=Zpdg&5IQ7<(^8d@lJc(xaBzO8XzoR> zX0*0ZZo!j5vZqb5jiK~x!=>`K6~7w&O4%HxsJ75L8QYaeyzOJ<5kg&KPfq|PAt7X# zVNp&uJ2M~g<3kF4RHrKJjZ-m2w`JlF@;#!bYrQYBHm-c?+m@)di@NP4oau3C9GI}y zKQ4z)kLV!qJY0%#RoEAF!%$n7Y64oYe$vXSG)1)X4io?9d?vAd`o7{^R8WmiZ|kLO zij4U(pP!SReejh|^~tiB))s!1*Y1dOlHL;v$+y0=y`lJHWP{g-^SmsC#acr^Z7E5{ zqn^eO!&9HhzZU8wl3Iq3+24Jh{=@Mmg^3p5M%94>`nESoTar;yA}?6AmxX6_G|ai` zV6=HH($ACA~uox8H$ ze@@LSq2j0QvGWK~Qd}IKMx)t=p1;$iWEa!__1lYYm)CVJN2U1hoL>%PXUw@dQho%({hiZ z1p~Ae-=GTQ0tAZC^=!z3=P%p7KG}JfCxTr#9TT8^Mfk-{nX*uq{->4A{h_n-l;>_N z=vRrY{Q>5);W3PFCp}o+j{(YQu&(jqcP8jvdTZol(-;O3dl6!U-p!MYSHwWp0#dKd zsbrVE0LvU?-d8>zTSOYrF6~pM9Ibz3C11GjsfMeQX?7V(>kLf;lg4l$^IgOb)*ht6 z8s8w#QWUc?+k0mhhv!rYoT>!=-HDfXTt}QpCpZTwrtw?jW|*YSRl9W|uSmkLWQOos>KNNs@iCODubMVfDl2*UiZF zJcJ>seU#k8KPEqQ>UBIoxLLyr`K)*>OshN`#D~s1(L0W8>scU@u?L8saujd$Nw*)G zI7u@h?~y^X>?)Eip$L4su;ZE!OUBrr1R8$It zLgAp^sMWBKFeQvgyw~4vCod;=ueaCwRmd1OhZHYsk{T3A2C48i>xsuW z?Z3ykbjzK^rdWoQ{`Qo&{4V1mAs$J&$4&gof0?9P z9XIM5f-KF=buk!>f!O`G6?@&6_d?i5qT=(3VPP-xVV9b5=oCgtiJ!s3q1(J8?+H3c zP$v~u*Q`W=GB&>Wa>4#)e=z_-*P1w-T^!|$&2~6JKcZaBO}iRlaZd{+0l3OPhW7qP cKHc2^bI*gykKv}>V$22{?Xb2DHi0+(4G7#;8UO$Q diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/40.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/40.png deleted file mode 100644 index 53e167140bb0d9a47d96fe0f16d297b44d41873f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 650 zcmV;50(Jd~P)e&+lQ7XXKKc*zM}Szv{o*HUPN)zBC&KUEqtg(Fwi?5IVt+5HuQ%pzD5Drz05* z2Hb8pc6}B9c8Q4^t%uufXAOK($)MVzFSAks~Qf&}=s2a=D<{ zY$BV@{zQ}HJFQj=xm*r>4yl2%0!=0puGcFDg8`z^C=*KwUkRRLG#ViukAu(glE7ZC zheRTws=$7~k7P2bp1@cv#%PKWl-iSGt|x*-Z8#jNCy>e!i9{qTOG2JSiro_?7>~zn z+o)1vDn-3sht+Cjt`mmC;rQzwe@^b)@AnVm>E7vdLZMJVx7&S9;4?B>EiW4<77PY4 znM~mIdLN#xRx5<>tf!c0)YUE#UgAr+n>qk*>br=xm-r4(?Keg zVkV-XeM)rF=`<>p3Vc2v>veol$Kw&TS`G90{QZ5Znv4h^?D7L%f(7e1V7RT`DA1Or_%`%BSw%!?{+(ok)8#r z+6O5ab$zjuWICOKjN*2?AB?csY?whpq0mE#c@8?AsQIhXX5<7abt515ae>q_$kAer znw(37gz<5KnkT3Wq*F+W0(Y3^Kesgd!K(RBe$D?heb=Gy7_aERSpRXCL9dA5J4&ZC kr!G(_DXDQf!T+A%FMiY=AOE2{B>(^b07*qoM6N<$f=Ci1&j0`b diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/58.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/58.png deleted file mode 100644 index ea12cb15fe078f43b5eb6e973fa60c576c1fa8e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 955 zcmV;s14R6ZP)3TGb#;Y~j*eR5t5`dq&trCW7I$}d!ogN# zYzZgd;v3@q90>gvMw_BKMHkg!YlREI5~8yg$KSfNmG6li;UyKr(i z9Ci-q!NGy>s8jM~TbrAk8mO6!ZA-T$7$y1a?d^%I=cIHg(*}bBxGLR8}q$bEG85} zb=jyk(%fV+iOnr;E`^6Jxmf6T;G8h~j#MjrCo#mC^vBfCG z%HiQ578VvNVvD8t^74Y!)m6N|zvJoY38SN&lE9>@Cny2uSyWGfs@Qde~gXS(I(Wt^OxNMD2z9zfYNj_HcMV%W_BJ)(40L#SxGK<8D)k2_eJGU5yA(CWE@khX zogL9W#UYiV(#*@h$q58>e0&@a4-ZnHb=B)K2r4a?mzOv{KSytGZ`G{(@$rHA z`FZ$!K2c(-l_7djH}%r=^?QP?tSgf)+hz%?bVjlcNi$jxj4JLyX_{tK$xStmQN=wd zP1B4jxk)ox-A&wIs+Jc;XDdz9(p7TPKS;MF{=jbfBZ-zdWa5uv>PwsY*pTDi&iSNb z&X7*CYunP-OX)6J;%Hy$_Bxzko6$PNV!9;_w9y!o?N>7@^H8Hb*NiqAW3v5fMr9sq dwC63u=nrG*D=tAN76AYN002ovPDHLkV1h%>#JB(e diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/60.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/60.png deleted file mode 100644 index 5421dbb3582052378d6d49fb02aa5a666e9a8c53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 860 zcmV-i1Ec(jP)hc5FLvsRjXD-s25U1pG2R)%f3f_2z?JPeFFO=wIbdK;{Pv-)b=dQhs2m<ahfOxq- zjz{}y*fzrt4-fSH{p~*5-x;r&+ZJFjiztUeA&SLfu7X~zR z*p;RQfU?^X6dCq!qhZB{fA8A1gbB66BbiKI6dqtC8jT7?X4K938Whxez1HpeEIekj znR~)R%TO>Fq(~&9yYVB90TgLpuh$96OpitW4$7%ks|h6q;Ckr|pPS8w4u^w<_M~qj z)wJ{gKR!O{vWEpj_hRI7Ir{qg5~Xlj^9%}#3CanniUEDDt$WUb?RM)fU_C93?|6Y& z7_-)Hx9RQejh>#Kgfi0#6$XLkgC?|GE~(jUQl(P)=R@n)(^?v-naN}XYyEzoQ17R; z%%4%0`Fvj3jYcC;3P!`Vro}SOOiMEmD5BTbS1G`~UhkrU`;%=6lbUJiQ|1^jfEY1s zWXEi?U(adjQ--tItXS`GI6Py{s+|_FC$%)dVEZVS%VNDBA0LEmOt1S|v4fA(0D1Q2 zfzQ3HC@p|8vbzbuhV54J;!ObN&T4i8Va4ty085f+Xs!UOBOdd7lDc_dr3K-k&a}*f zd$onCVO7KCNo2c*eRpcV8O{XD2APkt`~eO mhP}XolWR~6I~iRs`2GRv^_DJZ8<08x0000VQRx^n%n9y(`MpVMI!P3$)p+D*Oj~@)XPd^K3 zWO;tear)$^TVsB|;7L%L=wLL{rMTEQD?9t_9!s%SxBWNt^z{pCYI6Q;N)Gxzhhd9< zXul=cE3$lSp5Ef=hCI5DKC;N zyBVK7efse2TV7^n=7`u>(+?J6N8Ri>a|;Rtva_>~`S*FwGH$4?t&NC}KmPl-by0D# zs$J^YYrn4Dzu({6%gZV;WeXFJm(JT7))fq`EG^Gg9oWH~l5xO5?bL3A!xC*V6K}Wf z-o1O{)~&7AuU|h@}mx;GN zf8Naa=(!z>YsTcslW*L=Uq0#B%%+p!<)7*ntSu0TsjS?o&j0%hXMRo&&*jUP-A=}B zb(x)h{>+(#!a_lRfB$30&KK?5yZ7(8%YWy*x8$78P-*O$=P9AAtgL4KS9kih1 zGqAFHm0tIMuJXr^%cZTt6S8bCc-X8}%b5S?^l5HBe*WGji)&Y}ww^tEwrA%S)*H8P zch8+GTb!%4W9wE?R#w)uy8Uxxs$VXq3g1<2j!9nB?C#yz zEnBz#3`B&+OV*aa#4ya>gP~b2GE1{dZcMbCmA1O6Jd-H}6;6 zp^d>04j*P-wR$!0frSedb@cUrcQLoOw{P6EDTyI2Hg@5XB~S8o6aOtN-k!#GuplKr zpFcP_c*W|~zvcdG>TNU=7Z;x~cdo0udpl?Sn;qdg!qTi&z9!MflQ}0$_UgU(=YV&w zY4a7iWX=ox2I0>&927la>BxaqLq)+PoE3Wp>M?exJ!$jg^40S)GJB*K%in4ViC;Cd z?$uL7ZKP-==TW$L`^fCg=5C%_IKbLh*2~7Ydng#g) diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/87.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/87.png deleted file mode 100644 index 148cecadd5f67aa90d8b41c50b833b7bce97622a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1366 zcmeAS@N?(olHy`uVBq!ia0vp^;ULVx1|$nl+{|HMV3qZBaSW-5dppNlqcm3H`25F0 zr+g+hPV5x%+^NdU%v_$T=5;2(EpO)O)FlSWu4$+49yq{~s4&sU&`7{g`N_B1|6l7) zSKGaR{buX;NdLFRHmkp-%-=fi^PBs>-v5t$y>UB(VC|o3k7NY_fgL;{|G6~_e%_dL zKy*hBi-dD`5v!gue%uo;$8+-A}6_L4f z=B%*EsuG$76Q93&rFHe{)t}OOlUkUR zc=g^{bR4=4^z(k+qq}rDVj6#YI^3Rqqp5fP2Yo{&u61j~Byt_E?c^!=dM+(5uW#1u z*)MkJ$f%2<>|@!_RX7$HWr6C zhHBaN&LcNAZ88En`tx%uanDz)f+{O5OUuiHqoQU7y848l4GIdK#T8yvO7OyB;%GS{on4YeF_S`w4 zykdRbIeYg1w#%N~k+5UO+Ph-*TSOm-&7CnLU;_hh+`rh%^Zot&g2KbEFQ24sQuV4Q4 zYpE#rfxy|VM_>G?XI>auUtH|W&dxr+a@LJb&WO^x8`LkKTlg!p!PC=o%Z3dOI}*%u z3koK*wY6Ol5DC~2SElvv#reRqhqg)QCL}yC?tA$?S!wpHSuZ|*ym({1Z&Gyg>gh?f zwY4TTHfuyuK0TLZXu2*ZFCSc2x9^nXhC5o~lN-xQN?a-{D^FGXdd&;aDtiC^{ql(u z1?%;XE?98tlvk;D+b3_^&r!9%fB$YtjoDEk$Ug1KlB&OdqgZCoo_#UA=!(FD>Z3=G zCLVU3bLfy$@(#h!=z{1XksWOB)@uKVdnhL-r}gxZ--qNKTedt|VP|W|%gcLe@xzY+ zd5(^ak8iBsCNfpkotMMgP-mfmr>LkX3xCNc-@leNb=le8U)^OYwqL#>&nVtquJP{E zr%9VOZ+`jkVPjQQRYpk(FeWeFzU`fyoct=XbMt27QzuRYls9Fw3mr1ea->i_IZaR8np}RZDn7SwI4fiR%46C zb&ko~{g|#xn=cMzB7!Z*8b0s*U)$x^=0#8Ve&OGqz%>V_nrlctJhgj&Pk~_6y{P~8 z3EA5g94@kXp7mw3e408i?;k#Dda9o5r|D&#g2N(#S9rvC^aN`bkXFQ?mO%fRoqC_y V+FrVL8dzR3c)I$ztaD0e0styJmgxWh diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Contents.json b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Contents.json index d8507e5d58..b3f44eb295 100644 --- a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Contents.json +++ b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Contents.json @@ -1,57 +1,9 @@ { "images" : [ { - "filename" : "40.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "60.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "20x20" - }, - { - "filename" : "58.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "87.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "29x29" - }, - { - "filename" : "80.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "120.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "40x40" - }, - { - "filename" : "120.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "60x60" - }, - { - "filename" : "180.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "60x60" - }, - { - "filename" : "Icon-App-iTunes.png", - "idiom" : "ios-marketing", - "scale" : "1x", + "filename" : "Icon.png", + "idiom" : "universal", + "platform" : "ios", "size" : "1024x1024" } ], diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Icon-App-iTunes.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Icon-App-iTunes.png deleted file mode 100644 index f249c3e6860d432d662ca3f983b642b39eb2e3be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10152 zcmeHMX;f25w>>ur0R#k85K#fO1r^ZPHliQ~XKe@O$uTr4HV6TcdB{~%RB)sj6d?@# zzy<*YK?aeijX;A84G|ekq9|aHL1r++tBZfW_tttp-uJ8DdSor?a;t9LsybEY?0xpV zVtHVf(k#tc0HCyI_jYRl3i_76%~mGM=5Cn0 zN5~H=t-a?utentxeD37+@UpF!x0lLxS=D#Hty<)?1J#OJT})Mu40kUs@8d~uEteMt8)~Y_bgGI;W3~V@8MOqrmbx&c|&4KG`GDifTE!Z zp2B@bw!4HWV_j!B-{fiWq)P)U@}0Y0Eb$L!DfR@v7r7`7E++ZK4CgMZ>(ji*KBq61 zeZGXe9$@+BJ=?d~24H>f==OF_ZIxg5J9J-Mc4`q8e`n>L1tugf3ge{i@ffF*iSo-V z^ZMm#YdNaP%T#s=dVL)DVOb@mKb!Zn%UJCCgZ@@!_PLoKy*7R;Wrx=N?B3^2Mw@(T zERNW6MGI5_4kY42Q6WkloG1Y!4hG2S5T!X_#DyeBlq%*#In#x(!i>d`5oQhyaTI3! z1sP!`Tp%O-v!bP>4Lncz`uYxG(A7CKbY=)ElE+}eMp=9F>4ggydW43C4&|$h+}+)k z!12KiZTf-D-QC@NO&J!^?2L>ICBcmcA>TqgKx(ZZN=!^FEGQTqkfB3E#NFBVRlLrg z{pkv(CI{&hV5Is@9eWzEc2XXq-VY8A^4B6u;9lwypgp@w*|1?lJO$H<14uCtVLBEU z@z<~S?;`8`)&g7OO`4=bpKAQhocZOeGB^vjJexm%esnNaKY4DGF6itwYaV!=V4U

sZlRc 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 Wnh)(3Jx2)B?AdW(d(KwI`Tqn$?}0-A diff --git a/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Icon.png b/apps/tlon-mobile/ios/Landscape/Images-preview.xcassets/AppIcon.appiconset/Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2773759206f73e82e707994a04665b87311528db GIT binary patch literal 9989 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 h@b7k#{_jAEv*|XSOZP9N>h3by$OWg1p)y= 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 diff --git a/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon.png b/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0d7bf11ebff2b9636d3c671e623269a5e933eb35 GIT binary patch literal 9879 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 Y3f2dzyo?V;9>f;V!Oqb(--ZMF~=Kufz literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_120x120.png b/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_120x120.png deleted file mode 100644 index 1eafe686b9e75be20169694fc20a68653d1d4c74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6666 zcmY*-2RK|^*Y?clJxWA3dT%45cfshb^45ZuPl0tNS!l|ME1i>q$T~|k{Y>Z>`2osbD*Yz_FD=Hdsv+##V(zp_S|7valTkP&CrymrlMrm2 zm7uFH@$&Hko+j3Mf(ao0VHGGjWnJ&lL_VAX;(@QYiT>cV^^&aWa>&JH?>@%GeN1R> zP6EpwwZsj=Gk>gAdCS;?s3<{*Sc9y{z1eW{wr6u#QTgO zpOm8-wy_<$h};mqYrF?Mj%^0GiX(ql!_E|HudNN>y~Fqb93TY%>ka|$E&z}Yfb$Oq z05pK~|Hb-1?teLV>loz#!2XwGey9Hq^*g!q{#S$YK>ua<=3)I0{!4v-uh!~L5xA?H zc>w@Klz#;X$jG9(i(uwpXzFdMttDma<{}73xY^hV`ntIP^#aKFO5H&hJ8wAH*Tvb@ zOUhT4^&f`R9sX+;Vg>(0@ph7BHPzMwE4z8xfgcG93ktK!5rV;B8Bc`0l)j4UzwUQW zvaCpNZ+9snAruNFh!Pca^L!>GA}J{;Bn%OPKm_g>0$zTu-f&+5S1-2z1o{7QRP4NL zJssS=9o$^Of8)Y!+@5>Ovas_gGgfc?^ZJQh+t>p?H06?t| zRZ%qb1ukT1Cpq^`s&wLIu#I9g`GSF?w6y?uKjC|v_aK2_4(m$bnmJHj8V${`&3ngQ zH13wYX|R}hYHT77`NHRk_PrYj#8P$jjbGcvY3J?r=5)pF)w=xcsjnChwF;4C`oJTL zDY|-=u&*6z7i%bz=hWZ1=`R`_?f4xg>a6ui&s1%&JYV6?#=A_`^;f*Ki+m}YH7fC$ z`)T%NxZ3P~4_7{8tK(pjqnT|AkUy|7*43e#8@w{hGAkelYK>HusnmyHHteunAT4Nf zs1sH%x!O6g`e&f+p4%tTQ<5&Hl$sy&87O1*t}Rttn}|L_T$KFEu@ul z$M%cn;LG)3F~zkR$XIFDqVNWX72t=cmT`&8<@=`nDj>6D*UnyFDVU3H2+<^0BSG zScW;#Pn`rovR$+i!q{Wv1tF_&1VKbazH#Uyas$^_9~SuWRLUd(#az+-&b4yEJF&RG zdjUjJD%r5$(K%9b__mOJ;LH7b*%LV&X{oO+wvKS~$6#2=@$8GvA| z(LXBk7OoKOI>a^R(eZQlwJVIhs>pqL0fnKA$b(^kZ1uSE$~M zgZ=l<#iW29K9!}rD`7PXvZHIq`$H=$Q{IFeH{^)8%26IaKg6${`?$H&`F+bqeumYV zoV-{s@`-yAo#Ah%Pfi4#sgI4z)g94q^2T#2=|VDK%m`@JtUar;gOI|*m9NyTTI$Cc zKf?&jgl+0zZy`VU^@EoYVbjQn@$~Vp-bJ-kWM%OgtoA0(RTo9Zr^r!Wh|*gps-lUp6P!kak}M)JSerd+mnbgB>F zu}n8C4wnUo_Fsr6$Z1i7KGJO_aI(DS2w%VtN;l{`UnSCy!elKyXU}Ilj%iVRNHFVC zn?Z_qTvp7W=wl#EU=mr5UnfPR^XRI&-?H?x8di7h&wJufOgMTsOzob&oK{qV%sDj! zZ-H9#06dosvLKNElv0_<$TM%-B%t!Mo~kubz?>C{^;ZO%@sTUuS>ZM^LvQtjBz8R+ zM%0o%YZMd#jZvEaEjs#yX^6FCWUeAm)h8T-Xwt-HV{f4TygJ-rmBcldqWOSqqO5kupba8R#B?DL+$6Zkl|7Qp5 z*@)H6;mzgV?e$&|bJeTl zr@kZU+ygg%J$nO1+ar&^Uo3QwPzEkgZMnJ^1s#17PtdQC&yBi>Vt%<_fK^TW z(wlxo)FG2S;G&@BJLx)&TJu)ySnch_*G>qz^3GU}q3^E8{cY;VwkuDcs*q^zEpGap zRJFJos*W6<$esKbSIb3%yE#GH*}qENOy}OlR*`!fYf&e&@%5eJoK?Ig-gs&mu{;$0 zb|Gh@jc3-VkS2bCVl;l}-rn3IQF?P*`sgZBM*#dhX*)n2;-;_LwzZ-8acnW0uw)Co zC*qAB<=X`|M+wVW41)%75sz)p{y4o)d(0sn=fb0Rr3n((Ny|Ji7dU7k6*B*w!soO# z=*rXl<0PX9g46US? zT?ClnlBEkJ2+y{%ubh+lYqOJ#jctZXDA{~s;i?13Llm{qVe|g&xRlcBqqv%#!+uHbL{+n;}^H~X{g0ehO2@c+y2zem*__q zu!YF?VX@dHS8hNOZz)Z%NG8>~?@x*(PY$BRmk%V3nMhItx~+Xe@*xU0#H$xXtCM}J zTOGzC@=1&bJVV_pc6+N{+YC&23xD1`cyDk0aCgYH6K6bS{ZD`?hyqtxYTB9@hxZ5> zaK4%rISyjL9hX6lmwz&xEPdpkv-E75cMR`RH|Qdnh3mI0kNF<~7BCL;Hcr9P;$j){ zo)%`|2PJBDzfL52-EyLDcg5uTo7~p{F3!mDs$*imx1F~){yj`_^9Z+)2Q8ZB&pVKh zg|Gti9+0Ka1WZZxcm-B|f?Hmxlr}KedX#3Ba~aiwdSRY7W9SQZP}jD=&X14lg~ND_ z6~@;BqvNP$_NG5`(@%w#)@0g0m-qx{J>~p{<9AM-RSk#M?lC>4&}P81Jp;LGF0swa z4JEEYnUc425Dl>OZ>mDf+ue?GlUY3=1xMUmVV*iC!nHpCdAX5ZFS!cGS0ZrvxDQ@G zAJM7p@EV|xqDv}NLnrI(kcRPIo#3l5{J;BWuXDxbbpq zO%r`YJ9;bOfR0?mU3CG;Sv~BGe7B8{Y~n+n!agRm%Y&~E2AFTp2IS>kik+raVSf&{woE5w4isS!r-wOyZ?LeN+)nat zsaa6OEcDcTU7srAC*Et17}YrAdy8H2uEaD+kG3y-;|Xd1)Br}xbtMHt8P|lv9Wkkj`!L!k zb-Tg%=Azh>-!JD}ixwG!XGP8JABg_OXI!#~vA$%x&ua%aBnx&p*{BC79}(d*#sSka zn)?Txc(sffCa?tMt#rnSq}Uh;ma|2!pfZv5{TJ609ca|>RGg?z_c1TpZhX_pf%9rLHowI3 z-smtNjrA#mve$$Bu=Tp$t)b>wqgvy~UN3*=MFvV}R9kaX_8-{YR@*dO-zT+9(DbW5IyC4WHw}X+sob6=(cplVo>Gsi!qJLBtpIwqGU`bV!I%nked^~6o zl4GYEbM(xMIbc5|h~Tv7=9v7Km&h&q!`mw#1_#s$C%r){Bn`#b6BvH&L0^U$#$L~p zbd{&Gx3WOu%C9utAxD$n+cG# zVm$F?@-g#lRRG2Zy9U-e;rxJAc>2Y`1f_kGhVUDSN(2qm38hOx8_E((6ZL6hWu6*Z z8M(4r@bfw1Ysy^189oZmte(@oVCZCSUBh|5M&UXm28(kSkaDv#UE=@2yB=_jL#WT% z@$}EoW|9I6l;m>rEew!h|DGV!Fnvn zg+WFIL`+#PfD95D{gsV6k}Mexj9G(;%1ao z?y4sK{4!Wh&yj=8(jWshoP;QA(Qn-XM3eb0e3~;S@uJ18q^pma?xIok^NUNhV=wM0 zuJ`%DPz1({)Qa`N(j@f8LJVljYMoeS1tHnR(%w;X!oOCt5XdZc{62o&&^wOB#8H+**5 zHtF8}M$>Zb489B!t1oF2Yp@)slFmV`r_N0

gymniH;%#)JvHj+~~e|Hc^sjapvx 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 aKUkh_Ch#DvFJ*s^?KM=jRjQPrq5ltYYc~1- diff --git "a/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_180\303\227180.png" "b/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_180\303\227180.png" deleted file mode 100644 index 8d3788407c5742bed7cfb1009f85f9dc38cf57e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13072 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 diff --git a/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_58x58.png b/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_58x58.png deleted file mode 100644 index 6f00a485eb55a556fb875f6eda9cf808562d3e76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2579 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 DmWy)} diff --git a/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_80x80.png b/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_80x80.png deleted file mode 100644 index 3a2d27fb4162dfe218bfb7fa852b37c290f6faa3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3767 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 K7FB0Ful^71O1O{! diff --git "a/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_87\303\22787.png" "b/apps/tlon-mobile/ios/Landscape/Images.xcassets/AppIcon.appiconset/Icon_87\303\22787.png" deleted file mode 100644 index f7d3f647f5b9cc47f0932cfa61f42d5417d00536..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4283 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 R_2|#i)X);u@RwV{{{UMwuLA%8 From af5b9699298ad546cc07a4149ccd886bcfa3d832 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 13:58:21 -0400 Subject: [PATCH 27/77] use logger track error and include thrown error message --- .../Onboarding/SignUpPasswordScreen.tsx | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx index 42d240702d..d0d9ad9da5 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx @@ -3,7 +3,7 @@ import { RECAPTCHA_SITE_KEY } from '@tloncorp/app/constants'; import { useSignupParams } from '@tloncorp/app/contexts/branch'; import { useSignupContext } from '@tloncorp/app/contexts/signup'; import { setEulaAgreed } from '@tloncorp/app/utils/eula'; -import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; +import { trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { createDevLogger } from '@tloncorp/shared'; import { Button, @@ -78,8 +78,9 @@ export const SignUpPasswordScreen = ({ console.error('Error executing reCAPTCHA:', err); if (err instanceof Error) { setRecaptchaError(err); - logger.crumb('Error executing reCAPTCHA:', err); - trackError(err); + logger.trackError('Error executing reCAPTCHA', { + thrownErrorMessage: err.message, + }); } } @@ -108,7 +109,9 @@ export const SignUpPasswordScreen = ({ type: 'custom', message: err.message, }); - trackError(err); + logger.trackError('Error signing up user', { + thrownErrorMessage: err.message, + }); } setIsSubmitting(false); return; @@ -137,8 +140,9 @@ export const SignUpPasswordScreen = ({ type: 'custom', message: err.message, }); - trackError(err); - logger.crumb('Error logging in user:', err); + logger.trackError('Error logging in user', { + thrownErrorMessage: err.message, + }); } } @@ -154,8 +158,8 @@ export const SignUpPasswordScreen = ({ console.error('Error initializing reCAPTCHA client:', err); if (err instanceof Error) { setRecaptchaError(err); - trackError(err); - logger.crumb('Error initializing reCAPTCHA client:', err, { + logger.trackError('Error initializing reCAPTCHA client', { + thrownErrorMessage: err.message, siteKey: RECAPTCHA_SITE_KEY, }); } @@ -174,11 +178,11 @@ export const SignUpPasswordScreen = ({ } catch (err) { console.error('Error re-initializing reCAPTCHA client:', err); if (err instanceof Error) { - logger.crumb('Error re-initializing reCAPTCHA client:', err, { + logger.trackError('Error re-initializing reCAPTCHA client', { + thrownErrorMessage: err.message, siteKey: RECAPTCHA_SITE_KEY, }); setRecaptchaReInitError(err); - trackError(err); } } })(); From f0c4aa99877b51ecef2ca103b1a8d9ce2c3c4684 Mon Sep 17 00:00:00 2001 From: David Lee Date: Mon, 7 Oct 2024 12:10:27 -0700 Subject: [PATCH 28/77] Disable verbose logging on urbit http client in dev --- apps/tlon-mobile/src/components/AuthenticatedApp.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/tlon-mobile/src/components/AuthenticatedApp.tsx b/apps/tlon-mobile/src/components/AuthenticatedApp.tsx index 939b6a9b91..a31c3b2746 100644 --- a/apps/tlon-mobile/src/components/AuthenticatedApp.tsx +++ b/apps/tlon-mobile/src/components/AuthenticatedApp.tsx @@ -42,7 +42,6 @@ function AuthenticatedApp({ shipName: ship ?? '', shipUrl: shipUrl ?? '', onReset: () => sync.syncStart(), - verbose: __DEV__, onChannelReset: () => sync.handleDiscontinuity(), onChannelStatusChange: sync.handleChannelStatusChange, }); From efcbccc903bb30bcee8b83680f824b4c5638d031 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Mon, 7 Oct 2024 14:34:44 -0500 Subject: [PATCH 29/77] onboarding: show eula link button on login pages --- .../screens/Onboarding/ShipLoginScreen.tsx | 22 ++++++++++++++++ .../Onboarding/SignUpPasswordScreen.tsx | 4 +-- .../screens/Onboarding/TlonLoginScreen.tsx | 25 ++++++++++++++----- 3 files changed, 42 insertions(+), 9 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx index 5c5e219c05..d0b3fe1eb8 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx @@ -18,6 +18,7 @@ import { View, YStack, } from '@tloncorp/ui'; +import { setEulaAgreed } from 'packages/app/utils/eula'; import { useCallback, useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; @@ -66,10 +67,16 @@ export const ShipLoginScreen = ({ navigation }: Props) => { return true; }, []); + const handlePressEula = useCallback(() => { + navigation.navigate('EULA'); + }, [navigation]); + const onSubmit = handleSubmit(async (params) => { const { shipUrl: rawShipUrl, accessCode } = params; setIsSubmitting(true); + setEulaAgreed(); + const shipUrl = transformShipURL(rawShipUrl); setFormattedShipUrl(shipUrl); try { @@ -202,6 +209,21 @@ export const ShipLoginScreen = ({ navigation }: Props) => { )} /> + + + By logging in you agree to Tlon’s{' '} + + Terms of Service + + + diff --git a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx index d0d9ad9da5..3df706fa2e 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx @@ -84,9 +84,7 @@ export const SignUpPasswordScreen = ({ } } - if (params.eulaAgreed) { - await setEulaAgreed(); - } + await setEulaAgreed(); if (!recaptchaToken || recaptchaError || recaptchaReInitError) { setIsSubmitting(false); diff --git a/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx index 43de729703..aee9c307f1 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/TlonLoginScreen.tsx @@ -24,7 +24,7 @@ import { View, YStack, } from '@tloncorp/ui'; -import { useState } from 'react'; +import { useCallback, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; import type { OnboardingStackParamList } from '../../types'; @@ -63,16 +63,14 @@ export const TlonLoginScreen = ({ navigation }: Props) => { navigation.navigate('ResetPassword', { email }); }; - const handleEula = () => { + const handlePressEula = useCallback(() => { navigation.navigate('EULA'); - }; + }, [navigation]); const onSubmit = handleSubmit(async (params) => { setIsSubmitting(true); - if (params.eulaAgreed) { - await setEulaAgreed(); - } + await setEulaAgreed(); try { const user = await logInHostingUser(params); @@ -237,6 +235,21 @@ export const TlonLoginScreen = ({ navigation }: Props) => { Forgot password? + + + By logging in you agree to Tlon’s{' '} + + Terms of Service + + + From 8719a81617b3e8cb30d6689076085d91de556855 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Mon, 7 Oct 2024 14:42:17 -0500 Subject: [PATCH 30/77] fix import issue --- apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx index d0b3fe1eb8..28b35f10e9 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/ShipLoginScreen.tsx @@ -18,7 +18,7 @@ import { View, YStack, } from '@tloncorp/ui'; -import { setEulaAgreed } from 'packages/app/utils/eula'; +import { setEulaAgreed } from '@tloncorp/app/utils/eula'; import { useCallback, useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; From 25b960e8c4a28eb549c136a5827edc9091c9a126 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 16:05:24 -0400 Subject: [PATCH 31/77] track error if branch request fails --- packages/shared/src/logic/branch.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/shared/src/logic/branch.ts b/packages/shared/src/logic/branch.ts index a3e077e8bd..ab4748dc9b 100644 --- a/packages/shared/src/logic/branch.ts +++ b/packages/shared/src/logic/branch.ts @@ -18,6 +18,11 @@ export const getDeepLink = async ( params.set('branch_key', branchKey); const response = await fetchBranchApi(`/v1/url?${params}`); if (!response.ok) { + const badRequestInfo = await response.json(); + logger.trackError('branch request failed', { + responseStatus: response.status, + responseJson: badRequestInfo, + }); return undefined; } const { @@ -37,6 +42,11 @@ export const getBranchLinkMeta = async ( params.set('branch_key', branchKey); const response = await fetchBranchApi(`/v1/url?${params}`); if (!response.ok) { + const badRequestInfo = await response.json(); + logger.trackError('branch request failed', { + responseStatus: response.status, + responseJson: badRequestInfo, + }); return undefined; } From 2c4aaff54560da95ccddc203bd81f52ce900b49e Mon Sep 17 00:00:00 2001 From: James Acklin Date: Mon, 7 Oct 2024 16:34:03 -0400 Subject: [PATCH 32/77] WelcomeSheet, OnboardingBenefitsSheet: TM --- .../tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx | 2 +- .../ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx | 2 +- packages/ui/src/components/WelcomeSheet.tsx | 2 +- packages/ui/src/components/WelcomeSheet.web.tsx | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx index df41f656d0..9786e4b808 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/InventoryCheckScreen.tsx @@ -50,7 +50,7 @@ export const InventoryCheckScreen = ({ navigation }: Props) => { return ( navigation.goBack()} isLoading={isChecking} diff --git a/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx b/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx index f1f28b43ad..2ec013305f 100644 --- a/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx +++ b/packages/ui/src/components/Onboarding/OnboardingBenefitsSheet.tsx @@ -23,7 +23,7 @@ export function OnboardingBenefitsSheet({ - Welcome to Tlon + Welcome to TM A messenger you can actually trust. diff --git a/packages/ui/src/components/WelcomeSheet.tsx b/packages/ui/src/components/WelcomeSheet.tsx index 762605ea7f..29abd49c73 100644 --- a/packages/ui/src/components/WelcomeSheet.tsx +++ b/packages/ui/src/components/WelcomeSheet.tsx @@ -45,7 +45,7 @@ function WelcomeSheetComponent({ /> - Welcome to Tlon + Welcome to TM A messenger you can finally trust. diff --git a/packages/ui/src/components/WelcomeSheet.web.tsx b/packages/ui/src/components/WelcomeSheet.web.tsx index d3f7973a94..302751b0c6 100644 --- a/packages/ui/src/components/WelcomeSheet.web.tsx +++ b/packages/ui/src/components/WelcomeSheet.web.tsx @@ -43,7 +43,7 @@ function WelcomeSheetComponent({ /> - Welcome to Tlon + Welcome to TM A messenger you can finally trust. From 20d842a8f41e46d07ee9357200ad8e440ca133c6 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Mon, 7 Oct 2024 16:51:21 -0400 Subject: [PATCH 33/77] user facing metadata error --- .../Onboarding/PasteInviteLinkScreen.tsx | 36 ++++++++++++++----- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index 78b8f8611f..fe83908b6b 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -20,7 +20,8 @@ import { View, YStack, } from '@tloncorp/ui'; -import { useCallback, useEffect } from 'react'; +import { trackError } from 'packages/app/utils/posthog'; +import { useCallback, useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; import { Keyboard } from 'react-native'; @@ -53,6 +54,8 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { }, }); + const [metadataError, setMetadataError] = useState(null); + // watch for changes to the input & check for valid invite links const inviteLinkValue = watch('inviteLink'); useEffect(() => { @@ -61,14 +64,29 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { inviteLinkValue, BRANCH_DOMAIN ); + setMetadataError(null); if (extractedLink) { - const inviteLinkMeta = await getMetadaFromInviteLink( - extractedLink, - BRANCH_KEY - ); - if (inviteLinkMeta) { - setLure(inviteLinkMeta as DeepLinkData); - return; + try { + const inviteLinkMeta = await getMetadaFromInviteLink( + extractedLink, + BRANCH_KEY + ); + if (inviteLinkMeta) { + setLure(inviteLinkMeta as DeepLinkData); + return; + } else { + throw new Error('Failed to retrieve invite metadata'); + } + } catch (e) { + trackError({ + message: e.message, + properties: { + inviteLink: extractedLink, + branchDomain: BRANCH_DOMAIN, + branchKey: BRANCH_KEY, + }, + }); + setMetadataError('Unable to load invite'); } } trigger('inviteLink'); @@ -134,7 +152,7 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { render={({ field: { onChange, onBlur, value } }) => ( Date: Mon, 7 Oct 2024 17:08:10 -0400 Subject: [PATCH 34/77] fix import path --- .../src/screens/Onboarding/PasteInviteLinkScreen.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index fe83908b6b..d6a5bd17a9 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -6,6 +6,7 @@ import { DEFAULT_INVITE_LINK_URL, } from '@tloncorp/app/constants'; import { useBranch, useLureMetadata } from '@tloncorp/app/contexts/branch'; +import { trackError } from '@tloncorp/app/utils/posthog'; import { DeepLinkData, createInviteLinkRegex, @@ -20,7 +21,6 @@ import { View, YStack, } from '@tloncorp/ui'; -import { trackError } from 'packages/app/utils/posthog'; import { useCallback, useEffect, useState } from 'react'; import { Controller, useForm } from 'react-hook-form'; import { Keyboard } from 'react-native'; From 88f97968aa61fb98782a94bbda2fc68b819c7afa Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 7 Oct 2024 21:15:12 +0000 Subject: [PATCH 35/77] update glob: [skip actions] --- desk/desk.docket-0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/desk.docket-0 b/desk/desk.docket-0 index 6f4a5826d5..8e8e0e233e 100644 --- a/desk/desk.docket-0 +++ b/desk/desk.docket-0 @@ -2,7 +2,7 @@ info+'Start, host, and cultivate communities. Own your communications, organize your resources, and share documents. Tlon is a decentralized platform that offers a full, communal suite of tools for messaging, writing and sharing media with others.' color+0xde.dede image+'https://bootstrap.urbit.org/tlon.svg?v=1' - glob-http+['https://bootstrap.urbit.org/glob-0v5.gl5dc.qjt2h.m8fu3.u1c2q.3tjm1.glob' 0v5.gl5dc.qjt2h.m8fu3.u1c2q.3tjm1] + glob-http+['https://bootstrap.urbit.org/glob-0v4.ltvcl.4jj5j.209br.1ootd.ih03h.glob' 0v4.ltvcl.4jj5j.209br.1ootd.ih03h] base+'groups' version+[6 4 1] website+'https://tlon.io' From 9dfcd7869472050bc01628c2790c44936675a707 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 17:27:41 -0400 Subject: [PATCH 36/77] onboarding: track invite added --- .../src/screens/Onboarding/PasteInviteLinkScreen.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx index d6a5bd17a9..e72dd8222a 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/PasteInviteLinkScreen.tsx @@ -6,7 +6,7 @@ import { DEFAULT_INVITE_LINK_URL, } from '@tloncorp/app/constants'; import { useBranch, useLureMetadata } from '@tloncorp/app/contexts/branch'; -import { trackError } from '@tloncorp/app/utils/posthog'; +import { trackError, trackOnboardingAction } from '@tloncorp/app/utils/posthog'; import { DeepLinkData, createInviteLinkRegex, @@ -98,6 +98,11 @@ export const PasteInviteLinkScreen = ({ navigation }: Props) => { // to signup useEffect(() => { if (lureMeta) { + trackOnboardingAction({ + actionName: 'Invite Link Added', + lure: lureMeta.id, + }); + navigation.reset({ index: 0, routes: [{ name: 'Welcome' }, { name: 'SignUpEmail' }], From f66a287d5fcdef7bcae5de87889f3367d6dd7b74 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 18:07:49 -0400 Subject: [PATCH 37/77] you do not have a deeplink if using fallback!! !!!!!! --- packages/shared/src/logic/branch.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/shared/src/logic/branch.ts b/packages/shared/src/logic/branch.ts index ab4748dc9b..565dcd0e62 100644 --- a/packages/shared/src/logic/branch.ts +++ b/packages/shared/src/logic/branch.ts @@ -171,7 +171,7 @@ export const createDeepLink = async ({ try { let url = await getDeepLink(alias, branchDomain, branchKey).catch( - () => fallbackUrl + () => null ); if (!url) { logger.crumb(`No existing deeplink for ${alias}, creating new one`); From 7d84a2bcf3a5bb70338b99732304ad0adb4bfca2 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 18:09:26 -0400 Subject: [PATCH 38/77] and on web --- apps/tlon-web/src/logic/branch.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/tlon-web/src/logic/branch.ts b/apps/tlon-web/src/logic/branch.ts index c1854a7f9b..581939572f 100644 --- a/apps/tlon-web/src/logic/branch.ts +++ b/apps/tlon-web/src/logic/branch.ts @@ -92,7 +92,7 @@ export const createDeepLink = async ( data.wer = path; } - let url = await getDeepLink(alias).catch(() => fallbackUrl); + let url = await getDeepLink(alias).catch(() => null); if (!url) { console.log(`No existing deeplink for ${alias}, creating new one`); const response = await fetchBranchApi('/v1/url', { From c1d2eb7efb8f2764af8b4210f93323da0fd00fe4 Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 7 Oct 2024 22:20:14 +0000 Subject: [PATCH 39/77] update glob: [skip actions] --- desk/desk.docket-0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/desk.docket-0 b/desk/desk.docket-0 index 8e8e0e233e..a175360072 100644 --- a/desk/desk.docket-0 +++ b/desk/desk.docket-0 @@ -2,7 +2,7 @@ info+'Start, host, and cultivate communities. Own your communications, organize your resources, and share documents. Tlon is a decentralized platform that offers a full, communal suite of tools for messaging, writing and sharing media with others.' color+0xde.dede image+'https://bootstrap.urbit.org/tlon.svg?v=1' - glob-http+['https://bootstrap.urbit.org/glob-0v4.ltvcl.4jj5j.209br.1ootd.ih03h.glob' 0v4.ltvcl.4jj5j.209br.1ootd.ih03h] + glob-http+['https://bootstrap.urbit.org/glob-0v2.gaors.7hema.phu5n.ldm30.bgmtk.glob' 0v2.gaors.7hema.phu5n.ldm30.bgmtk] base+'groups' version+[6 4 1] website+'https://tlon.io' From cdb625e2c8c929f36c73eb980770d4bcb3b46f78 Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 18:45:58 -0400 Subject: [PATCH 40/77] set scafolded model to false invite status --- packages/shared/src/db/modelBuilders.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/shared/src/db/modelBuilders.ts b/packages/shared/src/db/modelBuilders.ts index a06157b2b9..3caab0c657 100644 --- a/packages/shared/src/db/modelBuilders.ts +++ b/packages/shared/src/db/modelBuilders.ts @@ -239,11 +239,13 @@ export function buildPendingSingleDmChannel( return { id, + contactId: dmPartnerId, type: 'dm', currentUserIsMember: true, postCount: 0, unreadCount: 0, isPendingChannel: true, + isDmInvite: false, members: [partnerMember], }; } From 1234c21c2b2515449df3e8507517ccb83a941bef Mon Sep 17 00:00:00 2001 From: ~latter-bolden Date: Mon, 7 Oct 2024 18:48:52 -0400 Subject: [PATCH 41/77] set default as false to avoid this in the future --- packages/shared/src/db/schema.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/shared/src/db/schema.ts b/packages/shared/src/db/schema.ts index 81dca1ed36..8a234cd60f 100644 --- a/packages/shared/src/db/schema.ts +++ b/packages/shared/src/db/schema.ts @@ -680,7 +680,7 @@ export const channels = sqliteTable( lastPostId: text('last_post_id'), lastPostAt: timestamp('last_post_at'), isPendingChannel: boolean('is_cached_pending_channel'), - isDmInvite: boolean('is_dm_invite'), + isDmInvite: boolean('is_dm_invite').default(false), /** * Last time we ran a sync, in local time From edd665ab4810b1b5a765f615345146890677fb0d Mon Sep 17 00:00:00 2001 From: github-actions Date: Mon, 7 Oct 2024 23:01:21 +0000 Subject: [PATCH 42/77] update glob: [skip actions] --- desk/desk.docket-0 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desk/desk.docket-0 b/desk/desk.docket-0 index a175360072..e8842cce31 100644 --- a/desk/desk.docket-0 +++ b/desk/desk.docket-0 @@ -2,7 +2,7 @@ info+'Start, host, and cultivate communities. Own your communications, organize your resources, and share documents. Tlon is a decentralized platform that offers a full, communal suite of tools for messaging, writing and sharing media with others.' color+0xde.dede image+'https://bootstrap.urbit.org/tlon.svg?v=1' - glob-http+['https://bootstrap.urbit.org/glob-0v2.gaors.7hema.phu5n.ldm30.bgmtk.glob' 0v2.gaors.7hema.phu5n.ldm30.bgmtk] + glob-http+['https://bootstrap.urbit.org/glob-0v5.ensqi.86b0e.93jfb.65ah6.l4h30.glob' 0v5.ensqi.86b0e.93jfb.65ah6.l4h30] base+'groups' version+[6 4 1] website+'https://tlon.io' From 91496e544c2521a0e409de2709506271d7f91927 Mon Sep 17 00:00:00 2001 From: James Acklin Date: Mon, 7 Oct 2024 19:19:13 -0400 Subject: [PATCH 43/77] GroupMembersScreen, ProfileSheet: wire up navigate to DM --- .../features/groups/GroupMembersScreen.tsx | 31 ++++++++++++++++--- .../src/components/GroupMembersScreenView.tsx | 3 ++ packages/ui/src/components/ProfileBlock.tsx | 7 +---- packages/ui/src/components/ProfileSheet.tsx | 20 +++++------- 4 files changed, 38 insertions(+), 23 deletions(-) diff --git a/packages/app/features/groups/GroupMembersScreen.tsx b/packages/app/features/groups/GroupMembersScreen.tsx index cda6db9464..e63aecab14 100644 --- a/packages/app/features/groups/GroupMembersScreen.tsx +++ b/packages/app/features/groups/GroupMembersScreen.tsx @@ -1,18 +1,20 @@ +import { CommonActions } from '@react-navigation/native'; +import { NativeStackScreenProps } from '@react-navigation/native-stack'; +import * as store from '@tloncorp/shared/dist/store'; import { GroupMembersScreenView } from '@tloncorp/ui'; +import { useCallback } from 'react'; import { useCurrentUserId } from '../../hooks/useCurrentUser'; import { useGroupContext } from '../../hooks/useGroupContext'; -import { NativeStackScreenProps } from '@react-navigation/native-stack'; import { GroupSettingsStackParamList } from '../../navigation/types'; - type Props = NativeStackScreenProps< GroupSettingsStackParamList, 'GroupMembers' >; -export function GroupMembersScreen(props: Props) { - const { groupId } = props.route.params; +export function GroupMembersScreen({ route, navigation }: Props) { + const { groupId } = route.params; const { groupMembers, groupRoles, @@ -30,9 +32,28 @@ export function GroupMembersScreen(props: Props) { const currentUserId = useCurrentUserId(); + const handleGoToDm = useCallback( + async (participants: string[]) => { + const dmChannel = await store.upsertDmChannel({ + participants, + }); + navigation.dispatch( + CommonActions.reset({ + index: 1, + routes: [ + { name: 'ChatList' }, + { name: 'Channel', params: { channel: dmChannel } }, + ], + }) + ); + }, + [navigation] + ); + return ( navigation.goBack()} + onPressGoToDm={(contactId: string) => handleGoToDm([contactId])} members={groupMembers} roles={groupRoles} currentUserId={currentUserId} diff --git a/packages/ui/src/components/GroupMembersScreenView.tsx b/packages/ui/src/components/GroupMembersScreenView.tsx index 33986a7382..bbee14dc92 100644 --- a/packages/ui/src/components/GroupMembersScreenView.tsx +++ b/packages/ui/src/components/GroupMembersScreenView.tsx @@ -24,6 +24,7 @@ export function GroupMembersScreenView({ onPressUnban, onPressAcceptJoinRequest, onPressRejectJoinRequest, + onPressGoToDm, }: { goBack: () => void; members: db.ChatMember[]; @@ -37,6 +38,7 @@ export function GroupMembersScreenView({ onPressUnban: (contactId: string) => void; onPressAcceptJoinRequest: (contactId: string) => void; onPressRejectJoinRequest: (contactId: string) => void; + onPressGoToDm: (contactId: string) => void; }) { const { bottom } = useSafeAreaInsets(); const [selectedContact, setSelectedContact] = useState(null); @@ -207,6 +209,7 @@ export function GroupMembersScreenView({ onPressKick={() => onPressKick(selectedContact)} onPressBan={() => onPressBan(selectedContact)} onPressUnban={() => onPressUnban(selectedContact)} + onPressGoToDm={() => onPressGoToDm(selectedContact)} /> )} {selectedContact !== null && selectedIsRequest && ( diff --git a/packages/ui/src/components/ProfileBlock.tsx b/packages/ui/src/components/ProfileBlock.tsx index 087787a026..3ea37082fc 100644 --- a/packages/ui/src/components/ProfileBlock.tsx +++ b/packages/ui/src/components/ProfileBlock.tsx @@ -14,12 +14,7 @@ export const ProfileBlock = ({ >) => { const contact = useContact(contactId); return contact?.coverImage ? ( - + void; onPressBan?: () => void; onPressUnban?: () => void; + onPressGoToDm?: () => void; }) { const currentUserId = useCurrentUserId(); - const { onPressGoToDm } = useNavigation(); - const handleBlock = useCallback(() => { if (contact && contact.isBlocked) { store.unblockUser(contactId); @@ -63,11 +61,6 @@ export function ProfileSheet({ onOpenChange(false); }, [contact, contactId, onOpenChange]); - const handleGoToDm = useCallback(async () => { - onPressGoToDm?.([contactId]); - onOpenChange(false); - }, [contactId, onPressGoToDm, onOpenChange]); - const isAdminnable = currentUserIsAdmin && currentUserId !== contactId; const actions: ActionGroup[] = createActionGroups( @@ -75,7 +68,10 @@ export function ProfileSheet({ 'neutral', { title: 'Send message', - action: () => handleGoToDm, + action: () => { + onPressGoToDm?.(); + onOpenChange(false); + }, endIcon: 'ChevronRight', }, { @@ -119,8 +115,8 @@ export function ProfileSheet({ From 85d52f0facd4e41886156a2a8ac2baa6f1a4fb30 Mon Sep 17 00:00:00 2001 From: James Acklin <748181+jamesacklin@users.noreply.github.com> Date: Tue, 8 Oct 2024 09:21:58 -0400 Subject: [PATCH 44/77] Update packages/ui/src/components/ProfileSheet.tsx Co-authored-by: Patrick O'Sullivan --- packages/ui/src/components/ProfileSheet.tsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/ui/src/components/ProfileSheet.tsx b/packages/ui/src/components/ProfileSheet.tsx index cb53048f59..53fb752305 100644 --- a/packages/ui/src/components/ProfileSheet.tsx +++ b/packages/ui/src/components/ProfileSheet.tsx @@ -115,8 +115,6 @@ export function ProfileSheet({ From c67195bbed606e801dc33b630ea387082b9a3c74 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Tue, 8 Oct 2024 10:05:40 -0500 Subject: [PATCH 45/77] chat: fix for useGroupPreview causing slow channel/thread loads --- .../fixtures/DetailView/detailViewFixtureBase.tsx | 1 + .../tlon-mobile/src/fixtures/PostScreen.fixture.tsx | 1 + packages/app/features/top/PostScreen.tsx | 13 ++++++++----- packages/shared/src/store/dbHooks.ts | 5 +++-- .../ContentReference/ContentReference.tsx | 5 ++++- packages/ui/src/components/PostScreenView.tsx | 3 +++ 6 files changed, 20 insertions(+), 8 deletions(-) diff --git a/apps/tlon-mobile/src/fixtures/DetailView/detailViewFixtureBase.tsx b/apps/tlon-mobile/src/fixtures/DetailView/detailViewFixtureBase.tsx index 408a7a4bc1..f0deeb7638 100644 --- a/apps/tlon-mobile/src/fixtures/DetailView/detailViewFixtureBase.tsx +++ b/apps/tlon-mobile/src/fixtures/DetailView/detailViewFixtureBase.tsx @@ -39,6 +39,7 @@ export const DetailViewFixture = ({ channel, }} posts={replies} + isLoadingPosts={false} channel={channel} sendReply={async () => {}} onPressRetry={() => {}} diff --git a/apps/tlon-mobile/src/fixtures/PostScreen.fixture.tsx b/apps/tlon-mobile/src/fixtures/PostScreen.fixture.tsx index 6c35fe4861..9a81df5f73 100644 --- a/apps/tlon-mobile/src/fixtures/PostScreen.fixture.tsx +++ b/apps/tlon-mobile/src/fixtures/PostScreen.fixture.tsx @@ -20,6 +20,7 @@ export default ( > {}} + isLoadingPosts={false} editPost={async () => {}} onPressRetry={() => {}} onPressDelete={() => {}} diff --git a/packages/app/features/top/PostScreen.tsx b/packages/app/features/top/PostScreen.tsx index 32a970a04a..ec85e16c9a 100644 --- a/packages/app/features/top/PostScreen.tsx +++ b/packages/app/features/top/PostScreen.tsx @@ -51,11 +51,13 @@ export default function PostScreen(props: Props) { const { data: post } = store.usePostWithThreadUnreads({ id: postParam.id, }); - const { data: threadPosts } = store.useThreadPosts({ - postId: postParam.id, - authorId: postParam.authorId, - channelId: postParam.channelId, - }); + const { data: threadPosts, isLoading: isLoadingPosts } = store.useThreadPosts( + { + postId: postParam.id, + authorId: postParam.authorId, + channelId: postParam.channelId, + } + ); const posts = useMemo(() => { return post ? [...(threadPosts ?? []), post] : null; @@ -123,6 +125,7 @@ export default function PostScreen(props: Props) { canUpload={canUpload} parentPost={post} posts={posts} + isLoadingPosts={isLoadingPosts} channel={channel} initialThreadUnread={initialThreadUnread} goBack={props.navigation.goBack} diff --git a/packages/shared/src/store/dbHooks.ts b/packages/shared/src/store/dbHooks.ts index a177d5d9e9..d3f6516895 100644 --- a/packages/shared/src/store/dbHooks.ts +++ b/packages/shared/src/store/dbHooks.ts @@ -357,9 +357,10 @@ export const useMemberRoles = (chatId: string, userId: string) => { }; export const useGroupPreview = (groupId: string) => { - const tableDeps = useKeyFromQueryDeps(db.getGroup); return useQuery({ - queryKey: ['groupPreview', tableDeps, groupId], + queryKey: ['groupPreview', groupId], + refetchOnReconnect: false, + refetchOnMount: false, queryFn: async () => { const [preview] = await syncGroupPreviews([groupId]); return preview; diff --git a/packages/ui/src/components/ContentReference/ContentReference.tsx b/packages/ui/src/components/ContentReference/ContentReference.tsx index 7c1825295a..92e8852dd3 100644 --- a/packages/ui/src/components/ContentReference/ContentReference.tsx +++ b/packages/ui/src/components/ContentReference/ContentReference.tsx @@ -2,6 +2,7 @@ import { ContentReference } from '@tloncorp/shared/dist/api'; import * as db from '@tloncorp/shared/dist/db'; import { getChannelType } from '@tloncorp/shared/dist/urbit'; +import React from 'react'; import { ComponentProps, useCallback } from 'react'; import { View, XStack, styled } from 'tamagui'; @@ -246,7 +247,7 @@ const PostReferenceAuthorName = styled(Text, { // Group reference -export function GroupReferenceLoader({ +export function GroupReferenceLoaderComponent({ groupId, openOnPress = true, ...props @@ -271,6 +272,8 @@ export function GroupReferenceLoader({ ); } +const GroupReferenceLoader = React.memo(GroupReferenceLoaderComponent); + export function GroupReference({ data, ...props diff --git a/packages/ui/src/components/PostScreenView.tsx b/packages/ui/src/components/PostScreenView.tsx index da1d975c60..115b243874 100644 --- a/packages/ui/src/components/PostScreenView.tsx +++ b/packages/ui/src/components/PostScreenView.tsx @@ -22,6 +22,7 @@ export function PostScreenView({ initialThreadUnread, parentPost, posts, + isLoadingPosts, sendReply, markRead, goBack, @@ -46,6 +47,7 @@ export function PostScreenView({ group?: db.Group | null; parentPost: db.Post | null; posts: db.Post[] | null; + isLoadingPosts: boolean; sendReply: (content: urbit.Story, channelId: string) => Promise; markRead: () => void; goBack?: () => void; @@ -110,6 +112,7 @@ export function PostScreenView({ title={headerTitle} goBack={goBack} showSearchButton={false} + showSpinner={isLoadingPosts} post={parentPost ?? undefined} mode={headerMode} /> From ead7697cb646d5e9eb6fce38e893668f79d02cfc Mon Sep 17 00:00:00 2001 From: James Acklin Date: Tue, 8 Oct 2024 11:35:16 -0400 Subject: [PATCH 46/77] SetNicknameScreen: add white-on-black faces.png --- apps/tlon-mobile/assets/images/faces-dark.png | Bin 0 -> 67058 bytes apps/tlon-mobile/cosmos.imports.ts | 198 +++++++++--------- .../fixtures/SetNicknameScreen.fixture.tsx | 34 +++ .../screens/Onboarding/SetNicknameScreen.tsx | 13 +- 4 files changed, 142 insertions(+), 103 deletions(-) create mode 100644 apps/tlon-mobile/assets/images/faces-dark.png create mode 100644 apps/tlon-mobile/src/fixtures/SetNicknameScreen.fixture.tsx diff --git a/apps/tlon-mobile/assets/images/faces-dark.png b/apps/tlon-mobile/assets/images/faces-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..320adc43f76117c38e5559166675a0bd80c0a6d3 GIT binary patch literal 67058 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�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

W*0=dhgE&40GD>Fh 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 literal 0 HcmV?d00001 diff --git a/apps/tlon-mobile/cosmos.imports.ts b/apps/tlon-mobile/cosmos.imports.ts index 02858d1389..41b9a78dda 100644 --- a/apps/tlon-mobile/cosmos.imports.ts +++ b/apps/tlon-mobile/cosmos.imports.ts @@ -8,55 +8,56 @@ import * as fixture1 from './src/fixtures/ViewReactionsSheet.fixture'; import * as fixture2 from './src/fixtures/VideoEmbed.fixture'; import * as fixture3 from './src/fixtures/UserProfileScreen.fixture'; import * as fixture4 from './src/fixtures/Text.fixture'; -import * as fixture5 from './src/fixtures/SearchBar.fixture'; -import * as fixture6 from './src/fixtures/ScreenHeader.fixture'; -import * as fixture7 from './src/fixtures/ReferenceSkeleton.fixture'; -import * as fixture8 from './src/fixtures/ProfileSheet.fixture'; -import * as fixture9 from './src/fixtures/ProfileBlock.fixture'; -import * as fixture10 from './src/fixtures/PostScreen.fixture'; -import * as fixture11 from './src/fixtures/PostReference.fixture'; -import * as fixture12 from './src/fixtures/ParentAgnosticKeyboardAvoidingView.fixture'; -import * as fixture13 from './src/fixtures/OutsideEmbed.fixture'; -import * as fixture14 from './src/fixtures/Onboarding.fixture'; -import * as fixture15 from './src/fixtures/MetaEditorScreen.fixture'; -import * as fixture16 from './src/fixtures/MessageInput.fixture'; -import * as fixture17 from './src/fixtures/MessageActions.fixture'; -import * as fixture18 from './src/fixtures/InviteUsersSheet.fixture'; -import * as fixture19 from './src/fixtures/InputToolbar.fixture'; -import * as fixture20 from './src/fixtures/Input.fixture'; -import * as fixture21 from './src/fixtures/ImageViewer.fixture'; -import * as fixture22 from './src/fixtures/GroupListItem.fixture'; -import * as fixture23 from './src/fixtures/GroupList.fixture'; -import * as fixture24 from './src/fixtures/GalleryPost.fixture'; -import * as fixture25 from './src/fixtures/Form.fixture'; -import * as fixture26 from './src/fixtures/FindGroups.fixture'; -import * as fixture27 from './src/fixtures/CreateGroup.fixture'; -import * as fixture28 from './src/fixtures/ContactList.fixture'; -import * as fixture29 from './src/fixtures/ChatMessage.fixture'; -import * as fixture30 from './src/fixtures/ChannelSwitcherSheet.fixture'; -import * as fixture31 from './src/fixtures/ChannelHeader.fixture'; -import * as fixture32 from './src/fixtures/ChannelDivider.fixture'; -import * as fixture33 from './src/fixtures/Channel.fixture'; -import * as fixture34 from './src/fixtures/Button.fixture'; -import * as fixture35 from './src/fixtures/BlockSectionList.fixture'; -import * as fixture36 from './src/fixtures/Avatar.fixture'; -import * as fixture37 from './src/fixtures/AudioEmbed.fixture'; -import * as fixture38 from './src/fixtures/AttachmentPreviewList.fixture'; -import * as fixture39 from './src/fixtures/AddGroupSheet.fixture'; -import * as fixture40 from './src/fixtures/Activity.fixture'; -import * as fixture41 from './src/fixtures/DetailView/NotebookDetailView.fixture'; -import * as fixture42 from './src/fixtures/DetailView/GalleryDetailView.fixture'; -import * as fixture43 from './src/fixtures/DetailView/ChatDetailView.fixture'; -import * as fixture44 from './src/fixtures/ActionSheet/SendPostRetrySheet.fixture'; -import * as fixture45 from './src/fixtures/ActionSheet/ProfileSheet.fixture'; -import * as fixture46 from './src/fixtures/ActionSheet/GroupPreviewSheet.fixture'; -import * as fixture47 from './src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture'; -import * as fixture48 from './src/fixtures/ActionSheet/GenericActionSheet.fixture'; -import * as fixture49 from './src/fixtures/ActionSheet/EditSectionNameSheet.fixture'; -import * as fixture50 from './src/fixtures/ActionSheet/DeleteSheet.fixture'; -import * as fixture51 from './src/fixtures/ActionSheet/CreateChannelSheet.fixture'; -import * as fixture52 from './src/fixtures/ActionSheet/AttachmentSheet.fixture'; -import * as fixture53 from './src/fixtures/ActionSheet/AddGalleryPostSheet.fixture'; +import * as fixture5 from './src/fixtures/SetNicknameScreen.fixture'; +import * as fixture6 from './src/fixtures/SearchBar.fixture'; +import * as fixture7 from './src/fixtures/ScreenHeader.fixture'; +import * as fixture8 from './src/fixtures/ReferenceSkeleton.fixture'; +import * as fixture9 from './src/fixtures/ProfileSheet.fixture'; +import * as fixture10 from './src/fixtures/ProfileBlock.fixture'; +import * as fixture11 from './src/fixtures/PostScreen.fixture'; +import * as fixture12 from './src/fixtures/PostReference.fixture'; +import * as fixture13 from './src/fixtures/ParentAgnosticKeyboardAvoidingView.fixture'; +import * as fixture14 from './src/fixtures/OutsideEmbed.fixture'; +import * as fixture15 from './src/fixtures/Onboarding.fixture'; +import * as fixture16 from './src/fixtures/MetaEditorScreen.fixture'; +import * as fixture17 from './src/fixtures/MessageInput.fixture'; +import * as fixture18 from './src/fixtures/MessageActions.fixture'; +import * as fixture19 from './src/fixtures/InviteUsersSheet.fixture'; +import * as fixture20 from './src/fixtures/InputToolbar.fixture'; +import * as fixture21 from './src/fixtures/Input.fixture'; +import * as fixture22 from './src/fixtures/ImageViewer.fixture'; +import * as fixture23 from './src/fixtures/GroupListItem.fixture'; +import * as fixture24 from './src/fixtures/GroupList.fixture'; +import * as fixture25 from './src/fixtures/GalleryPost.fixture'; +import * as fixture26 from './src/fixtures/Form.fixture'; +import * as fixture27 from './src/fixtures/FindGroups.fixture'; +import * as fixture28 from './src/fixtures/CreateGroup.fixture'; +import * as fixture29 from './src/fixtures/ContactList.fixture'; +import * as fixture30 from './src/fixtures/ChatMessage.fixture'; +import * as fixture31 from './src/fixtures/ChannelSwitcherSheet.fixture'; +import * as fixture32 from './src/fixtures/ChannelHeader.fixture'; +import * as fixture33 from './src/fixtures/ChannelDivider.fixture'; +import * as fixture34 from './src/fixtures/Channel.fixture'; +import * as fixture35 from './src/fixtures/Button.fixture'; +import * as fixture36 from './src/fixtures/BlockSectionList.fixture'; +import * as fixture37 from './src/fixtures/Avatar.fixture'; +import * as fixture38 from './src/fixtures/AudioEmbed.fixture'; +import * as fixture39 from './src/fixtures/AttachmentPreviewList.fixture'; +import * as fixture40 from './src/fixtures/AddGroupSheet.fixture'; +import * as fixture41 from './src/fixtures/Activity.fixture'; +import * as fixture42 from './src/fixtures/DetailView/NotebookDetailView.fixture'; +import * as fixture43 from './src/fixtures/DetailView/GalleryDetailView.fixture'; +import * as fixture44 from './src/fixtures/DetailView/ChatDetailView.fixture'; +import * as fixture45 from './src/fixtures/ActionSheet/SendPostRetrySheet.fixture'; +import * as fixture46 from './src/fixtures/ActionSheet/ProfileSheet.fixture'; +import * as fixture47 from './src/fixtures/ActionSheet/GroupPreviewSheet.fixture'; +import * as fixture48 from './src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture'; +import * as fixture49 from './src/fixtures/ActionSheet/GenericActionSheet.fixture'; +import * as fixture50 from './src/fixtures/ActionSheet/EditSectionNameSheet.fixture'; +import * as fixture51 from './src/fixtures/ActionSheet/DeleteSheet.fixture'; +import * as fixture52 from './src/fixtures/ActionSheet/CreateChannelSheet.fixture'; +import * as fixture53 from './src/fixtures/ActionSheet/AttachmentSheet.fixture'; +import * as fixture54 from './src/fixtures/ActionSheet/AddGalleryPostSheet.fixture'; import * as decorator0 from './src/fixtures/cosmos.decorator'; @@ -71,55 +72,56 @@ const fixtures = { 'src/fixtures/VideoEmbed.fixture.tsx': { module: fixture2 }, 'src/fixtures/UserProfileScreen.fixture.tsx': { module: fixture3 }, 'src/fixtures/Text.fixture.tsx': { module: fixture4 }, - 'src/fixtures/SearchBar.fixture.tsx': { module: fixture5 }, - 'src/fixtures/ScreenHeader.fixture.tsx': { module: fixture6 }, - 'src/fixtures/ReferenceSkeleton.fixture.tsx': { module: fixture7 }, - 'src/fixtures/ProfileSheet.fixture.tsx': { module: fixture8 }, - 'src/fixtures/ProfileBlock.fixture.tsx': { module: fixture9 }, - 'src/fixtures/PostScreen.fixture.tsx': { module: fixture10 }, - 'src/fixtures/PostReference.fixture.tsx': { module: fixture11 }, - 'src/fixtures/ParentAgnosticKeyboardAvoidingView.fixture.tsx': { module: fixture12 }, - 'src/fixtures/OutsideEmbed.fixture.tsx': { module: fixture13 }, - 'src/fixtures/Onboarding.fixture.tsx': { module: fixture14 }, - 'src/fixtures/MetaEditorScreen.fixture.tsx': { module: fixture15 }, - 'src/fixtures/MessageInput.fixture.tsx': { module: fixture16 }, - 'src/fixtures/MessageActions.fixture.tsx': { module: fixture17 }, - 'src/fixtures/InviteUsersSheet.fixture.tsx': { module: fixture18 }, - 'src/fixtures/InputToolbar.fixture.tsx': { module: fixture19 }, - 'src/fixtures/Input.fixture.tsx': { module: fixture20 }, - 'src/fixtures/ImageViewer.fixture.tsx': { module: fixture21 }, - 'src/fixtures/GroupListItem.fixture.tsx': { module: fixture22 }, - 'src/fixtures/GroupList.fixture.tsx': { module: fixture23 }, - 'src/fixtures/GalleryPost.fixture.tsx': { module: fixture24 }, - 'src/fixtures/Form.fixture.tsx': { module: fixture25 }, - 'src/fixtures/FindGroups.fixture.tsx': { module: fixture26 }, - 'src/fixtures/CreateGroup.fixture.tsx': { module: fixture27 }, - 'src/fixtures/ContactList.fixture.tsx': { module: fixture28 }, - 'src/fixtures/ChatMessage.fixture.tsx': { module: fixture29 }, - 'src/fixtures/ChannelSwitcherSheet.fixture.tsx': { module: fixture30 }, - 'src/fixtures/ChannelHeader.fixture.tsx': { module: fixture31 }, - 'src/fixtures/ChannelDivider.fixture.tsx': { module: fixture32 }, - 'src/fixtures/Channel.fixture.tsx': { module: fixture33 }, - 'src/fixtures/Button.fixture.tsx': { module: fixture34 }, - 'src/fixtures/BlockSectionList.fixture.tsx': { module: fixture35 }, - 'src/fixtures/Avatar.fixture.tsx': { module: fixture36 }, - 'src/fixtures/AudioEmbed.fixture.tsx': { module: fixture37 }, - 'src/fixtures/AttachmentPreviewList.fixture.tsx': { module: fixture38 }, - 'src/fixtures/AddGroupSheet.fixture.tsx': { module: fixture39 }, - 'src/fixtures/Activity.fixture.tsx': { module: fixture40 }, - 'src/fixtures/DetailView/NotebookDetailView.fixture.tsx': { module: fixture41 }, - 'src/fixtures/DetailView/GalleryDetailView.fixture.tsx': { module: fixture42 }, - 'src/fixtures/DetailView/ChatDetailView.fixture.tsx': { module: fixture43 }, - 'src/fixtures/ActionSheet/SendPostRetrySheet.fixture.tsx': { module: fixture44 }, - 'src/fixtures/ActionSheet/ProfileSheet.fixture.tsx': { module: fixture45 }, - 'src/fixtures/ActionSheet/GroupPreviewSheet.fixture.tsx': { module: fixture46 }, - 'src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture.tsx': { module: fixture47 }, - 'src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx': { module: fixture48 }, - 'src/fixtures/ActionSheet/EditSectionNameSheet.fixture.tsx': { module: fixture49 }, - 'src/fixtures/ActionSheet/DeleteSheet.fixture.tsx': { module: fixture50 }, - 'src/fixtures/ActionSheet/CreateChannelSheet.fixture.tsx': { module: fixture51 }, - 'src/fixtures/ActionSheet/AttachmentSheet.fixture.tsx': { module: fixture52 }, - 'src/fixtures/ActionSheet/AddGalleryPostSheet.fixture.tsx': { module: fixture53 } + 'src/fixtures/SetNicknameScreen.fixture.tsx': { module: fixture5 }, + 'src/fixtures/SearchBar.fixture.tsx': { module: fixture6 }, + 'src/fixtures/ScreenHeader.fixture.tsx': { module: fixture7 }, + 'src/fixtures/ReferenceSkeleton.fixture.tsx': { module: fixture8 }, + 'src/fixtures/ProfileSheet.fixture.tsx': { module: fixture9 }, + 'src/fixtures/ProfileBlock.fixture.tsx': { module: fixture10 }, + 'src/fixtures/PostScreen.fixture.tsx': { module: fixture11 }, + 'src/fixtures/PostReference.fixture.tsx': { module: fixture12 }, + 'src/fixtures/ParentAgnosticKeyboardAvoidingView.fixture.tsx': { module: fixture13 }, + 'src/fixtures/OutsideEmbed.fixture.tsx': { module: fixture14 }, + 'src/fixtures/Onboarding.fixture.tsx': { module: fixture15 }, + 'src/fixtures/MetaEditorScreen.fixture.tsx': { module: fixture16 }, + 'src/fixtures/MessageInput.fixture.tsx': { module: fixture17 }, + 'src/fixtures/MessageActions.fixture.tsx': { module: fixture18 }, + 'src/fixtures/InviteUsersSheet.fixture.tsx': { module: fixture19 }, + 'src/fixtures/InputToolbar.fixture.tsx': { module: fixture20 }, + 'src/fixtures/Input.fixture.tsx': { module: fixture21 }, + 'src/fixtures/ImageViewer.fixture.tsx': { module: fixture22 }, + 'src/fixtures/GroupListItem.fixture.tsx': { module: fixture23 }, + 'src/fixtures/GroupList.fixture.tsx': { module: fixture24 }, + 'src/fixtures/GalleryPost.fixture.tsx': { module: fixture25 }, + 'src/fixtures/Form.fixture.tsx': { module: fixture26 }, + 'src/fixtures/FindGroups.fixture.tsx': { module: fixture27 }, + 'src/fixtures/CreateGroup.fixture.tsx': { module: fixture28 }, + 'src/fixtures/ContactList.fixture.tsx': { module: fixture29 }, + 'src/fixtures/ChatMessage.fixture.tsx': { module: fixture30 }, + 'src/fixtures/ChannelSwitcherSheet.fixture.tsx': { module: fixture31 }, + 'src/fixtures/ChannelHeader.fixture.tsx': { module: fixture32 }, + 'src/fixtures/ChannelDivider.fixture.tsx': { module: fixture33 }, + 'src/fixtures/Channel.fixture.tsx': { module: fixture34 }, + 'src/fixtures/Button.fixture.tsx': { module: fixture35 }, + 'src/fixtures/BlockSectionList.fixture.tsx': { module: fixture36 }, + 'src/fixtures/Avatar.fixture.tsx': { module: fixture37 }, + 'src/fixtures/AudioEmbed.fixture.tsx': { module: fixture38 }, + 'src/fixtures/AttachmentPreviewList.fixture.tsx': { module: fixture39 }, + 'src/fixtures/AddGroupSheet.fixture.tsx': { module: fixture40 }, + 'src/fixtures/Activity.fixture.tsx': { module: fixture41 }, + 'src/fixtures/DetailView/NotebookDetailView.fixture.tsx': { module: fixture42 }, + 'src/fixtures/DetailView/GalleryDetailView.fixture.tsx': { module: fixture43 }, + 'src/fixtures/DetailView/ChatDetailView.fixture.tsx': { module: fixture44 }, + 'src/fixtures/ActionSheet/SendPostRetrySheet.fixture.tsx': { module: fixture45 }, + 'src/fixtures/ActionSheet/ProfileSheet.fixture.tsx': { module: fixture46 }, + 'src/fixtures/ActionSheet/GroupPreviewSheet.fixture.tsx': { module: fixture47 }, + 'src/fixtures/ActionSheet/GroupJoinRequestSheet.fixture.tsx': { module: fixture48 }, + 'src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx': { module: fixture49 }, + 'src/fixtures/ActionSheet/EditSectionNameSheet.fixture.tsx': { module: fixture50 }, + 'src/fixtures/ActionSheet/DeleteSheet.fixture.tsx': { module: fixture51 }, + 'src/fixtures/ActionSheet/CreateChannelSheet.fixture.tsx': { module: fixture52 }, + 'src/fixtures/ActionSheet/AttachmentSheet.fixture.tsx': { module: fixture53 }, + 'src/fixtures/ActionSheet/AddGalleryPostSheet.fixture.tsx': { module: fixture54 } }; const decorators = { diff --git a/apps/tlon-mobile/src/fixtures/SetNicknameScreen.fixture.tsx b/apps/tlon-mobile/src/fixtures/SetNicknameScreen.fixture.tsx new file mode 100644 index 0000000000..1d2ea0911f --- /dev/null +++ b/apps/tlon-mobile/src/fixtures/SetNicknameScreen.fixture.tsx @@ -0,0 +1,34 @@ +import { NavigationContainer } from '@react-navigation/native'; +import { NativeStackNavigationProp } from '@react-navigation/native-stack'; + +import { SetNicknameScreen } from '../screens/Onboarding/SetNicknameScreen'; +import { OnboardingStackParamList, User } from '../types'; +import { FixtureWrapper } from './FixtureWrapper'; + +const GroupMetaScreenFixture = () => { + const mockNavigation = { + navigate: () => {}, + goBack: () => {}, + addListener: () => {}, + } as unknown as NativeStackNavigationProp< + OnboardingStackParamList, + 'SetNickname' + >; + + return ( + + + + + + ); +}; + +export default GroupMetaScreenFixture; diff --git a/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx index 6d23a17996..8e789ce9ec 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/SetNicknameScreen.tsx @@ -11,6 +11,7 @@ import { View, XStack, YStack, + useTheme, } from '@tloncorp/ui'; import { useEffect } from 'react'; import { Controller, useForm } from 'react-hook-form'; @@ -30,6 +31,12 @@ export const SetNicknameScreen = ({ params: { user }, }, }: Props) => { + const theme = useTheme(); + + const facesImage = theme.dark + ? require('../../../assets/images/faces-dark.png') + : require('../../../assets/images/faces.png'); + const { control, handleSubmit, @@ -96,11 +103,7 @@ export const SetNicknameScreen = ({ /> - + From b601e689eb143e3a2c06de325badd9f9fa5b2e88 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Tue, 8 Oct 2024 14:28:56 -0400 Subject: [PATCH 47/77] fix code paste (#4036) --- apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx b/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx index a22f19b756..3079822b90 100644 --- a/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx +++ b/apps/tlon-mobile/src/screens/Onboarding/CheckVerifyScreen.tsx @@ -182,7 +182,6 @@ function CodeInput({ onChangeText={(text) => handleChangeText(i, text)} value={value.length > i ? value[i] : ''} keyboardType="numeric" - maxLength={1} paddingHorizontal="$xl" paddingVertical="$xl" width="$4xl" From 47519ce6df7f553c94630ebbedabd51d15173cdb Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Wed, 9 Oct 2024 10:31:39 -0500 Subject: [PATCH 48/77] editing: use the normal chat input for editing chat messages, don't edit in the scroller --- packages/shared/src/debug.ts | 17 ++ .../ui/src/components/Channel/Scroller.tsx | 23 +- packages/ui/src/components/Channel/index.tsx | 1 - .../components/ChatMessage/ChatMessage.tsx | 50 +--- packages/ui/src/components/DetailView.tsx | 9 - .../MessageInput/MessageInputBase.tsx | 243 ++++++++---------- .../components/MessageInput/index.native.tsx | 42 ++- packages/ui/src/components/PostScreenView.tsx | 1 - .../src/components/draftInputs/ChatInput.tsx | 3 - 9 files changed, 173 insertions(+), 216 deletions(-) diff --git a/packages/shared/src/debug.ts b/packages/shared/src/debug.ts index 4999c38667..12340235b6 100644 --- a/packages/shared/src/debug.ts +++ b/packages/shared/src/debug.ts @@ -242,3 +242,20 @@ export const useLogLifecycleEvents = ( return () => console.log(label, 'unmounted'); }, []); }; + +/** + * Logs a message when any property of an object changes. Uses shallow equality + * check to determine whether a change has occurred. + */ +export function useObjectChangeLogging( + o: Record, + logger: Console = window.console +) { + const lastValues = useRef(o); + Object.entries(o).forEach(([k, v]) => { + if (v !== lastValues.current[k]) { + logger.log('[change]', k, 'old:', lastValues.current[k], 'new:', v); + lastValues.current[k] = v; + } + }); +} diff --git a/packages/ui/src/components/Channel/Scroller.tsx b/packages/ui/src/components/Channel/Scroller.tsx index 83a2b1295b..908b1f3fb2 100644 --- a/packages/ui/src/components/Channel/Scroller.tsx +++ b/packages/ui/src/components/Channel/Scroller.tsx @@ -101,7 +101,6 @@ const Scroller = forwardRef( showReplies = true, editingPost, setEditingPost, - editPost, onPressRetry, onPressDelete, hasNewerPosts, @@ -127,7 +126,6 @@ const Scroller = forwardRef( showReplies?: boolean; editingPost?: db.Post; setEditingPost?: (post: db.Post | undefined) => void; - editPost?: (post: db.Post, content: Story) => Promise; onPressRetry: (post: db.Post) => void; onPressDelete: (post: db.Post) => void; hasNewerPosts?: boolean; @@ -245,12 +243,9 @@ const Scroller = forwardRef( isLastPostOfBlock={isLastPostOfBlock} Component={renderItem} unreadCount={unreadCount} - editingPost={editingPost} channelId={channelId} channelType={channelType} - setEditingPost={setEditingPost} setViewReactionsPost={setViewReactionsPost} - editPost={editPost} onPressRetry={onPressRetry} onPressDelete={onPressDelete} showReplies={showReplies} @@ -270,12 +265,9 @@ const Scroller = forwardRef( firstUnreadId, renderItem, unreadCount, - editingPost, anchorScrollLockScrollerItemProps, channelId, channelType, - setEditingPost, - editPost, showReplies, onPressImage, onPressReplies, @@ -398,6 +390,9 @@ const Scroller = forwardRef( // we need to switch from 1 to 2 columns or vice versa. key={channelType} data={postsWithNeighbors} + // Disabled to prevent the user from accidentally blurring the edit + // input while they're typing. + scrollEnabled={!editingPost} renderItem={listRenderItem} ListEmptyComponent={renderEmptyComponent} keyExtractor={getPostId} @@ -476,13 +471,10 @@ const BaseScrollerItem = ({ showAuthor, Component, unreadCount, - editingPost, onLayout, channelId, channelType, setViewReactionsPost, - setEditingPost, - editPost, showReplies, onPressImage, onPressReplies, @@ -508,10 +500,7 @@ const BaseScrollerItem = ({ onPressImage?: (post: db.Post, imageUri?: string) => void; onPressReplies?: (post: db.Post) => void; showReplies?: boolean; - editingPost?: db.Post; setViewReactionsPost?: (post: db.Post) => void; - setEditingPost?: (post: db.Post | undefined) => void; - editPost?: (post: db.Post, content: Story) => Promise; onPressPost?: (post: db.Post) => void; onLongPressPost: (post: db.Post) => void; onPressRetry: (post: db.Post) => void; @@ -593,10 +582,7 @@ const BaseScrollerItem = ({ { const areOtherPropsEqual = prev.showAuthor === next.showAuthor && prev.showReplies === next.showReplies && - prev.editingPost === next.editingPost && - prev.editPost === next.editPost && - prev.setEditingPost === next.setEditingPost && prev.onPressReplies === next.onPressReplies && prev.onPressImage === next.onPressImage && prev.onPressPost === next.onPressPost && diff --git a/packages/ui/src/components/Channel/index.tsx b/packages/ui/src/components/Channel/index.tsx index 0265be2d15..4ac55bece1 100644 --- a/packages/ui/src/components/Channel/index.tsx +++ b/packages/ui/src/components/Channel/index.tsx @@ -306,7 +306,6 @@ export function Channel({ hasOlderPosts={hasOlderPosts} editingPost={editingPost} setEditingPost={setEditingPost} - editPost={editPost} channelType={channel.type} channelId={channel.id} firstUnreadId={ diff --git a/packages/ui/src/components/ChatMessage/ChatMessage.tsx b/packages/ui/src/components/ChatMessage/ChatMessage.tsx index 170df52dc4..04be373289 100644 --- a/packages/ui/src/components/ChatMessage/ChatMessage.tsx +++ b/packages/ui/src/components/ChatMessage/ChatMessage.tsx @@ -1,13 +1,10 @@ import * as db from '@tloncorp/shared/dist/db'; -import { Story } from '@tloncorp/shared/dist/urbit'; import { isEqual } from 'lodash'; import { ComponentProps, memo, useCallback, useMemo, useState } from 'react'; import { View, XStack, YStack } from 'tamagui'; import AuthorRow from '../AuthorRow'; import { Icon } from '../Icon'; -import { MessageInput } from '../MessageInput'; -import { ParentAgnosticKeyboardAvoidingView } from '../ParentAgnosticKeyboardAvoidingView'; import { createContentRenderer } from '../PostContent/ContentRenderer'; import { usePostContent } from '../PostContent/contentUtils'; import { SendPostRetrySheet } from '../SendPostRetrySheet'; @@ -26,9 +23,6 @@ const ChatMessage = ({ onPressRetry, onPressDelete, showReplies, - editing, - editPost, - setEditingPost, setViewReactionsPost, isHighlighted, }: { @@ -43,9 +37,6 @@ const ChatMessage = ({ onLongPress?: (post: db.Post) => void; onPressRetry?: (post: db.Post) => void; onPressDelete?: (post: db.Post) => void; - editing?: boolean; - editPost?: (post: db.Post, content: Story) => Promise; - setEditingPost?: (post: db.Post | undefined) => void; setViewReactionsPost?: (post: db.Post) => void; isHighlighted?: boolean; }) => { @@ -93,28 +84,6 @@ const ChatMessage = ({ setShowRetrySheet(false); }, [onPressDelete, post]); - const messageInputForEditing = useMemo( - () => ( - - {}} - clearDraft={() => {}} - getDraft={async () => ({})} - shouldBlur={false} - setShouldBlur={() => {}} - send={async () => {}} - channelId={post.channelId} - editingPost={post} - editPost={editPost} - setEditingPost={setEditingPost} - channelType="chat" - /> - - ), - [post, editPost, setEditingPost] - ); - const content = usePostContent(post); if (!post) { @@ -165,16 +134,12 @@ const ChatMessage = ({ /> ) : null} - {editing ? ( - messageInputForEditing - ) : ( - - )} + { const areOtherPropsEqual = prev.showAuthor === next.showAuthor && prev.showReplies === next.showReplies && - prev.editing === next.editing && - prev.editPost === next.editPost && - prev.setEditingPost === next.setEditingPost && prev.onPressReplies === next.onPressReplies && prev.onPressImage === next.onPressImage && prev.onLongPress === next.onLongPress && diff --git a/packages/ui/src/components/DetailView.tsx b/packages/ui/src/components/DetailView.tsx index d088e2ae5c..4e52e2c7fc 100644 --- a/packages/ui/src/components/DetailView.tsx +++ b/packages/ui/src/components/DetailView.tsx @@ -16,12 +16,6 @@ export interface DetailViewProps { children?: JSX.Element; editingPost?: db.Post; setEditingPost?: (post: db.Post | undefined) => void; - editPost?: ( - post: db.Post, - content: urbit.Story, - parentId?: string, - metadata?: db.PostMetadata - ) => Promise; posts?: db.Post[]; onPressImage?: (post: db.Post, imageUri?: string) => void; goBack?: () => void; @@ -37,7 +31,6 @@ export const DetailView = ({ initialPostUnread, editingPost, setEditingPost, - editPost, posts, onPressImage, onPressRetry, @@ -65,7 +58,6 @@ export const DetailView = ({ channelId={post.channelId} editingPost={editingPost} setEditingPost={setEditingPost} - editPost={editPost} posts={resolvedPosts ?? null} showReplies={false} showDividers={isChat} @@ -87,7 +79,6 @@ export const DetailView = ({ ); }, [ activeMessage, - editPost, editingPost, initialPostUnread, isChat, diff --git a/packages/ui/src/components/MessageInput/MessageInputBase.tsx b/packages/ui/src/components/MessageInput/MessageInputBase.tsx index bbdac3fcfd..de6c68c7f1 100644 --- a/packages/ui/src/components/MessageInput/MessageInputBase.tsx +++ b/packages/ui/src/components/MessageInput/MessageInputBase.tsx @@ -3,7 +3,8 @@ import { useCurrentSession } from '@tloncorp/shared/dist'; import * as db from '@tloncorp/shared/dist/db'; import { JSONContent, Story } from '@tloncorp/shared/dist/urbit'; import { ImagePickerAsset } from 'expo-image-picker'; -import { PropsWithChildren } from 'react'; +import { memo } from 'react'; +import { PropsWithChildren, useMemo } from 'react'; import { SpaceTokens } from 'tamagui'; import { ThemeTokens, View, XStack, YStack } from 'tamagui'; @@ -59,50 +60,52 @@ export interface MessageInputProps { }>; } -export const MessageInputContainer = ({ - children, - onPressSend, - setShouldBlur, - containerHeight, - showMentionPopup = false, - showAttachmentButton = true, - floatingActionButton = false, - disableSend = false, - mentionText, - groupMembers, - onSelectMention, - isSending, - isEditing = false, - cancelEditing, - onPressEdit, - goBack, -}: PropsWithChildren<{ - setShouldBlur: (shouldBlur: boolean) => void; - onPressSend: () => void; - containerHeight: number; - showMentionPopup?: boolean; - showAttachmentButton?: boolean; - floatingActionButton?: boolean; - disableSend?: boolean; - mentionText?: string; - groupMembers: db.ChatMember[]; - onSelectMention: (contact: db.Contact) => void; - isEditing?: boolean; - isSending?: boolean; - cancelEditing?: () => void; - onPressEdit?: () => void; - goBack?: () => void; -}>) => { - const currentSession = useCurrentSession(); - const isDisconnected = - !currentSession || currentSession.isReconnecting === true; - const { canUpload } = useAttachmentContext(); - if (isEditing) { +export const MessageInputContainer = memo( + ({ + children, + onPressSend, + setShouldBlur, + containerHeight, + showMentionPopup = false, + showAttachmentButton = true, + floatingActionButton = false, + disableSend = false, + mentionText, + groupMembers, + onSelectMention, + isSending, + isEditing = false, + cancelEditing, + onPressEdit, + goBack, + }: PropsWithChildren<{ + setShouldBlur: (shouldBlur: boolean) => void; + onPressSend: () => void; + containerHeight: number; + showMentionPopup?: boolean; + showAttachmentButton?: boolean; + floatingActionButton?: boolean; + disableSend?: boolean; + mentionText?: string; + groupMembers: db.ChatMember[]; + onSelectMention: (contact: db.Contact) => void; + isEditing?: boolean; + isSending?: boolean; + cancelEditing?: () => void; + onPressEdit?: () => void; + goBack?: () => void; + }>) => { + const currentSession = useCurrentSession(); + const isDisconnected = useMemo( + () => !currentSession || currentSession.isReconnecting === true, + [currentSession] + ); + const { canUpload } = useAttachmentContext(); + return ( - + {goBack ? ( + + + + ) : null} + + {isEditing ? ( + // using $2xs instead of $xs to match the padding of the attachment button + // might need to update the close icon? + + + + ) : null} + {canUpload && showAttachmentButton ? ( + + + + ) : null} {children} - - - + + ) : ( + + + + )} ); } +); - return ( - - - - {goBack ? ( - - - - ) : null} - {canUpload && showAttachmentButton ? ( - - - - ) : null} - {children} - {floatingActionButton ? ( - - {disableSend ? null : ( - } - /> - )} - - ) : ( - - - - )} - - - ); -}; +MessageInputContainer.displayName = 'MessageInputContainer'; diff --git a/packages/ui/src/components/MessageInput/index.native.tsx b/packages/ui/src/components/MessageInput/index.native.tsx index c5e93fcee5..b47c1cbf12 100644 --- a/packages/ui/src/components/MessageInput/index.native.tsx +++ b/packages/ui/src/components/MessageInput/index.native.tsx @@ -236,11 +236,13 @@ export const MessageInput = forwardRef( } }, [editor, ref]); + const lastEditingPost = useRef(editingPost); + useEffect(() => { if (!hasSetInitialContent && editorState.isReady) { try { getDraft().then((draft) => { - if (draft) { + if (!editingPost && draft) { const inlines = tiptap.JSONToInlines(draft); const newInlines = inlines .map((inline) => { @@ -255,12 +257,14 @@ export const MessageInput = forwardRef( .filter((inline) => inline !== null) as Inline[]; const newStory = constructStory(newInlines); const tiptapContent = tiptap.diaryMixedToJSON(newStory); + messageInputLogger.log('Setting draft content', tiptapContent); // @ts-expect-error setContent does accept JSONContent editor.setContent(tiptapContent); setEditorIsEmpty(false); } - if (editingPost?.content) { + if (editingPost && editingPost.content) { + messageInputLogger.log('Editing post', editingPost); const { story, references: postReferences, @@ -303,8 +307,13 @@ export const MessageInput = forwardRef( (c) => !('type' in c) && !('block' in c && 'image' in c.block) ) as Story ); + messageInputLogger.log( + 'Setting edit post content', + tiptapContent + ); // @ts-expect-error setContent does accept JSONContent editor.setContent(tiptapContent); + setEditorIsEmpty(false); } if (editingPost?.image) { @@ -334,6 +343,14 @@ export const MessageInput = forwardRef( addAttachment, ]); + useEffect(() => { + if (editingPost && lastEditingPost.current?.id !== editingPost.id) { + messageInputLogger.log('Editing post changed', editingPost); + lastEditingPost.current = editingPost; + setHasSetInitialContent(false); + } + }, [editingPost]); + useEffect(() => { if (editor && !shouldBlur && !editorState.isFocused && !!editingPost) { editor.focus(); @@ -348,6 +365,8 @@ export const MessageInput = forwardRef( }, [shouldBlur, editor, editorState, setShouldBlur]); useEffect(() => { + messageInputLogger.log('Checking if editor is empty'); + editor.getJSON().then((json: JSONContent) => { const inlines = tiptap .JSONToInlines(json) @@ -372,13 +391,18 @@ export const MessageInput = forwardRef( blocks.length === 0 && attachments.length === 0; + messageInputLogger.log('Editor is empty', isEmpty); + if (isEmpty !== editorIsEmpty) { + messageInputLogger.log('Setting editorIsEmpty', isEmpty); setEditorIsEmpty(isEmpty); + setContainerHeight(initialHeight); } }); - }, [editor, attachments, editorIsEmpty]); + }, [editor, attachments, editorIsEmpty, initialHeight]); editor._onContentUpdate = async () => { + messageInputLogger.log('Content updated'); const json = await editor.getJSON(); const inlines = ( tiptap @@ -404,6 +428,8 @@ export const MessageInput = forwardRef( setShowMentionPopup(false); } + messageInputLogger.log('Storing draft', json); + storeDraft(json); }; @@ -540,6 +566,7 @@ export const MessageInput = forwardRef( const newJson = tiptap.diaryMixedToJSON(newStory); + messageInputLogger.log('Setting new content', newJson); // @ts-expect-error setContent does accept JSONContent editor.setContent(newJson); storeDraft(newJson); @@ -844,6 +871,13 @@ export const MessageInput = forwardRef( const titleIsEmpty = useMemo(() => !title || title.length === 0, [title]); + const handleCancelEditing = useCallback(() => { + setEditingPost?.(undefined); + editor.setContent(''); + clearDraft(); + clearAttachments(); + }, [setEditingPost, editor, clearDraft, clearAttachments]); + return ( ( showMentionPopup={showMentionPopup} isEditing={!!editingPost} isSending={isSending} - cancelEditing={() => setEditingPost?.(undefined)} + cancelEditing={handleCancelEditing} showAttachmentButton={showAttachmentButton} floatingActionButton={floatingActionButton} disableSend={ diff --git a/packages/ui/src/components/PostScreenView.tsx b/packages/ui/src/components/PostScreenView.tsx index da1d975c60..04187cf716 100644 --- a/packages/ui/src/components/PostScreenView.tsx +++ b/packages/ui/src/components/PostScreenView.tsx @@ -121,7 +121,6 @@ export function PostScreenView({ onPressImage={handleGoToImage} editingPost={editingPost} setEditingPost={setEditingPost} - editPost={editPost} onPressRetry={onPressRetry} onPressDelete={onPressDelete} posts={postsWithoutParent} diff --git a/packages/ui/src/components/draftInputs/ChatInput.tsx b/packages/ui/src/components/draftInputs/ChatInput.tsx index fe01d11441..553d52953e 100644 --- a/packages/ui/src/components/draftInputs/ChatInput.tsx +++ b/packages/ui/src/components/draftInputs/ChatInput.tsx @@ -22,9 +22,6 @@ export function ChatInput({ shouldBlur, storeDraft, } = draftInputContext; - if (editingPost != null) { - return null; - } return ( From d38b11de83985b90adbf91a2bdc8820b384a3ed3 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Wed, 9 Oct 2024 10:37:26 -0500 Subject: [PATCH 49/77] mentions: fix bug with adding space after mentions on android --- .../components/MessageInput/index.native.tsx | 30 +++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/packages/ui/src/components/MessageInput/index.native.tsx b/packages/ui/src/components/MessageInput/index.native.tsx index c5e93fcee5..f6ab4c5c45 100644 --- a/packages/ui/src/components/MessageInput/index.native.tsx +++ b/packages/ui/src/components/MessageInput/index.native.tsx @@ -372,6 +372,8 @@ export const MessageInput = forwardRef( blocks.length === 0 && attachments.length === 0; + messageInputLogger.log('Editor is empty?', isEmpty); + if (isEmpty !== editorIsEmpty) { setEditorIsEmpty(isEmpty); } @@ -379,6 +381,10 @@ export const MessageInput = forwardRef( }, [editor, attachments, editorIsEmpty]); editor._onContentUpdate = async () => { + messageInputLogger.log( + 'Content updated, update draft and check for mention text' + ); + const json = await editor.getJSON(); const inlines = ( tiptap @@ -393,15 +399,17 @@ export const MessageInput = forwardRef( (inline) => typeof inline === 'string' && inline.match(/\B[~@]/) ) as string | undefined; // extract the mention text from the mention inline - const mentionText = mentionInline + const mentionTextFromInline = mentionInline ? mentionInline.slice((mentionInline.match(/\B[~@]/)?.index ?? -1) + 1) : null; - if (mentionText !== null) { + if (mentionTextFromInline !== null) { + messageInputLogger.log('Mention text', mentionTextFromInline); // if we have a mention text, we show the mention popup setShowMentionPopup(true); - setMentionText(mentionText); + setMentionText(mentionTextFromInline); } else { setShowMentionPopup(false); + setMentionText(''); } storeDraft(json); @@ -409,6 +417,7 @@ export const MessageInput = forwardRef( const handlePaste = useCallback( async (pastedText: string) => { + messageInputLogger.log('Pasted text', pastedText); // check for ref from pasted cite paths const citePathAttachment = await processReferenceAndUpdateEditor({ editor, @@ -486,6 +495,7 @@ export const MessageInput = forwardRef( const onSelectMention = useCallback( async (contact: db.Contact) => { + messageInputLogger.log('Selected mention', contact); const json = await editor.getJSON(); const inlines = tiptap.JSONToInlines(json); @@ -540,6 +550,20 @@ export const MessageInput = forwardRef( const newJson = tiptap.diaryMixedToJSON(newStory); + // insert empty text node after mention + newJson.content?.map((node) => { + const containsMention = node.content?.some( + (n) => n.type === 'mention' + ); + if (containsMention) { + node.content?.push({ + type: 'text', + text: ' ', + }); + } + }); + + messageInputLogger.log('onSelectMention, setting new content', newJson); // @ts-expect-error setContent does accept JSONContent editor.setContent(newJson); storeDraft(newJson); From 72251cbbb444b15cd78c486c5ac3f6b792a286ab Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Wed, 9 Oct 2024 14:10:02 -0500 Subject: [PATCH 50/77] refs: prevent race condition when processing ref paste --- packages/ui/src/components/MessageInput/helpers.ts | 8 +++++--- packages/ui/src/components/MessageInput/index.native.tsx | 4 ++++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/ui/src/components/MessageInput/helpers.ts b/packages/ui/src/components/MessageInput/helpers.ts index b42fd10e79..854cd917fe 100644 --- a/packages/ui/src/components/MessageInput/helpers.ts +++ b/packages/ui/src/components/MessageInput/helpers.ts @@ -4,6 +4,7 @@ import { createDevLogger, tiptap } from '@tloncorp/shared/dist'; import { Block, Inline, + JSONContent, constructStory, isInline, } from '@tloncorp/shared/dist/urbit'; @@ -14,10 +15,12 @@ const logger = createDevLogger('processReference', true); export async function processReferenceAndUpdateEditor({ editor, + editorJson, pastedText, matchRegex, processMatch, }: { + editorJson: JSONContent; editor: EditorBridge | Editor; pastedText: string; matchRegex: RegExp; @@ -29,14 +32,13 @@ export async function processReferenceAndUpdateEditor({ if (match) { logger.log('found match', match[0]); - const attachment = await processMatch(match[0]); + const attachment = processMatch(match[0]); if (attachment) { logger.log('extracted attachment', attachment); // remove the attachments corresponding text from the editor - const json = await editor.getJSON(); - const filteredJson = filterRegexFromJson(json, matchRegex); + const filteredJson = filterRegexFromJson(editorJson, matchRegex); logger.log(`updating editor`, filteredJson); if ('setContent' in editor) { diff --git a/packages/ui/src/components/MessageInput/index.native.tsx b/packages/ui/src/components/MessageInput/index.native.tsx index f6ab4c5c45..c2b971fb53 100644 --- a/packages/ui/src/components/MessageInput/index.native.tsx +++ b/packages/ui/src/components/MessageInput/index.native.tsx @@ -419,8 +419,10 @@ export const MessageInput = forwardRef( async (pastedText: string) => { messageInputLogger.log('Pasted text', pastedText); // check for ref from pasted cite paths + const editorJson = await editor.getJSON(); const citePathAttachment = await processReferenceAndUpdateEditor({ editor, + editorJson, pastedText, matchRegex: tiptap.REF_REGEX, processMatch: async (match) => { @@ -442,6 +444,7 @@ export const MessageInput = forwardRef( const DEEPLINK_REGEX = new RegExp(`^(https?://)?${branchDomain}/\\S+$`); const deepLinkAttachment = await processReferenceAndUpdateEditor({ editor, + editorJson, pastedText, matchRegex: DEEPLINK_REGEX, processMatch: async (deeplink) => { @@ -467,6 +470,7 @@ export const MessageInput = forwardRef( /^(https?:\/\/)?(tlon\.network\/lure\/)(0v[^/]+)$/; const lureLinkAttachment = await processReferenceAndUpdateEditor({ editor, + editorJson, pastedText, matchRegex: TLON_LURE_REGEX, processMatch: async (tlonLure) => { From e2068a8b7feb20cea62271dec4a80b6f160f08a5 Mon Sep 17 00:00:00 2001 From: Dan Brewster Date: Wed, 9 Oct 2024 16:22:23 -0400 Subject: [PATCH 51/77] fix sheet close animations (#4040) --- .../GenericActionSheet.fixture.tsx | 4 +++- packages/ui/src/components/ActionSheet.tsx | 22 ++++++++++++++++++- .../ui/src/components/ChatOptionsSheet.tsx | 7 ++++-- 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/apps/tlon-mobile/src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx b/apps/tlon-mobile/src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx index 892b78a4c0..a393ee2ef3 100644 --- a/apps/tlon-mobile/src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx +++ b/apps/tlon-mobile/src/fixtures/ActionSheet/GenericActionSheet.fixture.tsx @@ -3,10 +3,12 @@ import { ActionGroup, ActionSheet, } from '@tloncorp/ui/src/components/ActionSheet'; +import { useFixtureInput } from 'react-cosmos/client'; import { FixtureWrapper } from '../FixtureWrapper'; const ActionSheetFixture = () => { + const [open] = useFixtureInput('open', true); const actionGroups: ActionGroup[] = [ { accent: 'positive', @@ -67,7 +69,7 @@ const ActionSheetFixture = () => { console.log('Open Change', open)} > diff --git a/packages/ui/src/components/ActionSheet.tsx b/packages/ui/src/components/ActionSheet.tsx index 4973c95315..97c7662160 100644 --- a/packages/ui/src/components/ActionSheet.tsx +++ b/packages/ui/src/components/ActionSheet.tsx @@ -5,8 +5,10 @@ import { PropsWithChildren, ReactElement, useContext, + useEffect, useMemo, useRef, + useState, } from 'react'; import { Modal } from 'react-native'; import { useSafeAreaInsets } from 'react-native-safe-area-context'; @@ -87,12 +89,30 @@ const ActionSheetComponent = ({ hasOpened.current = true; } + // Delay hiding modal until sheet animation completes + const [modalIsVisible, setModalIsVisible] = useState(open); + useEffect(() => { + let timeout: ReturnType | null = null; + if (open) { + setModalIsVisible(true); + } else { + timeout = setTimeout(() => { + setModalIsVisible(false); + }, 800); + } + return () => { + if (timeout) { + clearTimeout(timeout); + } + }; + }, [open]); + // Sheets are heavy; we don't want to render until we need to if (!hasOpened.current) return null; return ( onOpenChange(false)} transparent animationType="none" diff --git a/packages/ui/src/components/ChatOptionsSheet.tsx b/packages/ui/src/components/ChatOptionsSheet.tsx index 45e9d81faa..e6b8f43b6c 100644 --- a/packages/ui/src/components/ChatOptionsSheet.tsx +++ b/packages/ui/src/components/ChatOptionsSheet.tsx @@ -41,6 +41,9 @@ const ChatOptionsSheetComponent = React.forwardRef< ChatOptionsSheetProps >(function ChatOptionsSheetImpl(props, ref) { const [open, setOpen] = useState(false); + const hasOpenedRef = useRef(open); + hasOpenedRef.current = hasOpenedRef.current || open; + const [chat, setChat] = useState<{ type: ChatType; id: string } | null>(null); useImperativeHandle( @@ -54,7 +57,7 @@ const ChatOptionsSheetComponent = React.forwardRef< [] ); - if (!chat || !open) { + if (!chat || !hasOpenedRef.current) { return null; } @@ -703,7 +706,7 @@ export function ChannelOptions({ } as ActionGroup, ] : []), - // TODO: redefine in a more readable way. + // TODO: redefine in a more readable way. ...(group && !['groupDm', 'dm'].includes(channel.type) && (group.privacy === 'public' || From 9472ca50c80cf70f3ad22c5ed60e0cfe3731a17d Mon Sep 17 00:00:00 2001 From: James Acklin Date: Wed, 9 Oct 2024 20:19:05 -0400 Subject: [PATCH 52/77] GroupMetaScreen, GroupSettingsStack: navigate to home on delete --- .../app/features/groups/GroupMetaScreen.tsx | 14 ++++++- .../app/navigation/GroupSettingsStack.tsx | 37 +++++++++++++++++-- 2 files changed, 46 insertions(+), 5 deletions(-) diff --git a/packages/app/features/groups/GroupMetaScreen.tsx b/packages/app/features/groups/GroupMetaScreen.tsx index a68289eb58..e6c0d6e6ec 100644 --- a/packages/app/features/groups/GroupMetaScreen.tsx +++ b/packages/app/features/groups/GroupMetaScreen.tsx @@ -14,7 +14,12 @@ import { BRANCH_DOMAIN, BRANCH_KEY } from '../../constants'; import { useGroupContext } from '../../hooks/useGroupContext'; import { GroupSettingsStackParamList } from '../../navigation/types'; -type Props = NativeStackScreenProps; +type Props = NativeStackScreenProps< + GroupSettingsStackParamList, + 'GroupMeta' +> & { + navigateToHome: () => void; +}; export function GroupMetaScreen(props: Props) { const { groupId } = props.route.params; @@ -49,6 +54,11 @@ export function GroupMetaScreen(props: Props) { setShowDeleteSheet(true); }, []); + const handleDeleteGroup = useCallback(() => { + deleteGroup(); + props.navigateToHome(); + }, [deleteGroup, props]); + return ( diff --git a/packages/app/navigation/GroupSettingsStack.tsx b/packages/app/navigation/GroupSettingsStack.tsx index b4e236aecf..d4d564dc6e 100644 --- a/packages/app/navigation/GroupSettingsStack.tsx +++ b/packages/app/navigation/GroupSettingsStack.tsx @@ -1,4 +1,8 @@ -import { createNativeStackNavigator } from '@react-navigation/native-stack'; +import { NavigationProp } from '@react-navigation/native'; +import { + NativeStackNavigationProp, + createNativeStackNavigator, +} from '@react-navigation/native-stack'; import { EditChannelScreen } from '../features/groups/EditChannelScreen'; import { GroupMembersScreen } from '../features/groups/GroupMembersScreen'; @@ -10,10 +14,37 @@ import { GroupSettingsStackParamList } from './types'; const GroupSettings = createNativeStackNavigator(); -export function GroupSettingsStack() { +type GroupMetaProps = { + navigation: NativeStackNavigationProp< + GroupSettingsStackParamList, + 'GroupMeta' + >; + route: { + key: string; + name: 'GroupMeta'; + params: { + groupId: string; + }; + }; +}; + +export function GroupSettingsStack({ + navigation, +}: { + navigation: NavigationProp; +}) { + const navigateToHome = () => { + navigation.navigate('ChatList' as never); + }; + return ( - + ( + + )} + /> Date: Thu, 10 Oct 2024 08:35:14 -0500 Subject: [PATCH 53/77] drafts: allow storage of different draft types for gallery channels --- packages/app/hooks/useChannelContext.ts | 48 ++++++++++++------- .../ui/src/components/BigInput.native.tsx | 1 + packages/ui/src/components/Channel/index.tsx | 8 ++-- .../MessageInput/MessageInputBase.tsx | 8 ++-- .../components/MessageInput/index.native.tsx | 17 ++++--- .../components/draftInputs/GalleryInput.tsx | 1 + .../ui/src/components/draftInputs/shared.ts | 8 ++-- 7 files changed, 57 insertions(+), 34 deletions(-) diff --git a/packages/app/hooks/useChannelContext.ts b/packages/app/hooks/useChannelContext.ts index d00b46a915..6c2add7dbc 100644 --- a/packages/app/hooks/useChannelContext.ts +++ b/packages/app/hooks/useChannelContext.ts @@ -67,20 +67,29 @@ export const useChannelContext = ({ // Draft - const getDraft = useCallback(async () => { - try { - const draft = await storage.load({ key: `draft-${draftKey}` }); + type GalleryDraftType = 'caption' | 'text'; - return draft; - } catch (e) { - return null; - } - }, [draftKey]); + const getDraft = useCallback( + async (draftType?: GalleryDraftType) => { + try { + const draft = await storage.load({ + key: `draft-${draftKey}${draftType ? `-${draftType}` : ''}`, + }); + return draft; + } catch (e) { + return null; + } + }, + [draftKey] + ); const storeDraft = useCallback( - async (draft: JSONContent) => { + async (draft: JSONContent, draftType?: GalleryDraftType) => { try { - await storage.save({ key: `draft-${draftKey}`, data: draft }); + await storage.save({ + key: `draft-${draftKey}${draftType ? `-${draftType}` : ''}`, + data: draft, + }); } catch (e) { return; } @@ -88,13 +97,18 @@ export const useChannelContext = ({ [draftKey] ); - const clearDraft = useCallback(async () => { - try { - await storage.remove({ key: `draft-${draftKey}` }); - } catch (e) { - return; - } - }, [draftKey]); + const clearDraft = useCallback( + async (draftType?: GalleryDraftType) => { + try { + await storage.remove({ + key: `draft-${draftKey}${draftType ? `-${draftType}` : ''}`, + }); + } catch (e) { + return; + } + }, + [draftKey] + ); // Contacts diff --git a/packages/ui/src/components/BigInput.native.tsx b/packages/ui/src/components/BigInput.native.tsx index 6c4507172d..93cd1354a9 100644 --- a/packages/ui/src/components/BigInput.native.tsx +++ b/packages/ui/src/components/BigInput.native.tsx @@ -155,6 +155,7 @@ export function BigInput({ placeholder={placeholder} bigInput channelType={channelType} + draftType={channelType === 'gallery' ? 'text' : undefined} ref={editorRef} /> diff --git a/packages/ui/src/components/Channel/index.tsx b/packages/ui/src/components/Channel/index.tsx index 4ac55bece1..6c14889b49 100644 --- a/packages/ui/src/components/Channel/index.tsx +++ b/packages/ui/src/components/Channel/index.tsx @@ -34,7 +34,7 @@ import { GalleryInput, NotebookInput, } from '../draftInputs'; -import { DraftInputHandle } from '../draftInputs/shared'; +import { DraftInputHandle, GalleryDraftType } from '../draftInputs/shared'; import { ChannelFooter } from './ChannelFooter'; import { ChannelHeader, ChannelHeaderItemsProvider } from './ChannelHeader'; import { DmInviteOptions } from './DmInviteOptions'; @@ -111,9 +111,9 @@ export function Channel({ usePostReference: typeof usePostReferenceHook; onGroupAction: (action: GroupPreviewAction, group: db.Group) => void; useChannel: typeof useChannelFromStore; - storeDraft: (draft: JSONContent) => void; - clearDraft: () => void; - getDraft: () => Promise; + storeDraft: (draft: JSONContent, draftType?: GalleryDraftType) => void; + clearDraft: (draftType?: GalleryDraftType) => void; + getDraft: (draftType?: GalleryDraftType) => Promise; editingPost?: db.Post; setEditingPost?: (post: db.Post | undefined) => void; editPost: (post: db.Post, content: Story) => Promise; diff --git a/packages/ui/src/components/MessageInput/MessageInputBase.tsx b/packages/ui/src/components/MessageInput/MessageInputBase.tsx index de6c68c7f1..b0a4cea204 100644 --- a/packages/ui/src/components/MessageInput/MessageInputBase.tsx +++ b/packages/ui/src/components/MessageInput/MessageInputBase.tsx @@ -13,6 +13,7 @@ import { Button } from '../Button'; import { FloatingActionButton } from '../FloatingActionButton'; import { Icon } from '../Icon'; import { LoadingSpinner } from '../LoadingSpinner'; +import { GalleryDraftType } from '../draftInputs/shared'; import AttachmentButton from './AttachmentButton'; import InputMentionPopup from './InputMentionPopup'; @@ -26,9 +27,9 @@ export interface MessageInputProps { ) => Promise; channelId: string; groupMembers: db.ChatMember[]; - storeDraft: (draft: JSONContent) => void; - clearDraft: () => void; - getDraft: () => Promise; + storeDraft: (draft: JSONContent, draftType?: GalleryDraftType) => void; + clearDraft: (draftType?: GalleryDraftType) => void; + getDraft: (draftType?: GalleryDraftType) => Promise; editingPost?: db.Post; setEditingPost?: (post: db.Post | undefined) => void; editPost?: ( @@ -44,6 +45,7 @@ export interface MessageInputProps { backgroundColor?: ThemeTokens; placeholder?: string; bigInput?: boolean; + draftType?: GalleryDraftType; title?: string; image?: ImagePickerAsset; showInlineAttachments?: boolean; diff --git a/packages/ui/src/components/MessageInput/index.native.tsx b/packages/ui/src/components/MessageInput/index.native.tsx index 5ce4e21521..e264259979 100644 --- a/packages/ui/src/components/MessageInput/index.native.tsx +++ b/packages/ui/src/components/MessageInput/index.native.tsx @@ -133,6 +133,7 @@ export const MessageInput = forwardRef( initialHeight = DEFAULT_MESSAGE_INPUT_HEIGHT, placeholder = 'Message', bigInput = false, + draftType, title, image, channelType, @@ -241,7 +242,7 @@ export const MessageInput = forwardRef( useEffect(() => { if (!hasSetInitialContent && editorState.isReady) { try { - getDraft().then((draft) => { + getDraft(draftType).then((draft) => { if (!editingPost && draft) { const inlines = tiptap.JSONToInlines(draft); const newInlines = inlines @@ -336,6 +337,7 @@ export const MessageInput = forwardRef( }, [ editor, getDraft, + draftType, hasSetInitialContent, editorState.isReady, editingPost, @@ -435,7 +437,7 @@ export const MessageInput = forwardRef( messageInputLogger.log('Storing draft', json); - storeDraft(json); + storeDraft(json, draftType); }; const handlePaste = useCallback( @@ -589,11 +591,11 @@ export const MessageInput = forwardRef( messageInputLogger.log('onSelectMention, setting new content', newJson); // @ts-expect-error setContent does accept JSONContent editor.setContent(newJson); - storeDraft(newJson); + storeDraft(newJson, draftType); setMentionText(''); setShowMentionPopup(false); }, - [editor, storeDraft] + [editor, storeDraft, draftType] ); const sendMessage = useCallback( @@ -691,7 +693,7 @@ export const MessageInput = forwardRef( onSend?.(); editor.setContent(''); clearAttachments(); - clearDraft(); + clearDraft(draftType); setShowBigInput?.(false); }, [ @@ -709,6 +711,7 @@ export const MessageInput = forwardRef( channelType, send, channelId, + draftType, ] ); @@ -894,9 +897,9 @@ export const MessageInput = forwardRef( const handleCancelEditing = useCallback(() => { setEditingPost?.(undefined); editor.setContent(''); - clearDraft(); + clearDraft(draftType); clearAttachments(); - }, [setEditingPost, editor, clearDraft, clearAttachments]); + }, [setEditingPost, editor, clearDraft, clearAttachments, draftType]); return ( void; + clearDraft: (draftType?: GalleryDraftType) => void; draftInputRef?: React.Ref; editPost: (post: db.Post, content: Story) => Promise; editingPost?: db.Post; - getDraft: () => Promise; + getDraft: (draftType?: GalleryDraftType) => Promise; group: db.Group | null; headerMode: 'default' | 'next'; @@ -45,5 +47,5 @@ export interface DraftInputContext { setEditingPost?: (update: db.Post | undefined) => void; setShouldBlur: Dispatch>; shouldBlur: boolean; - storeDraft: (content: JSONContent) => void; + storeDraft: (content: JSONContent, draftType?: GalleryDraftType) => void; } From 6b7559dbf1cebd5175d560cc69a212d7c09d51c7 Mon Sep 17 00:00:00 2001 From: James Acklin Date: Thu, 10 Oct 2024 12:27:48 -0400 Subject: [PATCH 54/77] ScreenHeader: default title width to 100%, conditionally truncate --- .../src/components/Channel/ChannelHeader.tsx | 13 +++++++++++++ .../src/components/GroupChannelsScreenView.tsx | 9 +++++++++ packages/ui/src/components/ScreenHeader.tsx | 18 +++++++++++++++--- 3 files changed, 37 insertions(+), 3 deletions(-) diff --git a/packages/ui/src/components/Channel/ChannelHeader.tsx b/packages/ui/src/components/Channel/ChannelHeader.tsx index 0426a7ac66..d7f8bbe69b 100644 --- a/packages/ui/src/components/Channel/ChannelHeader.tsx +++ b/packages/ui/src/components/Channel/ChannelHeader.tsx @@ -105,10 +105,23 @@ export function ChannelHeader({ return ; } + const titleWidth = () => { + if (showSearchButton && showMenuButton) { + return 55; + } else if (contextItems.length > 0 && showMenuButton) { + return 55; + } else if (showSearchButton || showMenuButton) { + return 75; + } else { + return 100; + } + }; + return ( <> } diff --git a/packages/ui/src/components/GroupChannelsScreenView.tsx b/packages/ui/src/components/GroupChannelsScreenView.tsx index f87cddbc76..b89ff31221 100644 --- a/packages/ui/src/components/GroupChannelsScreenView.tsx +++ b/packages/ui/src/components/GroupChannelsScreenView.tsx @@ -70,6 +70,14 @@ export function GroupChannelsScreenView({ [group] ); + const titleWidth = useCallback(() => { + if (isGroupAdmin) { + return 55; + } else { + return 75; + } + }, [isGroupAdmin]); + return ( diff --git a/packages/ui/src/components/ScreenHeader.tsx b/packages/ui/src/components/ScreenHeader.tsx index 7657c058bd..6fc6fc2a68 100644 --- a/packages/ui/src/components/ScreenHeader.tsx +++ b/packages/ui/src/components/ScreenHeader.tsx @@ -16,6 +16,7 @@ import { Text } from './TextV2'; export const ScreenHeaderComponent = ({ children, title, + titleWidth = 100, leftControls, rightControls, isLoading, @@ -23,6 +24,7 @@ export const ScreenHeaderComponent = ({ showSessionStatus, }: PropsWithChildren<{ title?: string | ReactNode; + titleWidth?: 100 | 75 | 55; leftControls?: ReactNode | null; rightControls?: ReactNode | null; isLoading?: boolean; @@ -42,13 +44,18 @@ export const ScreenHeaderComponent = ({ return ( {typeof resolvedTitle === 'string' ? ( - + ) : ( resolvedTitle )} @@ -102,9 +109,11 @@ const HeaderTitleText = styled(Text, { function HeaderTitle({ title, + titleWidth = 100, ...props }: { title: string; + titleWidth?: 100 | 75 | 55; } & ComponentProps) { const hasMounted = useHasMounted(); const renderedTitle = {title}; @@ -118,7 +127,10 @@ function HeaderTitle({ // it first enters. entering={hasMounted ? FadeInDown : undefined} exiting={FadeOutUp} - style={{ flex: 1 }} + style={{ + flex: 1, + maxWidth: `${titleWidth}%`, + }} > {renderedTitle} From cc0da4017835a1597ee3a5e9f5482557f447037c Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Thu, 10 Oct 2024 12:55:02 -0500 Subject: [PATCH 55/77] profile editing: autosave non-input fields --- .../features/settings/EditProfileScreen.tsx | 27 ++++--- .../src/components/EditProfileScreenView.tsx | 80 ++++++------------- 2 files changed, 39 insertions(+), 68 deletions(-) diff --git a/packages/app/features/settings/EditProfileScreen.tsx b/packages/app/features/settings/EditProfileScreen.tsx index a472b474d3..804af84fa9 100644 --- a/packages/app/features/settings/EditProfileScreen.tsx +++ b/packages/app/features/settings/EditProfileScreen.tsx @@ -1,5 +1,5 @@ +import { NativeStackScreenProps } from '@react-navigation/native-stack'; import * as api from '@tloncorp/shared/dist/api'; -import * as db from '@tloncorp/shared/dist/db'; import * as store from '@tloncorp/shared/dist/store'; import { AttachmentProvider, @@ -7,8 +7,6 @@ import { GroupsProvider, } from '@tloncorp/ui'; import { useCallback } from 'react'; -import { NativeStackScreenProps } from '@react-navigation/native-stack'; - import { RootStackParamList } from '../../navigation/types'; @@ -18,21 +16,23 @@ export function EditProfileScreen({ navigation }: Props) { const { data: groups } = store.useGroups({ includeUnjoined: true }); const onSaveProfile = useCallback( - (update: { - profile: api.ProfileUpdate | null; - pinnedGroups?: db.Group[] | null; - }) => { - if (update.profile) { - store.updateCurrentUserProfile(update.profile); - } - if (update.pinnedGroups) { - store.updateProfilePinnedGroups(update.pinnedGroups); + (update: api.ProfileUpdate | null) => { + if (update) { + store.updateCurrentUserProfile(update); } navigation.goBack(); }, [navigation] ); + const onUpdateCoverImage = useCallback((coverImage: string) => { + store.updateCurrentUserProfile({ coverImage }); + }, []); + + const onUpdateAvatarImage = useCallback((avatarImage: string) => { + store.updateCurrentUserProfile({ avatarImage }); + }, []); + const canUpload = store.useCanUpload(); return ( @@ -41,6 +41,9 @@ export function EditProfileScreen({ navigation }: Props) { navigation.goBack()} onSaveProfile={onSaveProfile} + onUpdatePinnedGroups={store.updateProfilePinnedGroups} + onUpdateCoverImage={onUpdateCoverImage} + onUpdateAvatarImage={onUpdateAvatarImage} /> diff --git a/packages/ui/src/components/EditProfileScreenView.tsx b/packages/ui/src/components/EditProfileScreenView.tsx index 2c124741b4..f5bc6b6124 100644 --- a/packages/ui/src/components/EditProfileScreenView.tsx +++ b/packages/ui/src/components/EditProfileScreenView.tsx @@ -9,20 +9,16 @@ import { ScrollView, View, YStack } from 'tamagui'; import { useContact, useCurrentUserId } from '../contexts'; import { EditablePofileImages } from './EditableProfileImages'; import { FavoriteGroupsDisplay } from './FavoriteGroupsDisplay'; -import { - ControlledField, - ControlledTextField, - ControlledTextareaField, -} from './Form'; +import { ControlledTextField, ControlledTextareaField, Field } from './Form'; import KeyboardAvoidingView from './KeyboardAvoidingView'; import { ScreenHeader } from './ScreenHeader'; interface Props { onGoBack: () => void; - onSaveProfile: (update: { - profile: api.ProfileUpdate | null; - pinnedGroups?: db.Group[] | null; - }) => void; + onSaveProfile: (update: api.ProfileUpdate | null) => void; + onUpdatePinnedGroups: (groups: db.Group[]) => void; + onUpdateCoverImage: (coverImage: string) => void; + onUpdateAvatarImage: (avatarImage: string) => void; } export function EditProfileScreenView(props: Props) { @@ -39,43 +35,20 @@ export function EditProfileScreenView(props: Props) { control, handleSubmit, formState: { errors, isDirty }, - setValue, } = useForm({ defaultValues: { nickname: userContact?.nickname ?? '', bio: userContact?.bio ?? '', - avatarImage: userContact?.avatarImage ?? '', - coverImage: userContact?.coverImage ?? '', - pinnedGroups: userContact?.pinnedGroups?.map((pin) => pin.group) ?? [], }, }); const onSavePressed = useCallback(() => { - // only pass pins to the save handler if changes were made - const initialPinnedIds = userContact?.pinnedGroups - ?.map((pin) => pin.group?.id) - .filter(Boolean) as string[]; - const newPinnedIds = pinnedGroups.map((group) => group.id); - const didEditPinnedGroups = - initialPinnedIds.length !== newPinnedIds.length || - !initialPinnedIds.every((id) => newPinnedIds.includes(id)); - if (isDirty) { return handleSubmit((formData) => { - props.onSaveProfile({ - profile: formData, - pinnedGroups: didEditPinnedGroups ? pinnedGroups : undefined, - }); + props.onSaveProfile(formData); })(); } - - if (didEditPinnedGroups) { - return props.onSaveProfile({ - profile: null, - pinnedGroups, - }); - } - }, [handleSubmit, isDirty, pinnedGroups, props, userContact?.pinnedGroups]); + }, [handleSubmit, isDirty, props]); const handlePressDone = () => { props.onGoBack(); @@ -86,6 +59,14 @@ export function EditProfileScreenView(props: Props) { props.onGoBack(); }; + const handleUpdatePinnedGroups = useCallback( + (groups: db.Group[]) => { + setPinnedGroups(groups); + props.onUpdatePinnedGroups(groups); + }, + [props] + ); + return ( - setValue('coverImage', url, { shouldDirty: true }), - [setValue] - )} - onSetIconUrl={useCallback( - (url: string) => - setValue('avatarImage', url, { shouldDirty: true }), - [setValue] - )} + onSetCoverUrl={props.onUpdateCoverImage} + onSetIconUrl={props.onUpdateAvatarImage} /> @@ -151,18 +124,13 @@ export function EditProfileScreenView(props: Props) { }} /> - ( - - )} - /> + + + From d4be2d4c669b0d1b6902b29e119d0c2502bbad54 Mon Sep 17 00:00:00 2001 From: James Acklin <748181+jamesacklin@users.noreply.github.com> Date: Thu, 10 Oct 2024 14:08:11 -0400 Subject: [PATCH 56/77] Update packages/app/navigation/GroupSettingsStack.tsx Co-authored-by: Patrick O'Sullivan --- packages/app/navigation/GroupSettingsStack.tsx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/app/navigation/GroupSettingsStack.tsx b/packages/app/navigation/GroupSettingsStack.tsx index d4d564dc6e..3b83ac5b6d 100644 --- a/packages/app/navigation/GroupSettingsStack.tsx +++ b/packages/app/navigation/GroupSettingsStack.tsx @@ -39,12 +39,11 @@ export function GroupSettingsStack({ return ( - ( + + {(props: GroupMetaProps) => ( )} - /> + Date: Thu, 10 Oct 2024 14:36:49 -0400 Subject: [PATCH 57/77] meta: add nightly mobile builds action --- .github/workflows/mobile-build-nightly.yml | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/mobile-build-nightly.yml diff --git a/.github/workflows/mobile-build-nightly.yml b/.github/workflows/mobile-build-nightly.yml new file mode 100644 index 0000000000..489ffcc2e6 --- /dev/null +++ b/.github/workflows/mobile-build-nightly.yml @@ -0,0 +1,34 @@ +name: Build Tlon Mobile Nightly +on: + schedule: + - cron: "0 0 * * *" + +jobs: + deploy: + runs-on: ubuntu-latest + name: Create mobile builds + steps: + - name: Check out repository + uses: actions/checkout@v4 + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version-file: .nvmrc + - name: Set up Expo and EAS + uses: expo/expo-github-action@v8 + with: + eas-version: latest + token: ${{ secrets.EXPO_TOKEN }} + - name: Setup PNPM + uses: pnpm/action-setup@v3 + - name: Install dependencies + run: pnpm install --frozen-lockfile + - name: Build for selected platforms + working-directory: ./apps/tlon-mobile + run: | + eas build --profile preview --platform all --non-interactive --auto-submit + env: + EXPO_APPLE_ID: ${{ secrets.EXPO_APPLE_ID }} + EXPO_APPLE_PASSWORD: ${{ secrets.EXPO_APPLE_PASSWORD }} + NOTIFY_PROVIDER: "binnec-dozzod-marnus" + NOTIFY_SERVICE: "tlon-preview-release" From 6cf8101b61ad255ca06008b52cd2f08e9ec8fc74 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Thu, 10 Oct 2024 13:43:34 -0500 Subject: [PATCH 58/77] retry send: make the whole message tappable --- packages/ui/src/components/AuthorRow.tsx | 11 +++++++++-- .../ui/src/components/ChatMessage/ChatMessage.tsx | 3 ++- packages/ui/src/components/SendPostRetrySheet.tsx | 1 + 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/packages/ui/src/components/AuthorRow.tsx b/packages/ui/src/components/AuthorRow.tsx index c14556900b..5290db67e0 100644 --- a/packages/ui/src/components/AuthorRow.tsx +++ b/packages/ui/src/components/AuthorRow.tsx @@ -94,11 +94,18 @@ export function ChatAuthorRow({ const firstRole = roles?.[0]; + const shouldTruncate = showEditedIndicator || firstRole || deliveryStatus === 'failed'; + return ( - + {timeDisplay && ( {timeDisplay} @@ -112,7 +119,7 @@ export function ChatAuthorRow({ {firstRole && } {deliveryStatus === 'failed' ? ( - Failed to send + Tap to retry ) : null} diff --git a/packages/ui/src/components/ChatMessage/ChatMessage.tsx b/packages/ui/src/components/ChatMessage/ChatMessage.tsx index 04be373289..9e29243f5b 100644 --- a/packages/ui/src/components/ChatMessage/ChatMessage.tsx +++ b/packages/ui/src/components/ChatMessage/ChatMessage.tsx @@ -56,7 +56,7 @@ const ChatMessage = ({ }, [onPress, post.deliveryStatus]); const handlePress = useCallback(() => { - if (onPress) { + if (onPress && post.deliveryStatus !== 'failed') { onPress(post); } else if (post.deliveryStatus === 'failed') { setShowRetrySheet(true); @@ -139,6 +139,7 @@ const ChatMessage = ({ isNotice={post.type === 'notice'} onPressImage={handleImagePressed} onLongPress={handleLongPress} + onPress={shouldHandlePress ? handlePress : undefined} /> diff --git a/packages/ui/src/components/SendPostRetrySheet.tsx b/packages/ui/src/components/SendPostRetrySheet.tsx index bc1804e9f9..d58a05df79 100644 --- a/packages/ui/src/components/SendPostRetrySheet.tsx +++ b/packages/ui/src/components/SendPostRetrySheet.tsx @@ -22,6 +22,7 @@ export const SendPostRetrySheet = ({ { title: 'Delete', action: onPressDelete, + accent: 'negative' }, ], [onPressRetry, onPressDelete] From 1e9c69c101c53e824b8ad431e7e57523ae349d61 Mon Sep 17 00:00:00 2001 From: Patrick O'Sullivan Date: Thu, 10 Oct 2024 13:49:41 -0500 Subject: [PATCH 59/77] chat: enable send button even if disconnected/reconnecting --- .../src/components/MessageInput/MessageInputBase.tsx | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/packages/ui/src/components/MessageInput/MessageInputBase.tsx b/packages/ui/src/components/MessageInput/MessageInputBase.tsx index de6c68c7f1..10eb2fc648 100644 --- a/packages/ui/src/components/MessageInput/MessageInputBase.tsx +++ b/packages/ui/src/components/MessageInput/MessageInputBase.tsx @@ -1,10 +1,9 @@ import type { EditorBridge } from '@10play/tentap-editor'; -import { useCurrentSession } from '@tloncorp/shared/dist'; import * as db from '@tloncorp/shared/dist/db'; import { JSONContent, Story } from '@tloncorp/shared/dist/urbit'; import { ImagePickerAsset } from 'expo-image-picker'; import { memo } from 'react'; -import { PropsWithChildren, useMemo } from 'react'; +import { PropsWithChildren } from 'react'; import { SpaceTokens } from 'tamagui'; import { ThemeTokens, View, XStack, YStack } from 'tamagui'; @@ -95,11 +94,6 @@ export const MessageInputContainer = memo( onPressEdit?: () => void; goBack?: () => void; }>) => { - const currentSession = useCurrentSession(); - const isDisconnected = useMemo( - () => !currentSession || currentSession.isReconnecting === true, - [currentSession] - ); const { canUpload } = useAttachmentContext(); return ( @@ -164,11 +158,11 @@ export const MessageInputContainer = memo( ) : (