From 228cf9b9139cc6680be50bbbf9693c119524e880 Mon Sep 17 00:00:00 2001 From: Zollll <161481778+Zollll@users.noreply.github.com> Date: Tue, 23 Jun 2026 21:15:07 +0800 Subject: [PATCH 1/2] Implement todo API --- backend/README-1-2-YEARS.md | 96 ------------ backend/README-3-5-YEARS.md | 101 ------------ backend/README-5-YEARS-Plus.md | 101 ------------ backend/package-lock.json | 0 backend/package.json | 10 +- backend/server.js | 6 + backend/src/app.js | 11 ++ backend/src/controllers/todo.controllers.js | 82 ++++++++++ backend/src/data/todos.js | 3 + backend/src/routes/todo.routes.js | 19 +++ frontend/.gitignore | 41 ----- frontend/README-1-2-YEARS.md | 80 ---------- frontend/README-3-5-YEARS.md | 95 ------------ frontend/README-5-YEARS-Plus.md | 100 ------------ frontend/README.md | 36 ----- frontend/eslint.config.mjs | 16 -- frontend/next.config.ts | 7 - frontend/package.json | 27 ---- frontend/postcss.config.mjs | 5 - frontend/public/file.svg | 1 - frontend/public/globe.svg | 1 - frontend/public/next.svg | 1 - frontend/public/vercel.svg | 1 - frontend/public/window.svg | 1 - frontend/src/app/favicon.ico | Bin 25931 -> 0 bytes frontend/src/app/globals.css | 26 ---- frontend/src/app/layout.tsx | 34 ---- frontend/src/app/page.tsx | 103 ------------- frontend/tsconfig.json | 27 ---- fullstack/README-1-2-YEARS.md | 145 ------------------ fullstack/README-3-5-YEARS.md | 143 ----------------- fullstack/README-5-YEARS-Plus.md | 145 ------------------ mobile/.gitignore | 38 ----- mobile/README-1-2-YEARS.md | 95 ------------ mobile/README-3-5-YEARS.md | 105 ------------- mobile/README-5-YEARS-Plus.md | 102 ------------ mobile/README.md | 50 ------ mobile/app.json | 41 ----- mobile/app/(tabs)/_layout.tsx | 45 ------ mobile/app/(tabs)/explore.tsx | 109 ------------- mobile/app/(tabs)/index.tsx | 74 --------- mobile/app/+not-found.tsx | 32 ---- mobile/app/_layout.tsx | 39 ----- mobile/assets/fonts/SpaceMono-Regular.ttf | Bin 93252 -> 0 bytes mobile/assets/images/adaptive-icon.png | Bin 17547 -> 0 bytes mobile/assets/images/favicon.png | Bin 1466 -> 0 bytes mobile/assets/images/icon.png | Bin 22380 -> 0 bytes mobile/assets/images/partial-react-logo.png | Bin 5075 -> 0 bytes mobile/assets/images/react-logo.png | Bin 6341 -> 0 bytes mobile/assets/images/react-logo@2x.png | Bin 14225 -> 0 bytes mobile/assets/images/react-logo@3x.png | Bin 21252 -> 0 bytes mobile/assets/images/splash-icon.png | Bin 17547 -> 0 bytes mobile/components/Collapsible.tsx | 45 ------ mobile/components/ExternalLink.tsx | 24 --- mobile/components/HapticTab.tsx | 18 --- mobile/components/HelloWave.tsx | 40 ----- mobile/components/ParallaxScrollView.tsx | 82 ---------- mobile/components/ThemedText.tsx | 60 -------- mobile/components/ThemedView.tsx | 14 -- .../components/__tests__/ThemedText-test.tsx | 10 -- .../__snapshots__/ThemedText-test.tsx.snap | 24 --- mobile/components/ui/IconSymbol.ios.tsx | 32 ---- mobile/components/ui/IconSymbol.tsx | 43 ------ mobile/components/ui/TabBarBackground.ios.tsx | 22 --- mobile/components/ui/TabBarBackground.tsx | 6 - mobile/constants/Colors.ts | 26 ---- mobile/hooks/useColorScheme.ts | 1 - mobile/hooks/useColorScheme.web.ts | 21 --- mobile/hooks/useThemeColor.ts | 21 --- mobile/image-test/image test.png | Bin 106424 -> 0 bytes mobile/image-test/image test2.png | Bin 36048 -> 0 bytes mobile/package.json | 54 ------- mobile/scripts/reset-project.js | 112 -------------- mobile/tsconfig.json | 17 -- 74 files changed, 129 insertions(+), 2737 deletions(-) delete mode 100644 backend/README-1-2-YEARS.md delete mode 100644 backend/README-3-5-YEARS.md delete mode 100644 backend/README-5-YEARS-Plus.md create mode 100644 backend/package-lock.json create mode 100644 backend/server.js create mode 100644 backend/src/app.js create mode 100644 backend/src/controllers/todo.controllers.js create mode 100644 backend/src/data/todos.js create mode 100644 backend/src/routes/todo.routes.js delete mode 100644 frontend/.gitignore delete mode 100644 frontend/README-1-2-YEARS.md delete mode 100644 frontend/README-3-5-YEARS.md delete mode 100644 frontend/README-5-YEARS-Plus.md delete mode 100644 frontend/README.md delete mode 100644 frontend/eslint.config.mjs delete mode 100644 frontend/next.config.ts delete mode 100644 frontend/package.json delete mode 100644 frontend/postcss.config.mjs delete mode 100644 frontend/public/file.svg delete mode 100644 frontend/public/globe.svg delete mode 100644 frontend/public/next.svg delete mode 100644 frontend/public/vercel.svg delete mode 100644 frontend/public/window.svg delete mode 100644 frontend/src/app/favicon.ico delete mode 100644 frontend/src/app/globals.css delete mode 100644 frontend/src/app/layout.tsx delete mode 100644 frontend/src/app/page.tsx delete mode 100644 frontend/tsconfig.json delete mode 100644 fullstack/README-1-2-YEARS.md delete mode 100644 fullstack/README-3-5-YEARS.md delete mode 100644 fullstack/README-5-YEARS-Plus.md delete mode 100644 mobile/.gitignore delete mode 100644 mobile/README-1-2-YEARS.md delete mode 100644 mobile/README-3-5-YEARS.md delete mode 100644 mobile/README-5-YEARS-Plus.md delete mode 100644 mobile/README.md delete mode 100644 mobile/app.json delete mode 100644 mobile/app/(tabs)/_layout.tsx delete mode 100644 mobile/app/(tabs)/explore.tsx delete mode 100644 mobile/app/(tabs)/index.tsx delete mode 100644 mobile/app/+not-found.tsx delete mode 100644 mobile/app/_layout.tsx delete mode 100644 mobile/assets/fonts/SpaceMono-Regular.ttf delete mode 100644 mobile/assets/images/adaptive-icon.png delete mode 100644 mobile/assets/images/favicon.png delete mode 100644 mobile/assets/images/icon.png delete mode 100644 mobile/assets/images/partial-react-logo.png delete mode 100644 mobile/assets/images/react-logo.png delete mode 100644 mobile/assets/images/react-logo@2x.png delete mode 100644 mobile/assets/images/react-logo@3x.png delete mode 100644 mobile/assets/images/splash-icon.png delete mode 100644 mobile/components/Collapsible.tsx delete mode 100644 mobile/components/ExternalLink.tsx delete mode 100644 mobile/components/HapticTab.tsx delete mode 100644 mobile/components/HelloWave.tsx delete mode 100644 mobile/components/ParallaxScrollView.tsx delete mode 100644 mobile/components/ThemedText.tsx delete mode 100644 mobile/components/ThemedView.tsx delete mode 100644 mobile/components/__tests__/ThemedText-test.tsx delete mode 100644 mobile/components/__tests__/__snapshots__/ThemedText-test.tsx.snap delete mode 100644 mobile/components/ui/IconSymbol.ios.tsx delete mode 100644 mobile/components/ui/IconSymbol.tsx delete mode 100644 mobile/components/ui/TabBarBackground.ios.tsx delete mode 100644 mobile/components/ui/TabBarBackground.tsx delete mode 100644 mobile/constants/Colors.ts delete mode 100644 mobile/hooks/useColorScheme.ts delete mode 100644 mobile/hooks/useColorScheme.web.ts delete mode 100644 mobile/hooks/useThemeColor.ts delete mode 100644 mobile/image-test/image test.png delete mode 100644 mobile/image-test/image test2.png delete mode 100644 mobile/package.json delete mode 100644 mobile/scripts/reset-project.js delete mode 100644 mobile/tsconfig.json diff --git a/backend/README-1-2-YEARS.md b/backend/README-1-2-YEARS.md deleted file mode 100644 index 23c45f56..00000000 --- a/backend/README-1-2-YEARS.md +++ /dev/null @@ -1,96 +0,0 @@ -# Backend Assessment (1–2 Years Experience) - -## Overview - -Welcome to the **1–2 Years** backend assessment! Your task is to create a simple REST API with a few endpoints. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a simple API with CRUD operations for a todo list -2. Store data in memory (no database required) -3. Implement basic error handling - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/backend -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/1-2-years-backend -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create a simple API with these endpoints: - - - `GET /api/todos` - List all todos - - `GET /api/todos/:id` - Get a single todo - - `POST /api/todos` - Create a new todo - - `PUT /api/todos/:id` - Update a todo - - `DELETE /api/todos/:id` - Delete a todo - -2. Each todo should have: - - - id - - title - - completed (boolean) - - createdAt - -3. Add basic validation and error handling - -### 5. Test Your Work - -1. Test your API using tools like Postman, Insomnia, or curl -2. Make sure all endpoints work as expected - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement todo API" - git push origin firstname-lastname/1-2-years-backend - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Add a title and brief description of your implementation - -## What We're Looking For - -- Clean, readable code -- Proper API design -- Basic error handling -- Simple project organization - -## Technology Choices - -- Use Node.js -- Feel free to use Express, Fastify, Koa, or any framework you prefer -- Use JavaScript or TypeScript (your choice) -- Choose any libraries you're comfortable with - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -This assessment is intentionally simple. We're looking for clean code and good API design principles. - -**Good luck!** diff --git a/backend/README-3-5-YEARS.md b/backend/README-3-5-YEARS.md deleted file mode 100644 index f8995962..00000000 --- a/backend/README-3-5-YEARS.md +++ /dev/null @@ -1,101 +0,0 @@ -# Backend Assessment (3–5 Years Experience) - -## Overview - -Welcome to the **3–5 Years** backend assessment! Your task is to build a small API with authentication and an external API integration. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create an API with user authentication -2. Implement protected and public routes -3. Integrate with an external API - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/backend -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/3-5-years-backend -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create an API with: - - - User authentication (login/register) - - Public endpoints - - Protected endpoints (requiring authentication) - -2. Implement these endpoints: - - - `POST /api/auth/register` - User registration - - `POST /api/auth/login` - User login - - `GET /api/weather` - Get weather data (protected route) - - Any additional endpoints you think are necessary - -3. Integrate with a weather API of your choice: - - - Fetch weather data based on city or coordinates - - Return it to the client through your API - -4. Add basic error handling and input validation - -### 5. Test Your Work - -1. Test your API using tools like Postman, Insomnia, or curl -2. Make sure authentication and API integration work properly - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement API with authentication and weather integration" - git push origin firstname-lastname/3-5-years-backend - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Add a title and brief description of your implementation - -## What We're Looking For - -- Proper authentication implementation -- Clean code organization -- Error handling -- External API integration -- Input validation - -## Technology Choices - -- Use Node.js -- Choose any framework (Express, NestJS, Fastify, etc.) -- Use JavaScript or TypeScript (your choice) -- Choose any libraries for authentication, validation, etc. -- Store data in memory or use a simple database solution - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on clean implementation rather than feature completeness. We want to see your approach to structuring an API with authentication. - -**Good luck!** diff --git a/backend/README-5-YEARS-Plus.md b/backend/README-5-YEARS-Plus.md deleted file mode 100644 index 23c64d11..00000000 --- a/backend/README-5-YEARS-Plus.md +++ /dev/null @@ -1,101 +0,0 @@ -# Backend Assessment (5+ Years Experience) - -## Overview - -Welcome to the **Senior** backend assessment! Your task is to design a small API that demonstrates your architecture skills and knowledge of backend patterns. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a small API with clean architecture -2. Implement authentication and authorization -3. Integrate with an external service -4. Demonstrate error handling and logging - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/backend -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/5-years-plus-backend -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create an API with these core features: - - - User authentication (JWT or similar) - - Role-based access control (admin/user roles) - - Integration with an external API (weather, finance, etc.) - - Proper error handling and logging - -2. Focus on these architectural aspects: - - - Clean separation of concerns - - Service/repository pattern - - Middleware for authentication/authorization - - Centralized error handling - -3. Include a simple README explaining: - - Your architecture decisions - - How to run the application - - Any shortcuts taken due to time constraints - -### 5. Test Your Work - -1. Test your API using tools like Postman, Insomnia, or curl -2. Ensure authentication, authorization, and API integration work properly - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement API with clean architecture" - git push origin firstname-lastname/5-years-plus-backend - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include details about your architecture and implementation decisions - -## What We're Looking For - -- Clean architecture and code organization -- Proper authentication and authorization -- Error handling and logging -- External service integration -- Code quality and maintainability - -## Technology Choices - -- Use Node.js -- Choose any framework you're comfortable with -- Use JavaScript or TypeScript (preferably TypeScript) -- Select any libraries that fit your architecture -- Choose any database approach (or mock it if time is limited) - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on demonstrating your architectural thinking rather than implementing many features. Quality over quantity is key. - -**Good luck!** diff --git a/backend/package-lock.json b/backend/package-lock.json new file mode 100644 index 00000000..e69de29b diff --git a/backend/package.json b/backend/package.json index c85981fa..bbd6400a 100644 --- a/backend/package.json +++ b/backend/package.json @@ -5,6 +5,12 @@ "start": "node index.js" }, "dependencies": { - "express": "^4.18.2" - } + "express": "^4.22.2" + }, + "description": "", + "main": "index.js", + "keywords": [], + "author": "", + "license": "ISC", + "type": "commonjs" } diff --git a/backend/server.js b/backend/server.js new file mode 100644 index 00000000..05a06804 --- /dev/null +++ b/backend/server.js @@ -0,0 +1,6 @@ +const app = require("./src/app"); +const PORT = 3000; + +app.listen(PORT, () => { + console.log(`Server running on http://localhost:${PORT}`); +}) \ No newline at end of file diff --git a/backend/src/app.js b/backend/src/app.js new file mode 100644 index 00000000..90bb91e3 --- /dev/null +++ b/backend/src/app.js @@ -0,0 +1,11 @@ +const express = require("express"); +const todoRoutes = require("./routes/todo.routes"); + +const app = express(); + +app.use(express.json()); + +app.use("/api/todos", todoRoutes); + +module.exports = app; + diff --git a/backend/src/controllers/todo.controllers.js b/backend/src/controllers/todo.controllers.js new file mode 100644 index 00000000..8b31a0fe --- /dev/null +++ b/backend/src/controllers/todo.controllers.js @@ -0,0 +1,82 @@ +const todos = require("../data/todos"); + +// Get all todos +const getAllTodos = (request, response) => { + response.json(todos); +} + +// GET specific todo +const getTodoById = (request, response) => { + const todo = todos.find(t=> t.id === request.params.id); + + if (!todo){ + return response.status(404).json({ message: "Todo not found"}); + } + response.json(todo); +}; + +// CREATE todo +const createTodo = (request, response) => { + const { title } = request.body; + + if (!title){ + return response.status(400).json({ message: "Title is required"}); + } + + const newTodo = { + id: Date.now().toString(), + title, + completed: false, + createdAt: new Date().toISOString() + } + + todos.push(newTodo); + response.status(201).json(newTodo); +}; + +// UPDATE todo +const updateTodo = (request, response) =>{ + const todo = todos.find(t => t.id === request.params.id); + + if (!todo){ + return response.status(404).json({ message: "Todo not found"}); + } + + const {title, completed} = request.body; + + if (title !== undefined){ + todo.title = title; + } + + if (completed !== undefined){ + todo.completed = completed; + } + + response.json(todo) +}; + +// DELETE todo +const deleteTodo = (request, response) => { + const index = todos.findIndex(t => t.id === request.params.id); + + if (index === -1){ + return response.status(404).json({ message: "Todo not found"}); + } + + const deleted = todos.splice(index,1); + + response.json(deleted[0]); +}; + +module.exports = { + getAllTodos, + getTodoById, + createTodo, + updateTodo, + deleteTodo +} + + + + + diff --git a/backend/src/data/todos.js b/backend/src/data/todos.js new file mode 100644 index 00000000..8a20f991 --- /dev/null +++ b/backend/src/data/todos.js @@ -0,0 +1,3 @@ +let todos = []; + +module.exports = todos; \ No newline at end of file diff --git a/backend/src/routes/todo.routes.js b/backend/src/routes/todo.routes.js new file mode 100644 index 00000000..09825a33 --- /dev/null +++ b/backend/src/routes/todo.routes.js @@ -0,0 +1,19 @@ +const express = require("express"); +const router = express.Router(); + +const { + getAllTodos, + getTodoById, + createTodo, + updateTodo, + deleteTodo +} = require("../controllers/todo.controllers") + +router.get("/", getAllTodos); +router.get("/:id", getTodoById); +router.post("/", createTodo); +router.put("/:id", updateTodo); +router.delete("/:id", deleteTodo); + + +module.exports = router; \ No newline at end of file diff --git a/frontend/.gitignore b/frontend/.gitignore deleted file mode 100644 index 5ef6a520..00000000 --- a/frontend/.gitignore +++ /dev/null @@ -1,41 +0,0 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -/node_modules -/.pnp -.pnp.* -.yarn/* -!.yarn/patches -!.yarn/plugins -!.yarn/releases -!.yarn/versions - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# env files (can opt-in for committing if needed) -.env* - -# vercel -.vercel - -# typescript -*.tsbuildinfo -next-env.d.ts diff --git a/frontend/README-1-2-YEARS.md b/frontend/README-1-2-YEARS.md deleted file mode 100644 index bc7ad190..00000000 --- a/frontend/README-1-2-YEARS.md +++ /dev/null @@ -1,80 +0,0 @@ -# Frontend Assessment (1–2 Years Experience) - -## Overview - -Welcome to the **1–2 Years** frontend assessment! Your task is to implement a simple landing page based on the design of [Moola.com](https://www.moola.com/). This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Implement a landing page similar to [Moola.com](https://www.moola.com/) -2. Focus on the hero section and one additional section of your choice -3. Make it responsive for desktop and mobile -4. Use Next.js (or React if you prefer) - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/frontend -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/frontend -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implement the Design - -1. Look at [Moola.com](https://www.moola.com/) for reference -2. Create a simplified version of the landing page -3. Focus on these key elements: - - Hero section with heading, subheading and call-to-action - - One additional section of your choice - - Responsive layout for desktop and mobile - -### 5. Test Your Work - -1. Make sure your page looks good on different screen sizes -2. Check for any obvious errors - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement landing page design" - git push origin firstname-lastname/frontend - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Add a title and brief description of your implementation - -## What We're Looking For - -- Clean, readable code -- Basic responsive design -- Attention to visual details -- Simple component structure - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -This assessment is intentionally simple and focused. We're looking for quality over quantity, so don't feel pressured to implement every section of the website. - -**Good luck!** diff --git a/frontend/README-3-5-YEARS.md b/frontend/README-3-5-YEARS.md deleted file mode 100644 index db3e3556..00000000 --- a/frontend/README-3-5-YEARS.md +++ /dev/null @@ -1,95 +0,0 @@ -# Frontend Assessment (3–5 Years Experience) - -## Overview - -Welcome to the **3–5 Years** frontend assessment! Your task is to build a simple product listing page with data fetching. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a page that fetches and displays products from a public API -2. Implement a simple detail view when a product is clicked -3. Add basic filtering or search functionality -4. Make it responsive - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/frontend -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/3-5-years-frontend -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create a product listing page that: - - - Fetches data from any public API (suggestion: [Fake Store API](https://fakestoreapi.com/)) - - Displays products in a grid or list - - Shows basic product information (image, name, price) - -2. Add a simple detail view: - - - When a product is clicked, show more details - - This can be a new page or a modal - -3. Implement basic functionality: - - Add simple filtering or search functionality - - Handle loading and error states - -### 5. Test Your Work - -1. Make sure your application works on different screen sizes -2. Check that your data fetching and interactions work properly - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement product listing page" - git push origin firstname-lastname/3-5-years-frontend - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Add a title and brief description of your implementation - -## What We're Looking For - -- Clean, readable code -- Proper data fetching approach -- Basic state management -- Responsive design -- Error handling - -## Technology Choices - -- You can use Next.js or React -- Feel free to use any styling approach (CSS, Tailwind, styled-components, etc.) -- Choose any state management solution you're comfortable with - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on quality over quantity. A clean, simple implementation is better than a complex one with bugs. - -**Good luck!** diff --git a/frontend/README-5-YEARS-Plus.md b/frontend/README-5-YEARS-Plus.md deleted file mode 100644 index 89b6da83..00000000 --- a/frontend/README-5-YEARS-Plus.md +++ /dev/null @@ -1,100 +0,0 @@ -# Frontend Assessment (5+ Years Experience) - -## Overview - -Welcome to the **Senior** frontend assessment! Your task is to create a small dashboard that demonstrates your architecture decisions and React knowledge. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a small dashboard with two main components: - - Weather widget using a weather API - - Financial widget showing stock or cryptocurrency data -2. Focus on architecture and component design -3. Implement proper data fetching and error handling - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/frontend -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/5-years-plus -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create a dashboard with: - - - A weather widget using any weather API - - A financial widget using any stock/crypto API - - A clean, simple layout - -2. Focus on these technical aspects: - - - Clean component architecture - - Proper data fetching with loading/error states - - Basic caching or state management - - Simple responsive design - -3. Data Sources (suggestions): - - Weather: [OpenWeatherMap](https://openweathermap.org/api) or any similar API - - Financial: [Finnhub](https://finnhub.io/) or any similar API - - Feel free to use mock data if API access is problematic - -### 5. Test Your Work - -1. Make sure your application works on different screen sizes -2. Check that your error handling works properly - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement dashboard with weather and financial widgets" - git push origin firstname-lastname/5-years-plus - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include a brief explanation of your architecture decisions - -## What We're Looking For - -- Clean architecture and code organization -- Proper component design and separation of concerns -- Effective data fetching and state management -- Error and edge case handling -- Clean, maintainable code - -## Technology Choices - -- Use Next.js or React -- Choose any libraries or tools you're comfortable with -- Feel free to use any styling approach -- Select any state management solution that fits the task - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on quality over quantity. We're more interested in seeing your architectural approach and code quality than a large number of features. - -**Good luck!** diff --git a/frontend/README.md b/frontend/README.md deleted file mode 100644 index e215bc4c..00000000 --- a/frontend/README.md +++ /dev/null @@ -1,36 +0,0 @@ -This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app). - -## Getting Started - -First, run the development server: - -```bash -npm run dev -# or -yarn dev -# or -pnpm dev -# or -bun dev -``` - -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. - -You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. - -This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. - -## Learn More - -To learn more about Next.js, take a look at the following resources: - -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. - -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! - -## Deploy on Vercel - -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. - -Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. diff --git a/frontend/eslint.config.mjs b/frontend/eslint.config.mjs deleted file mode 100644 index c85fb67c..00000000 --- a/frontend/eslint.config.mjs +++ /dev/null @@ -1,16 +0,0 @@ -import { dirname } from "path"; -import { fileURLToPath } from "url"; -import { FlatCompat } from "@eslint/eslintrc"; - -const __filename = fileURLToPath(import.meta.url); -const __dirname = dirname(__filename); - -const compat = new FlatCompat({ - baseDirectory: __dirname, -}); - -const eslintConfig = [ - ...compat.extends("next/core-web-vitals", "next/typescript"), -]; - -export default eslintConfig; diff --git a/frontend/next.config.ts b/frontend/next.config.ts deleted file mode 100644 index e9ffa308..00000000 --- a/frontend/next.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { NextConfig } from "next"; - -const nextConfig: NextConfig = { - /* config options here */ -}; - -export default nextConfig; diff --git a/frontend/package.json b/frontend/package.json deleted file mode 100644 index 72b917d9..00000000 --- a/frontend/package.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "name": "frontend", - "version": "0.1.0", - "private": true, - "scripts": { - "dev": "next dev", - "build": "next build", - "start": "next start", - "lint": "next lint" - }, - "dependencies": { - "react": "^19.0.0", - "react-dom": "^19.0.0", - "next": "15.2.4" - }, - "devDependencies": { - "typescript": "^5", - "@types/node": "^20", - "@types/react": "^19", - "@types/react-dom": "^19", - "@tailwindcss/postcss": "^4", - "tailwindcss": "^4", - "eslint": "^9", - "eslint-config-next": "15.2.4", - "@eslint/eslintrc": "^3" - } -} diff --git a/frontend/postcss.config.mjs b/frontend/postcss.config.mjs deleted file mode 100644 index c7bcb4b1..00000000 --- a/frontend/postcss.config.mjs +++ /dev/null @@ -1,5 +0,0 @@ -const config = { - plugins: ["@tailwindcss/postcss"], -}; - -export default config; diff --git a/frontend/public/file.svg b/frontend/public/file.svg deleted file mode 100644 index 004145cd..00000000 --- a/frontend/public/file.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend/public/globe.svg b/frontend/public/globe.svg deleted file mode 100644 index 567f17b0..00000000 --- a/frontend/public/globe.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend/public/next.svg b/frontend/public/next.svg deleted file mode 100644 index 5174b28c..00000000 --- a/frontend/public/next.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend/public/vercel.svg b/frontend/public/vercel.svg deleted file mode 100644 index 77053960..00000000 --- a/frontend/public/vercel.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend/public/window.svg b/frontend/public/window.svg deleted file mode 100644 index b2b2a44f..00000000 --- a/frontend/public/window.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/frontend/src/app/favicon.ico b/frontend/src/app/favicon.ico deleted file mode 100644 index 718d6fea4835ec2d246af9800eddb7ffb276240c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25931 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 LrJugUA?W`A8`#=m diff --git a/frontend/src/app/globals.css b/frontend/src/app/globals.css deleted file mode 100644 index a2dc41ec..00000000 --- a/frontend/src/app/globals.css +++ /dev/null @@ -1,26 +0,0 @@ -@import "tailwindcss"; - -:root { - --background: #ffffff; - --foreground: #171717; -} - -@theme inline { - --color-background: var(--background); - --color-foreground: var(--foreground); - --font-sans: var(--font-geist-sans); - --font-mono: var(--font-geist-mono); -} - -@media (prefers-color-scheme: dark) { - :root { - --background: #0a0a0a; - --foreground: #ededed; - } -} - -body { - background: var(--background); - color: var(--foreground); - font-family: Arial, Helvetica, sans-serif; -} diff --git a/frontend/src/app/layout.tsx b/frontend/src/app/layout.tsx deleted file mode 100644 index f7fa87eb..00000000 --- a/frontend/src/app/layout.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import type { Metadata } from "next"; -import { Geist, Geist_Mono } from "next/font/google"; -import "./globals.css"; - -const geistSans = Geist({ - variable: "--font-geist-sans", - subsets: ["latin"], -}); - -const geistMono = Geist_Mono({ - variable: "--font-geist-mono", - subsets: ["latin"], -}); - -export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", -}; - -export default function RootLayout({ - children, -}: Readonly<{ - children: React.ReactNode; -}>) { - return ( - - - {children} - - - ); -} diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx deleted file mode 100644 index e68abe6b..00000000 --- a/frontend/src/app/page.tsx +++ /dev/null @@ -1,103 +0,0 @@ -import Image from "next/image"; - -export default function Home() { - return ( -
-
- Next.js logo -
    -
  1. - Get started by editing{" "} - - src/app/page.tsx - - . -
  2. -
  3. - Save and see your changes instantly. -
  4. -
- - -
- -
- ); -} diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json deleted file mode 100644 index c1334095..00000000 --- a/frontend/tsconfig.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2017", - "lib": ["dom", "dom.iterable", "esnext"], - "allowJs": true, - "skipLibCheck": true, - "strict": true, - "noEmit": true, - "esModuleInterop": true, - "module": "esnext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "isolatedModules": true, - "jsx": "preserve", - "incremental": true, - "plugins": [ - { - "name": "next" - } - ], - "paths": { - "@/*": ["./src/*"] - } - }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], - "exclude": ["node_modules"] -} diff --git a/fullstack/README-1-2-YEARS.md b/fullstack/README-1-2-YEARS.md deleted file mode 100644 index 3153a970..00000000 --- a/fullstack/README-1-2-YEARS.md +++ /dev/null @@ -1,145 +0,0 @@ -# Fullstack Assessment (1-2 Years Experience) - -## Overview - -Welcome to the **1-2 Years** fullstack assessment! Your task is to create a simple blog application using Next.js. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a simple blog with Next.js -2. Implement a page that lists blog posts -3. Add a page that displays a single blog post -4. Create a simple API route to serve the blog data -5. Style the application with basic CSS or Tailwind - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/fullstack-1-2 -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Setup the Project - -1. Create a new Next.js project in the `fullstack` directory: - - ```bash - mkdir -p fullstack - cd fullstack - npx create-next-app@latest . - ``` - -2. Choose your preferred options during the setup (TypeScript is recommended but optional) - -### 5. Implementation - -#### Blog Data - -Create a simple data file with blog posts: - -```javascript -// data/posts.js -export const posts = [ - { - id: 1, - title: "Getting Started with Next.js", - excerpt: "Learn the basics of Next.js and how to create your first app", - content: - "Next.js is a React framework that enables server-side rendering and generating static websites...", - date: "2025-04-15", - }, - { - id: 2, - title: "Styling in Next.js", - excerpt: "Different ways to style your Next.js application", - content: - "There are multiple ways to style your Next.js application including CSS modules, Tailwind CSS...", - date: "2025-04-16", - }, - // Add 1-2 more posts -]; -``` - -#### Pages to Implement - -1. **Home Page** (`app/page.jsx` or `pages/index.jsx`): - - - Display a list of blog posts with titles and excerpts - - Add links to individual blog post pages - - Include basic styling - -2. **Blog Post Page** (`app/posts/[id]/page.jsx` or `pages/posts/[id].jsx`): - - - Display a single blog post with full content - - Include a back button to return to the home page - - Style the page appropriately - -3. **API Route** (`app/api/posts/route.js` or `pages/api/posts.js`): - - Create an endpoint that returns all posts - - Add another endpoint to get a specific post by ID - -### 6. Test Your Application - -1. Run your Next.js app: - ```bash - npm run dev - ``` -2. Test the blog post list page -3. Test the individual blog post pages -4. Test the API endpoints (e.g., `/api/posts` and `/api/posts/1`) - -### 7. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement simple blog with Next.js" - git push origin firstname-lastname/fullstack-1-2 - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include screenshots of your implementation - - Add a brief description of your approach - -## What We're Looking For - -- Understanding of Next.js basics -- Proper page routing and navigation -- Basic API route implementation -- Clean code organization -- Simple, effective styling - -## Technology Choices - -- Next.js (App Router or Pages Router - your choice) -- JavaScript or TypeScript (your preference) -- CSS, Tailwind, or any styling solution you prefer -- No database required (use the provided data array) - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -This assessment is intentionally simple. We're looking for clean code and a basic understanding of fullstack Next.js development. - -**Good luck!** diff --git a/fullstack/README-3-5-YEARS.md b/fullstack/README-3-5-YEARS.md deleted file mode 100644 index 6972974e..00000000 --- a/fullstack/README-3-5-YEARS.md +++ /dev/null @@ -1,143 +0,0 @@ -# Fullstack Assessment (3-5 Years Experience) - -## Overview - -Welcome to the **3-5 Years** fullstack assessment! Your task is to create a simple todo application with Next.js, including data persistence and authentication. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a todo application with Next.js -2. Implement user authentication (can be simplified) -3. Create API routes for CRUD operations -4. Add data persistence with a database or local storage -5. Style the application for a clean user experience - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/fullstack-3-5 -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Setup the Project - -1. Create a new Next.js project in the `fullstack` directory: - - ```bash - mkdir -p fullstack - cd fullstack - npx create-next-app@latest . - ``` - -2. Choose your preferred options during the setup (TypeScript is recommended) - -3. Install additional dependencies as needed: - ```bash - # Example - choose what you need - npm install next-auth prisma @prisma/client - # Or simpler alternatives if you prefer - ``` - -### 5. Implementation - -#### Authentication - -Implement a simple authentication system: - -- You can use NextAuth.js, a custom solution, or even mock authentication -- Create sign-in and sign-out functionality -- Protect the todo list page from unauthenticated users - -#### Todo Application - -1. **Todo List Page**: - - - Display the current user's todos - - Show each todo's title, status (complete/incomplete), and creation date - - Add buttons to mark todos as complete or delete them - - Include a form to create new todos - -2. **API Routes**: - - - Create an endpoint for fetching todos - - Add endpoints for creating, updating, and deleting todos - - Ensure routes are protected for authenticated users only - -3. **Data Persistence**: - - - Use any database you're comfortable with (Prisma + SQLite is a simple option) - - Or use localStorage/JSON files if you prefer a simpler approach - - Ensure data persists between page refreshes - -4. **Styling**: - - Create a clean, user-friendly interface - - Add loading and error states - - Make the UI responsive - -### 6. Test Your Application - -1. Run your Next.js app: - ```bash - npm run dev - ``` -2. Test the authentication flow -3. Test all todo operations (create, read, update, delete) -4. Verify data persistence - -### 7. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement todo application with authentication" - git push origin firstname-lastname/fullstack-3-5 - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include screenshots of your implementation - - Add a brief description of your approach and any trade-offs you made - -## What We're Looking For - -- Clean, well-organized code -- Proper authentication implementation -- Effective API route design -- Data persistence approach -- User experience and UI design -- Error handling - -## Technology Choices - -- Next.js (App Router or Pages Router - your choice) -- TypeScript preferred but JavaScript is acceptable -- Any authentication library (NextAuth.js, custom JWT, etc.) -- Any database solution or local storage approach -- Any styling approach you prefer - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on implementing a clean, working solution rather than adding many features. We're looking for quality code over quantity of features. - -**Good luck!** diff --git a/fullstack/README-5-YEARS-Plus.md b/fullstack/README-5-YEARS-Plus.md deleted file mode 100644 index a59689df..00000000 --- a/fullstack/README-5-YEARS-Plus.md +++ /dev/null @@ -1,145 +0,0 @@ -# Fullstack Assessment (5+ Years Experience) - -## Overview - -Welcome to the **Senior** fullstack assessment! Your task is to create a small e-commerce product page with Next.js, focusing on architecture, performance, and user experience. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a product detail page with Next.js -2. Implement server and client components appropriately -3. Add a shopping cart with state management -4. Create API routes for product data and cart operations -5. Focus on performance, architecture, and code quality - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/fullstack-5-plus -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Setup the Project - -1. Create a new Next.js project in the `fullstack` directory: - - ```bash - mkdir -p fullstack - cd fullstack - npx create-next-app@latest . - ``` - -2. Choose the following options: - - TypeScript - - ESLint - - Tailwind CSS (or your preferred styling solution) - - App Router - -### 5. Implementation - -#### Product Detail Page - -Create a product detail page that demonstrates: - -- Server components for initial data loading -- Client components for interactive elements -- Proper loading and error states -- Optimized images -- Performance considerations - -#### Shopping Cart - -Implement a cart system that: - -- Allows adding products to the cart -- Shows cart summary (number of items, total price) -- Persists cart state (localStorage, cookies, or server-side) -- Uses appropriate state management - -#### Data Handling - -1. **Product Data**: - - - Create mock product data or use a simple API - - Implement proper data fetching with caching - - Handle loading and error states - -2. **API Routes**: - - - Create endpoints for product data - - Implement cart operations (add, remove, update) - - Add proper error handling - -3. **Architecture**: - - Organize code with clear separation of concerns - - Use appropriate patterns for state management - - Create reusable components - -### 6. Test Your Application - -1. Run your Next.js app: - ```bash - npm run dev - ``` -2. Test the product detail page -3. Verify cart functionality -4. Check performance using browser dev tools - -### 7. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement product page with cart functionality" - git push origin firstname-lastname/fullstack-5-plus - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include screenshots of your implementation - - Add a detailed explanation of your architecture decisions, performance optimizations, and any trade-offs - -## What We're Looking For - -- Clean architecture and component design -- Proper use of server and client components -- Effective state management -- Performance optimization -- Error handling and edge cases -- Code quality and organization -- UX considerations - -## Technology Choices - -- Next.js with App Router -- TypeScript -- Any state management solution you prefer -- Any styling approach (Tailwind recommended) -- Any data fetching library if needed - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on demonstrating your architectural thinking and attention to performance rather than implementing many features. Quality over quantity is key. - -**Good luck!** diff --git a/mobile/.gitignore b/mobile/.gitignore deleted file mode 100644 index c9d575d7..00000000 --- a/mobile/.gitignore +++ /dev/null @@ -1,38 +0,0 @@ -# Learn more https://docs.github.com/en/get-started/getting-started-with-git/ignoring-files - -# dependencies -node_modules/ - -# Expo -.expo/ -dist/ -web-build/ -expo-env.d.ts - -# Native -*.orig.* -*.jks -*.p8 -*.p12 -*.key -*.mobileprovision - -# Metro -.metro-health-check* - -# debug -npm-debug.* -yarn-debug.* -yarn-error.* - -# macOS -.DS_Store -*.pem - -# local env files -.env*.local - -# typescript -*.tsbuildinfo - -app-example diff --git a/mobile/README-1-2-YEARS.md b/mobile/README-1-2-YEARS.md deleted file mode 100644 index 91d2dea5..00000000 --- a/mobile/README-1-2-YEARS.md +++ /dev/null @@ -1,95 +0,0 @@ -# Mobile Assessment (1-2 Years Experience) - -## Overview - -Welcome to the **1-2 Years** mobile development assessment! Your task is to implement a simple UI screen based on a design mockup. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a single screen based on the provided design mockup -2. Implement basic styling and layout -3. Add simple button interaction - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/mobile -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/1-2-years-mobile -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Look at the design mockup in the `image-test` folder -2. Create a screen that matches this design: - - - Implement the layout structure - - Match colors and typography - - Create buttons with press states - -3. Keep it simple: - - Focus on visual accuracy - - Make sure buttons respond to touches - - Ensure the screen looks good on different device sizes - -### 5. Test Your Work - -1. Run the application using Expo: - ```bash - npm start - ``` -2. Test on iOS/Android simulator or your physical device -3. Check that the layout matches the design mockup - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement UI screen based on design mockup" - git push origin firstname-lastname/1-2-years-mobile - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include a screenshot of your implementation - - Add a brief description of your approach - -## What We're Looking For - -- Visual accuracy compared to the mockup -- Clean, readable code -- Proper use of React Native components -- Basic responsiveness - -## Technology Choices - -- Use the existing Expo setup -- Feel free to use StyleSheet or any styling approach you prefer -- Choose any additional libraries if needed - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -This assessment is intentionally simple. We're looking for clean code and attention to visual details rather than complex functionality. - -**Good luck!** diff --git a/mobile/README-3-5-YEARS.md b/mobile/README-3-5-YEARS.md deleted file mode 100644 index 20463803..00000000 --- a/mobile/README-3-5-YEARS.md +++ /dev/null @@ -1,105 +0,0 @@ -# Mobile Assessment (3-5 Years Experience) - -## Overview - -Welcome to the **3-5 Years** mobile development assessment! Your task is to build a simple product details screen with data fetching. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a product details screen that fetches data from an API -2. Display product information with a simple image, title, price, and description -3. Implement a basic "Add to Cart" functionality -4. Handle loading and error states - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/mobile -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/3-5-years-mobile -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create a product details screen that: - - - Fetches data from [Fake Store API](https://fakestoreapi.com/products/1) (or any similar API) - - Displays the product image, title, price, and description - - Shows a loading state while fetching data - - Handles potential errors gracefully - -2. Add a simple "Add to Cart" button that: - - - Shows a visual confirmation when pressed - - Stores the selected product in local state - - Updates a cart counter somewhere on the screen - -3. Focus on these technical aspects: - - Clean component structure - - Proper data fetching - - Basic state management - - Simple UI/UX considerations - -### 5. Test Your Work - -1. Run the application using Expo: - ```bash - npm start - ``` -2. Test on iOS/Android simulator or your physical device -3. Verify that data fetching, display, and cart functionality work properly - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement product details screen with API integration" - git push origin firstname-lastname/3-5-years-mobile - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include screenshots of your implementation - - Add a brief explanation of your approach - -## What We're Looking For - -- Clean component architecture -- Proper data fetching with loading/error states -- Basic state management -- Attention to UI details -- Code organization and readability - -## Technology Choices - -- Use the existing Expo setup -- Choose any state management approach -- Select any libraries for fetching data -- Use any UI components or styling approach you prefer - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on quality over quantity. A clean, working implementation of these basic features is better than an ambitious but incomplete or buggy solution. - -**Good luck!** diff --git a/mobile/README-5-YEARS-Plus.md b/mobile/README-5-YEARS-Plus.md deleted file mode 100644 index a35f0bce..00000000 --- a/mobile/README-5-YEARS-Plus.md +++ /dev/null @@ -1,102 +0,0 @@ -# Mobile Assessment (5+ Years Experience) - -## Overview - -Welcome to the **Senior** mobile development assessment! Your task is to create a small food app feature that demonstrates your architecture decisions and React Native knowledge. This assessment is designed to take **1-2 hours** of coding time, but you have **1-2 days** to complete it. - -## Task Summary - -1. Create a restaurant details screen with menu items -2. Implement a cart feature for adding items -3. Focus on architecture and component design -4. Use mock data (no API integration required) - -## Steps to Complete - -### 1. Fork the Repository - -1. Go to [https://github.com/Zeff01/codebility-assessment](https://github.com/Zeff01/codebility-assessment) -2. Click the "Fork" button in the upper right corner - -### 2. Clone Your Fork - -```bash -git clone https://github.com/YOUR-USERNAME/codebility-assessment.git -cd codebility-assessment/mobile -``` - -### 3. Create a Branch - -```bash -git checkout -b firstname-lastname/5-years-plus-mobile -``` - -Replace `firstname-lastname` with your actual name. - -### 4. Implementation - -1. Create a restaurant details screen that: - - - Shows restaurant information (name, cuisine type, rating) - - Displays a list of menu items with prices - - Allows adding items to a cart - - Updates a cart icon/count when items are added - -2. Focus on these architectural aspects: - - - Clean component structure - - State management approach - - Separation of concerns - - Code organization - -3. Include mock data directly in your code (no need for API calls) - -### 5. Test Your Work - -1. Run the application using Expo: - ```bash - npm start - ``` -2. Test on iOS/Android simulator or your physical device -3. Verify that the restaurant details and cart functionality work properly - -### 6. Submit Your Work - -1. Commit and push your changes: - - ```bash - git add . - git commit -m "Implement restaurant details with cart functionality" - git push origin firstname-lastname/5-years-plus-mobile - ``` - -2. Create a Pull Request: - - Go to your fork on GitHub - - Click "Contribute" and "Open pull request" - - Make sure the base repository is set to `Zeff01/codebility-assessment` - - Include screenshots of your implementation - - Add a brief explanation of your architecture decisions - -## What We're Looking For - -- Clean architecture and code organization -- Proper component design and separation of concerns -- Effective state management approach -- Attention to UX details -- Code quality and maintainability - -## Technology Choices - -- Use the existing Expo setup -- Choose any state management approach -- Select any UI components or styling libraries -- Use any navigation solution you prefer - -## Time Allowance - -- **Expected coding time**: 1-2 hours -- **Submission deadline**: 1-2 days - -Focus on demonstrating your architectural thinking rather than implementing many features. Quality over quantity is key. - -**Good luck!** diff --git a/mobile/README.md b/mobile/README.md deleted file mode 100644 index cd4feb8a..00000000 --- a/mobile/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# Welcome to your Expo app 👋 - -This is an [Expo](https://expo.dev) project created with [`create-expo-app`](https://www.npmjs.com/package/create-expo-app). - -## Get started - -1. Install dependencies - - ```bash - npm install - ``` - -2. Start the app - - ```bash - npx expo start - ``` - -In the output, you'll find options to open the app in a - -- [development build](https://docs.expo.dev/develop/development-builds/introduction/) -- [Android emulator](https://docs.expo.dev/workflow/android-studio-emulator/) -- [iOS simulator](https://docs.expo.dev/workflow/ios-simulator/) -- [Expo Go](https://expo.dev/go), a limited sandbox for trying out app development with Expo - -You can start developing by editing the files inside the **app** directory. This project uses [file-based routing](https://docs.expo.dev/router/introduction). - -## Get a fresh project - -When you're ready, run: - -```bash -npm run reset-project -``` - -This command will move the starter code to the **app-example** directory and create a blank **app** directory where you can start developing. - -## Learn more - -To learn more about developing your project with Expo, look at the following resources: - -- [Expo documentation](https://docs.expo.dev/): Learn fundamentals, or go into advanced topics with our [guides](https://docs.expo.dev/guides). -- [Learn Expo tutorial](https://docs.expo.dev/tutorial/introduction/): Follow a step-by-step tutorial where you'll create a project that runs on Android, iOS, and the web. - -## Join the community - -Join our community of developers creating universal apps. - -- [Expo on GitHub](https://github.com/expo/expo): View our open source platform and contribute. -- [Discord community](https://chat.expo.dev): Chat with Expo users and ask questions. diff --git a/mobile/app.json b/mobile/app.json deleted file mode 100644 index aae24b9c..00000000 --- a/mobile/app.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "expo": { - "name": "mobile", - "slug": "mobile", - "version": "1.0.0", - "orientation": "portrait", - "icon": "./assets/images/icon.png", - "scheme": "myapp", - "userInterfaceStyle": "automatic", - "newArchEnabled": true, - "ios": { - "supportsTablet": true - }, - "android": { - "adaptiveIcon": { - "foregroundImage": "./assets/images/adaptive-icon.png", - "backgroundColor": "#ffffff" - } - }, - "web": { - "bundler": "metro", - "output": "static", - "favicon": "./assets/images/favicon.png" - }, - "plugins": [ - "expo-router", - [ - "expo-splash-screen", - { - "image": "./assets/images/splash-icon.png", - "imageWidth": 200, - "resizeMode": "contain", - "backgroundColor": "#ffffff" - } - ] - ], - "experiments": { - "typedRoutes": true - } - } -} diff --git a/mobile/app/(tabs)/_layout.tsx b/mobile/app/(tabs)/_layout.tsx deleted file mode 100644 index cfbc1e23..00000000 --- a/mobile/app/(tabs)/_layout.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { Tabs } from 'expo-router'; -import React from 'react'; -import { Platform } from 'react-native'; - -import { HapticTab } from '@/components/HapticTab'; -import { IconSymbol } from '@/components/ui/IconSymbol'; -import TabBarBackground from '@/components/ui/TabBarBackground'; -import { Colors } from '@/constants/Colors'; -import { useColorScheme } from '@/hooks/useColorScheme'; - -export default function TabLayout() { - const colorScheme = useColorScheme(); - - return ( - - , - }} - /> - , - }} - /> - - ); -} diff --git a/mobile/app/(tabs)/explore.tsx b/mobile/app/(tabs)/explore.tsx deleted file mode 100644 index 06e70c4f..00000000 --- a/mobile/app/(tabs)/explore.tsx +++ /dev/null @@ -1,109 +0,0 @@ -import { StyleSheet, Image, Platform } from 'react-native'; - -import { Collapsible } from '@/components/Collapsible'; -import { ExternalLink } from '@/components/ExternalLink'; -import ParallaxScrollView from '@/components/ParallaxScrollView'; -import { ThemedText } from '@/components/ThemedText'; -import { ThemedView } from '@/components/ThemedView'; -import { IconSymbol } from '@/components/ui/IconSymbol'; - -export default function TabTwoScreen() { - return ( - - }> - - Explore - - This app includes example code to help you get started. - - - This app has two screens:{' '} - app/(tabs)/index.tsx and{' '} - app/(tabs)/explore.tsx - - - The layout file in app/(tabs)/_layout.tsx{' '} - sets up the tab navigator. - - - Learn more - - - - - You can open this project on Android, iOS, and the web. To open the web version, press{' '} - w in the terminal running this project. - - - - - For static images, you can use the @2x and{' '} - @3x suffixes to provide files for - different screen densities - - - - Learn more - - - - - Open app/_layout.tsx to see how to load{' '} - - custom fonts such as this one. - - - - Learn more - - - - - This template has light and dark mode support. The{' '} - useColorScheme() hook lets you inspect - what the user's current color scheme is, and so you can adjust UI colors accordingly. - - - Learn more - - - - - This template includes an example of an animated component. The{' '} - components/HelloWave.tsx component uses - the powerful react-native-reanimated{' '} - library to create a waving hand animation. - - {Platform.select({ - ios: ( - - The components/ParallaxScrollView.tsx{' '} - component provides a parallax effect for the header image. - - ), - })} - - - ); -} - -const styles = StyleSheet.create({ - headerImage: { - color: '#808080', - bottom: -90, - left: -35, - position: 'absolute', - }, - titleContainer: { - flexDirection: 'row', - gap: 8, - }, -}); diff --git a/mobile/app/(tabs)/index.tsx b/mobile/app/(tabs)/index.tsx deleted file mode 100644 index 886b0796..00000000 --- a/mobile/app/(tabs)/index.tsx +++ /dev/null @@ -1,74 +0,0 @@ -import { Image, StyleSheet, Platform } from 'react-native'; - -import { HelloWave } from '@/components/HelloWave'; -import ParallaxScrollView from '@/components/ParallaxScrollView'; -import { ThemedText } from '@/components/ThemedText'; -import { ThemedView } from '@/components/ThemedView'; - -export default function HomeScreen() { - return ( - - }> - - Welcome! - - - - Step 1: Try it - - Edit app/(tabs)/index.tsx to see changes. - Press{' '} - - {Platform.select({ - ios: 'cmd + d', - android: 'cmd + m', - web: 'F12' - })} - {' '} - to open developer tools. - - - - Step 2: Explore - - Tap the Explore tab to learn more about what's included in this starter app. - - - - Step 3: Get a fresh start - - When you're ready, run{' '} - npm run reset-project to get a fresh{' '} - app directory. This will move the current{' '} - app to{' '} - app-example. - - - - ); -} - -const styles = StyleSheet.create({ - titleContainer: { - flexDirection: 'row', - alignItems: 'center', - gap: 8, - }, - stepContainer: { - gap: 8, - marginBottom: 8, - }, - reactLogo: { - height: 178, - width: 290, - bottom: 0, - left: 0, - position: 'absolute', - }, -}); diff --git a/mobile/app/+not-found.tsx b/mobile/app/+not-found.tsx deleted file mode 100644 index 963b04fb..00000000 --- a/mobile/app/+not-found.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import { Link, Stack } from 'expo-router'; -import { StyleSheet } from 'react-native'; - -import { ThemedText } from '@/components/ThemedText'; -import { ThemedView } from '@/components/ThemedView'; - -export default function NotFoundScreen() { - return ( - <> - - - This screen doesn't exist. - - Go to home screen! - - - - ); -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - alignItems: 'center', - justifyContent: 'center', - padding: 20, - }, - link: { - marginTop: 15, - paddingVertical: 15, - }, -}); diff --git a/mobile/app/_layout.tsx b/mobile/app/_layout.tsx deleted file mode 100644 index db745789..00000000 --- a/mobile/app/_layout.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import { DarkTheme, DefaultTheme, ThemeProvider } from '@react-navigation/native'; -import { useFonts } from 'expo-font'; -import { Stack } from 'expo-router'; -import * as SplashScreen from 'expo-splash-screen'; -import { StatusBar } from 'expo-status-bar'; -import { useEffect } from 'react'; -import 'react-native-reanimated'; - -import { useColorScheme } from '@/hooks/useColorScheme'; - -// Prevent the splash screen from auto-hiding before asset loading is complete. -SplashScreen.preventAutoHideAsync(); - -export default function RootLayout() { - const colorScheme = useColorScheme(); - const [loaded] = useFonts({ - SpaceMono: require('../assets/fonts/SpaceMono-Regular.ttf'), - }); - - useEffect(() => { - if (loaded) { - SplashScreen.hideAsync(); - } - }, [loaded]); - - if (!loaded) { - return null; - } - - return ( - - - - - - - - ); -} diff --git a/mobile/assets/fonts/SpaceMono-Regular.ttf b/mobile/assets/fonts/SpaceMono-Regular.ttf deleted file mode 100644 index 28d7ff717769d29e5d1f036bfa91eea660ce8a24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 93252 zcmcG131D1R)&IS3)+CdCnIw};W=|$FStpZql1%okP181MGihm)?m#I83Y5JR3Z(*8 z^h3~!h=}5XQ#KJn5f%Bcf8av|MN~jUK~zM*jZXf*bKks~$z;+NzyH6}%)EJX-(Ai* z_ndRjIrm(~8DlwkQ#01TdSqy7?bOE@-&uycRYR+%dY65^?>CH3KhIeH;EL6Cjcu16 z{sv?GAby|SeAe9Vi+7$k%9!p>#`Mo^zF?1~;4h|b#>#W>`=M>Sx1ZI0kNHbzU@v1C zuWg?@Z#T7u`i|jKzkTOL+wLxk_!+ZLGj4oj$JV(m`b$5ULH!2&-n;`hv@f#1;(I^7 zJ9eD4XYcu;^FNF4e_%}W$j-Aj&y_cB8$o+V==)i7dv~il3?Jh69Vlb+HTa<5x3YV=DZrmbUQ2_=QP_q-oqAlRxHb{#(J@z;jmT2Nw|4YHNE%40*g zyACyUpq*~kfTz0IF#fu^p54QqWVf>;xOW-P;#ur6_BQ(j{^*@PX$WopGK~{z+H%aru;1LO1}T9Er) z2mGdfsTbWJ#>`Nl)dA`#j(%I%uO87)`Q5?f&nDnhdCAZ-fzs%;Df%gYqxWk-e?)-` zUqp|IuQ9Zr`elvXkHe!1_xcx%XBt!;f4SKGpz*}lN>KcXUx~HnVQ$bXv4?cMF8Uh4 z_4%w7?_KCchv-W$AhHHCsvdpYCT3SF?tc!iBY1tCU5Z)Ij`CfA=OFWfVt27wMpQ9@ z=PqGavVHiy6Sa5+Y#Z?I$6q7f+u0mmJMs6txT0_L8pdBYus?@#UtsUDo6&YN`y}&V zw$?K@1fx8UP z*R#vn>+C7^KPYhwpHJiUvUq=%JqUpJwS_-ikVzjh^D?*)XfWLu)I(*SAt+6#EcU#-Au z;;WsNp~nT7cQv?b#dRhtMXyVN^&q~V4k*v!Wyb3?z)BVUE0g)Y_9Y=RAh?)X`(6C@ zLtt48x?rFi;&L;1_F_Qy>wF*oIKPR1frt6a{P+Bil1XZj`lMCTq!g0oq^;7~(nZp> z(v8w>(vPM8mVTw;sx*~JWmnaz8dQ&&v&~ks)9f*Km`BW;&1ahrm_Kg*r1{h4+syy8 z6j(|vW{b_@vea9AmUc_OIS#Gp^%JK!vot7_KzHYhK@_^;r)_kkQYO}hm zwbn`N2J5Xh$)>es+wyFMwo;qf=CKXiW^G%YPyJh(pT`(TV$}nuJ(w4BpyAuuJz^BM z^KbJ1!{6XTTvkw_PQy&8X)%Z^W`50l5Laj8-spVWeAT>l z-Z)~9|Y%{?zq>4wAz z9>;^f#vkcH@30Rbukla1M+!^#O3zBqNze=N9omufbGlmiPkJ)x`wyk3q+`<4c=9Fb z57NI>OqH%8O%I>=dsy{d6}1=rry|WI;h!q3x;No#>{4~Re5v|6>cC&pKNWPF<@~Sw zZ+srw*D`R3A$GcyF1XtyX4x9HR?3mGrCiY3cJRtE$x<6r0Z@E`I2 z;ZL%&xt;Ci4t5@|WLNPPb~SHh*YI|BfVZ)OJitE2yV)oB0K16~vQP41_9;HZKF<5t z=lDu?8(+mf&sVeC`6T-yU(4>|GwiE;1Gvg8yO(ce-{hOvH~2PQ#-C^R@$Kw>zJs66 z9^hxNZ}FY%L4GECgrCE{!*{dq^7GjD`33BId=I~voA`6=DZY;#;~!%`;a9R>L0kPb z{}g+L{}=lWznQ(xKf`{S@IvqiBY%b$@u&G6+|OR%*K-yB4m+2-z(?lT|Ka=DzxjRa zIDdde_=9Yoe+%mQL+lQ|hCR)%V!!8~V}Isf;xF)*_>24({FhQd>XtgC9;r?0V%PCb zc8GVeFYqaLC!c0t;vx1BKZ|{v?_v-0v)QBkT=qD>ko|z~Wk2K>u~+%0*=zh3_FH}{ zdy{{jy~S^5f8lqrcleiiI)9vJ@E>pk{~^!i|ILf}vuqEqV&_BSzkpY>3%Q5w@$3veU`6aNB9H_ z^Udri-@=~ZSF>mN0ro%q8ulE&mi-iKxaawG>}UKCdy(J3e$H=Xzu+HdFJTq(Oa2MY z`M0^mALeTQ2-omOxt4#I>-hJ$o<9b?{Ry7OpW^xaC%k|kgJ!-05_SR-bT$72f0J#M zmPyn6AJXa48TZ2}e_xB;CpX zoorUOLJGD+mIfe?yPy#SAxjp{bT!smTBZY!PGjlNfenzrSX|Z zUP~aAO^~$Z3%G-sRX|EvnT^>Yx1G?|E1_AtSv9mIFQj@cByl~~K8?&LG_GdoZc&bc z;So334^HqH`)|zj3e0i~X1En|yczR5C}#M2%yF9G=VNwXg86*~X86}IyJ>F!K{5%R z^cLI7{|GMeC-9^{g9o)sMc^_oOQqmSc~U-qU#gVMfVPwWPO?C9{vK<>CVmt6(u`Ch zS*1}(QX4d+SvCzmcLw;>lVUcKzD@W9W~EH2fcTu~VJytNmN1)|9tc@1V-K;cm1AM; z>Y3?qlPO#kn%!nOG&LQToO9pS13{ZN+c%l4)-Vf&S)aZCUPz|C+1{Ek_l7OA+iJp+ z*RsVDerzJFcFo*d#nbx+HV=fg1Jl;9${AX|E^0A3&3wm>C&Js?an4ZNQ3;mW(SIuI9ji9VvsARXD3W^t3uQEkTqlp2UkzyHxmsl+I~$~ z;|=TjJomz0ARwj1S9`A=5V!Zvg{4i~z!lJou%@~utn*r^s~LTpA5ybTD1y!gXG2tE zwqJBr@4Z)-!TJVztF1BEr+F9RB3-V9d(Z{+-8pL+IAotAya;$P6TviWF`<)6FM%EV zT)*5z#uAT*9e4^4$A*^pkby|Z-g|FGx(diP*{z{!YfU)QdsLDJ!dvG0Yr7(i` z{UJvu+Oi5BMY8TJyb)_TJ=o^TCjVI3yG5GXa}G_=pP+KD5cums4kCR`swEiVe! zRUg&x!hvZpGD2WOB4if-+~~FVMSp!L#|IX312CDC-J|=g=zbxz`@8I|M;mz|M%0Ay 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 diff --git a/mobile/assets/images/icon.png b/mobile/assets/images/icon.png deleted file mode 100644 index a0b1526fc7b78680fd8d733dbc6113e1af695487..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22380 zcma&NXFwBA)Gs`ngeqM?rCU%8AShC#M(H35F#)9rii(013!tDx|bcg~9p;sv(x$FOVKfIsreLf|7>hGMHJu^FJH{SV>t+=RyC;&j*-p&dS z00#Ms0m5kH$L?*gw<9Ww*BeXm9UqYx~jJ+1t_4 zJ1{Wx<45o0sR{IH8 zpmC-EeHbTu>$QEi`V0Qoq}8`?({Rz68cT=&7S_Iul9ZEM5bRQwBQDxnr>(iToF)+n z|JO^V$Ny90|8HRG;s3_y|EE!}{=bF6^uYgbVbpK_-xw{eD%t$*;YA)DTk&JD*qleJ z3TBmRf4+a|j^2&HXyGR4BQKdWw|n?BtvJ!KqCQ={aAW0QO*2B496##!#j&gBie2#! zJqxyG2zbFyOA35iJ|1mKYsk?1s;L@_PFX7rKfhZiQdNiEao^8KiD5~5!EgHUD82iG z2XpL^%96Md=;9x?U3$~srSaj;7MG>wT)P_wCb&+1hO4~8uflnL7sq6JejFX4?J(MR z(VPq?4ewa9^aaSgWBhg7Ud4T;BZ7{82adX7MF%W0zZ_mYu+wLYAP^lOQLYY@cUjE4 zBeFNA4tH1neDX`Q|J)mZ`?;#~XzBag&Di1NCjfbREm)XTezLrDtUcF|>r`6d+9;Z2K=0gYw6{= zO`r(C`LX~v_q!oQTzP=V(dpBYRX_m=XTYed%&nR+E%|WO3PI)^4uPRJk7kq+L(WmAOy(ux(#<@^3fSK25b1mHZ&DAw`q0&a5 zXU$pWf=NbJ*j}V$*`Y zMAz4Zi@A4?iMs{U8hRx*ihsZYHPTpP)TpG}jw4o_5!ny)yKkJoo=Bir+@d$gzUtPf z76rl^DOsUwy9uARy%q+*hrZZzh_{hGBXepC05GjPV+X0aCfbk@fQWuf;3wQF@_yMe zt5AXhdB6CNa}=s;{GA3bi9jK8Kx#cdW9+*ie&)lhyA|*h09Nk?0_r>m95{nVXO$6+ z$R>+ZL^ryBs*)RkM6AqpNS?#{nnq$qo^Vt5G+ytRnl4dc&s0sMr1WG4?WRPcp+ zP;4wHTl?f)^!Gj@FV%`g0(eGv;HbO<_}J0}FndK2L|Kcxs9q1mJ&rMg$cKcFmX!S! z0vJ1OH3owS*d>`!`*;8rrX8t`(L`=H!AifKdlcO~&e#f~Gz*D+&)!2#ud^j$6ZANS!q}@cvw*7N5+0Q4R zvKIiqx03&fsKF9NtB8=DY2R$GBF zFO>1hO8{sMa4qRW4rz_ZeDmKOIy>H_iVr#{5#Sj@pJ!sj&rhsFLFP!^^K&|Dr6uLtPu&2WmLoOp+72f`> zM88yjBZc@DHb&cF31E_s3Lc>O?h=~(jh!O*kcTy{W=1>28}m0z!NXv!+39S{1Oo=094 zX=(h?=(7}XGb1D8Le$|=j;d-;;crtG&kl~$1R;+jNJ~%pbCYscUVDFEU78K}k--e# za(QZW#pp2ud*;SAz*bwBzqqTRikI2Y#5?gmB4!gw{q?IKxBJ$Ekk*C1u@L4^va%|d zg`199czf=a{W_rZV(o9cO3-ss^nlj#!JCtP7Us%{K*#UAfC_J8t8O95*4X1neL!uT z7q+4#870U_4@PTELQHYcP!d#&(5s=1xX@nu4~{P ziXP#%91t7KLLnvdo!MHcGH5gCyUtMXC>j$4q!W8-qKL+{QA?W|P_g@&o};Qr{V>;Uw00_+`9LV$n}g$1Wz-iO^%O9@tw3qx-3ufU%wo0W1X6 zd5hj=!1>$2#x-W=@#r)rb>i#BX;&5+G{ip^1}TzYa#zzvid~=DT3juEZzPd*Ptx5PlmOekc^%T@qfGKnX zVLtTc?`|*HLs@&g^HLc-XM;hT*okFVoGV>Rk7|YR#rP|>d%?%Ac6a6tD?jV(PEM2| z)!GQ%0<#4uaBClL!}ieEL#lNYchYI!%yOx-k)Hrt@v}`10WkK6dpyGbIn3J}K<9>6 z&Qr3w#HH4O-)FlVQbmE0IsYU?*2#U}c**@5bJg+B;Z3a{C!Wn z%}5?fNU7QX-m!{(5YE8DV9$RRbxu+^pZ&ZnAiN>7Ej;=f|mchq~oo_duHA zm}UoOBhc=BYSg6-FC`~!vzKFuZxq)d%0s_mkb=8gcX@+)g%YXM+P;snBBP?OLzICI z^nONGyOXmz_6V@ewl4VaqES4q;1}i2cE%ze0*luwQ@4j=-woV5=th~qD7<$}vxHqH zki`K3_K?tAp3?w8qw7CdG)(7lggoq>PPlkt@rNqVm`Ycg!CT9)9T8abyZIZA;Y;5m z%X*dax+I%)X7Yjc(a(`}0da228T?%A)(62CEkfr13$PzqKi>>_-(@aRUSr2JRNn||G!L%}1dKJ|E9+0HUy|x0-9#8- z__=}bb&@;)o<6PQ+SsWesX{>caBlo2%~rhkUU6n+Pfy5N$X8vK18kZm*^~XJsG(og zBO`Kur%3CE5}R|r$by?(@1|{;bLg+dG6WvJ5JO>#SNDdi)Mq0e&KQ?o%pyICN1`}n zIPG++itoD%6Zjho*jBp)LaVIDkPL41VQx_s+y{K#ZZMFUJN!!59D>C?pv3!jpgav( zrWmF`%6QG9&{*|Y2TOEg;yXX+f+FH}@zJ?z;cQ;60`OsF+Pun!-_^Oh_aQkQeRK|! z@R;}3_d5Uqj>@W;{SAaq0{e2oR($}c?m}x>mw3U&EK8p zbDNT;)(io|2H)fID;xYi(7M`Pl2^igo1pxecivhQoZrDJYYqKXg7)kPm6M}H&wk?1 z|CR)0PYBK27ml4L*mD4!ulgjD!q2H)&b>^b(Z}^4enh{P^oa<(*DW{p)=!K!Cf2yxArAy8esW_t$!wO}OC;g>-Y;p?(8K5Lqzo zVOhL8FZn_oA~?Q9?Wp}%Z1Q|bKd}2%!+#WJCx^^$C*0K6QZ2#Lm}2_VciwAguz0^a zyw?EN>H_b-HZ}3A`6@(yG~8IYa)emU9NjV=esnMsEpL5I0ZtmYfC8%y6>s_lxxw#E zG^q&>1%X%Rq$(&YCp2v6OnGR-mI-$;?ekV}$>8saMk6~@idK;{+s(Zq?`iUsro#Rn zzK=vUonDa1DE+ob8@-xJ^13dF>)CrThqq%v97t^q4e`&PYde{8V33VaZdX`=oBAPu4=@9clN{P5AM&b z`|?IsKKKQs>6f)XqgFHWEv{GF=(s$!WorDO7lh60_n?q_z;I`mZq z*dn<86V%zQ*m>k6jwwD*+Tvl&G&c*s)!Qmq5P(FqOG?8SR457Mh3XI}o* zNHJnfNc3rddr4S%F5TL`3ttEi2p&B*92mBV{y_fFcD~9Cc1oH&eyi!@W)XDmr!-Lc}2ziivlJ7K)m%-)5hd*#%qjqpv-I0wp)Ww;Zmhe}i%+uMaYSzlf15j7cS4Lcg zSw_~_f!|o?!98lFa72N~m5HV*@680?k@kjT&o_ld&VK=i#LoRgmXTJI{t}u-HdRZ?xP84*Y8~` zqFW_yBG2VbRtq|$md@m7E{$t7b^3%Cqa|@prg-_BqkTptrIu-ROancLO)(0 z`=1nJO?$p%(=%NhuS`x@r3G||Oy!YPtYHd3F8}Gpd5? zgBlTI*{@j)(&e2)r%evo5bP~_(UYOO{MQk^fQqpvQIEd=s`Y7!rEyHF6#dd&lqXBj z{|hLWB%YCqcVlq&AE8P_$lodI-p~4@dR;nHMQ2FmIOOL`<)D1t5VfCd_YzcanOlBt zsL8m#o5134a;vzx!oLHR`N~~sP@WwvT?bz)a<^pV!b6r$f9^=S!iu>(V~l$UF_QW@ z!jio9i1}8uto)xGyTH-HFBncUqGi4lrD{Q`&u+;dL z7?|h3?1oggBM*H{DI5sULUT1H*YkzV_qLG^sc%iIgZTIw;OSOeyh1tMAY zSE>_9do_gknQA?7{grd7)rmnvoMHyAhTAnruXGW5CH(TqWX~?>l+3`Z`IZ{MAO_}t z>z0mi4wXAv4ZRp4DOLP=OH9o7w>!9tx#eDG2oy4Ma3!FI|DH(Z`MZqlPjidSN?!+$ zxAP0oI8On(1j=wbLHW9&CxWKM7y*dfaz2%0e>3Bk9$HH+poGt8IM4O2Zp!L+{o>)TGM-lB`>PR8Dne1b=v{V}GsGFDR6 zL?jl3X>eP9=IXDRx^qg$yDfIGM{KhS@4j*WHp6TdG>Mie2RHg82( z!YwvpPJtaPNlyo|V5-ByJ~FNdS3jtrR5LFZZFjc~l%lkvldKPru(A4oET?;Mo0KeZZgt?p`a4@) z)CnT%?S_k4DegHCHilm~^F_lg&w*-=5wnY--|%|j;2c`kM4F~{#!A9F)TLy9i5Om! zGf^3|Fd`_!fUwfTJ2E~!Q?Nf4IKX|HVM;0LSu(H^|202t;=Pkd%$wl(mvzH4!mEbw zygM6z8hzkanzrS;p+34V;Ahu&2H1nB;i!W~D1yw={CxUbmC`pccY_aa!KB#G3x?Ji zjkKo#t+c@lLa%4C|1#`FT!RHCmzUmffD-n|KTh5?_aJ_j@Nf4G@ZKA5hRyL~KE=D;$L6#A z+anClym(vFCUa6`mh2H+eCQ}j7N2II_7beG;%^FrtEsL|yur#E`@#U~)2`~Y^efsA z&Upac9Y>`9d312?bE^)0sxhayO07&;g z#&4bUh`Z(-7Y*$M_{0jbRs9@D@;s;4AI~j|qj`T1G9)vhRn0lBf&; zDThp@IKRj>^IItes}_6lK!YanIoN&LGLU&fXeWbwO$Lw+3`D`~?+tZ)+C3D*F4VD! z!YA~jLKQc(iUKMbQ${@@%PvI=Cvet*TcTe`3Tm9?Jw8D`#1kU0%T!+yTD58D#$S?< z08SIHoPJ5$Fu7)8-82N`9ssG(k|}5@(`$kkOa^DI=sjZ>mJDIzT@2*l#~G!|Y;P30 zEuj{><|Y7e0`>g8mDh}S)d-(egD^KCCcoEcx=L42Y*7{IQPA_2Gj63jC*yH7VYxse z^WgiuLu--n2w?CMkhX~&mpdQ?WAV5g_oGDJALfosHq;QF2`+9#-&$?d77|K|-T`aV z+KtI?WJ6w|m{mH^#phJS02_?+l7+Op8`d)%&%CXKh)>}rVP{1RNQ;v^0vU&c_mg}) z=~Xr1v*?=v8`h%Z(4W5)bGiKujAq3i}g-nmv90otzcnAI&?}v10NoRzG$vHYtyd4DyePWNt^4l%sO^^H!E(f~f8VWd6 zaJO8ZJ&I;+fTqUsn|B1gu%75Zzq_eGBQ(ZuR)Zt@d4&PdgiG-=F~!N8!zgM0#=p=> z+GPqp`i^As;$u*G^A&%^ML+kf0E*Dj;~-lx&ovlnsXlm+u4shDPz!rV$sP&RKi|8G z|6ruV{hm;FVq8i|l0F6a1wYu8{yckALq*+Y>?Xe)`jeFxXP#11gM(6xUBeSk{Uk!krUo5_7H>e;Dv&W$_2jrFH?#*z2jY zI#JyAOQ@r-f0EX@5RWJ8!L|#5xZB3zS2t_qd=bafdoDfGk8lF3pL8KAZ!a4!!pgf83>i5Pu zYMyimE!m+Pmb_Cldje-6xU_|0Y~>W12^QzJUQ%KCfn-h(j9E~e3Rza5+0iCjw=GkR zllb*}Z;86cW~@;2#H$^c?SJjen|Sl%_P;(afLk#HkXSF6^#|7u~~%Oy-b&-M3mB zF)Nw4XIen0`tv16 zUQginofO=-m#!+HAyx5_)7k><*g@oL(=yTyqlA8~)>yHvh1y^rUuUl|# zX@i}tPv7iUsqQXZG$9MxrNW8?H{CBD{?0gIv|}eNLWrI3|6z_KZp)J8kIAx3`nI`v zt!LS*vFdaj6)Dg7@H4xJox2zl%!i(imn*s>~@mV%AwKd#8KUFwB& zsSP3wcW}%>|F!f^RigSket-v+*WKx%61S80a{Wkv_#Epof`lZKNR<`w^~r~xkgQ$3|sxDc|{U&nVydhl3 z5zEN}oJ`pV{udB9#Pgu;WrF(!CAP~yte|3PJ3KnMU4zxuhn{w+$U_6zeNK0}-V(8T zgBs86T&@CVG+5dDki6y_0YK$NCZ?s>68}OCmdv1jjBwgApk%Vl5O&WmNnmUbPR9p= z8=TL5VlG1b?Z8?9uY5Fb#-(Ca&__o^EzC02_O!n$pmUEcluV)@_mE8G_r7g{ z_dMXFp3`5VcBcz&2MP)FotYrnziA%ADhbT`;&Ak?>a(iE$j4wQ3*>1=%u=6@W^d-C z%A0mJAG1qSL9I{~*5uT(0rwc&$7OB58ZO&-S@Fq*eJO+;gL|V0+B|VwE|{mlwy&vl zgIqxW`{S9=(Z_^TBe@wDxibSgU!NH4kui-Vtf02zv`cDBj-yuqg+sEjCj|C`%bCEz zd=kBf@b^zG#QC+Y^taq&f>5r6Jz;_Y0JF+M#7-rxfdn~+_XuFj7@zDz7Y!k6LSo$4 z$wm>j>f*QauR^_q@}2~WpSig8*rvl1v^_a%eD5pXhgbDkB`mompqC=tJ=rz?(E=S*zcha14B;fw`=0=Vl# zgMX@BccXu%)OHr^5;@K=bbFX5Nwh7X0Gt`DcnnM4LDq?(HMn}+Yi>c!UV>MgD~62( zz*Zgf$8KU|VoDT#%^svR|3%G4!?Vu%0#YboHfZpIV5L%~V?g6=gDp91Zq2Vt2(x1M z77X|ci>WCA|J04*{}gkXhJ5ILR$)pUeJ3mhMt&Xtgx`FX(a=dzs9rdk8u90I*_@`_ zth12y2|+N)Lf?KMI)~=XJBIe%q~Mol^c#HbRX7E4PlS>4x)3$T;RmP;F(BMKK*SE5 z{)0t5YoK5m;t(td&e9&^*&9*FyHA05x1VDD!sk8c5ktSwKpC`#vG$jPAetb*=iBy$ z>&Mp?mGMJs`6l^9tOa09&^^SVUc7i}h&4SyPuUxD)YFkzn1md*nE@dxAxDv_bBOk# zXqA9%{Ai@0-zGeif6w7I41QxK3U;xSpq=7%(x1Iq)vdNoU}xemV0yJ zp7HDQfyym#9qDVe6<{;O0bJ|9IPfYkoIxYRY=XToDSunStmuT3fFT64FNWDKgmGvD z+f6=CH$a|_tey)ajUTUAI=(O7+LKn>f5AQEF3Bh7e8pbYAwz~5egE7&ptm+z-r ztWoekP40Rl7K4-YzWjX{be8rm34X7}$`P2iORL~tixDmlq;Z(fG2o+6@qWrhOStVH zbFcjxChq=9_whhS;w4xF7=1W?>Tc(uzAY@zJVX0>TUFAI4CAZ({12O=K;08G;HA}m zTle>T!oaprs}9KTCixt#IrR`=L^qo~CFr$2!*6|hf=&oCk!lpxnBpJVeO(9`3TWUz zZDza?g3o_-DtI#na}{pxV%bgz{6@2-t|V?A&nt_S1jF1s{BopN-!rP?!q3KJq+J4X zTV>T0fuo^!)nIXJJRwXu#an<$St-rAHVvxLg<$z_;7-Ff&?=hkh+PKb3LYhn3(357 zDnQd1arx>TLs}B3|G?tC_R!SP-r zw?k?T@6*IVnPNzb5UjxT#9LtWdM#V~D+v|Cun;5jN}Nb=>u(MG@@Zs%8>2HGlbMu= z`%Pbj7}DG~>bwy~&0C>?Y z=Ebap803V9nrSLWlB0m#wf^lDz8jeR{RNkf3n(pvhmRn~{$~@9B*CW6Lj1A~xEO;^ z=ahG9j{u)sV1->1D{F1bm&T)d}DZNCGRjEBpw}K1i|b z#T=G>O^6Zw1^7m}Pk2$Y>SfknQS)zt2RC1|i)j${u&nn!|=9;ZYe-{Wb@? zRyg;gyZDsCD0rCvVZ-dYSgc(1$yY?0eT+#-*^ln+xfo+$?4hj+6b{e`mEB*rvx2qX z9?~=^hk9F~>6E?ocXN-Dq-h~r8RbqKX;HY|qIb9lTy|SyZ-7#NpBFz*TM_5lQf9M) z);F*BGk}$qK~up`>nKwFp)PWhrXcOSCYx=j@i-CFkcVdP^uHo)A%YWvm0DE2@HETU zHjUOU(KtnAaHMlwCX7(*v>3IOVPEjZz+L0v-eQCA(6r8gK#Kn9L7Wid&nszI!9PyL ziTfR#&;G2Z3Zix}9E2Ea>R=iYV2mF=G#icUe)U+t1`aNHMD&N(-zKfu5JKNrNWA;; zD(VPWTDdrNo)%%s&&My{$^xWo@;@X(z~dLj8Os#?z~^thrTkOw1PN9%E_P5O4h!NO zBy@|K!p=CRg$#G8$@PhaK*yFm_P-3?xkYFr>*QZc%4{)AGZ8l~^-N}&7=a{dk3!~)!n3yks4(~nhE0wleQu)VTDwl*>Uk^-2Gj4kQ*l>vLAU^j$%7@IaFaE8@0 z3+dWFd@ab3WmUHBX`ruH0!@0wF-_tc5a;j6>m8^&Or>Ib!PR}jU`GZs@`(21VCOIA z1ghU0)IsLDEE=pCSw!gou?-)uI-XmTlYlMum7H#9be#y@S9Yzkk7BU1QZ-%oZLqu2 zECe!NhNpcOm#t+zq#vxuop!(byd(5p^ORt-5ZJlP1>6k*rca9CEfu}`N%b_KCXTuN z_29!yXf20wQyU?cgyCEp%v3?v;9+k1&6qSv(3%$MwtE7O0!w`&QQ*PpCwIn>7ZS7# zqrh~jK--svvT)WJUVaF=}_FZ?L%^AOmN)&-7wBK+d>6 z)}kj_AS$2c9{zGy7*e%GJ_O?{zo2PRrvuWC>0Ol<1q1TH*1chmD!BE<9YRz`@BHBS zC<7RUL#|q%;MW1K$EC-?^h5=Afdb$jVoc9$sw3x@;iCh7avo={xt8I<^m+8XJ3Rpc z|D)s#sNWp|b2q9miZm(EN)T9H-0LLVVLF)G?2qf2mgP5 zk-yAxE#$J{9`irn&WLLP7>oYxSiDE=r<*xqd{b<*Fac1#h^}mZLF8?uaH737@S)5? z>|mi?h-%CRaDIZJFNLvadCv0#^=JqF&qvu4;^Jl*1aV~Jo<(d+q__;9qV=NkHIeB?H;{gu+oLz=pX zF;2vEjY=KRwZD8^Xl(r~SzZKg;hQ$cIk@4V5FJ&&zppbTVfzX9W#IGh;0|*zK6*!T zpVtA%`BBB#-4E*KKz^cZ@Q>y?V0rq7`|W^xl7JRr_8JNy#b168_X^}&7`uVG7m!-X zdqs0_z<-QbrW>Sh4pgq;$FeqW%R@7GuT2Eyv{V>ix=B6Fo&UDQ?G)10{SqOk<@&ww zX6~c2M}^&27F2e${pMltA2fUS84aKHJ6b;o;l3fQfxDO}0!`y{;y|`@ zMTJNy5u`k)Jyip@30b2^MBYS?0Q!P}Bzzmo)_12HaLg}2QauF+2MAk;99YN{Y*83D zZahhIpNPMe5iAJ*A^%!QcNS!$eawnb>8GD$z475a`<4D(qVqsAhyq`Jm7GSi2e+gP zoZZev?JNDqcq!I818$!c$n3&bY-&{xy#T=$>z@r@MpxX}15`o8%Q|ypRnc)yFg`zb zWW9EwA~ib=3R(hopPP_E}og1_mqyHwHqH`>JPK(jK3U+6qr%&EDiuevSEe=wQ=GH}5$N zo5U^;$A2(Hjg;Ki>2wE64xb{|(=K}k8qidag5Dlwhd&hyXk}1ytqnh8&9D)IgPgLM zZHrDnH3OjQm6zS3?Zh0@@93aZ@)S0>Wig43rR{-;;{qcu8eeNA*Pr0F3cT5#IZnE+T~Z>)gy+e_Q$xsj*}TIUz5Bd`7LREo`%zq zT9a88Gs%pwD{P1JIx3n|(r#^f$4|RK_8Ja7pofd^UT5hx9?4Lcgqv^T1$bM=^(We+mGxRi6*8Ipg z;PPw#RQki84bK<0I4w3#gH}D9pW|>1Y>?KhgQ5}|dTv?B9?TlQ^z{75CZFW=<_Yvs zGzfXrCXku~zp?>6_-L`L7Z<{vOv|UCkkYAr0b!rE;4MoA*gG^lK92~tQjF1&*Oq}) z5O0s2K8c4+EkT9>vbF9wwN4eh)z|SKM6=1!$Q^MvGy4c_-0VYPY8~lndlVQk$)e#u z?PQF3bx!BCZ4XWU21kp&^m1HC91tf@k#0SOtg-t9I-lXi-_<;~kJgJixU?RcU;8{7 z@)M2QFejGga0u$h0H0T1rng*P(&Y3{_=a5$ObI8(ZBCE`vD|cn`e&;Jht7I*#T7|V zr$|2v6jZ_1FXA7C81?46k^SBW&w|+^m}^XK;1l1dnS;HitpLUEC5yk7|D#1rm?Z) zg&P;AwTWL*f&ga;qusIEptBAyKKyDj)tEeHpILiMNAGN~6M%P(ZqiPZ2TEH&*-F!f z6~&;}Uz=BW9o6<(jv3^1t+b8E#)LeuErSpReL2(q{cq`vD+;`nG0LaBK*5{QAOcH7 zUKNFR$i479)BYRD_P7*|@&*MrBmhP*pNl6+GX^A1J$kv%>K_n~mjpa$ofX^|jMZ-x zhR+JM$3>Lp3}V1pVdP;Va@ykoNZwLOZg<<7ySZ~ zVrYV0HZ*9ithjz<&v}cP%0$YlV{98R;>_9Cy*(vQ+gCL;J14v1to%<+flFbW0%vbr zo_5p^37EI{dMt4zhH^la(|_;q+!WozZ17sauRU;7a943PDIaP@9w4n&uzcHB$~xZKw$x)E5L>JU$XZtC-K6W9ZQDGil8&(C<^w!V^)6 zNC_}mvjVLH9Ej=bB?$Izl%q`^GT~`|;*Ev9ne1t|>bP;Q`32zS)~`B*DaAd}^>p=r zROYm=E;Q+1XXAUOsrQpBX5Bdcgt3vE5&ZF}asB)Am#G@)dB6Onv9Ob)O@Q-!^zy19 zXa&8d*mDufmCoK zQy(&#k4XGEc*e3Ap5veCHM{#fs}c={uAEz<>Xt!6JVNRrI_sm?-_};^HMAzv6he zzJ7i;H0!YLc4>+P0rtQQE>!bWxL0|w* zjxBAUBj&B>tGyH@JR$r^n(7VekMfOhLK|84th-9kf1JC`pRBJ&vco>0PeDG!zJz`u z4g++no(Q2fpf`%q&7jW%54KY{k>Dut(#ugdbN|U5xZRe70mzQorRg=HWk=iP6OC2qnOWDytmOau8PU9a$_gVr!b=s}mk=^LHAN zhF;wBXZf99rLWu{1tLWK$^{Ew0%_h$OlF}r5pW*?0=>w5=W92XjG73Bx}Be3oxeg} zRkV&?DhK1y_5}Js8x}cRmtea@uSF8NA;9!K&?+9b;T|F2CvT+4zo+z06rq8?KEZbQ zddUG7i`dQ5F_|wO(+GzARU`@HENgRmDL>A3f%H>CqT=hTS}Lzn-y1p4DH8?G_2|n! zpyv`|xDlg^BDgt-#MQfDS^3@q)5L{wFvaoEgIBJUkdiqAA;GdN?`xxt4~$)CyLcOB zi4}vO>Sy34#@Y*Sz6#40mRhLg%XSVt`cNQ>e2GI3hb6?=QN5+4K zpC%y`n~>&je;bM?WJtOA#1L5lFI&=Khe{AEABsK~@kXuHA=Lh1?k3tU=o&mvuTjm9 zmWMOfLn>OF(#pFlN*D2DRB z$7c_YE;}Qfn)l!J)Sp}{oohJ8q%C9~j|7^m-6v$I1rfU{#h2C-EY=eCpqSfEG=0h| z5%I1`VOP1+(tk(ACyD!%`X*7_&=2{&-%RPrK#rp=_TH4T5_1u{p?FcOYIX| zbam;>yyqKFzaTY@vvKH7%3fMd5>K7Hf1!``V7EA{ z1wfp4Pd!A;Kstvm^z=AAQ1*5zEXWGy2d^#@?rfFeY!((vGw` zDdT0qa^$BC;Gifg9Q@PvUrwx3;fP1DOkGH%a>_$x80qX}tQ$WJ zqe865Jb3J)%JpLfw}t%onQ4aI-(#IaXaw4%-Wj zXg>WbwKSV@FpBojDzRtfkBig2*_t*vo=bXyIR~e^$P103Eb$Pt+CW70YAj z2_gq57u5l3KlPY-`|l|}%PI9MSgD17lw4kCb?wW*&EhW0PM;6Dra9|#Q?C66l>%!g0MA-f46xZaAU@`@OSeBho_TBL&2DXRGdheZ~P(Z)}XJq2Q8k=q8N$` zL;S>jYc@wOBwOe}X9xwDqor4g`L{f4FEpuYgH?i0pUe6+hH{yNRtR=G1QX0kgH)dn z-gA@VWM%~2QX#znU+mL*T@=@v&B{d8La-YDWGrFV{t}w*l#8 z-8?eqS=B}mIRCXGtM~Uh!7C6jhqjwxd3qg;jmUmql_zVIzej$q|KOQuKS>LH_iO>! z0=pZ|T^wbx>dF+n`hh?MX4H4-%n6Zd9&9?WSBt>!g`QqQ> z+xI;;rbR0~ZERT1-|?FBAjj(P10exmQ)oM>6!UAl{(@=qiKoHbC&7ivr-yQmUkmmq z%*fv%Z@LqtC7oz^dYMobXqf)7$XW+1xInOVZtBl#^8-~= z&Y|KAqijRzdGE0*3-K*(A{E+KDC1$wAXVdylLr{zT1oub<7J-e1dW{R*oeDV#2M96 z&Iu%*@Z@Tm1%nTu&fH&(7Hl&(jI-qP51t$R}hJ{Z~{i+tbob)(Tr zZUAZs`y{LrcqY&RJoxQPTcft01g4pIz>Hn=OMxH&BKtqJsb<0&ZX&FPl<>jE7jDQ` zpwnujjafn{#H)fL!|FiApOcyY0DC+;zXOrekddL+Z~89FHeTykiP?athQ^tIZ3HoJ z2ULxy4orq4KEHK>-fM_YX*k~^%3nJbL2GECl6s7~5y(Q5ZK?wOnaIe^2~P*qtV6(V z1&;i}eS%2vHI@k<53C8*k%dEYdE^TZif;Jdy&Wb`4-~M5ix!&n4z6IDcJ zvt)%^3k3MK4AmT7z0dE|qTaldwnj6~l3bq-X|iAr?+Gu)^;NSbN0cIUg}S)0*AMg2 zYHjzT)5WyI1XJkYZR)zqDw8UAz4cu9Xg6dU*%CZ~>20c>Y~yD?^oI6%+u?H0VQKwA zy70#FuKY0~`-2uy2}&cD%wE4^Nj_-p zRhJ9BP%vMZUr*6p(T!7A}v3+URVm6+e?B9Q7i3|P)NaorWDmpz;PX(cJ> zs_kx9aqq|7+_0P{a^$`{LjE+~%>$i7SV^j45KN^Oxx&G&d5Tqp3mdp8MIUUmPa#(x59Rm$?~Jh*N`sHcsBBY~3YF4KF(k=0&)Ao=sG$!j6loq>WMrvGo4pt_ zV+)DWC?5$$VGxOIX;8w5!OZXR{eJ)bet&<>eeQXm<(@P5dA;s)&pB~b@8zq=k*{~c zo+b+Tevv7!NP6JD%7%AOs(V&|IPxsbt&!1pqdFp^TlK813HicpPm>MQ1F2%`LqB1r zzNi_M+VX?0=`=z^S*pU!&kUPN*naNY3BNQddunqPbsf1*bSt5Ur49S@8~<@K;caS! zHf8q++8mVo(EDf>o7!x-Y=sqzJiJt?>}v5#mla&JBMMYaHoB~asR6bYlOuN|h_R?? z&O~~^GZtRqs-nh?^O)Svt-~4TMhQ)eH04F?>z{1MB*r~YAlrxgsR139W;MNnuJAJ} zco#7P;jt*eaxQ)MQRs6ewODwL61f4@{Sh;Pg$_0)K>T@%p{wYHhgV&3IPNn>*Agog zd>k^bhS)T5mawZ}@B?Vuf=ntXvUs-&^Q8F2z7?DyEG9!rF5v(<8raq`BRp9wtK}

_m_Cz!aI|OA~=>rPyDZB}LviY`DTRyq;E+O1bb*mtHP+eDp`ie;@gD)I~c+6GFbPa%hM z`8Vex*~}cS+digqY0sJMuZM`)j&b;BN&8Bf8ycw7yWTmLRzF2`&mV!i;_!0GY1hGp zb*$&h%G&BIe^cNQG&UZZL;uTN8%^xvNkkx~^#*AkS2X%ziIv8gqo$-Nk*@_^rPWH^ z*L)RAHm5TNw>h1~z)`GS!g!lHyu<>rZ>9iOrAIRH!X2`(0Nu~%Lxif$TC5$#DE+cE z{ijLX5#>7=*o}4n?U~M}J*BAU9vkM+h)#@@4!X98>sImyC=SSCNgT*sNI%C2T>i<-!9=`VB~MoE;PLJfXms7b`3UkFsopktZsUu2`1dq zLkKAkxB;K`WB#D)vXr>P;vI^hlReihTzq^o^ujke-_P4>d&|7Z>G0neSdVpD=_A{p zzaXC1y}rJtmP2<8MZ2q_YZJL9G7Oh;K{yL5V|e}*m1NTIb3GA>WrghgOgWuW{3aYU zC!vPfD%{X@ANAJ&0p;vM@vCuDDUKM~vORWNZI%l6eB+aw;A5p(Le52ja>c7Dso?Z& zwJa(*Ju3oD?8P4uRoM4M$N_2sO2~Y$I{|HGih=XE!=%b(>#B&zHELo519p)LB}gf- zIcriktD7O1*bNvLRB?xUzAHNJL=zjS55!G$oTK{=ZsKKXWsUA>L407$9?hfeuNv~+ zV(7Nu1QQsdH@enfB8Y2~QO~5;=if?cz*gq9X|3Oj_Vr;ouRHdF_LpwG7$hWA?kw3I z7lNtHprmKTT;3k$nlzOWd^!OqefbPJs~VbLtR(+^r?&D;fs8LVlbz?b9l`FSq~E(Q z91@`=0oM3ougBzcJV0l?;+o3fAH7d^yD$I5@`-MzfvacD@$=fV=KQoICRXSms6$j*@>%B4$Zu&2iJZcpZYc6IalE1 zvefh96Nz{OLsVyVDL-r{ysURGx|WF#U5f9I>~y(I5`<}kCXXnY+n?H0FP$I_-U7NC zxGwSeTidqo))zxLP)@I5(L~*=60Ol$Z|zvxKIIeB@$eRugHua)KcSQG)z^+&6VTUW zGtS?*TVEaJklp@53!^@M0ri?zw*fJk58rQwXay8SlYr?8f8V)T5>yKz;CSB*aYb_tKPX(}k z<-Nmh>UaB*isssB>l(Sc?2X_1yb(&R{dv+c%5t+gBCN;0xu5V?nJWM1H61Xu#Q*ew zJ3g<6)$zcaK4}DZ6IW4tG;oOLZ6<<;6p{b;!^tC7(Ks^) z7)I|ml)Sf?8KO4675nLqP{t$9E@ObSbK$D%tRu=_g_8-a-qXAKb8gT2ENXawopM}4 z0`lHRiIa78$mX9-^xSbw7iByhx3cEk`BBmpZkY%zy)f+zaG@Bq(IQtnzo z%PE_dB+x4QTfAxUhdM?2aBnQt7!^jLP z6p1kMLr{zdHvBSSTdkwCAXC?&5(J9{m-Ddn%kR(4`PhTobU%IrLb8Xe#eG)?%W0Dz zCiC}6s*q#m0+iHJhxXXVNrcM6jX(nHy~;=~xk4PSZ&~V2j?k zG|`DtuOZxpw-AY`^ORuoHM0{}8K&Q|>4z}_GxXGN26MhH(*yL)Wh#Wq)~aU7Y+-t> z2Gi$X&&c{>T-F`5Id&^R_U(!2wJTKOCLLzNOV-BSUQ;j8Q_q&Bo)TCfrbifrN`A(C zsH8<9&qKAN7yoI|fj4+LZmmiVQ< zr)G;VNGNJ!3WxTKPt)_?T-;#uwgw5u2GX}-upj0;v5T$T^D>^-KKl#8xUn$h*i zDKNN+<#-{d5?`yhYH`5sJC$>we$z~cVgB&3Jlr7Xs@bI=O}lU<@hcjBqsqiK(ddWR zYH?T;6}Jl8x@9lZ+iv&Fx08o7jo19{-!6WPLCH=sPP5mqNwP(Pe7Qa@-c*=m-8&6YljhO=0g=sdnhY>(3u~b(HH7@hHN! zX_EN{NMW6@`eU4I(!C1BI za8t+(oEN(5)x_I2Q%qwX2%Ga>6go|O}1S`eIgR_1yGQ?Hs-gyHadT(a8-+F!f z*)M+!Jx-xzC>i(}?yZ@6l485#m1y7R-Cf2u5bj1IZk^rTLEjINCq>OKTR9g$^`6)* zr9)BhS$FoZ(+d&QTZ~+`h&Q(?vO6>Il=h8HlDRsrr0>_6OD&&gzv9_NO);lzCZ8Y; zlZw$=iRH{7R#O9Q@WEj$xOA^PfS3a>_!E8cF;wGL;mDCQ%|Kc%DHEo5d}1cD zd9eexRBf?fEF`B65$6Z>3Q1koOhDvF+{lM&T=_X1q^7>_Ff1P>l?AE0dR;LShNmC~ z_@Lr)p+XNXZDGu8g})2-Jq7hry0Tg?gDg&N^$nqJ7WBcLE6LH~-@}7>Bc25)q;?>m zMU(z~brJ_7V&6_d4=G+9NFt`doaw#pgaxaojM?Vx*@f62rL3DlsW{2CULK+K7og#3 z1tLqeluZc3rCJ1e?U}8P`xKTNeNolv3Z6F}{ zWeYeL>MG~?E&R4;0^cr$Wc|YG3@A#FrgaMsbmdV3bC}}Q$P@fl-zo{zxaBwS_AGkq zh5l*L+f{%=A@|J)p&zkGt#s9UIpjVFDi)!dk;Gv~FMr2WL}E7gO}COZB2n_I*t8Vj zl~Mg2vDV1*ulDL2MLtTP;{;dY(}*G>GCZIrt_Zmyhg|i$2r3A~uuAfsFH-hIvE{d} zc&&Z<1O~v)g+GgFvnx*d-7o$FX$$q;LtkiWyAcAxOL(F+0K0mr3qK5xu1vhe6A`Oh zD&31jfrychVu37ZscaUNdFcD86P-1XR;NfIWx=OV`q2?e8sy4sa ziLnwCyu#GvqAVK?w-V@l#EA~_=;_r!jb%*J<7SdkL`W(*(1!n*aYYNEX`-zxnAW;g zhsNcRs*9+1v@LRq1^c$V_{VPNgOIc8l@vbTdXU{|a9}xQ z1j!X9x2p_NmI=RgC}3bMC1@tid=-wnJef4(FMPWecsB5oaJ{RH9t&D)2u;^xYC4c! zOu*McDTa5XGpeG+iAFZEzz~t|lmcC1?pc^bM7XP#}O^uD@>2uHf zvY@iHgUC7+G!Du~M)<3e(0 zz6vYN92GBHwcKV=9C*E+{BCQE!>Re>8P6m`yiMT;GrqX;4=+9h6yc zcumctv&^SaUv@5ZWTN5r5yLX|cceP_gdt@WSE43Q*656Q>d?GpFTo^s~$(q0a!#*Y0^2DTl?R*d#Ly|?u@6<(g3mi!=$zFfeZ zv$uR~_T9qh?LQfRk0swkGBA@x#u}lsAu@vCyW-uelR1ZORH@y28R591A;ewXIxt!- z_FpjlQ$LCN$&0}W;@x1HmiZlhx=-}H6*1C2chKjlM95CX;y){Eyu&5Z>s*@AdtFn} zMCi$NlTn?0W0GAd;urGp;xO|Wuc2pVNKR;WDXOE<9|bSvf7CX(sp4EETTrb1oEpmc zOBM`^2Jlm_*`+>i5_+U#G2wpt&gMBQ%x5<8GlS+u`vrGAU*YlzaodXC-kWq0>q@_f zn5zMiqn8{>*#AD@W0DC>26`cvj{oli-hCX6>?l5MjfMU*;QyH$gE0WW`&~tyL1z_C z#zZrwk#?@a+?*z)mFq$h9WQcp93kMDOGtxP5rgsMKfnJI^lzee!T$^Tfk^zHAfD*o eYX2uFQ^E?}>e@W{JrCL6z=m|hvgm+s%>M!WQ(8m- diff --git a/mobile/assets/images/partial-react-logo.png b/mobile/assets/images/partial-react-logo.png deleted file mode 100644 index 66fd9570e4fac42bca15352def191c563100b2ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5075 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 diff --git a/mobile/assets/images/react-logo.png b/mobile/assets/images/react-logo.png deleted file mode 100644 index 9d72a9ffcbb39d89709073e1a7edd8ba414932c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6341 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

OG^bt6yG2??7FhdGVc8feK}syBta)V!iG4 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 - setIsOpen((value) => !value)} - activeOpacity={0.8}> - - - {title} - - {isOpen && {children}} - - ); -} - -const styles = StyleSheet.create({ - heading: { - flexDirection: 'row', - alignItems: 'center', - gap: 6, - }, - content: { - marginTop: 6, - marginLeft: 24, - }, -}); diff --git a/mobile/components/ExternalLink.tsx b/mobile/components/ExternalLink.tsx deleted file mode 100644 index 8f05675b..00000000 --- a/mobile/components/ExternalLink.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import { Link } from 'expo-router'; -import { openBrowserAsync } from 'expo-web-browser'; -import { type ComponentProps } from 'react'; -import { Platform } from 'react-native'; - -type Props = Omit, 'href'> & { href: string }; - -export function ExternalLink({ href, ...rest }: Props) { - return ( - { - if (Platform.OS !== 'web') { - // Prevent the default behavior of linking to the default browser on native. - event.preventDefault(); - // Open the link in an in-app browser. - await openBrowserAsync(href); - } - }} - /> - ); -} diff --git a/mobile/components/HapticTab.tsx b/mobile/components/HapticTab.tsx deleted file mode 100644 index 7f3981cb..00000000 --- a/mobile/components/HapticTab.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import { BottomTabBarButtonProps } from '@react-navigation/bottom-tabs'; -import { PlatformPressable } from '@react-navigation/elements'; -import * as Haptics from 'expo-haptics'; - -export function HapticTab(props: BottomTabBarButtonProps) { - return ( - { - if (process.env.EXPO_OS === 'ios') { - // Add a soft haptic feedback when pressing down on the tabs. - Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light); - } - props.onPressIn?.(ev); - }} - /> - ); -} diff --git a/mobile/components/HelloWave.tsx b/mobile/components/HelloWave.tsx deleted file mode 100644 index 9b4bc31c..00000000 --- a/mobile/components/HelloWave.tsx +++ /dev/null @@ -1,40 +0,0 @@ -import { useEffect } from 'react'; -import { StyleSheet } from 'react-native'; -import Animated, { - useSharedValue, - useAnimatedStyle, - withTiming, - withRepeat, - withSequence, -} from 'react-native-reanimated'; - -import { ThemedText } from '@/components/ThemedText'; - -export function HelloWave() { - const rotationAnimation = useSharedValue(0); - - useEffect(() => { - rotationAnimation.value = withRepeat( - withSequence(withTiming(25, { duration: 150 }), withTiming(0, { duration: 150 })), - 4 // Run the animation 4 times - ); - }, []); - - const animatedStyle = useAnimatedStyle(() => ({ - transform: [{ rotate: `${rotationAnimation.value}deg` }], - })); - - return ( - - 👋 - - ); -} - -const styles = StyleSheet.create({ - text: { - fontSize: 28, - lineHeight: 32, - marginTop: -6, - }, -}); diff --git a/mobile/components/ParallaxScrollView.tsx b/mobile/components/ParallaxScrollView.tsx deleted file mode 100644 index 5df1d75f..00000000 --- a/mobile/components/ParallaxScrollView.tsx +++ /dev/null @@ -1,82 +0,0 @@ -import type { PropsWithChildren, ReactElement } from 'react'; -import { StyleSheet } from 'react-native'; -import Animated, { - interpolate, - useAnimatedRef, - useAnimatedStyle, - useScrollViewOffset, -} from 'react-native-reanimated'; - -import { ThemedView } from '@/components/ThemedView'; -import { useBottomTabOverflow } from '@/components/ui/TabBarBackground'; -import { useColorScheme } from '@/hooks/useColorScheme'; - -const HEADER_HEIGHT = 250; - -type Props = PropsWithChildren<{ - headerImage: ReactElement; - headerBackgroundColor: { dark: string; light: string }; -}>; - -export default function ParallaxScrollView({ - children, - headerImage, - headerBackgroundColor, -}: Props) { - const colorScheme = useColorScheme() ?? 'light'; - const scrollRef = useAnimatedRef(); - const scrollOffset = useScrollViewOffset(scrollRef); - const bottom = useBottomTabOverflow(); - const headerAnimatedStyle = useAnimatedStyle(() => { - return { - transform: [ - { - translateY: interpolate( - scrollOffset.value, - [-HEADER_HEIGHT, 0, HEADER_HEIGHT], - [-HEADER_HEIGHT / 2, 0, HEADER_HEIGHT * 0.75] - ), - }, - { - scale: interpolate(scrollOffset.value, [-HEADER_HEIGHT, 0, HEADER_HEIGHT], [2, 1, 1]), - }, - ], - }; - }); - - return ( - - - - {headerImage} - - {children} - - - ); -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - }, - header: { - height: HEADER_HEIGHT, - overflow: 'hidden', - }, - content: { - flex: 1, - padding: 32, - gap: 16, - overflow: 'hidden', - }, -}); diff --git a/mobile/components/ThemedText.tsx b/mobile/components/ThemedText.tsx deleted file mode 100644 index c0e1a78f..00000000 --- a/mobile/components/ThemedText.tsx +++ /dev/null @@ -1,60 +0,0 @@ -import { Text, type TextProps, StyleSheet } from 'react-native'; - -import { useThemeColor } from '@/hooks/useThemeColor'; - -export type ThemedTextProps = TextProps & { - lightColor?: string; - darkColor?: string; - type?: 'default' | 'title' | 'defaultSemiBold' | 'subtitle' | 'link'; -}; - -export function ThemedText({ - style, - lightColor, - darkColor, - type = 'default', - ...rest -}: ThemedTextProps) { - const color = useThemeColor({ light: lightColor, dark: darkColor }, 'text'); - - return ( - - ); -} - -const styles = StyleSheet.create({ - default: { - fontSize: 16, - lineHeight: 24, - }, - defaultSemiBold: { - fontSize: 16, - lineHeight: 24, - fontWeight: '600', - }, - title: { - fontSize: 32, - fontWeight: 'bold', - lineHeight: 32, - }, - subtitle: { - fontSize: 20, - fontWeight: 'bold', - }, - link: { - lineHeight: 30, - fontSize: 16, - color: '#0a7ea4', - }, -}); diff --git a/mobile/components/ThemedView.tsx b/mobile/components/ThemedView.tsx deleted file mode 100644 index 4d2cb09d..00000000 --- a/mobile/components/ThemedView.tsx +++ /dev/null @@ -1,14 +0,0 @@ -import { View, type ViewProps } from 'react-native'; - -import { useThemeColor } from '@/hooks/useThemeColor'; - -export type ThemedViewProps = ViewProps & { - lightColor?: string; - darkColor?: string; -}; - -export function ThemedView({ style, lightColor, darkColor, ...otherProps }: ThemedViewProps) { - const backgroundColor = useThemeColor({ light: lightColor, dark: darkColor }, 'background'); - - return ; -} diff --git a/mobile/components/__tests__/ThemedText-test.tsx b/mobile/components/__tests__/ThemedText-test.tsx deleted file mode 100644 index 1ac32250..00000000 --- a/mobile/components/__tests__/ThemedText-test.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import * as React from 'react'; -import renderer from 'react-test-renderer'; - -import { ThemedText } from '../ThemedText'; - -it(`renders correctly`, () => { - const tree = renderer.create(Snapshot test!).toJSON(); - - expect(tree).toMatchSnapshot(); -}); diff --git a/mobile/components/__tests__/__snapshots__/ThemedText-test.tsx.snap b/mobile/components/__tests__/__snapshots__/ThemedText-test.tsx.snap deleted file mode 100644 index b68e53e9..00000000 --- a/mobile/components/__tests__/__snapshots__/ThemedText-test.tsx.snap +++ /dev/null @@ -1,24 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`renders correctly 1`] = ` - - Snapshot test! - -`; diff --git a/mobile/components/ui/IconSymbol.ios.tsx b/mobile/components/ui/IconSymbol.ios.tsx deleted file mode 100644 index 9177f4da..00000000 --- a/mobile/components/ui/IconSymbol.ios.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import { SymbolView, SymbolViewProps, SymbolWeight } from 'expo-symbols'; -import { StyleProp, ViewStyle } from 'react-native'; - -export function IconSymbol({ - name, - size = 24, - color, - style, - weight = 'regular', -}: { - name: SymbolViewProps['name']; - size?: number; - color: string; - style?: StyleProp; - weight?: SymbolWeight; -}) { - return ( - - ); -} diff --git a/mobile/components/ui/IconSymbol.tsx b/mobile/components/ui/IconSymbol.tsx deleted file mode 100644 index f1fabd4a..00000000 --- a/mobile/components/ui/IconSymbol.tsx +++ /dev/null @@ -1,43 +0,0 @@ -// This file is a fallback for using MaterialIcons on Android and web. - -import MaterialIcons from '@expo/vector-icons/MaterialIcons'; -import { SymbolWeight } from 'expo-symbols'; -import React from 'react'; -import { OpaqueColorValue, StyleProp, ViewStyle } from 'react-native'; - -// Add your SFSymbol to MaterialIcons mappings here. -const MAPPING = { - // See MaterialIcons here: https://icons.expo.fyi - // See SF Symbols in the SF Symbols app on Mac. - 'house.fill': 'home', - 'paperplane.fill': 'send', - 'chevron.left.forwardslash.chevron.right': 'code', - 'chevron.right': 'chevron-right', -} as Partial< - Record< - import('expo-symbols').SymbolViewProps['name'], - React.ComponentProps['name'] - > ->; - -export type IconSymbolName = keyof typeof MAPPING; - -/** - * An icon component that uses native SFSymbols on iOS, and MaterialIcons on Android and web. This ensures a consistent look across platforms, and optimal resource usage. - * - * Icon `name`s are based on SFSymbols and require manual mapping to MaterialIcons. - */ -export function IconSymbol({ - name, - size = 24, - color, - style, -}: { - name: IconSymbolName; - size?: number; - color: string | OpaqueColorValue; - style?: StyleProp; - weight?: SymbolWeight; -}) { - return ; -} diff --git a/mobile/components/ui/TabBarBackground.ios.tsx b/mobile/components/ui/TabBarBackground.ios.tsx deleted file mode 100644 index 6668e78d..00000000 --- a/mobile/components/ui/TabBarBackground.ios.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import { useBottomTabBarHeight } from '@react-navigation/bottom-tabs'; -import { BlurView } from 'expo-blur'; -import { StyleSheet } from 'react-native'; -import { useSafeAreaInsets } from 'react-native-safe-area-context'; - -export default function BlurTabBarBackground() { - return ( - - ); -} - -export function useBottomTabOverflow() { - const tabHeight = useBottomTabBarHeight(); - const { bottom } = useSafeAreaInsets(); - return tabHeight - bottom; -} diff --git a/mobile/components/ui/TabBarBackground.tsx b/mobile/components/ui/TabBarBackground.tsx deleted file mode 100644 index 70d1c3c0..00000000 --- a/mobile/components/ui/TabBarBackground.tsx +++ /dev/null @@ -1,6 +0,0 @@ -// This is a shim for web and Android where the tab bar is generally opaque. -export default undefined; - -export function useBottomTabOverflow() { - return 0; -} diff --git a/mobile/constants/Colors.ts b/mobile/constants/Colors.ts deleted file mode 100644 index 14e67844..00000000 --- a/mobile/constants/Colors.ts +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Below are the colors that are used in the app. The colors are defined in the light and dark mode. - * There are many other ways to style your app. For example, [Nativewind](https://www.nativewind.dev/), [Tamagui](https://tamagui.dev/), [unistyles](https://reactnativeunistyles.vercel.app), etc. - */ - -const tintColorLight = '#0a7ea4'; -const tintColorDark = '#fff'; - -export const Colors = { - light: { - text: '#11181C', - background: '#fff', - tint: tintColorLight, - icon: '#687076', - tabIconDefault: '#687076', - tabIconSelected: tintColorLight, - }, - dark: { - text: '#ECEDEE', - background: '#151718', - tint: tintColorDark, - icon: '#9BA1A6', - tabIconDefault: '#9BA1A6', - tabIconSelected: tintColorDark, - }, -}; diff --git a/mobile/hooks/useColorScheme.ts b/mobile/hooks/useColorScheme.ts deleted file mode 100644 index 17e3c63e..00000000 --- a/mobile/hooks/useColorScheme.ts +++ /dev/null @@ -1 +0,0 @@ -export { useColorScheme } from 'react-native'; diff --git a/mobile/hooks/useColorScheme.web.ts b/mobile/hooks/useColorScheme.web.ts deleted file mode 100644 index 7eb1c1b7..00000000 --- a/mobile/hooks/useColorScheme.web.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { useEffect, useState } from 'react'; -import { useColorScheme as useRNColorScheme } from 'react-native'; - -/** - * To support static rendering, this value needs to be re-calculated on the client side for web - */ -export function useColorScheme() { - const [hasHydrated, setHasHydrated] = useState(false); - - useEffect(() => { - setHasHydrated(true); - }, []); - - const colorScheme = useRNColorScheme(); - - if (hasHydrated) { - return colorScheme; - } - - return 'light'; -} diff --git a/mobile/hooks/useThemeColor.ts b/mobile/hooks/useThemeColor.ts deleted file mode 100644 index 0608e731..00000000 --- a/mobile/hooks/useThemeColor.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Learn more about light and dark modes: - * https://docs.expo.dev/guides/color-schemes/ - */ - -import { Colors } from '@/constants/Colors'; -import { useColorScheme } from '@/hooks/useColorScheme'; - -export function useThemeColor( - props: { light?: string; dark?: string }, - colorName: keyof typeof Colors.light & keyof typeof Colors.dark -) { - const theme = useColorScheme() ?? 'light'; - const colorFromProps = props[theme]; - - if (colorFromProps) { - return colorFromProps; - } else { - return Colors[theme][colorName]; - } -} diff --git a/mobile/image-test/image test.png b/mobile/image-test/image test.png deleted file mode 100644 index 48f7412675effe830e66453b5c5cb0b4d0bffd14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106424 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 z

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 hun9w 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 diff --git a/mobile/image-test/image test2.png b/mobile/image-test/image test2.png deleted file mode 100644 index ca53c3e3afd21caec000e4da661ce164f4242adc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36048 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 - Edit app/index.tsx to edit this screen. - - ); -} -`; - -const layoutContent = `import { Stack } from "expo-router"; - -export default function RootLayout() { - return ; -} -`; - -const rl = readline.createInterface({ - input: process.stdin, - output: process.stdout, -}); - -const moveDirectories = async (userInput) => { - try { - if (userInput === "y") { - // Create the app-example directory - await fs.promises.mkdir(exampleDirPath, { recursive: true }); - console.log(`📁 /${exampleDir} directory created.`); - } - - // Move old directories to new app-example directory or delete them - for (const dir of oldDirs) { - const oldDirPath = path.join(root, dir); - if (fs.existsSync(oldDirPath)) { - if (userInput === "y") { - const newDirPath = path.join(root, exampleDir, dir); - await fs.promises.rename(oldDirPath, newDirPath); - console.log(`➡️ /${dir} moved to /${exampleDir}/${dir}.`); - } else { - await fs.promises.rm(oldDirPath, { recursive: true, force: true }); - console.log(`❌ /${dir} deleted.`); - } - } else { - console.log(`➡️ /${dir} does not exist, skipping.`); - } - } - - // Create new /app directory - const newAppDirPath = path.join(root, newAppDir); - await fs.promises.mkdir(newAppDirPath, { recursive: true }); - console.log("\n📁 New /app directory created."); - - // Create index.tsx - const indexPath = path.join(newAppDirPath, "index.tsx"); - await fs.promises.writeFile(indexPath, indexContent); - console.log("📄 app/index.tsx created."); - - // Create _layout.tsx - const layoutPath = path.join(newAppDirPath, "_layout.tsx"); - await fs.promises.writeFile(layoutPath, layoutContent); - console.log("📄 app/_layout.tsx created."); - - console.log("\n✅ Project reset complete. Next steps:"); - console.log( - `1. Run \`npx expo start\` to start a development server.\n2. Edit app/index.tsx to edit the main screen.${ - userInput === "y" - ? `\n3. Delete the /${exampleDir} directory when you're done referencing it.` - : "" - }` - ); - } catch (error) { - console.error(`❌ Error during script execution: ${error.message}`); - } -}; - -rl.question( - "Do you want to move existing files to /app-example instead of deleting them? (Y/n): ", - (answer) => { - const userInput = answer.trim().toLowerCase() || "y"; - if (userInput === "y" || userInput === "n") { - moveDirectories(userInput).finally(() => rl.close()); - } else { - console.log("❌ Invalid input. Please enter 'Y' or 'N'."); - rl.close(); - } - } -); diff --git a/mobile/tsconfig.json b/mobile/tsconfig.json deleted file mode 100644 index 909e9010..00000000 --- a/mobile/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "extends": "expo/tsconfig.base", - "compilerOptions": { - "strict": true, - "paths": { - "@/*": [ - "./*" - ] - } - }, - "include": [ - "**/*.ts", - "**/*.tsx", - ".expo/types/**/*.ts", - "expo-env.d.ts" - ] -} From 572872ad43a5aa90f1c7b5641f6503636bbca6bc Mon Sep 17 00:00:00 2001 From: Zollll <161481778+Zollll@users.noreply.github.com> Date: Tue, 23 Jun 2026 21:24:12 +0800 Subject: [PATCH 2/2] Implement Todo API --- .idea/.gitignore | 10 ++ .idea/codebility-assessment.iml | 9 + .idea/inspectionProfiles/Project_Default.xml | 6 + .idea/misc.xml | 6 + .idea/modules.xml | 8 + .idea/vcs.xml | 7 + package-lock.json | 180 +++++++++++-------- 7 files changed, 155 insertions(+), 71 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/codebility-assessment.iml create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 00000000..30cf57ed --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Ignored default folder with query files +/queries/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/codebility-assessment.iml b/.idea/codebility-assessment.iml new file mode 100644 index 00000000..d6ebd480 --- /dev/null +++ b/.idea/codebility-assessment.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 00000000..03d9549e --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 00000000..3653b1f2 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 00000000..027c1753 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 00000000..83067447 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index c61d591b..9e1b6000 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,8 +15,9 @@ }, "backend": { "version": "1.0.0", + "license": "ISC", "dependencies": { - "express": "^4.18.2" + "express": "^4.22.2" } }, "frontend": { @@ -7481,22 +7482,23 @@ } }, "node_modules/body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "version": "1.20.5", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.5.tgz", + "integrity": "sha512-3grm+/2tUOvu2cjJkvsIxrv/wVpfXQW4PsQHYm7yk4vfpu7Ekl6nEsYBoJUL6qDwZUx8wUhQ8tR2qz+ad9c9OA==", + "license": "MIT", "dependencies": { - "bytes": "3.1.2", + "bytes": "~3.1.2", "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", + "destroy": "~1.2.0", + "http-errors": "~2.0.1", + "iconv-lite": "~0.4.24", + "on-finished": "~2.4.1", + "qs": "~6.15.1", + "raw-body": "~2.5.3", "type-is": "~1.6.18", - "unpipe": "1.0.0" + "unpipe": "~1.0.0" }, "engines": { "node": ">= 0.8", @@ -7507,14 +7509,45 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "dependencies": { "ms": "2.0.0" } }, + "node_modules/body-parser/node_modules/http-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", + "license": "MIT", + "dependencies": { + "depd": "~2.0.0", + "inherits": "~2.0.4", + "setprototypeof": "~1.2.0", + "statuses": "~2.0.2", + "toidentifier": "~1.0.1" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/body-parser/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/body-parser/node_modules/statuses": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, "node_modules/bplist-creator": { "version": "0.0.7", @@ -8205,6 +8238,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -9830,38 +9864,39 @@ "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==" }, "node_modules/express": { - "version": "4.21.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", - "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.2.tgz", + "integrity": "sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q==", + "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", + "body-parser": "~1.20.5", + "content-disposition": "~0.5.4", "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", "debug": "2.6.9", "depd": "2.0.0", "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", "merge-descriptors": "1.0.3", "methods": "~1.1.2", - "on-finished": "2.4.1", + "on-finished": "~2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.12", + "path-to-regexp": "~0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.13.0", + "qs": "~6.15.1", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", + "send": "~0.19.0", + "serve-static": "~1.16.2", "setprototypeof": "1.2.0", - "statuses": "2.0.1", + "statuses": "~2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -9904,37 +9939,6 @@ "node": ">= 0.8" } }, - "node_modules/express/node_modules/send": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", - "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/express/node_modules/send/node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -10876,6 +10880,7 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -13108,6 +13113,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -14798,11 +14804,12 @@ } }, "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "version": "6.15.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.2.tgz", + "integrity": "sha512-Rzq0KEyX/w/tEybncDgdkZrJgVUsUMk3xjh3t5bv3S1HTAtg+uOYt72+ZfwiQwKdysThkTBdL/rTi6HDmX9Ddw==", + "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.6" + "side-channel": "^1.1.0" }, "engines": { "node": ">=0.6" @@ -14880,15 +14887,45 @@ } }, "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz", + "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==", + "license": "MIT", + "dependencies": { + "bytes": "~3.1.2", + "http-errors": "~2.0.1", + "iconv-lite": "~0.4.24", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/http-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", + "license": "MIT", "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "depd": "~2.0.0", + "inherits": "~2.0.4", + "setprototypeof": "~1.2.0", + "statuses": "~2.0.2", + "toidentifier": "~1.0.1" }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/raw-body/node_modules/statuses": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -17378,6 +17415,7 @@ "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "license": "MIT", "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24"