mirror of
https://github.com/spacedriveapp/spacedrive
synced 2024-06-30 12:33:31 +00:00
[ENG-1067] Update phosphor to new package & update sort imports (#1330)
* ianvs > trivago * @phosphor-icons/react > phosphor-react
This commit is contained in:
parent
a53a61ea79
commit
fd8c0f87b3
|
@ -11,16 +11,19 @@ module.exports = {
|
||||||
quoteProps: 'consistent',
|
quoteProps: 'consistent',
|
||||||
importOrder: [
|
importOrder: [
|
||||||
// external packages
|
// external packages
|
||||||
'^([A-Za-z]|@[^s/])',
|
'<THIRD_PARTY_MODULES>',
|
||||||
// spacedrive packages
|
// spacedrive packages
|
||||||
'^@sd/(interface|client|ui)(/.*)?$',
|
'^@sd/(interface|client|ui)(/.*)?$',
|
||||||
// this package
|
// internal packages
|
||||||
|
'^@/',
|
||||||
'^~/',
|
'^~/',
|
||||||
|
'',
|
||||||
// relative
|
// relative
|
||||||
'^\\.'
|
'^[../]',
|
||||||
|
'^[./]'
|
||||||
],
|
],
|
||||||
importOrderSortSpecifiers: true,
|
importOrderParserPlugins: ['typescript', 'jsx', 'decorators-legacy'],
|
||||||
importOrderParserPlugins: ['importAssertions', 'typescript', 'jsx'],
|
importOrderTypeScriptVersion: '4.4.0',
|
||||||
plugins: ['@trivago/prettier-plugin-sort-imports', 'prettier-plugin-tailwindcss'],
|
tailwindConfig: './packages/ui/tailwind.config.js',
|
||||||
tailwindConfig: './packages/ui/tailwind.config.js'
|
plugins: ['@ianvs/prettier-plugin-sort-imports', 'prettier-plugin-tailwindcss']
|
||||||
};
|
};
|
||||||
|
|
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
|
@ -26,7 +26,7 @@
|
||||||
"tailwindcss",
|
"tailwindcss",
|
||||||
"tanstack",
|
"tanstack",
|
||||||
"titlebar",
|
"titlebar",
|
||||||
"trivago",
|
"ianvs",
|
||||||
"tsparticles",
|
"tsparticles",
|
||||||
"unlisten",
|
"unlisten",
|
||||||
"upsert",
|
"upsert",
|
||||||
|
|
|
@ -14,11 +14,13 @@ import {
|
||||||
OperatingSystem,
|
OperatingSystem,
|
||||||
Platform,
|
Platform,
|
||||||
PlatformProvider,
|
PlatformProvider,
|
||||||
SpacedriveInterface,
|
routes,
|
||||||
routes
|
SpacedriveInterface
|
||||||
} from '@sd/interface';
|
} from '@sd/interface';
|
||||||
import { getSpacedropState } from '@sd/interface/hooks/useSpacedropState';
|
import { getSpacedropState } from '@sd/interface/hooks/useSpacedropState';
|
||||||
|
|
||||||
import '@sd/ui/style';
|
import '@sd/ui/style';
|
||||||
|
|
||||||
import * as commands from './commands';
|
import * as commands from './commands';
|
||||||
|
|
||||||
// TODO: Bring this back once upstream is fixed up.
|
// TODO: Bring this back once upstream is fixed up.
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { sentryVitePlugin } from '@sentry/vite-plugin';
|
import { sentryVitePlugin } from '@sentry/vite-plugin';
|
||||||
import { Plugin, defineConfig, loadEnv, mergeConfig } from 'vite';
|
import { defineConfig, loadEnv, mergeConfig, Plugin } from 'vite';
|
||||||
|
|
||||||
import baseConfig from '../../packages/config/vite';
|
import baseConfig from '../../packages/config/vite';
|
||||||
|
|
||||||
const devtoolsPlugin: Plugin = {
|
const devtoolsPlugin: Plugin = {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import 'dotenv/config';
|
import 'dotenv/config';
|
||||||
|
|
||||||
import { Config } from 'drizzle-kit';
|
import { Config } from 'drizzle-kit';
|
||||||
|
|
||||||
// TODO: Using t3 env is too damn hard, thanks JS bs
|
// TODO: Using t3 env is too damn hard, thanks JS bs
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-ses": "^3.337.0",
|
"@aws-sdk/client-ses": "^3.337.0",
|
||||||
|
"@phosphor-icons/react": "^2.0.10",
|
||||||
"@planetscale/database": "^1.7.0",
|
"@planetscale/database": "^1.7.0",
|
||||||
"@react-three/drei": "^9.78.1",
|
"@react-three/drei": "^9.78.1",
|
||||||
"@react-three/fiber": "^8.13.4",
|
"@react-three/fiber": "^8.13.4",
|
||||||
|
@ -26,7 +27,6 @@
|
||||||
"md5": "^2.3.0",
|
"md5": "^2.3.0",
|
||||||
"next": "13.4.3",
|
"next": "13.4.3",
|
||||||
"next-contentlayer": "^0.3.2",
|
"next-contentlayer": "^0.3.2",
|
||||||
"phosphor-react": "^1.4.1",
|
|
||||||
"react": "18.2.0",
|
"react": "18.2.0",
|
||||||
"react-burger-menu": "^3.0.9",
|
"react-burger-menu": "^3.0.9",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { NextRequest } from 'next/server';
|
import { NextRequest } from 'next/server';
|
||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
|
||||||
import { env } from '~/env';
|
import { env } from '~/env';
|
||||||
|
|
||||||
export const runtime = 'edge';
|
export const runtime = 'edge';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { NextResponse } from 'next/server';
|
import { NextResponse } from 'next/server';
|
||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
|
||||||
import { env } from '~/env';
|
import { env } from '~/env';
|
||||||
|
|
||||||
const version = z.union([z.literal('stable'), z.literal('alpha')]);
|
const version = z.union([z.literal('stable'), z.literal('alpha')]);
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import type { NextRequest } from 'next/server';
|
import type { NextRequest } from 'next/server';
|
||||||
import { z } from 'zod';
|
import { z } from 'zod';
|
||||||
|
|
||||||
import { sendEmail } from '~/server/aws';
|
import { sendEmail } from '~/server/aws';
|
||||||
import { db, eq, waitlistTable } from '~/server/db';
|
import { db, eq, waitlistTable } from '~/server/db';
|
||||||
import { welcomeTemplate } from './welcomeEmail';
|
import { welcomeTemplate } from './welcomeEmail';
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { CaretRight, List, X } from 'phosphor-react';
|
import { CaretRight, List, X } from '@phosphor-icons/react';
|
||||||
import { PropsWithChildren, useState } from 'react';
|
import { PropsWithChildren, useState } from 'react';
|
||||||
import { slide as Menu } from 'react-burger-menu';
|
import { slide as Menu } from 'react-burger-menu';
|
||||||
import { Button } from '@sd/ui';
|
import { Button } from '@sd/ui';
|
||||||
|
|
||||||
import { DocsNavigation } from '~/utils/contentlayer';
|
import { DocsNavigation } from '~/utils/contentlayer';
|
||||||
import { toTitleCase } from '~/utils/util';
|
import { toTitleCase } from '~/utils/util';
|
||||||
import DocsSidebar from './DocsSidebar';
|
import DocsSidebar from './DocsSidebar';
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import clsx from 'clsx';
|
import clsx from 'clsx';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { SearchInput } from '@sd/ui';
|
import { SearchInput } from '@sd/ui';
|
||||||
|
|
||||||
import { DocsNavigation, iconConfig } from '~/utils/contentlayer';
|
import { DocsNavigation, iconConfig } from '~/utils/contentlayer';
|
||||||
import { toTitleCase } from '~/utils/util';
|
import { toTitleCase } from '~/utils/util';
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,10 @@ import clsx from 'clsx';
|
||||||
import Image from 'next/image';
|
import Image from 'next/image';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { NextRouter, useRouter } from 'next/router';
|
import { NextRouter, useRouter } from 'next/router';
|
||||||
import { Book, Chat, DotsThreeVertical, MapPin, User } from 'phosphor-react';
|
import { Book, Chat, DotsThreeVertical, MapPin, User } from '@phosphor-icons/react';
|
||||||
import { PropsWithChildren, useEffect, useState } from 'react';
|
import { PropsWithChildren, useEffect, useState } from 'react';
|
||||||
import { Button, Dropdown } from '@sd/ui';
|
import { Button, Dropdown } from '@sd/ui';
|
||||||
|
|
||||||
import { positions } from '~/pages/careers';
|
import { positions } from '~/pages/careers';
|
||||||
import { getWindow } from '~/utils/util';
|
import { getWindow } from '~/utils/util';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import { PointMaterial, Points, Trail } from '@react-three/drei';
|
import { PointMaterial, Points, Trail } from '@react-three/drei';
|
||||||
import { Canvas, useFrame } from '@react-three/fiber';
|
import { Canvas, useFrame } from '@react-three/fiber';
|
||||||
import { inSphere as randomInSphere } from 'maath/random';
|
import { inSphere as randomInSphere } from 'maath/random';
|
||||||
import { type FunctionComponent, useRef, useState } from 'react';
|
import { useRef, useState, type FunctionComponent } from 'react';
|
||||||
import { Color, type Mesh } from 'three';
|
import { Color, type Mesh } from 'three';
|
||||||
|
|
||||||
const Stars = (props: any) => {
|
const Stars = (props: any) => {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import clsx from 'clsx';
|
import clsx from 'clsx';
|
||||||
import MarkdownToJsx from 'markdown-to-jsx';
|
import MarkdownToJsx from 'markdown-to-jsx';
|
||||||
import { Fire, Info } from 'phosphor-react';
|
import { Fire, Info } from '@phosphor-icons/react';
|
||||||
|
|
||||||
type NoticeProps = {
|
type NoticeProps = {
|
||||||
title?: string;
|
title?: string;
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import NextImage, { ImageProps } from 'next/image';
|
import NextImage, { ImageProps } from 'next/image';
|
||||||
|
|
||||||
import Notice from './Notice';
|
import Notice from './Notice';
|
||||||
|
|
||||||
const Image = (props: ImageProps) => <NextImage {...props} />;
|
const Image = (props: ImageProps) => <NextImage {...props} />;
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import { useRouter } from 'next/router';
|
import { useRouter } from 'next/router';
|
||||||
import { SmileyXEyes } from 'phosphor-react';
|
import { SmileyXEyes } from '@phosphor-icons/react';
|
||||||
import { Button } from '@sd/ui';
|
import { Button } from '@sd/ui';
|
||||||
|
|
||||||
import Markdown from '~/components/Markdown';
|
import Markdown from '~/components/Markdown';
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import type { AppProps } from 'next/app';
|
import type { AppProps } from 'next/app';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Script from 'next/script';
|
import Script from 'next/script';
|
||||||
|
|
||||||
import '@sd/ui/style';
|
import '@sd/ui/style';
|
||||||
import '~/styles/prism.css';
|
import '~/styles/prism.css';
|
||||||
import '~/styles/style.scss';
|
import '~/styles/style.scss';
|
||||||
|
|
|
@ -3,9 +3,10 @@ import { InferGetStaticPropsType } from 'next';
|
||||||
import { useMDXComponent } from 'next-contentlayer/hooks';
|
import { useMDXComponent } from 'next-contentlayer/hooks';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Image from 'next/image';
|
import Image from 'next/image';
|
||||||
|
|
||||||
import { BlogTag } from '~/components/BlogTag';
|
import { BlogTag } from '~/components/BlogTag';
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
|
||||||
import { BlogMDXComponents } from '~/components/mdx';
|
import { BlogMDXComponents } from '~/components/mdx';
|
||||||
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
|
|
||||||
export async function getStaticPaths() {
|
export async function getStaticPaths() {
|
||||||
const paths = allPosts.map((post) => post.url);
|
const paths = allPosts.map((post) => post.url);
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { InferGetStaticPropsType } from 'next';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Image from 'next/image';
|
import Image from 'next/image';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
|
|
||||||
import { BlogTag } from '~/components/BlogTag';
|
import { BlogTag } from '~/components/BlogTag';
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
|
|
||||||
|
|
|
@ -9,9 +9,10 @@ import {
|
||||||
Smiley,
|
Smiley,
|
||||||
Star,
|
Star,
|
||||||
TrendUp
|
TrendUp
|
||||||
} from 'phosphor-react';
|
} from '@phosphor-icons/react';
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { Button } from '@sd/ui';
|
import { Button } from '@sd/ui';
|
||||||
|
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
|
|
||||||
interface PositionPosting {
|
interface PositionPosting {
|
||||||
|
|
|
@ -1,15 +1,16 @@
|
||||||
import { Github } from '@sd/assets/svgs/brands';
|
|
||||||
import { allDocs } from '@contentlayer/generated';
|
import { allDocs } from '@contentlayer/generated';
|
||||||
|
import { Github } from '@sd/assets/svgs/brands';
|
||||||
import { InferGetStaticPropsType } from 'next';
|
import { InferGetStaticPropsType } from 'next';
|
||||||
import { useMDXComponent } from 'next-contentlayer/hooks';
|
import { useMDXComponent } from 'next-contentlayer/hooks';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { CaretRight } from 'phosphor-react';
|
import { CaretRight } from '@phosphor-icons/react';
|
||||||
import { PropsWithChildren } from 'react';
|
import { PropsWithChildren } from 'react';
|
||||||
|
|
||||||
import DocsLayout from '~/components/DocsLayout';
|
import DocsLayout from '~/components/DocsLayout';
|
||||||
import Markdown from '~/components/Markdown';
|
import Markdown from '~/components/Markdown';
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
|
||||||
import { DocMDXComponents } from '~/components/mdx';
|
import { DocMDXComponents } from '~/components/mdx';
|
||||||
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
import { getDocsNavigation } from '~/utils/contentlayer';
|
import { getDocsNavigation } from '~/utils/contentlayer';
|
||||||
import { toTitleCase } from '~/utils/util';
|
import { toTitleCase } from '~/utils/util';
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { allDocs } from '@contentlayer/generated';
|
||||||
import { InferGetStaticPropsType } from 'next';
|
import { InferGetStaticPropsType } from 'next';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
|
|
||||||
import DocsLayout from '~/components/DocsLayout';
|
import DocsLayout from '~/components/DocsLayout';
|
||||||
import Markdown from '~/components/Markdown';
|
import Markdown from '~/components/Markdown';
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
|
|
|
@ -4,6 +4,7 @@ import Head from 'next/head';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { useRouter } from 'next/router';
|
import { useRouter } from 'next/router';
|
||||||
import { useEffect, useState } from 'react';
|
import { useEffect, useState } from 'react';
|
||||||
|
|
||||||
import AppImage from '~/components/AppImage';
|
import AppImage from '~/components/AppImage';
|
||||||
import HomeCTA from '~/components/HomeCTA';
|
import HomeCTA from '~/components/HomeCTA';
|
||||||
import NewBanner from '~/components/NewBanner';
|
import NewBanner from '~/components/NewBanner';
|
||||||
|
|
|
@ -2,6 +2,7 @@ import clsx from 'clsx';
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { Fragment } from 'react';
|
import { Fragment } from 'react';
|
||||||
|
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
|
|
||||||
const items = [
|
const items = [
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import Head from 'next/head';
|
import Head from 'next/head';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { ArrowRight } from 'phosphor-react';
|
import { ArrowRight } from '@phosphor-icons/react';
|
||||||
|
|
||||||
import Markdown from '~/components/Markdown';
|
import Markdown from '~/components/Markdown';
|
||||||
import PageWrapper from '~/components/PageWrapper';
|
import PageWrapper from '~/components/PageWrapper';
|
||||||
import { TeamMember, TeamMemberProps } from '~/components/TeamMember';
|
import { TeamMember, TeamMemberProps } from '~/components/TeamMember';
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { SESClient, SendEmailCommand } from '@aws-sdk/client-ses';
|
import { SendEmailCommand, SESClient } from '@aws-sdk/client-ses';
|
||||||
|
|
||||||
import { env } from '~/env';
|
import { env } from '~/env';
|
||||||
|
|
||||||
export const ses = new SESClient({
|
export const ses = new SESClient({
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { connect } from '@planetscale/database';
|
import { connect } from '@planetscale/database';
|
||||||
import { mysqlTable, serial, timestamp, varchar } from 'drizzle-orm/mysql-core';
|
import { mysqlTable, serial, timestamp, varchar } from 'drizzle-orm/mysql-core';
|
||||||
import { drizzle } from 'drizzle-orm/planetscale-serverless';
|
import { drizzle } from 'drizzle-orm/planetscale-serverless';
|
||||||
|
|
||||||
import { env } from '~/env';
|
import { env } from '~/env';
|
||||||
|
|
||||||
export { and, eq, or, type InferModel } from 'drizzle-orm';
|
export { and, eq, or, type InferModel } from 'drizzle-orm';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { Doc, DocumentTypes } from '@contentlayer/generated';
|
import { Doc, DocumentTypes } from '@contentlayer/generated';
|
||||||
import { Circle, Cube, Icon, Sparkle, Star } from 'phosphor-react';
|
import { Circle, Cube, Icon, Sparkle, Star } from '@phosphor-icons/react';
|
||||||
|
|
||||||
import { toTitleCase } from './util';
|
import { toTitleCase } from './util';
|
||||||
|
|
||||||
type DocsCategory = {
|
type DocsCategory = {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { registerRootComponent } from 'expo';
|
import { registerRootComponent } from 'expo';
|
||||||
|
|
||||||
import { AppWrapper } from './src/main';
|
import { AppWrapper } from './src/main';
|
||||||
|
|
||||||
registerRootComponent(AppWrapper);
|
registerRootComponent(AppWrapper);
|
||||||
|
|
|
@ -18,17 +18,18 @@ import { SafeAreaProvider } from 'react-native-safe-area-context';
|
||||||
import { useSnapshot } from 'valtio';
|
import { useSnapshot } from 'valtio';
|
||||||
import {
|
import {
|
||||||
ClientContextProvider,
|
ClientContextProvider,
|
||||||
|
initPlausible,
|
||||||
LibraryContextProvider,
|
LibraryContextProvider,
|
||||||
NotificationContextProvider,
|
NotificationContextProvider,
|
||||||
P2PContextProvider,
|
P2PContextProvider,
|
||||||
RspcProvider,
|
RspcProvider,
|
||||||
initPlausible,
|
|
||||||
useClientContext,
|
useClientContext,
|
||||||
useInvalidateQuery,
|
useInvalidateQuery,
|
||||||
usePlausibleEvent,
|
usePlausibleEvent,
|
||||||
usePlausiblePageViewMonitor,
|
usePlausiblePageViewMonitor,
|
||||||
usePlausiblePingMonitor
|
usePlausiblePingMonitor
|
||||||
} from '@sd/client';
|
} from '@sd/client';
|
||||||
|
|
||||||
import { GlobalModals } from './components/modal/GlobalModals';
|
import { GlobalModals } from './components/modal/GlobalModals';
|
||||||
import { useTheme } from './hooks/useTheme';
|
import { useTheme } from './hooks/useTheme';
|
||||||
import { changeTwTheme, tw } from './lib/tailwind';
|
import { changeTwTheme, tw } from './lib/tailwind';
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { MotiView } from 'moti';
|
import { MotiView } from 'moti';
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { View } from 'react-native';
|
import { View } from 'react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
type ProgressBarProps = {
|
type ProgressBarProps = {
|
||||||
|
|
|
@ -7,6 +7,7 @@ import Animated, {
|
||||||
useSharedValue,
|
useSharedValue,
|
||||||
withTiming
|
withTiming
|
||||||
} from 'react-native-reanimated';
|
} from 'react-native-reanimated';
|
||||||
|
|
||||||
import Layout from '~/constants/Layout';
|
import Layout from '~/constants/Layout';
|
||||||
|
|
||||||
type MotiViewProps = PropsWithChildren<ViewProps>;
|
type MotiViewProps = PropsWithChildren<ViewProps>;
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import { AppLogo } from '@sd/assets/images';
|
|
||||||
import { DrawerContentScrollView } from '@react-navigation/drawer';
|
import { DrawerContentScrollView } from '@react-navigation/drawer';
|
||||||
import { DrawerContentComponentProps } from '@react-navigation/drawer/lib/typescript/src/types';
|
import { DrawerContentComponentProps } from '@react-navigation/drawer/lib/typescript/src/types';
|
||||||
|
import { AppLogo } from '@sd/assets/images';
|
||||||
import { CheckCircle, Gear } from 'phosphor-react-native';
|
import { CheckCircle, Gear } from 'phosphor-react-native';
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { Image, Platform, Pressable, Text, View } from 'react-native';
|
import { Image, Platform, Pressable, Text, View } from 'react-native';
|
||||||
import { JobManagerContextProvider, useLibraryQuery } from '@sd/client';
|
import { JobManagerContextProvider, useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import Layout from '~/constants/Layout';
|
import Layout from '~/constants/Layout';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { getStackNameFromState } from '~/utils/nav';
|
import { getStackNameFromState } from '~/utils/nav';
|
||||||
|
|
|
@ -5,6 +5,7 @@ import { CaretRight, Gear, Lock, Plus } from 'phosphor-react-native';
|
||||||
import { useEffect, useRef, useState } from 'react';
|
import { useEffect, useRef, useState } from 'react';
|
||||||
import { Alert, Pressable, Text, View } from 'react-native';
|
import { Alert, Pressable, Text, View } from 'react-native';
|
||||||
import { useClientContext } from '@sd/client';
|
import { useClientContext } from '@sd/client';
|
||||||
|
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { currentLibraryStore } from '~/utils/nav';
|
import { currentLibraryStore } from '~/utils/nav';
|
||||||
import { AnimatedHeight } from '../animation/layout';
|
import { AnimatedHeight } from '../animation/layout';
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { useNavigation } from '@react-navigation/native';
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { Pressable, Text, View } from 'react-native';
|
import { Pressable, Text, View } from 'react-native';
|
||||||
import { useLibraryQuery } from '@sd/client';
|
import { useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import { ModalRef } from '~/components/layout/Modal';
|
import { ModalRef } from '~/components/layout/Modal';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import FolderIcon from '../icons/FolderIcon';
|
import FolderIcon from '../icons/FolderIcon';
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { useNavigation } from '@react-navigation/native';
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { ColorValue, Pressable, Text, View } from 'react-native';
|
import { ColorValue, Pressable, Text, View } from 'react-native';
|
||||||
import { useLibraryQuery } from '@sd/client';
|
import { useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import { ModalRef } from '~/components/layout/Modal';
|
import { ModalRef } from '~/components/layout/Modal';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import CollapsibleView from '../layout/CollapsibleView';
|
import CollapsibleView from '../layout/CollapsibleView';
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import { FlashList } from '@shopify/flash-list';
|
|
||||||
import { useNavigation } from '@react-navigation/native';
|
import { useNavigation } from '@react-navigation/native';
|
||||||
|
import { FlashList } from '@shopify/flash-list';
|
||||||
import { Rows, SquaresFour } from 'phosphor-react-native';
|
import { Rows, SquaresFour } from 'phosphor-react-native';
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { Pressable, View } from 'react-native';
|
import { Pressable, View } from 'react-native';
|
||||||
import { type ExplorerItem, isPath } from '@sd/client';
|
import { isPath, type ExplorerItem } from '@sd/client';
|
||||||
|
|
||||||
import SortByMenu from '~/components/menu/SortByMenu';
|
import SortByMenu from '~/components/menu/SortByMenu';
|
||||||
import Layout from '~/constants/Layout';
|
import Layout from '~/constants/Layout';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
import { ExplorerItem, getItemFilePath } from '@sd/client';
|
import { ExplorerItem, getItemFilePath } from '@sd/client';
|
||||||
|
|
||||||
import Layout from '~/constants/Layout';
|
import Layout from '~/constants/Layout';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { getExplorerStore } from '~/stores/explorerStore';
|
import { getExplorerStore } from '~/stores/explorerStore';
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
import { ExplorerItem, getItemFilePath } from '@sd/client';
|
import { ExplorerItem, getItemFilePath } from '@sd/client';
|
||||||
|
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { getExplorerStore } from '~/stores/explorerStore';
|
import { getExplorerStore } from '~/stores/explorerStore';
|
||||||
import FileThumb from './FileThumb';
|
import FileThumb from './FileThumb';
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
import { getIcon } from '@sd/assets/util';
|
import { getIcon } from '@sd/assets/util';
|
||||||
import { type PropsWithChildren, useEffect, useLayoutEffect, useMemo, useState } from 'react';
|
import { useEffect, useLayoutEffect, useMemo, useState, type PropsWithChildren } from 'react';
|
||||||
import { Image, View } from 'react-native';
|
import { Image, View } from 'react-native';
|
||||||
import { DocumentDirectoryPath } from 'react-native-fs';
|
import { DocumentDirectoryPath } from 'react-native-fs';
|
||||||
import {
|
import {
|
||||||
type ExplorerItem,
|
|
||||||
getExplorerItemData,
|
getExplorerItemData,
|
||||||
getItemFilePath,
|
getItemFilePath,
|
||||||
getItemLocation,
|
getItemLocation,
|
||||||
isDarkTheme
|
isDarkTheme,
|
||||||
|
type ExplorerItem
|
||||||
} from '@sd/client';
|
} from '@sd/client';
|
||||||
|
|
||||||
import { flattenThumbnailKey, useExplorerStore } from '~/stores/explorerStore';
|
import { flattenThumbnailKey, useExplorerStore } from '~/stores/explorerStore';
|
||||||
import { tw } from '../../lib/tailwind';
|
import { tw } from '../../lib/tailwind';
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ import {
|
||||||
isPath,
|
isPath,
|
||||||
useLibraryQuery
|
useLibraryQuery
|
||||||
} from '@sd/client';
|
} from '@sd/client';
|
||||||
|
|
||||||
import { InfoPill, PlaceholderPill } from '~/components/primitive/InfoPill';
|
import { InfoPill, PlaceholderPill } from '~/components/primitive/InfoPill';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import WheelColorPicker from 'react-native-wheel-color-picker';
|
import WheelColorPicker from 'react-native-wheel-color-picker';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
type ColorPickerProps = {
|
type ColorPickerProps = {
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import { BottomSheetTextInput } from '@gorhom/bottom-sheet';
|
import { BottomSheetTextInput } from '@gorhom/bottom-sheet';
|
||||||
import { VariantProps, cva } from 'class-variance-authority';
|
import { cva, VariantProps } from 'class-variance-authority';
|
||||||
import { Eye, EyeSlash } from 'phosphor-react-native';
|
import { Eye, EyeSlash } from 'phosphor-react-native';
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { Pressable, TextInputProps as RNTextInputProps, TextInput, View } from 'react-native';
|
import { Pressable, TextInputProps as RNTextInputProps, TextInput, View } from 'react-native';
|
||||||
|
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
const input = cva(['rounded-md border text-sm leading-tight shadow-sm'], {
|
const input = cva(['rounded-md border text-sm leading-tight shadow-sm'], {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { FC } from 'react';
|
import { FC } from 'react';
|
||||||
import { Switch as RNSwitch, SwitchProps, Text, View } from 'react-native';
|
import { Switch as RNSwitch, SwitchProps, Text, View } from 'react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
export const Switch: FC<SwitchProps> = ({ ...props }) => {
|
export const Switch: FC<SwitchProps> = ({ ...props }) => {
|
||||||
|
|
|
@ -5,6 +5,7 @@ import { MotiView } from 'moti';
|
||||||
import { List } from 'phosphor-react-native';
|
import { List } from 'phosphor-react-native';
|
||||||
import { Pressable, Text, View } from 'react-native';
|
import { Pressable, Text, View } from 'react-native';
|
||||||
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
||||||
|
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
// Default header with search bar and button to open drawer
|
// Default header with search bar and button to open drawer
|
||||||
|
|
|
@ -11,6 +11,7 @@ import {
|
||||||
import { memo } from 'react';
|
import { memo } from 'react';
|
||||||
import { View, ViewStyle } from 'react-native';
|
import { View, ViewStyle } from 'react-native';
|
||||||
import { JobProgressEvent, JobReport, useJobInfo } from '@sd/client';
|
import { JobProgressEvent, JobReport, useJobInfo } from '@sd/client';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { ProgressBar } from '../animation/ProgressBar';
|
import { ProgressBar } from '../animation/ProgressBar';
|
||||||
import JobContainer from './JobContainer';
|
import JobContainer from './JobContainer';
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { Icon } from 'phosphor-react-native';
|
||||||
import { Fragment } from 'react';
|
import { Fragment } from 'react';
|
||||||
import { Image, Text, View, ViewStyle } from 'react-native';
|
import { Image, Text, View, ViewStyle } from 'react-native';
|
||||||
import { TextItems } from '@sd/client';
|
import { TextItems } from '@sd/client';
|
||||||
|
|
||||||
import { styled, tw, twStyle } from '~/lib/tailwind';
|
import { styled, tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
type JobContainerProps = {
|
type JobContainerProps = {
|
||||||
|
|
|
@ -5,17 +5,18 @@ import { useMemo, useState } from 'react';
|
||||||
import { Animated, Pressable, View } from 'react-native';
|
import { Animated, Pressable, View } from 'react-native';
|
||||||
import { Swipeable } from 'react-native-gesture-handler';
|
import { Swipeable } from 'react-native-gesture-handler';
|
||||||
import {
|
import {
|
||||||
|
getJobNiceActionName,
|
||||||
|
getTotalTasks,
|
||||||
JobGroup,
|
JobGroup,
|
||||||
JobProgressEvent,
|
JobProgressEvent,
|
||||||
JobReport,
|
JobReport,
|
||||||
getJobNiceActionName,
|
|
||||||
getTotalTasks,
|
|
||||||
useLibraryMutation,
|
useLibraryMutation,
|
||||||
useTotalElapsedTimeText
|
useTotalElapsedTimeText
|
||||||
} from '@sd/client';
|
} from '@sd/client';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { ProgressBar } from '../animation/ProgressBar';
|
|
||||||
import { AnimatedHeight } from '../animation/layout';
|
import { AnimatedHeight } from '../animation/layout';
|
||||||
|
import { ProgressBar } from '../animation/ProgressBar';
|
||||||
import { Button } from '../primitive/Button';
|
import { Button } from '../primitive/Button';
|
||||||
import Job from './Job';
|
import Job from './Job';
|
||||||
import JobContainer from './JobContainer';
|
import JobContainer from './JobContainer';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { Text, View, ViewStyle } from 'react-native';
|
import { Text, View, ViewStyle } from 'react-native';
|
||||||
import { getPasswordStrength } from '@sd/client';
|
import { getPasswordStrength } from '@sd/client';
|
||||||
|
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
// NOTE: Lazy load this component.
|
// NOTE: Lazy load this component.
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { View, ViewProps } from 'react-native';
|
import { View, ViewProps } from 'react-native';
|
||||||
|
|
||||||
import { twStyle } from '~/lib/tailwind';
|
import { twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
type CardProps = {
|
type CardProps = {
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { MotiView } from 'moti';
|
||||||
import { CaretRight } from 'phosphor-react-native';
|
import { CaretRight } from 'phosphor-react-native';
|
||||||
import { PropsWithChildren, useReducer } from 'react';
|
import { PropsWithChildren, useReducer } from 'react';
|
||||||
import { Pressable, StyleProp, Text, TextStyle, View, ViewStyle } from 'react-native';
|
import { Pressable, StyleProp, Text, TextStyle, View, ViewStyle } from 'react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { AnimatedHeight } from '../animation/layout';
|
import { AnimatedHeight } from '../animation/layout';
|
||||||
|
|
||||||
|
|
|
@ -9,8 +9,9 @@ import {
|
||||||
BottomSheetScrollView
|
BottomSheetScrollView
|
||||||
} from '@gorhom/bottom-sheet';
|
} from '@gorhom/bottom-sheet';
|
||||||
import { X } from 'phosphor-react-native';
|
import { X } from 'phosphor-react-native';
|
||||||
import { ReactNode, forwardRef } from 'react';
|
import { forwardRef, ReactNode } from 'react';
|
||||||
import { Pressable, Text, View } from 'react-native';
|
import { Pressable, Text, View } from 'react-native';
|
||||||
|
|
||||||
import useForwardedRef from '~/hooks/useForwardedRef';
|
import useForwardedRef from '~/hooks/useForwardedRef';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { Button } from '../primitive/Button';
|
import { Button } from '../primitive/Button';
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { ArrowDown, ArrowUp } from 'phosphor-react-native';
|
import { ArrowDown, ArrowUp } from 'phosphor-react-native';
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
|
|
||||||
import { Menu, MenuItem } from '~/components/primitive/Menu';
|
import { Menu, MenuItem } from '~/components/primitive/Menu';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { useQueryClient } from '@tanstack/react-query';
|
||||||
import { forwardRef, useState } from 'react';
|
import { forwardRef, useState } from 'react';
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
import { useBridgeMutation, usePlausibleEvent } from '@sd/client';
|
import { useBridgeMutation, usePlausibleEvent } from '@sd/client';
|
||||||
|
|
||||||
import { ModalInput } from '~/components/form/Input';
|
import { ModalInput } from '~/components/form/Input';
|
||||||
import { Modal, ModalRef } from '~/components/layout/Modal';
|
import { Modal, ModalRef } from '~/components/layout/Modal';
|
||||||
import { Button } from '~/components/primitive/Button';
|
import { Button } from '~/components/primitive/Button';
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { forwardRef, useCallback } from 'react';
|
||||||
import { Alert, Text, View } from 'react-native';
|
import { Alert, Text, View } from 'react-native';
|
||||||
import DocumentPicker from 'react-native-document-picker';
|
import DocumentPicker from 'react-native-document-picker';
|
||||||
import { useLibraryMutation } from '@sd/client';
|
import { useLibraryMutation } from '@sd/client';
|
||||||
|
|
||||||
import { Modal, ModalRef } from '~/components/layout/Modal';
|
import { Modal, ModalRef } from '~/components/layout/Modal';
|
||||||
import { Button } from '~/components/primitive/Button';
|
import { Button } from '~/components/primitive/Button';
|
||||||
import useForwardedRef from '~/hooks/useForwardedRef';
|
import useForwardedRef from '~/hooks/useForwardedRef';
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { useQueryClient } from '@tanstack/react-query';
|
import { useQueryClient } from '@tanstack/react-query';
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { useBridgeMutation, usePlausibleEvent } from '@sd/client';
|
import { useBridgeMutation, usePlausibleEvent } from '@sd/client';
|
||||||
|
|
||||||
import { ConfirmModal, ModalRef } from '~/components/layout/Modal';
|
import { ConfirmModal, ModalRef } from '~/components/layout/Modal';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { useLibraryMutation, usePlausibleEvent } from '@sd/client';
|
import { useLibraryMutation, usePlausibleEvent } from '@sd/client';
|
||||||
|
|
||||||
import { ConfirmModal, ModalRef } from '~/components/layout/Modal';
|
import { ConfirmModal, ModalRef } from '~/components/layout/Modal';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { useRef } from 'react';
|
import { useRef } from 'react';
|
||||||
import { useLibraryMutation, usePlausibleEvent } from '@sd/client';
|
import { useLibraryMutation, usePlausibleEvent } from '@sd/client';
|
||||||
|
|
||||||
import { ConfirmModal, ModalRef } from '~/components/layout/Modal';
|
import { ConfirmModal, ModalRef } from '~/components/layout/Modal';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
|
|
@ -13,6 +13,7 @@ import {
|
||||||
import { PropsWithChildren, useRef } from 'react';
|
import { PropsWithChildren, useRef } from 'react';
|
||||||
import { Pressable, Text, View, ViewStyle } from 'react-native';
|
import { Pressable, Text, View, ViewStyle } from 'react-native';
|
||||||
import { byteSize, getItemFilePath, getItemObject } from '@sd/client';
|
import { byteSize, getItemFilePath, getItemObject } from '@sd/client';
|
||||||
|
|
||||||
import FileThumb from '~/components/explorer/FileThumb';
|
import FileThumb from '~/components/explorer/FileThumb';
|
||||||
import FavoriteButton from '~/components/explorer/sections/FavoriteButton';
|
import FavoriteButton from '~/components/explorer/sections/FavoriteButton';
|
||||||
import InfoTagPills from '~/components/explorer/sections/InfoTagPills';
|
import InfoTagPills from '~/components/explorer/sections/InfoTagPills';
|
||||||
|
|
|
@ -11,15 +11,16 @@ import {
|
||||||
import { forwardRef } from 'react';
|
import { forwardRef } from 'react';
|
||||||
import { Pressable, Text, View } from 'react-native';
|
import { Pressable, Text, View } from 'react-native';
|
||||||
import {
|
import {
|
||||||
type ExplorerItem,
|
|
||||||
byteSize,
|
byteSize,
|
||||||
getItemFilePath,
|
getItemFilePath,
|
||||||
getItemObject,
|
getItemObject,
|
||||||
useLibraryQuery
|
useLibraryQuery,
|
||||||
|
type ExplorerItem
|
||||||
} from '@sd/client';
|
} from '@sd/client';
|
||||||
|
|
||||||
import FileThumb from '~/components/explorer/FileThumb';
|
import FileThumb from '~/components/explorer/FileThumb';
|
||||||
import InfoTagPills from '~/components/explorer/sections/InfoTagPills';
|
import InfoTagPills from '~/components/explorer/sections/InfoTagPills';
|
||||||
import { Modal, type ModalRef, ModalScrollView } from '~/components/layout/Modal';
|
import { Modal, ModalScrollView, type ModalRef } from '~/components/layout/Modal';
|
||||||
import { Divider } from '~/components/primitive/Divider';
|
import { Divider } from '~/components/primitive/Divider';
|
||||||
import useForwardedRef from '~/hooks/useForwardedRef';
|
import useForwardedRef from '~/hooks/useForwardedRef';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { forwardRef, useMemo } from 'react';
|
import { forwardRef, useMemo } from 'react';
|
||||||
import { FlatList, Text, View } from 'react-native';
|
import { FlatList, Text, View } from 'react-native';
|
||||||
import { useBridgeQuery, useJobProgress } from '@sd/client';
|
import { useBridgeQuery, useJobProgress } from '@sd/client';
|
||||||
|
|
||||||
import JobGroup from '~/components/job/JobGroup';
|
import JobGroup from '~/components/job/JobGroup';
|
||||||
import { Modal, ModalRef } from '~/components/layout/Modal';
|
import { Modal, ModalRef } from '~/components/layout/Modal';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { forwardRef, useEffect, useState } from 'react';
|
||||||
import { Pressable, Text, View } from 'react-native';
|
import { Pressable, Text, View } from 'react-native';
|
||||||
import ColorPicker from 'react-native-wheel-color-picker';
|
import ColorPicker from 'react-native-wheel-color-picker';
|
||||||
import { useLibraryMutation, usePlausibleEvent } from '@sd/client';
|
import { useLibraryMutation, usePlausibleEvent } from '@sd/client';
|
||||||
|
|
||||||
import { FadeInAnimation } from '~/components/animation/layout';
|
import { FadeInAnimation } from '~/components/animation/layout';
|
||||||
import { ModalInput } from '~/components/form/Input';
|
import { ModalInput } from '~/components/form/Input';
|
||||||
import { Modal, ModalRef } from '~/components/layout/Modal';
|
import { Modal, ModalRef } from '~/components/layout/Modal';
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { useQueryClient } from '@tanstack/react-query';
|
||||||
import { forwardRef, useEffect, useState } from 'react';
|
import { forwardRef, useEffect, useState } from 'react';
|
||||||
import { Pressable, Text, View } from 'react-native';
|
import { Pressable, Text, View } from 'react-native';
|
||||||
import { Tag, useLibraryMutation } from '@sd/client';
|
import { Tag, useLibraryMutation } from '@sd/client';
|
||||||
|
|
||||||
import { FadeInAnimation } from '~/components/animation/layout';
|
import { FadeInAnimation } from '~/components/animation/layout';
|
||||||
import ColorPicker from '~/components/form/ColorPicker';
|
import ColorPicker from '~/components/form/ColorPicker';
|
||||||
import { Input } from '~/components/form/Input';
|
import { Input } from '~/components/form/Input';
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import { FC, useEffect, useState } from 'react';
|
import { FC, useEffect, useState } from 'react';
|
||||||
import { ScrollView, Text, View } from 'react-native';
|
import { ScrollView, Text, View } from 'react-native';
|
||||||
import RNFS from 'react-native-fs';
|
import RNFS from 'react-native-fs';
|
||||||
import { Statistics, byteSize, useLibraryQuery } from '@sd/client';
|
import { byteSize, Statistics, useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import useCounter from '~/hooks/useCounter';
|
import useCounter from '~/hooks/useCounter';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import { VariantProps, cva } from 'class-variance-authority';
|
import { cva, VariantProps } from 'class-variance-authority';
|
||||||
import { MotiPressable, MotiPressableProps } from 'moti/interactions';
|
import { MotiPressable, MotiPressableProps } from 'moti/interactions';
|
||||||
import { FC, useMemo } from 'react';
|
import { FC, useMemo } from 'react';
|
||||||
import { Pressable, PressableProps, View, ViewProps } from 'react-native';
|
import { Pressable, PressableProps, View, ViewProps } from 'react-native';
|
||||||
|
|
||||||
import { twStyle } from '~/lib/tailwind';
|
import { twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
const button = cva(['items-center justify-center rounded-md border shadow-sm'], {
|
const button = cva(['items-center justify-center rounded-md border shadow-sm'], {
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { View } from 'react-native';
|
import { View } from 'react-native';
|
||||||
|
|
||||||
import { styled } from '~/lib/tailwind';
|
import { styled } from '~/lib/tailwind';
|
||||||
|
|
||||||
export const Divider = styled(View, 'bg-app-line my-1 h-[1px] w-full');
|
export const Divider = styled(View, 'bg-app-line my-1 h-[1px] w-full');
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Text, TextStyle, View, ViewStyle } from 'react-native';
|
import { Text, TextStyle, View, ViewStyle } from 'react-native';
|
||||||
|
|
||||||
import { twStyle } from '~/lib/tailwind';
|
import { twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
|
|
|
@ -8,6 +8,7 @@ import {
|
||||||
Menu as PMenu,
|
Menu as PMenu,
|
||||||
renderers
|
renderers
|
||||||
} from 'react-native-popup-menu';
|
} from 'react-native-popup-menu';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
type MenuProps = {
|
type MenuProps = {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { PropsWithChildren } from 'react';
|
import { PropsWithChildren } from 'react';
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
|
|
||||||
import { styled, tw } from '~/lib/tailwind';
|
import { styled, tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
type SettingsContainerProps = PropsWithChildren<{
|
type SettingsContainerProps = PropsWithChildren<{
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { CaretRight, Icon } from 'phosphor-react-native';
|
import { CaretRight, Icon } from 'phosphor-react-native';
|
||||||
import { Pressable, Text, View, ViewStyle } from 'react-native';
|
import { Pressable, Text, View, ViewStyle } from 'react-native';
|
||||||
|
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
||||||
type SettingsItemProps = {
|
type SettingsItemProps = {
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { Appearance, NativeEventSubscription } from 'react-native';
|
||||||
import { useDeviceContext } from 'twrnc';
|
import { useDeviceContext } from 'twrnc';
|
||||||
import { subscribe } from 'valtio';
|
import { subscribe } from 'valtio';
|
||||||
import { getThemeStore } from '@sd/client';
|
import { getThemeStore } from '@sd/client';
|
||||||
|
|
||||||
import { changeTwTheme, tw } from '~/lib/tailwind';
|
import { changeTwTheme, tw } from '~/lib/tailwind';
|
||||||
|
|
||||||
export function useTheme() {
|
export function useTheme() {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import { Component, ComponentType, ElementType, createElement, forwardRef } from 'react';
|
import { Component, ComponentType, createElement, ElementType, forwardRef } from 'react';
|
||||||
import { create } from 'twrnc';
|
import { create } from 'twrnc';
|
||||||
import { Themes } from '@sd/client';
|
import { Themes } from '@sd/client';
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
import AsyncStorage from '@react-native-async-storage/async-storage';
|
import AsyncStorage from '@react-native-async-storage/async-storage';
|
||||||
|
|
||||||
import 'event-target-polyfill';
|
import 'event-target-polyfill';
|
||||||
|
|
||||||
import * as SplashScreen from 'expo-splash-screen';
|
import * as SplashScreen from 'expo-splash-screen';
|
||||||
import { Suspense, lazy } from 'react';
|
import { lazy, Suspense } from 'react';
|
||||||
import { Platform } from 'react-native';
|
import { Dimensions, Platform } from 'react-native';
|
||||||
import { Dimensions } from 'react-native';
|
|
||||||
import { reactNativeLink } from './lib/rspcReactNativeTransport';
|
import { reactNativeLink } from './lib/rspcReactNativeTransport';
|
||||||
|
|
||||||
// Enable the splash screen
|
// Enable the splash screen
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { DrawerScreenProps, createDrawerNavigator } from '@react-navigation/drawer';
|
import { createDrawerNavigator, DrawerScreenProps } from '@react-navigation/drawer';
|
||||||
import { CompositeScreenProps, NavigatorScreenParams } from '@react-navigation/native';
|
import { CompositeScreenProps, NavigatorScreenParams } from '@react-navigation/native';
|
||||||
import { StackScreenProps } from '@react-navigation/stack';
|
import { StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
import DrawerContent from '~/components/drawer/DrawerContent';
|
import DrawerContent from '~/components/drawer/DrawerContent';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import type { RootStackParamList } from '.';
|
import type { RootStackParamList } from '.';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { LinkingOptions } from '@react-navigation/native';
|
import { LinkingOptions } from '@react-navigation/native';
|
||||||
import * as Linking from 'expo-linking';
|
import * as Linking from 'expo-linking';
|
||||||
|
|
||||||
import { RootStackParamList } from '.';
|
import { RootStackParamList } from '.';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import { StackScreenProps, createStackNavigator } from '@react-navigation/stack';
|
import { createStackNavigator, StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
|
import { OnboardingContext, useContextValue } from '~/screens/onboarding/context';
|
||||||
import CreatingLibraryScreen from '~/screens/onboarding/CreatingLibrary';
|
import CreatingLibraryScreen from '~/screens/onboarding/CreatingLibrary';
|
||||||
import GetStartedScreen from '~/screens/onboarding/GetStarted';
|
import GetStartedScreen from '~/screens/onboarding/GetStarted';
|
||||||
import NewLibraryScreen from '~/screens/onboarding/NewLibrary';
|
import NewLibraryScreen from '~/screens/onboarding/NewLibrary';
|
||||||
import PrivacyScreen from '~/screens/onboarding/Privacy';
|
import PrivacyScreen from '~/screens/onboarding/Privacy';
|
||||||
import { OnboardingContext, useContextValue } from '~/screens/onboarding/context';
|
|
||||||
|
|
||||||
const OnboardingStack = createStackNavigator<OnboardingStackParamList>();
|
const OnboardingStack = createStackNavigator<OnboardingStackParamList>();
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import { StackScreenProps, createStackNavigator } from '@react-navigation/stack';
|
import { createStackNavigator, StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import SettingsScreen from '~/screens/settings/Settings';
|
|
||||||
import AppearanceSettingsScreen from '~/screens/settings/client/AppearanceSettings';
|
import AppearanceSettingsScreen from '~/screens/settings/client/AppearanceSettings';
|
||||||
import ExtensionsSettingsScreen from '~/screens/settings/client/ExtensionsSettings';
|
import ExtensionsSettingsScreen from '~/screens/settings/client/ExtensionsSettings';
|
||||||
import GeneralSettingsScreen from '~/screens/settings/client/GeneralSettings';
|
import GeneralSettingsScreen from '~/screens/settings/client/GeneralSettings';
|
||||||
|
@ -15,6 +15,7 @@ import LibraryGeneralSettingsScreen from '~/screens/settings/library/LibraryGene
|
||||||
import LocationSettingsScreen from '~/screens/settings/library/LocationSettings';
|
import LocationSettingsScreen from '~/screens/settings/library/LocationSettings';
|
||||||
import NodesSettingsScreen from '~/screens/settings/library/NodesSettings';
|
import NodesSettingsScreen from '~/screens/settings/library/NodesSettings';
|
||||||
import TagsSettingsScreen from '~/screens/settings/library/TagsSettings';
|
import TagsSettingsScreen from '~/screens/settings/library/TagsSettings';
|
||||||
|
import SettingsScreen from '~/screens/settings/Settings';
|
||||||
|
|
||||||
const SettingsStack = createStackNavigator<SettingsStackParamList>();
|
const SettingsStack = createStackNavigator<SettingsStackParamList>();
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@ import {
|
||||||
StackNavigationOptions,
|
StackNavigationOptions,
|
||||||
StackScreenProps
|
StackScreenProps
|
||||||
} from '@react-navigation/stack';
|
} from '@react-navigation/stack';
|
||||||
|
|
||||||
import LocationScreen from '~/screens/Location';
|
import LocationScreen from '~/screens/Location';
|
||||||
import TagScreen from '~/screens/Tag';
|
import TagScreen from '~/screens/Tag';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import { BottomTabScreenProps, createBottomTabNavigator } from '@react-navigation/bottom-tabs';
|
import { BottomTabScreenProps, createBottomTabNavigator } from '@react-navigation/bottom-tabs';
|
||||||
import { CompositeScreenProps, NavigatorScreenParams } from '@react-navigation/native';
|
import { CompositeScreenProps, NavigatorScreenParams } from '@react-navigation/native';
|
||||||
import { Broadcast, CirclesFour, Planet } from 'phosphor-react-native';
|
import { Broadcast, CirclesFour, Planet } from 'phosphor-react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import type { HomeDrawerScreenProps } from './DrawerNavigator';
|
import type { HomeDrawerScreenProps } from './DrawerNavigator';
|
||||||
import OverviewStack, { OverviewStackParamList } from './tabs/OverviewStack';
|
import OverviewStack, { OverviewStackParamList } from './tabs/OverviewStack';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { NavigatorScreenParams } from '@react-navigation/native';
|
import { NavigatorScreenParams } from '@react-navigation/native';
|
||||||
import { StackScreenProps, createStackNavigator } from '@react-navigation/stack';
|
import { createStackNavigator, StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import NotFoundScreen from '~/screens/NotFound';
|
import NotFoundScreen from '~/screens/NotFound';
|
||||||
import SearchScreen from '~/screens/Search';
|
import SearchScreen from '~/screens/Search';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { CompositeScreenProps } from '@react-navigation/native';
|
import { CompositeScreenProps } from '@react-navigation/native';
|
||||||
import { StackScreenProps, createStackNavigator } from '@react-navigation/stack';
|
import { createStackNavigator, StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
import Header from '~/components/header/Header';
|
import Header from '~/components/header/Header';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import OverviewScreen from '../../screens/Overview';
|
import OverviewScreen from '../../screens/Overview';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { CompositeScreenProps } from '@react-navigation/native';
|
import { CompositeScreenProps } from '@react-navigation/native';
|
||||||
import { StackScreenProps, createStackNavigator } from '@react-navigation/stack';
|
import { createStackNavigator, StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
import Header from '~/components/header/Header';
|
import Header from '~/components/header/Header';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import SpacedropScreen from '~/screens/Spacedrop';
|
import SpacedropScreen from '~/screens/Spacedrop';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { CompositeScreenProps } from '@react-navigation/native';
|
import { CompositeScreenProps } from '@react-navigation/native';
|
||||||
import { StackScreenProps, createStackNavigator } from '@react-navigation/stack';
|
import { createStackNavigator, StackScreenProps } from '@react-navigation/stack';
|
||||||
|
|
||||||
import Header from '~/components/header/Header';
|
import Header from '~/components/header/Header';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import SpacesScreen from '../../screens/Spaces';
|
import SpacesScreen from '../../screens/Spaces';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
import { useLibraryQuery } from '@sd/client';
|
import { useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import Explorer from '~/components/explorer/Explorer';
|
import Explorer from '~/components/explorer/Explorer';
|
||||||
import { SharedScreenProps } from '~/navigation/SharedScreens';
|
import { SharedScreenProps } from '~/navigation/SharedScreens';
|
||||||
import { getExplorerStore } from '~/stores/explorerStore';
|
import { getExplorerStore } from '~/stores/explorerStore';
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { Text, TouchableOpacity, View } from 'react-native';
|
import { Text, TouchableOpacity, View } from 'react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { RootStackScreenProps } from '~/navigation';
|
import { RootStackScreenProps } from '~/navigation';
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { View } from 'react-native';
|
import { View } from 'react-native';
|
||||||
|
|
||||||
import VirtualizedListWrapper from '~/components/layout/VirtualizedListWrapper';
|
import VirtualizedListWrapper from '~/components/layout/VirtualizedListWrapper';
|
||||||
import OverviewStats from '~/components/overview/OverviewStats';
|
import OverviewStats from '~/components/overview/OverviewStats';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
|
|
|
@ -3,6 +3,7 @@ import { Suspense, useDeferredValue, useMemo, useState } from 'react';
|
||||||
import { ActivityIndicator, Pressable, Text, TextInput, View } from 'react-native';
|
import { ActivityIndicator, Pressable, Text, TextInput, View } from 'react-native';
|
||||||
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
||||||
import { getExplorerItemData, useLibraryQuery } from '@sd/client';
|
import { getExplorerItemData, useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import Explorer from '~/components/explorer/Explorer';
|
import Explorer from '~/components/explorer/Explorer';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { RootStackScreenProps } from '~/navigation';
|
import { RootStackScreenProps } from '~/navigation';
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import { GoogleDrive, Mega, iCloud } from '@sd/assets/images';
|
import { GoogleDrive, iCloud, Mega } from '@sd/assets/images';
|
||||||
import { DeviceMobile, Icon, Laptop, User } from 'phosphor-react-native';
|
import { DeviceMobile, Icon, Laptop, User } from 'phosphor-react-native';
|
||||||
import { Alert, Image, ImageSourcePropType, Pressable, ScrollView, Text, View } from 'react-native';
|
import { Alert, Image, ImageSourcePropType, Pressable, ScrollView, Text, View } from 'react-native';
|
||||||
import { Polygon, Svg } from 'react-native-svg';
|
import { Polygon, Svg } from 'react-native-svg';
|
||||||
|
|
||||||
import { InfoPill } from '~/components/primitive/InfoPill';
|
import { InfoPill } from '~/components/primitive/InfoPill';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { SpacedropStackScreenProps } from '~/navigation/tabs/SpacedropStack';
|
import { SpacedropStackScreenProps } from '~/navigation/tabs/SpacedropStack';
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { SpacesStackScreenProps } from '~/navigation/tabs/SpacesStack';
|
import { SpacesStackScreenProps } from '~/navigation/tabs/SpacesStack';
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
import { useLibraryQuery } from '@sd/client';
|
import { useLibraryQuery } from '@sd/client';
|
||||||
|
|
||||||
import Explorer from '~/components/explorer/Explorer';
|
import Explorer from '~/components/explorer/Explorer';
|
||||||
import { SharedScreenProps } from '~/navigation/SharedScreens';
|
import { SharedScreenProps } from '~/navigation/SharedScreens';
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Text } from 'react-native';
|
import { Text } from 'react-native';
|
||||||
|
|
||||||
import { PulseAnimation } from '~/components/animation/lottie';
|
import { PulseAnimation } from '~/components/animation/lottie';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './GetStarted';
|
import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './GetStarted';
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import { AppLogo, BloomOne } from '@sd/assets/images';
|
|
||||||
import { useNavigation, useRoute } from '@react-navigation/native';
|
import { useNavigation, useRoute } from '@react-navigation/native';
|
||||||
|
import { AppLogo, BloomOne } from '@sd/assets/images';
|
||||||
import { MotiView } from 'moti';
|
import { MotiView } from 'moti';
|
||||||
import { CaretLeft } from 'phosphor-react-native';
|
import { CaretLeft } from 'phosphor-react-native';
|
||||||
import { Image, KeyboardAvoidingView, Platform, Pressable, Text, View } from 'react-native';
|
import { Image, KeyboardAvoidingView, Platform, Pressable, Text, View } from 'react-native';
|
||||||
import Animated from 'react-native-reanimated';
|
import Animated from 'react-native-reanimated';
|
||||||
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
||||||
|
|
||||||
import { FadeInUpAnimation, LogoAnimation } from '~/components/animation/layout';
|
import { FadeInUpAnimation, LogoAnimation } from '~/components/animation/layout';
|
||||||
import { AnimatedButton } from '~/components/primitive/Button';
|
import { AnimatedButton } from '~/components/primitive/Button';
|
||||||
import { styled, tw, twStyle } from '~/lib/tailwind';
|
import { styled, tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
import { Database } from '@sd/assets/icons';
|
import { Database } from '@sd/assets/icons';
|
||||||
import { Controller } from 'react-hook-form';
|
import { Controller } from 'react-hook-form';
|
||||||
import { Alert, Image, Text, View } from 'react-native';
|
import { Alert, Image, Text, View } from 'react-native';
|
||||||
|
|
||||||
import { Input } from '~/components/form/Input';
|
import { Input } from '~/components/form/Input';
|
||||||
import { Button } from '~/components/primitive/Button';
|
import { Button } from '~/components/primitive/Button';
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { OnboardingStackScreenProps } from '~/navigation/OnboardingNavigator';
|
import { OnboardingStackScreenProps } from '~/navigation/OnboardingNavigator';
|
||||||
import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './GetStarted';
|
|
||||||
import { useOnboardingContext } from './context';
|
import { useOnboardingContext } from './context';
|
||||||
|
import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './GetStarted';
|
||||||
|
|
||||||
const NewLibraryScreen = ({ navigation }: OnboardingStackScreenProps<'NewLibrary'>) => {
|
const NewLibraryScreen = ({ navigation }: OnboardingStackScreenProps<'NewLibrary'>) => {
|
||||||
const form = useOnboardingContext().forms.useForm('NewLibrary');
|
const form = useOnboardingContext().forms.useForm('NewLibrary');
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Controller } from 'react-hook-form';
|
import { Controller } from 'react-hook-form';
|
||||||
import { Pressable, Text, View, ViewStyle } from 'react-native';
|
import { Pressable, Text, View, ViewStyle } from 'react-native';
|
||||||
|
|
||||||
import { Button } from '~/components/primitive/Button';
|
import { Button } from '~/components/primitive/Button';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { OnboardingStackScreenProps } from '~/navigation/OnboardingNavigator';
|
import { OnboardingStackScreenProps } from '~/navigation/OnboardingNavigator';
|
||||||
import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './GetStarted';
|
|
||||||
import { useOnboardingContext } from './context';
|
import { useOnboardingContext } from './context';
|
||||||
|
import { OnboardingContainer, OnboardingDescription, OnboardingTitle } from './GetStarted';
|
||||||
|
|
||||||
type RadioButtonProps = {
|
type RadioButtonProps = {
|
||||||
title: string;
|
title: string;
|
||||||
|
|
|
@ -13,6 +13,7 @@ import {
|
||||||
useOnboardingStore,
|
useOnboardingStore,
|
||||||
usePlausibleEvent
|
usePlausibleEvent
|
||||||
} from '@sd/client';
|
} from '@sd/client';
|
||||||
|
|
||||||
import { OnboardingStackScreenProps } from '~/navigation/OnboardingNavigator';
|
import { OnboardingStackScreenProps } from '~/navigation/OnboardingNavigator';
|
||||||
import { currentLibraryStore } from '~/utils/nav';
|
import { currentLibraryStore } from '~/utils/nav';
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,7 @@ import {
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { SectionList, Text, TouchableWithoutFeedback, View } from 'react-native';
|
import { SectionList, Text, TouchableWithoutFeedback, View } from 'react-native';
|
||||||
import { DebugState, useDebugState, useDebugStateEnabler } from '@sd/client';
|
import { DebugState, useDebugState, useDebugStateEnabler } from '@sd/client';
|
||||||
|
|
||||||
import { SettingsItem, SettingsItemDivider } from '~/components/settings/SettingsItem';
|
import { SettingsItem, SettingsItemDivider } from '~/components/settings/SettingsItem';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
import { SettingsStackParamList, SettingsStackScreenProps } from '~/navigation/SettingsNavigator';
|
import { SettingsStackParamList, SettingsStackScreenProps } from '~/navigation/SettingsNavigator';
|
||||||
|
|
|
@ -2,6 +2,7 @@ import { CheckCircle } from 'phosphor-react-native';
|
||||||
import React, { useState } from 'react';
|
import React, { useState } from 'react';
|
||||||
import { ColorValue, Pressable, ScrollView, Text, View, ViewStyle } from 'react-native';
|
import { ColorValue, Pressable, ScrollView, Text, View, ViewStyle } from 'react-native';
|
||||||
import { Themes, useThemeStore } from '@sd/client';
|
import { Themes, useThemeStore } from '@sd/client';
|
||||||
|
|
||||||
import { SettingsTitle } from '~/components/settings/SettingsContainer';
|
import { SettingsTitle } from '~/components/settings/SettingsContainer';
|
||||||
import Colors from '~/constants/style/Colors';
|
import Colors from '~/constants/style/Colors';
|
||||||
import { tw, twStyle } from '~/lib/tailwind';
|
import { tw, twStyle } from '~/lib/tailwind';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
|
|
||||||
import { tw } from '~/lib/tailwind';
|
import { tw } from '~/lib/tailwind';
|
||||||
import { SettingsStackScreenProps } from '~/navigation/SettingsNavigator';
|
import { SettingsStackScreenProps } from '~/navigation/SettingsNavigator';
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import { Text, View } from 'react-native';
|
import { Text, View } from 'react-native';
|
||||||
import { useBridgeQuery, useDebugState } from '@sd/client';
|
import { useBridgeQuery, useDebugState } from '@sd/client';
|
||||||
|
|
||||||
import { Input } from '~/components/form/Input';
|
import { Input } from '~/components/form/Input';
|
||||||
import Card from '~/components/layout/Card';
|
import Card from '~/components/layout/Card';
|
||||||
import { Divider } from '~/components/primitive/Divider';
|
import { Divider } from '~/components/primitive/Divider';
|
||||||
|
|
|
@ -3,6 +3,7 @@ import React, { useEffect, useRef } from 'react';
|
||||||
import { Animated, FlatList, Text, View } from 'react-native';
|
import { Animated, FlatList, Text, View } from 'react-native';
|
||||||
import { Swipeable } from 'react-native-gesture-handler';
|
import { Swipeable } from 'react-native-gesture-handler';
|
||||||
import { LibraryConfigWrapped, useBridgeQuery } from '@sd/client';
|
import { LibraryConfigWrapped, useBridgeQuery } from '@sd/client';
|
||||||
|
|
||||||
import { ModalRef } from '~/components/layout/Modal';
|
import { ModalRef } from '~/components/layout/Modal';
|
||||||
import DeleteLibraryModal from '~/components/modal/confirmModals/DeleteLibraryModal';
|
import DeleteLibraryModal from '~/components/modal/confirmModals/DeleteLibraryModal';
|
||||||
import { AnimatedButton, FakeButton } from '~/components/primitive/Button';
|
import { AnimatedButton, FakeButton } from '~/components/primitive/Button';
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue