diff --git a/.snapshots/config.json b/.snapshots/config.json new file mode 100644 index 000000000..dfadca277 --- /dev/null +++ b/.snapshots/config.json @@ -0,0 +1,151 @@ +{ + "excluded_patterns": [ + ".git", + ".gitignore", + "gradle", + "gradlew", + "gradlew.*", + "node_modules", + ".snapshots", + ".idea", + ".vscode", + "*.log", + "*.tmp", + "target", + "dist", + "build", + ".DS_Store", + "*.bak", + "*.swp", + "*.swo", + "*.lock", + "*.iml", + "coverage", + "*.min.js", + "*.min.css", + "__pycache__", + ".marketing", + ".env", + ".env.*", + "*.jpg", + "*.jpeg", + "*.png", + "*.gif", + "*.bmp", + "*.tiff", + "*.ico", + "*.svg", + "*.webp", + "*.psd", + "*.ai", + "*.eps", + "*.indd", + "*.raw", + "*.cr2", + "*.nef", + "*.mp4", + "*.mov", + "*.avi", + "*.wmv", + "*.flv", + "*.mkv", + "*.webm", + "*.m4v", + "*.wfp", + "*.prproj", + "*.aep", + "*.psb", + "*.xcf", + "*.sketch", + "*.fig", + "*.xd", + "*.db", + "*.sqlite", + "*.sqlite3", + "*.mdb", + "*.accdb", + "*.frm", + "*.myd", + "*.myi", + "*.ibd", + "*.dbf", + "*.rdb", + "*.aof", + "*.pdb", + "*.sdb", + "*.s3db", + "*.ddb", + "*.db-shm", + "*.db-wal", + "*.sqlitedb", + "*.sql.gz", + "*.bak.sql", + "dump.sql", + "dump.rdb", + "*.vsix", + "*.jar", + "*.war", + "*.ear", + "*.zip", + "*.tar", + "*.tar.gz", + "*.tgz", + "*.rar", + "*.7z", + "*.exe", + "*.dll", + "*.so", + "*.dylib", + "*.app", + "*.dmg", + "*.iso", + "*.msi", + "*.deb", + "*.rpm", + "*.apk", + "*.aab", + "*.ipa", + "*.pkg", + "*.nupkg", + "*.snap", + "*.whl", + "*.gem", + "*.pyc", + "*.pyo", + "*.pyd", + "*.class", + "*.o", + "*.obj", + "*.lib", + "*.a", + "*.map", + ".npmrc" + ], + "default": { + "default_prompt": "Enter your prompt here", + "default_include_all_files": false, + "default_include_entire_project_structure": true + }, + "included_patterns": [ + "build.gradle", + "settings.gradle", + "gradle.properties", + "pom.xml", + "Makefile", + "CMakeLists.txt", + "package.json", + "requirements.txt", + "Pipfile", + "Gemfile", + "composer.json", + ".editorconfig", + ".eslintrc.json", + ".eslintrc.js", + ".prettierrc", + ".babelrc", + ".dockerignore", + ".gitattributes", + ".stylelintrc", + ".npmrc" + ] +} \ No newline at end of file diff --git a/.snapshots/readme.md b/.snapshots/readme.md new file mode 100644 index 000000000..21fa917db --- /dev/null +++ b/.snapshots/readme.md @@ -0,0 +1,11 @@ +# Snapshots Directory + +This directory contains snapshots of your code for AI interactions. Each snapshot is a markdown file that includes relevant code context and project structure information. + +## What's included in snapshots? +- Selected code files and their contents +- Project structure (if enabled) +- Your prompt/question for the AI + +## Configuration +You can customize snapshot behavior in `config.json`. diff --git a/.snapshots/sponsors.md b/.snapshots/sponsors.md new file mode 100644 index 000000000..2df337f43 --- /dev/null +++ b/.snapshots/sponsors.md @@ -0,0 +1,44 @@ +# Thank you for using Snapshots for AI + +Thanks for using Snapshots for AI. We hope this tool has helped you solve a problem or two. + +If you would like to support our work, please help us by considering the following offers and requests: + +## Ways to Support + +### Join the GBTI Network!!! 🙏🙏🙏 +The GBTI Network is a community of developers who are passionate about open source and community-driven development. Members enjoy access to exclussive tools, resources, a private MineCraft server, a listing in our members directory, co-op opportunities and more. + +- Support our work by becoming a [GBTI Network member](https://gbti.network/membership/). + +### Try out BugHerd 🐛 +BugHerd is a visual feedback and bug-tracking tool designed to streamline website development by enabling users to pin feedback directly onto web pages. This approach facilitates clear communication among clients, designers, developers, and project managers. + +- Start your free trial with [BugHerd](https://partners.bugherd.com/55z6c8az8rvr) today. + +### Hire Developers from Codeable 👥 +Codeable connects you with top-tier professionals skilled in frameworks and technologies such as Laravel, React, Django, Node, Vue.js, Angular, Ruby on Rails, and Node.js. Don't let the WordPress focus discourage you. Codeable experts do it all. + +- Visit [Codeable](https://www.codeable.io/developers/?ref=z8h3e) to hire your next team member. + +### Lead positive reviews on our marketplace listing ⭐⭐⭐⭐⭐ +- Rate us on [VSCode marketplace](https://marketplace.visualstudio.com/items?itemName=GBTI.snapshots-for-ai) +- Review us on [Cursor marketplace](https://open-vsx.org/extension/GBTI/snapshots-for-ai) + +### Star Our GitHub Repository ⭐ +- Star and watch our [repository](https://github.com/gbti-network/vscode-snapshots-for-ai) + +### 📡 Stay Connected +Follow us on your favorite platforms for updates, news, and community discussions: +- **[Twitter/X](https://twitter.com/gbti_network)** +- **[GitHub](https://github.com/gbti-network)** +- **[YouTube](https://www.youtube.com/channel/UCh4FjB6r4oWQW-QFiwqv-UA)** +- **[Dev.to](https://dev.to/gbti)** +- **[Daily.dev](https://dly.to/zfCriM6JfRF)** +- **[Hashnode](https://gbti.hashnode.dev/)** +- **[Discord Community](https://gbti.network)** +- **[Reddit Community](https://www.reddit.com/r/GBTI_network)** + +--- + +Thank you for supporting open source software! 🙏 diff --git a/src/components/ecommerce/DemographicCard.tsx b/src/components/ecommerce/DemographicCard.tsx index f2b552bda..b85d1a4e5 100644 --- a/src/components/ecommerce/DemographicCard.tsx +++ b/src/components/ecommerce/DemographicCard.tsx @@ -1,12 +1,57 @@ "use client"; import Image from "next/image"; - import CountryMap from "./CountryMap"; import { useState } from "react"; import { MoreDotIcon } from "@/icons"; import { Dropdown } from "../ui/dropdown/Dropdown"; import { DropdownItem } from "../ui/dropdown/DropdownItem"; +interface CountryData { + name: string; + flag: string; + customers: number; + percentage: number; + color: string; +} + +const countryData: CountryData[] = [ + { + name: "United States", + flag: "/images/country/country-01.svg", + customers: 2379, + percentage: 63, + color: "bg-brand-500", + }, + { + name: "France", + flag: "/images/country/country-02.svg", + customers: 589, + percentage: 16, + color: "bg-success-500", + }, + { + name: "Germany", + flag: "/images/country/country-03.svg", + customers: 425, + percentage: 11, + color: "bg-orange-500", + }, + { + name: "Japan", + flag: "/images/country/country-04.svg", + customers: 287, + percentage: 8, + color: "bg-blue-light-500", + }, + { + name: "Others", + flag: "/images/country/country-05.svg", + customers: 102, + percentage: 2, + color: "bg-gray-400", + }, +]; + export default function DemographicCard() { const [isOpen, setIsOpen] = useState(false); @@ -23,10 +68,10 @@ export default function DemographicCard() {

- Customers Demographic + Customers by Location

- Number of customer based on country + Geographic distribution of your customer base

@@ -43,18 +88,19 @@ export default function DemographicCard() { onItemClick={closeDropdown} className="flex w-full font-normal text-left text-gray-500 rounded-lg hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-white/5 dark:hover:text-gray-300" > - View More + View Details - Delete + Export Data
-
+ +
-
-
-
-
- usa +
+ {countryData.map((country, index) => ( +
+
+
+ {country.name} +
+
+

+ {country.name} +

+ + {country.customers.toLocaleString()} Customers + +
-
-

- USA -

- - 2,379 Customers - -
-
-
-
-
-
-

- 79% -

-
-
- -
-
-
- france -
-
-

- France +

+
+
+
+

+ {country.percentage}%

- - 589 Customers -
- -
-
-
-
-

- 23% -

-
-
+ ))}
); diff --git a/src/components/ecommerce/EcommerceMetrics.tsx b/src/components/ecommerce/EcommerceMetrics.tsx index 58ab6c15d..873dd4e12 100644 --- a/src/components/ecommerce/EcommerceMetrics.tsx +++ b/src/components/ecommerce/EcommerceMetrics.tsx @@ -1,56 +1,96 @@ "use client"; import React from "react"; import Badge from "../ui/badge/Badge"; -import { ArrowDownIcon, ArrowUpIcon, BoxIconLine, GroupIcon } from "@/icons"; +import { ArrowDownIcon, ArrowUpIcon, BoxIconLine, GroupIcon, DollarLineIcon, BoltIcon } from "@/icons"; -export const EcommerceMetrics = () => { +interface MetricCardProps { + icon: React.ReactNode; + iconBgColor: string; + iconColor: string; + title: string; + value: string; + trend: "up" | "down"; + trendValue: string; +} + +const MetricCard: React.FC = ({ + icon, + iconBgColor, + iconColor, + title, + value, + trend, + trendValue, +}) => { return ( -
- {/* */} -
-
- -
+
+
+
{icon}
+
-
-
- - Customers - -

- 3,782 -

-
- - - 11.01% - +
+
+ + {title} + +

+ {value} +

+ + {trend === "up" ? : } + {trendValue} +
- {/* */} +
+ ); +}; - {/* */} -
-
- -
-
-
- - Orders - -

- 5,359 -

-
+export const EcommerceMetrics = () => { + const metrics: MetricCardProps[] = [ + { + icon: , + iconBgColor: "bg-brand-50 dark:bg-brand-500/15", + iconColor: "text-brand-500", + title: "Total Customers", + value: "3,782", + trend: "up", + trendValue: "11.01%", + }, + { + icon: , + iconBgColor: "bg-orange-50 dark:bg-orange-500/15", + iconColor: "text-orange-500", + title: "Total Orders", + value: "5,359", + trend: "down", + trendValue: "9.05%", + }, + { + icon: , + iconBgColor: "bg-success-50 dark:bg-success-500/15", + iconColor: "text-success-500", + title: "Total Revenue", + value: "$48,295", + trend: "up", + trendValue: "15.3%", + }, + { + icon: , + iconBgColor: "bg-blue-light-50 dark:bg-blue-light-500/15", + iconColor: "text-blue-light-500", + title: "Net Profit", + value: "$12,847", + trend: "up", + trendValue: "8.7%", + }, + ]; - - - 9.05% - -
-
- {/* */} + return ( +
+ {metrics.map((metric, index) => ( + + ))}
); }; diff --git a/src/components/ecommerce/MonthlySalesChart.tsx b/src/components/ecommerce/MonthlySalesChart.tsx index ed387cea1..b92029a93 100644 --- a/src/components/ecommerce/MonthlySalesChart.tsx +++ b/src/components/ecommerce/MonthlySalesChart.tsx @@ -109,10 +109,15 @@ export default function MonthlySalesChart() { return (
-
-

- Monthly Sales -

+
+
+

+ Monthly Sales +

+

+ Sales performance overview by month +

+
diff --git a/src/components/ecommerce/MonthlyTarget.tsx b/src/components/ecommerce/MonthlyTarget.tsx index d4f66db55..9c8620c8c 100644 --- a/src/components/ecommerce/MonthlyTarget.tsx +++ b/src/components/ecommerce/MonthlyTarget.tsx @@ -1,13 +1,11 @@ "use client"; -// import Chart from "react-apexcharts"; import { ApexOptions } from "apexcharts"; - import dynamic from "next/dynamic"; import { Dropdown } from "../ui/dropdown/Dropdown"; import { MoreDotIcon } from "@/icons"; import { useState } from "react"; import { DropdownItem } from "../ui/dropdown/DropdownItem"; -// Dynamically import the ReactApexChart component + const ReactApexChart = dynamic(() => import("react-apexcharts"), { ssr: false, }); @@ -19,7 +17,7 @@ export default function MonthlyTarget() { chart: { fontFamily: "Outfit, sans-serif", type: "radialBar", - height: 330, + height: 280, sparkline: { enabled: true, }, @@ -29,12 +27,12 @@ export default function MonthlyTarget() { startAngle: -85, endAngle: 85, hollow: { - size: "80%", + size: "75%", }, track: { background: "#E4E7EC", strokeWidth: "100%", - margin: 5, // margin is in pixels + margin: 5, }, dataLabels: { name: { @@ -73,15 +71,15 @@ export default function MonthlyTarget() { } return ( -
-
+
+

- Monthly Target + Monthly Performance

- Target you’ve set for each month + Current month revenue goal progress

@@ -98,59 +96,45 @@ export default function MonthlyTarget() { onItemClick={closeDropdown} className="flex w-full font-normal text-left text-gray-500 rounded-lg hover:bg-gray-100 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-white/5 dark:hover:text-gray-300" > - View More + View Details - Delete + Export Report
-
-
+ +
+
- - - +10% + + +12% vs Last Month
-

- You earn $3287 today, it's higher than last month. Keep up your - good work! + +

+ You've earned $15,110 of your $20,000 monthly goal

-
+

- Target + Monthly Goal

- $20K - - - + $20,000

@@ -158,10 +142,10 @@ export default function MonthlyTarget() {

- Revenue + Earned This Month

-

- $20K +

+ $15,110

- Today + Remaining

-

- $20K - - - +

+ $4,890

diff --git a/src/components/ecommerce/RecentOrders.tsx b/src/components/ecommerce/RecentOrders.tsx index d06a073a9..cf975071b 100644 --- a/src/components/ecommerce/RecentOrders.tsx +++ b/src/components/ecommerce/RecentOrders.tsx @@ -182,10 +182,10 @@ export default function RecentOrders() {
- {product.price} + {product.category} - {product.category} + {product.price}

- Statistics + Sales & Revenue Trends

- Target you've set for each month + Monthly performance overview across all channels