ترکیب علمی یافت نشد
@@ -65,23 +91,115 @@ export default async function WikiTermPage({ params }: { params: Promise<{ slug:
);
}
+ const relatedProducts = await getRelatedProducts(term.term);
+
+ const medicalSchema = generateMedicalWebPageSchema({
+ title: `ترکیب درمانی ${term.term} - دانشنامه تخصصی کنینا`,
+ description: term.metaDescription || (term.definition ? term.definition.replace(/<[^>]+>/g, '').substring(0, 160) : ''),
+ url: `https://canina.ir/wiki/${slug}`,
+ aspects: [term.term, 'Veterinary Supplements', 'Pet Nutrition'],
+ });
+
+ const breadcrumbs = generateBreadcrumbSchema([
+ { name: 'صفحه اصلی', url: 'https://canina.ir' },
+ { name: 'دانشنامه ترکیبات', url: 'https://canina.ir/wiki' },
+ { name: term.term, url: `https://canina.ir/wiki/${slug}` },
+ ]);
+
return (
-
-
-
-
- بازگشت به دانشنامه
-
+ <>
+
+
-
- {term.term}
-
+
+
+
+ {/* Breadcrumb back link */}
+
+ صفحه اصلی
+
+ دانشنامه ترکیبات
+
+ {term.term}
+
-
+ {/* Main Article Container */}
+
+
+
+
+ ماده موثره و ترکیب بالینی
+
+
+ {term.term}
+
+
+
+
+
+
+ {/* Related Products: Bidirectional Internal Linking */}
+ {relatedProducts && relatedProducts.length > 0 && (
+
+
+
+
+ مکملهای فرموله شده با این ماده
+
+
+ محصولات کنینا حاوی {term.term}
+
+
+
+ مشاهده همه در فروشگاه
+
+
+
+
+
+ {relatedProducts.map((p: any) => (
+
+
+
+
+
+
+ {p.nameFa || p.name}
+
+
+ {p.scientificTagline || p.categorySlug || 'مکمل دارویی استاندارد آلمان'}
+
+
+
+ ))}
+
+
+ )}
+
+
-
+ >
);
}
diff --git a/frontend/application/components/ArchivePage.tsx b/frontend/application/components/ArchivePage.tsx
index ea322d1..64983a7 100644
--- a/frontend/application/components/ArchivePage.tsx
+++ b/frontend/application/components/ArchivePage.tsx
@@ -671,6 +671,35 @@ export default function ArchivePage({
))}
+
+ {/* SEO Category Rich Description Section (Rendered below products to maintain primary UX while boosting category SEO) */}
+ {selectedCategory !== "all" && (
+
+
+
+
+ راهنمای تخصصی و درمانی {CATEGORY_LABELS[selectedCategory] || selectedCategory}
+
+
+
+ {selectedCategory === 'joints' &&
+ 'مکملهای تخصصی مفاصل و استخوان کنینا آلمان (Canina Pharma) فرموله شده با عصاره خالص صدف سبز نیوزیلند (GAG)، گلوکوزامین، کندرویتین سولفات و مواد معدنی فعال جهت درمان و پیشگیری از آرتروز، دیسپلازی مفصل ران، ضعف لیگامنتها و تسریع روند بهبود شکستگیهای استخوانی در سگها و گربهها.'}
+ {selectedCategory === 'immune' &&
+ 'مکملهای تقویت سیستم ایمنی و سلامت دستگاه گوارش کنینا شامل پروبیوتیکهای زیستسازگار، اینولین، الگلوتامین و مخمر آبجو ارگانیک با هدف تنظیم فلور روده، جلوگیری از عفونتهای مزمن، رفع اسهال و یبوست و افزایش مقاومت طبیعی بدن پت در برابر پاتوژنها.'}
+ {selectedCategory === 'energy' &&
+ 'مولتیویتامینها و انرژیبخشهای بالینی کنینا با نسبت بالانسشده ویتامینهای A، D3، E و گروه B، به همراه اسیدهای چرب امگا ۳ و ۶ برای ارتقای شادابی، بهبود اشتهای از دست رفته، پشتیبانی از تولههای در حال رشد و حیوانات در دوران نقاهت و سالمندی.'}
+ {selectedCategory === 'special-care' &&
+ 'محصولات درمانی و مراقبت ویژه پوست، مو، چشم و دهان و دندان کنینا بدون مواد شیمیایی آسیبرسان و با استاندارد دارویی اروپا برای پیشگیری از ایجاد پلاک دندان، درمان ریزش موی ناشی از کمبودهای تغذیهای و التهابات آلرژیک.'}
+ {!['joints', 'immune', 'energy', 'special-care'].includes(selectedCategory) &&
+ 'تمامی مکملهای درمانی و تقویتی کنینا آلمان با ۱۰۰٪ ترکیبات ارگانیک و مطابق با بالاترین استانداردهای داروسازی اروپا (IFS & HACCP) تولید و به صورت رسمی در ایران توزیع میگردند.'}
+
+
+ فرمولاسیون اختصاصی Canina Pharma آلمان
+ مورد تایید کلینیکهای تخصصی دامپزشکی
+ پروانه بهداشتی واردات رسمی
+
+
+ )}
>
) : (
diff --git a/frontend/application/components/B2BLandingClient.tsx b/frontend/application/components/B2BLandingClient.tsx
new file mode 100644
index 0000000..4b54ff4
--- /dev/null
+++ b/frontend/application/components/B2BLandingClient.tsx
@@ -0,0 +1,442 @@
+"use client";
+
+import React, { useState } from "react";
+import {
+ Building2,
+ ShieldCheck,
+ Truck,
+ TrendingUp,
+ Download,
+ CheckCircle2,
+ FileSpreadsheet,
+ PhoneCall,
+ Award,
+ Send,
+ HelpCircle,
+ Clock,
+ Sparkles,
+ ChevronDown
+} from "lucide-react";
+import { toast } from "sonner";
+import api from "../lib/services/api";
+import Link from "next/link";
+import { useSettingsStore } from "../lib/store/settingsStore";
+
+export default function B2BLandingClient() {
+ const [submitting, setSubmitting] = useState(false);
+ const [submitted, setSubmitted] = useState(false);
+ const [openFaq, setOpenFaq] = useState
(null);
+
+ const getText = useSettingsStore((s) => s.getText);
+ const phone = getText('contact_phone', '۰۹۲۱۱۲۳۱۵۱۷');
+ const wholesaleDiscount = getText('B2B_DISCOUNT_PERCENT', '۳۰');
+
+ const [formData, setFormData] = useState({
+ businessName: '',
+ contactName: '',
+ phone: '',
+ city: '',
+ businessType: 'کلینیک دامپزشکی',
+ notes: '',
+ });
+
+ const handleSubmit = async (e: React.FormEvent) => {
+ e.preventDefault();
+ if (!formData.businessName || !formData.phone) {
+ toast.error('لطفاً نام مجموعه و شماره تماس را وارد کنید.');
+ return;
+ }
+
+ setSubmitting(true);
+ try {
+ await api.post('/wholesale/apply', {
+ businessName: `${formData.businessName} (${formData.businessType} - ${formData.city}) - رابط: ${formData.contactName}`,
+ licenseNumber: formData.phone,
+ notes: formData.notes,
+ });
+ setSubmitted(true);
+ toast.success('درخواست همکاری شما با موفقیت ثبت شد. همکاران ما حداکثر تا ۲۴ ساعت آینده با شما تماس خواهند گرفت.');
+ } catch {
+ toast.error('خطایی در ثبت درخواست رخ داد. لطفاً با پشتیبانی تماس بگیرید.');
+ } finally {
+ setSubmitting(false);
+ }
+ };
+
+ const faqs = [
+ {
+ q: 'حداقل مبلغ و تعداد برای سفارش عمده B2B چقدر است؟',
+ a: 'برای اولین سفارش همکاران گرامی، حداقل سبد خرید با تخفیف همکار معادل ۵ میلیون تومان تعریف شده تا فرآیند ثبت نمایندگی و تست کشش بازار به آسانی انجام شود.',
+ },
+ {
+ q: 'نحوه ارسال سفارشات عمده به شهرستانها چگونه است؟',
+ a: 'کلیه سفارشات B2B از طریق باربریهای ویژه، تیپاکس اکسپرس یا پست ویژه در بستهبندیهای استاندارد دارویی مقاوم به ضربه و دما با بیمه کامل مرسوله ارسال میگردند.',
+ },
+ {
+ q: 'آیا برای کلینیکها و داروخانهها فاکتور رسمی صادر میشود؟',
+ a: 'بله، تمامی سفارشات عمده همراه با فاکتور رسمی معتبر شرکتی و گواهی اصالت و پروانه ورود سازمان دامپزشکی کل کشور صادر میگردد.',
+ },
+ {
+ q: 'آیا امکان دریافت نمونه یا کاتالوگ چاپی برای ویزیتورها وجود دارد؟',
+ a: 'بله، پس از تأیید حساب کاربری B2B، پکیج اختصاصی شامل کاتالوگ جامع پزشکی، بروشورهای تخصصی برای مراجعین و راهنمای درمانی به آدرس کلینیک ارسال میشود.',
+ },
+ ];
+
+ return (
+
+
+ {/* Top Hero Banner */}
+
+
+
+
+
+
+
+ پرتال رسمی همکاران تجاری، کلینیکها و پتشاپها
+
+
+
+ تأمین عمده و همکاری تجاری مکملهای کنینا آلمان
+
+
+
+ دسترسی مستقیم و بدون واسطه جامعه دامپزشکی، بیمارستانها و فروشگاههای تخصصی به کاملترین سبد مکملهای درمانی Canina با بالاترین حاشیه سود و ضمانت ۱۰۰٪ اصالت.
+
+
+
+
+
+
+
+
+ تخفیف ویژه همکاران
+
+ تا {wholesaleDiscount}٪ تخفیف
+
+
+
+
+
+
+ تأمین پیوسته و بدون قطعی از انبار مرکزی تهران
+
+
+
+ پروانه بهداشتی واردات و برچسب اصالت دامپزشکی
+
+
+
+ ارسال اکسپرس رایگان برای سبدهای همکار
+
+
+
+ مشاوره علمی و وبینارهای تخصصی ارزیابی بالینی
+
+
+
+
+
+
+
+
+
+ {/* Value Propositions Grid */}
+
+
+
+ مزایای عضویت در باشگاه همکاران
+
+
+ چرا کلینیکها و پتشاپها کنینا را انتخاب میکنند؟
+
+
+
+
+
+
+
+
+
اصالت قطعی آلمان
+
+ واردات قانونی تحت نظارت مستقیم Canina pharma GmbH همراه با گواهی سلامت و برچسب هولوگرام اصالت.
+
+
+
+
+
+
+
+
حاشیه سود رقابتی
+
+ تخفیفهای پلکانی متناسب با حجم خرید و آفرهای فصلی ویژه همکاران فعال جهت بیشینهسازی سودآوری.
+
+
+
+
+
+
+
+
ارسال سریع و مطمئن
+
+ تحویل در همان روز برای تهران و ارسال اکسپرس ۴۸ ساعته به کلینیکها و داروخانههای سراسر ایران.
+
+
+
+
+
+
پشتیبانی علمی و بالینی
+
+ دسترسی به منابع پژوهشی، مشاوره پروتکلهای تجویزی با تیم دامپزشکی و ارائه استندهای نمایشگاهی.
+
+
+
+
+
+ {/* Interactive Form & Tier Preview */}
+
+
+ {/* Accordion FAQ */}
+
+
+
+
+ پرسشهای متداول همکاران و کلینیکها
+
+
+
+
+ {faqs.map((faq, idx) => (
+
+
setOpenFaq(openFaq === idx ? null : idx)}
+ className="w-full p-5 text-right flex items-center justify-between gap-4 font-bold text-sm text-medical-gray-900 hover:text-canina-blue transition-colors cursor-pointer"
+ >
+ {faq.q}
+
+
+ {openFaq === idx && (
+
+ {faq.a}
+
+ )}
+
+ ))}
+
+
+
+
+ );
+}
diff --git a/frontend/application/components/Footer.tsx b/frontend/application/components/Footer.tsx
index a00bca7..d3bcfa5 100644
--- a/frontend/application/components/Footer.tsx
+++ b/frontend/application/components/Footer.tsx
@@ -119,9 +119,11 @@ export default function Footer({
{isB2BEnabled && (
-
-
- {getText('footer_link_b2b', "همکاری با کلینیکها و پتشاپها (B2B)")}
+
+
+
+ {getText('footer_link_b2b', "همکاری با کلینیکها و پتشاپها (B2B)")}
+
)}
diff --git a/frontend/application/components/Header.tsx b/frontend/application/components/Header.tsx
index 2afe04e..9072a1d 100644
--- a/frontend/application/components/Header.tsx
+++ b/frontend/application/components/Header.tsx
@@ -519,13 +519,13 @@ export default function Header({
نمادهای اعتماد و مجوزهای رسمی
{isB2BEnabled && (
-
- درخواست نمایندگی B2B
-
+ درخواست نمایندگی و خرید عمده (B2B)
+
)}
diff --git a/frontend/application/lib/schema.ts b/frontend/application/lib/schema.ts
new file mode 100644
index 0000000..f3d5640
--- /dev/null
+++ b/frontend/application/lib/schema.ts
@@ -0,0 +1,233 @@
+/**
+ * Structured Data (JSON-LD) Generators for Canina Iran
+ * Conforming to Schema.org and Google Search Rich Results guidelines
+ */
+
+export interface OrganizationSchemaOptions {
+ name?: string;
+ alternateName?: string;
+ url?: string;
+ logo?: string;
+ description?: string;
+ telephone?: string;
+ email?: string;
+ address?: {
+ streetAddress?: string;
+ addressLocality?: string;
+ addressRegion?: string;
+ postalCode?: string;
+ addressCountry?: string;
+ };
+ sameAs?: string[];
+}
+
+export function generateOrganizationSchema(options: OrganizationSchemaOptions = {}) {
+ const brandName = options.name || 'کنینا ایران';
+ const siteUrl = options.url || 'https://canina.ir';
+ const logoUrl = options.logo || `${siteUrl}/assets/images/logo.png`;
+
+ return {
+ '@context': 'https://schema.org',
+ '@type': 'Organization',
+ '@id': `${siteUrl}#organization`,
+ name: brandName,
+ alternateName: options.alternateName || 'Canina pharma GmbH Iran Representative',
+ url: siteUrl,
+ logo: {
+ '@type': 'ImageObject',
+ url: logoUrl,
+ caption: brandName,
+ },
+ image: logoUrl,
+ description:
+ options.description ||
+ 'نماینده رسمی و انحصاری مکملهای دارویی و درمانی Canina pharma GmbH آلمان در ایران.',
+ telephone: options.telephone || '+989211231517',
+ email: options.email || 'caninairan@gmail.com',
+ address: {
+ '@type': 'PostalAddress',
+ streetAddress: options.address?.streetAddress || 'جردن، خیابان سعیدی، ساختمان کنینا، طبقه ۵',
+ addressLocality: options.address?.addressLocality || 'تهران',
+ addressRegion: options.address?.addressRegion || 'تهران',
+ postalCode: options.address?.postalCode || '1967812345',
+ addressCountry: options.address?.addressCountry || 'IR',
+ },
+ sameAs: options.sameAs || [
+ 'https://instagram.com/caninairan',
+ 'https://t.me/caninairan',
+ 'https://www.canina.de',
+ ],
+ contactPoint: [
+ {
+ '@type': 'ContactPoint',
+ telephone: options.telephone || '+989211231517',
+ contactType: 'customer service',
+ availableLanguage: ['Persian', 'English', 'German'],
+ areaServed: 'IR',
+ },
+ ],
+ };
+}
+
+export function generateLocalBusinessSchema(options: OrganizationSchemaOptions = {}) {
+ const siteUrl = options.url || 'https://canina.ir';
+ const brandName = options.name || 'کنینا ایران';
+ const logoUrl = options.logo || `${siteUrl}/assets/images/logo.png`;
+
+ return {
+ '@context': 'https://schema.org',
+ '@type': 'VeterinaryCare',
+ '@id': `${siteUrl}#localbusiness`,
+ name: `${brandName} - دفتر مرکزی و پشتیبانی تخصصی`,
+ image: logoUrl,
+ url: siteUrl,
+ telephone: options.telephone || '+989211231517',
+ priceRange: '$$',
+ address: {
+ '@type': 'PostalAddress',
+ streetAddress: options.address?.streetAddress || 'تهران، جردن، خیابان سعیدی، ساختمان کنینا، طبقه ۵، واحد ۱۹',
+ addressLocality: options.address?.addressLocality || 'تهران',
+ addressRegion: options.address?.addressRegion || 'تهران',
+ postalCode: options.address?.postalCode || '1967812345',
+ addressCountry: 'IR',
+ },
+ geo: {
+ '@type': 'GeoCoordinates',
+ latitude: 35.7785,
+ longitude: 51.4172,
+ },
+ openingHoursSpecification: [
+ {
+ '@type': 'OpeningHoursSpecification',
+ dayOfWeek: ['Saturday', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday'],
+ opens: '09:00',
+ closes: '18:00',
+ },
+ ],
+ sameAs: options.sameAs || [
+ 'https://instagram.com/caninairan',
+ 'https://t.me/caninairan',
+ ],
+ };
+}
+
+export interface B2BServiceSchemaOptions {
+ serviceName?: string;
+ description?: string;
+ siteUrl?: string;
+}
+
+export function generateB2BServiceSchema(options: B2BServiceSchemaOptions = {}) {
+ const siteUrl = options.siteUrl || 'https://canina.ir';
+ return {
+ '@context': 'https://schema.org',
+ '@type': 'Service',
+ '@id': `${siteUrl}/b2b#service`,
+ name: options.serviceName || 'تأمین عمده و همکاری تجاری مکملهای دارویی کنینا آلمان',
+ serviceType: 'B2B Veterinary Supply & Wholesale',
+ provider: {
+ '@type': 'Organization',
+ name: 'کنینا ایران',
+ url: siteUrl,
+ logo: `${siteUrl}/assets/images/logo.png`,
+ },
+ areaServed: {
+ '@type': 'Country',
+ name: 'Iran',
+ },
+ description:
+ options.description ||
+ 'تأمین مستقیم، پخش عمده و اعطای نمایندگی مکملهای تخصصی دامپزشکی Canina آلمان به کلینیکها، بیمارستانهای دامپزشکی و پتشاپهای معتبر سراسر کشور.',
+ offers: {
+ '@type': 'Offer',
+ availability: 'https://schema.org/InStock',
+ businessFunction: 'http://purl.org/goodrelations/v1#ProvideService',
+ },
+ };
+}
+
+export interface MedicalWebPageSchemaOptions {
+ title: string;
+ description: string;
+ url: string;
+ datePublished?: string;
+ dateModified?: string;
+ medicalAudience?: string;
+ aspects?: string[];
+}
+
+export function generateMedicalWebPageSchema(options: MedicalWebPageSchemaOptions) {
+ return {
+ '@context': 'https://schema.org',
+ '@type': 'MedicalWebPage',
+ name: options.title,
+ headline: options.title,
+ description: options.description,
+ url: options.url,
+ datePublished: options.datePublished || '2025-01-01',
+ dateModified: options.dateModified || new Date().toISOString(),
+ medicalAudience: {
+ '@type': 'MedicalAudience',
+ audienceType: options.medicalAudience || 'Veterinarians, Pet Care Professionals, and Pet Owners',
+ },
+ publisher: {
+ '@type': 'Organization',
+ name: 'کنینا ایران',
+ url: 'https://canina.ir',
+ },
+ about: options.aspects?.map((aspect) => ({
+ '@type': 'MedicalCondition',
+ name: aspect,
+ })) || [],
+ };
+}
+
+export interface VideoObjectSchemaOptions {
+ name: string;
+ description: string;
+ thumbnailUrl: string;
+ uploadDate: string;
+ contentUrl?: string;
+ embedUrl?: string;
+ duration?: string;
+}
+
+export function generateVideoObjectSchema(options: VideoObjectSchemaOptions) {
+ return {
+ '@context': 'https://schema.org',
+ '@type': 'VideoObject',
+ name: options.name,
+ description: options.description,
+ thumbnailUrl: [options.thumbnailUrl],
+ uploadDate: options.uploadDate,
+ contentUrl: options.contentUrl,
+ embedUrl: options.embedUrl || options.contentUrl,
+ duration: options.duration || 'PT3M30S',
+ publisher: {
+ '@type': 'Organization',
+ name: 'کنینا ایران',
+ logo: {
+ '@type': 'ImageObject',
+ url: 'https://canina.ir/assets/images/logo.png',
+ },
+ },
+ };
+}
+
+export interface BreadcrumbItem {
+ name: string;
+ url: string;
+}
+
+export function generateBreadcrumbSchema(items: BreadcrumbItem[]) {
+ return {
+ '@context': 'https://schema.org',
+ '@type': 'BreadcrumbList',
+ itemListElement: items.map((item, index) => ({
+ '@type': 'ListItem',
+ position: index + 1,
+ name: item.name,
+ item: item.url,
+ })),
+ };
+}
diff --git a/graphify-out/.graphify_labels.json b/graphify-out/.graphify_labels.json
index dd6a40e..a428b1b 100644
--- a/graphify-out/.graphify_labels.json
+++ b/graphify-out/.graphify_labels.json
@@ -7,20 +7,20 @@
"5": "CmsController",
"6": "tickets.controller.ts",
"7": "pets/pets.controller.ts",
- "8": "ReportsController",
+ "8": "admin.module.ts",
"9": "devDependencies",
"10": "ReviewsService",
- "11": "MediaSelector.tsx",
- "12": "FeaturedProducts.tsx",
+ "11": "Spinner.tsx",
+ "12": "PetProfile.tsx",
"13": "app-audit-verification.e2e-spec.js",
"14": "lib/services/api.ts",
"15": "src/services/api.ts",
"16": "DoctorQueryDto",
- "17": "RedisService",
+ "17": "schema.ts",
"18": "JwtAuthGuard",
- "19": "ProductsService",
+ "19": "ProductsController",
"20": "CreateVideoDto",
- "21": "Button.tsx",
+ "21": "ProductPage.tsx",
"22": "UserDashboard.tsx",
"23": "MenuService",
"24": "BE-001",
@@ -32,41 +32,41 @@
"30": "DEVOPS-001",
"31": "DOC-001",
"32": "adminRoutes.tsx",
- "33": "wholesale.controller.ts",
+ "33": "WholesaleApplyDto",
"34": "B2BService",
"35": "AuthController",
"36": "FaqService",
"37": "راهنمای تست سیستم (Software Testing)",
- "38": "Button",
+ "38": "Button.tsx",
"39": "CategoriesController",
"40": "MediaController",
"41": "What You Must Do When Invoked",
"42": "SslController",
"43": "BannersService",
- "44": "TestimonialsService",
+ "44": "TestimonialsController",
"45": "What You Must Do When Invoked",
- "46": "ApiOperation",
+ "46": "api",
"47": "IngredientsService",
- "48": "Media.tsx",
+ "48": "cartStore.ts",
"49": "devDependencies",
"50": "devDependencies",
"51": "BlogsController",
- "52": "PrescriptionsService",
- "53": "SmartAdvisorService",
+ "52": "PrescriptionsController",
+ "53": "SmartAdvisorController",
"54": "UsersService",
"55": "UITexts.tsx",
"56": "Orders.tsx",
"57": "Role & Core Objective",
"58": "ContactService",
"59": "compilerOptions",
- "60": "CreateUserDto",
- "61": "CreateEBankCheckoutDto",
- "62": "GetProductsDto",
+ "60": "Blogs.tsx",
+ "61": "payment.controller.ts",
+ "62": "ProductsService",
"63": "dependencies",
"64": "compilerOptions",
"65": "app.e2e-spec.js",
"66": "AdminQueryDto",
- "67": "admin.module.ts",
+ "67": "PetsController",
"68": "20260526145407_init/migration.sql",
"69": "Required Review Group Closures",
"70": "compilerOptions",
@@ -75,7 +75,7 @@
"73": "Operational Rules & Boundaries",
"74": "WikiController",
"75": "PetsController",
- "76": "PaymentService",
+ "76": "shop/page.tsx",
"77": "seo.module.ts",
"78": "route.ts",
"79": "🏢 AI Software Agency — Master Orchestration Protocol v3",
@@ -105,14 +105,14 @@
"103": "Comprehensive Change Log",
"104": "Coupons.tsx",
"105": "Operational Rules & Boundaries",
- "106": "AdminLoginDto",
+ "106": "Reports.tsx",
"107": "@types/supertest",
"108": "PrismaService",
"109": "1. Summary of Integrity Repairs Performed",
"110": "Operational Rules & Boundaries",
"111": "Operational Rules & Boundaries",
"112": "Operational Rules & Boundaries",
- "113": "reviews.service.ts",
+ "113": "reviews.controller.ts",
"114": "AppService",
"115": "@types/react-dom",
"116": "Vazirmatn Changelog",
@@ -121,22 +121,24 @@
"119": "compilerOptions",
"120": "compilerOptions",
"121": "backend/README.md",
- "122": "auth.module.ts",
+ "122": "AuthService",
"123": "BlogsService",
"124": "Repository Map",
"125": "validate_integrity.js",
"126": "admin-panel/package.json",
"127": "Sahel-Font",
"128": "AdminService",
+ "129": "RouteErrorBoundary",
"130": "Sahel-Font",
"131": "Role & Core Objective",
"132": "orchestrate.py",
"133": "backend/package.json",
- "134": "CreateReviewDto",
+ "134": "blog/page.tsx",
"135": "graphify reference: extra exports and benchmark",
"136": "Phase 2 Final Quality Gate Summary Report",
"137": "Task Modifications Log",
"138": "Install",
+ "139": "layout.tsx",
"140": "ErrorBoundary",
"141": "application/package.json",
"142": "start-dev.js",
@@ -145,13 +147,17 @@
"145": "admin.service.ts",
"146": "System Discovery",
"147": "RevalidationService",
- "148": "AdminController",
+ "148": "wiki/[slug]/page.tsx",
"149": "SmsSettingsPage.tsx",
"150": "Product Requirement Document (PRD)",
- "151": "AuthService",
+ "151": "auth.service.ts",
+ "152": "trust-seals/page.tsx",
"153": "exclude",
"154": "Baseline Command Plan & Reconciled Command History",
+ "155": "seo-backfill.ts",
+ "156": "@nestjs/swagger",
"157": "ErrorPages.tsx",
+ "158": "class-transformer",
"159": "with-vpn.sh",
"160": "Architecture Specification",
"161": "Project Health Audit Report",
@@ -169,15 +175,16 @@
"173": "Phase 3 Audit Traceability Matrix",
"174": "rebuild_honest_ledger.js",
"175": "validate_evidence_grade.js",
- "176": "@types/node",
- "178": "typescript",
+ "176": "helmet",
+ "177": "js-yaml",
+ "178": "@nestjs/core",
"179": "PaginationDto",
"180": "API Contract Specification",
"181": "⚙️ Backend Technical Review (05_dev_backend)",
"182": "🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)",
"183": "🚀 SEO & Content Strategy Review (12_seo_content)",
"184": "MetricsController",
- "185": "WikiController",
+ "185": "@nestjs/jwt",
"186": "seed-ui-texts.ts",
"187": "seed-wiki.ts",
"188": "update-blog.dto.ts",
@@ -189,12 +196,14 @@
"194": "Raw Finding Verification & Disposition Report",
"195": "React + TypeScript + Vite",
"196": "Select.tsx",
- "198": "users.service.ts",
- "199": "auth.service.ts",
+ "197": "@nestjs/throttler",
+ "198": "passport",
+ "199": "auth.controller.ts",
"200": "application/README.md",
"201": "deploy.sh",
"202": "🔒 Security & Performance Review (09_devops_security)",
"203": "👁️ UX & Persona Interface Review (08_visual_qa)",
+ "204": "reflect-metadata",
"205": "prisma/scientificTerms.ts",
"206": "seed-blogs.ts",
"207": "seed-custom.ts",
@@ -213,6 +222,7 @@
"220": "Input.tsx",
"221": "Textarea.tsx",
"222": "admin-panel/tsconfig.json",
+ "223": "swagger-ui-express",
"224": "jest",
"225": "next.config.ts",
"226": "Shabnam Font README",
@@ -220,9 +230,16 @@
"228": "rules/graphify.md",
"229": ".agents/workflows/graphify.md",
"230": "instructions.md",
+ "231": "@eslint/eslintrc",
+ "232": "@eslint/js",
+ "233": "eslint-plugin-prettier",
"234": "20260526160916_add_ui_texts_and_scientific_terms/migration.sql",
- "237": "ts-jest",
- "239": "RegisterDto",
+ "235": "@nestjs/cli",
+ "236": "@nestjs/testing",
+ "237": "eslint",
+ "238": "prisma",
+ "239": "source-map-support",
+ "240": "supertest",
"241": "blog.entity.ts",
"242": "home.entity.ts",
"243": "wiki.entity.ts",
@@ -246,8 +263,11 @@
"261": "User Login API",
"262": "User Logout API",
"263": "generate-openapi.d.ts",
- "264": "InitiatePaymentDto",
+ "264": "ts-loader",
"265": "@testing-library/jest-dom",
+ "266": "ts-node",
+ "267": "tsconfig-paths",
+ "268": "@types/bcrypt",
"269": "eslint-plugin-react-hooks",
"270": "app-audit-verification.e2e-spec.d.ts",
"271": "app.e2e-spec.d.ts",
@@ -280,13 +300,20 @@
"298": ".initiateOrderPayment",
"299": "@tailwindcss/postcss",
"300": "typescript",
+ "301": "@types/compression",
"302": "typescript-eslint",
+ "303": "@types/express",
+ "304": "@types/jest",
"305": "@types/react",
"306": "globals",
+ "307": "@types/js-yaml",
"308": "vitest",
"309": "axios",
"310": "tailwindcss",
- "313": "Modal.tsx",
+ "311": "@types/multer",
+ "312": "@types/passport-jwt",
+ "313": "MenuManager.tsx",
+ "314": "typescript-eslint",
"315": "typescript",
"317": "revalidate/route.ts",
"318": "MaskableField.tsx"
diff --git a/graphify-out/.graphify_labels.json.sig b/graphify-out/.graphify_labels.json.sig
index 05974b5..784fd52 100644
--- a/graphify-out/.graphify_labels.json.sig
+++ b/graphify-out/.graphify_labels.json.sig
@@ -1 +1 @@
-{"0": "b0118f68a3e7f0ad", "1": "e1bae6d72cdec234", "2": "c15787a7453232bc", "3": "2f7fcb293d8f3051", "4": "75344416bc4cb16e", "5": "f34c872571e8a774", "6": "81b67391b0b87cab", "7": "6759848caca5bb40", "8": "721c9e2021e7a981", "9": "607e3b43c0a1a79b", "10": "0a8d22489399b198", "11": "7486b8792dd18a8e", "12": "2586cbc296b7a00b", "13": "e3d4adc2742fe5bd", "14": "72d8b91439d6e42f", "15": "c503f61c132e0faa", "16": "bbaf7539ddd300b0", "17": "b8f734aceb01ea62", "18": "2639192be0e4fb55", "19": "db9944eff877e25e", "20": "67ce5a498e6dcd5c", "21": "ca7f434e9ff71924", "22": "77cfc76acbf1dce1", "23": "b64d81a71800bd4b", "24": "4eda46a5b0695ef6", "25": "90b79d6027d60d30", "26": "6bd6f2633370820c", "27": "7664e56213a29331", "28": "942c4f9928c60a45", "29": "0614b98d9013b5f5", "30": "53ff49b3d54f0fba", "31": "2153ddcd7477dfb7", "32": "89fe2ef12db40871", "33": "112137b197a41398", "34": "9b13da82475fc3c8", "35": "b549662eb9628091", "36": "b73994254301dd0e", "37": "1c9a1f4c72613346", "38": "58fe18c423dae025", "39": "f38c905c9af9edc0", "40": "f07a16ec76520068", "41": "7abb5bc6a0e4f65f", "42": "cbaa20536db72d3e", "43": "7478d6755ca2248a", "44": "b4c82af1f2f566f7", "45": "7dd5c61562c827a8", "46": "b27014fce4a39917", "47": "65e41c1c22dcd058", "48": "0e03a5b22c0f26de", "49": "841013681f4e6e8c", "50": "b1c3283bd55a8fe9", "51": "f72c06a6893d6e7d", "52": "73df605d6eec20d9", "53": "cb17af4eb831480f", "54": "d3e17f4436612dee", "55": "93d836d575401c61", "56": "2a1dd74542bc4e00", "57": "0f62727f3b4907c0", "58": "93d54dd865cba4db", "59": "7369e85febb97f1a", "60": "75d31c9f303c810b", "61": "c4acedd7472cf7cb", "62": "fc622cc7acf716b6", "63": "2b0ee366d6136717", "64": "3b9521f7d7986eaa", "65": "c35e392f1594d14e", "66": "835a82206f067b6c", "67": "910c1839c4ca47b2", "68": "bf5a253cc5340107", "69": "31a5a53f1fe77e46", "70": "01d4f9d6d9f3b08a", "71": "325f7e783389b437", "72": "69d0f8b228227690", "73": "22456307ff273d80", "74": "d9e74b032c5b8440", "75": "30a4a28cb6862c78", "76": "b76e0b7f1bd4b16b", "77": "62430df45afa65b5", "78": "0273bbf045eb1528", "79": "ba7bc17581366c9a", "80": "0727bb53199085fc", "81": "91393683c97d1773", "82": "b1fb8b1d0bcaa7fd", "83": "71d2ce6fb684bc0e", "84": "70497658d0e0cea6", "85": "f6ddba6f531d6b96", "86": "e3d13e2060945d3f", "87": "f0f56796aaebb4f5", "88": "4b2fe1e4fd5a74a7", "89": "656f816eb51f2ab1", "90": "9685bc0969bf8d02", "91": "25a6695f5783d2be", "92": "00341c22c4d34679", "93": "b796283dc9729998", "94": "f7a706f5fcb260c3", "95": "544f206982c01960", "96": "46e9411f2b2e725a", "97": "78aa95566e86b57f", "98": "eced7a49a05de643", "99": "9bce4d8f60ff7918", "100": "3c1d9844d072bd2a", "101": "b3c5433df880f335", "102": "e036dbd1de0f8b38", "103": "ac7cb5ec7d5c0802", "104": "dbe2f8ccb8d5321a", "105": "622f83f2eb300a25", "106": "2c92e71020d644f3", "107": "bfcc583da029935c", "108": "bcff84c961a38fce", "109": "6d16ccde1291c9d4", "110": "d228746e85ead3af", "111": "b55ba9125ffb5729", "112": "5f50a360f18a880b", "113": "db9b9420760c1f13", "114": "c6b57d78299a27b3", "115": "4ab8ffab1d51ca61", "116": "db70db08c00162df", "117": "9a1080686fc7c39b", "118": "77fd76193df9f573", "119": "28355f848c862b6e", "120": "25f77f5455bdc96a", "121": "9141a0ede9461fd5", "122": "b765f87b9c77b001", "123": "7197798a32778fd4", "124": "3ceda88239910d9a", "125": "9409b3b8a334f51d", "126": "ac95a9f152e3d1c4", "127": "a7299f20633c0236", "128": "a8ba660394c3b001", "130": "7f405315686459b9", "131": "44c7924c829cc215", "132": "17ecb7325285cf7a", "133": "4487fd85ddc13c93", "134": "eebb60793e0d2ee4", "135": "c4abf0eb38ef740d", "136": "07d37aeefbe50e21", "137": "70b58e32c2890fdd", "138": "f2c7afb0c277c4b7", "140": "167643bcbbc26244", "141": "dcffd9ad7a1f7df6", "142": "f47469d48b3776b5", "143": "1b0ef1cf87b53de3", "144": "e195f425def606d0", "145": "94fb38183c105a86", "146": "c7ddffce8605b65b", "147": "ae14d71bbd6cbf48", "148": "5a9957038b5bfdb3", "149": "39d16c91943d85e4", "150": "5910eeefe2f97a20", "151": "254041eec3a1ad13", "153": "6cfdd09a6fdd9ff9", "154": "66efafa1e86d8081", "157": "48f898ce95c8e90c", "159": "a2fe690317aef2ee", "160": "e30004421d79ffeb", "161": "cd66a5f43cd3407d", "162": "fa2d7dcf52348095", "163": "75efc6457f7fce22", "164": "8375a4fbf0573a52", "165": "edb079558c6f3d59", "166": "1d80b74f885d6716", "167": "3cd15de82f23093a", "168": "7a77349497fcdf37", "169": "85cd9ca1246dc437", "170": "3e93071fc4a80e95", "171": "6114ccb7b9036e33", "172": "f3d92800d756dd79", "173": "2aa85a497fd142d7", "174": "35d3a2679371e9a4", "175": "b8f35a499b36a57a", "176": "6ddbf62ac93920e1", "178": "d0fc47de7f8bcf41", "179": "5cb687d37e695cf0", "180": "4ac5f9965007617d", "181": "cff999497d56b512", "182": "06b38ffa6f58195d", "183": "ee705c178d6958bb", "184": "038915bd030e573c", "185": "6e67e4bc78994a71", "186": "867babdd40f0c3fc", "187": "298144d1548a7dee", "188": "00d275127a7e435e", "189": "2942a9d30dae4a29", "190": "3e21e2fb50e12670", "191": "be62daa7d5bc336a", "192": "47c3e1a9d4bb7e67", "193": "82ff39c105ae3090", "194": "6747ecf936cb0400", "195": "ebc0087e3400009c", "196": "51d4e15c7e10decf", "198": "c752415c5ed28979", "199": "6ed48c03d0fc390d", "200": "162b36508e5879f3", "201": "6256958a9b817133", "202": "ab06e01c9caa9f90", "203": "204b3a83ef62f360", "205": "67b5cef27d55952d", "206": "10b2996179aaaf2e", "207": "39031f751fb2d42f", "208": "54f53e5e0cc8c385", "209": "821696b1ff49347b", "210": "00739b5480732bdc", "211": "2434b1a28b16557f", "212": "cb3fe87c920b0cb3", "213": "ddb9c95db6575999", "214": "e2250667e3a77089", "215": "9069d5dda9013eee", "216": "0077975cffee54dc", "217": "e6fcd0aec85fac92", "218": "9590124db1601a96", "219": "e077f384ad6b18ad", "220": "dd8d62f9fb517bb5", "221": "6d0322fa3d03fa10", "222": "3be2a9ccdc6668cc", "224": "c7de3fe21e2e53b4", "225": "703a4a9860d7ed16", "226": "85fd4a84b5393d0e", "227": "97ec841e4f367258", "228": "4654167fd211d027", "229": "8176a164778526f9", "230": "a74925b45b279d6f", "234": "7c65a1f3c4f1b858", "237": "c24925d361d1eb6f", "239": "acfe5a84eaab81d7", "241": "e66a941c60456b44", "242": "a7cf02106e992a23", "243": "88604333ff6aa860", "244": "8365b02889fa6cfc", "245": "6e7b82d0387bf16d", "246": "2eef246ebb269184", "247": "f5edd0761d024ff0", "248": "1e833ee596b5ca23", "249": "9fd8a4abf0eb00a3", "250": "e9728eefddbaed5b", "251": "fe8ad8aaa5b6f652", "252": "be78134816511eaf", "253": "4737624cd139d117", "254": "5fcab665dcd75a7d", "255": "33b1870821fb012a", "256": "10992f7331cbdeba", "257": "cef806733796b489", "258": "76578e90353475ed", "259": "04d938f720c1db19", "260": "57931ddf408ceeeb", "261": "b4fbbd4b7a13369e", "262": "d64c6d160a7faed4", "263": "2d1c86501cdb42dd", "264": "34581929891cefb2", "265": "0650b6a561436852", "269": "88e82bb9fffbe642", "270": "ef2d2abc6e491968", "271": "a1e0a3465632c13a", "272": "e6273a4f9b65952b", "273": "38a03e32ab28113e", "274": "400d2883ce278be7", "275": "a13f9628796dc16a", "276": "6e3ce4714f76f2f9", "277": "de2233c73c628824", "278": "a144dcdc61af17a5", "279": "672ba0ee4d6993c2", "280": "daf108b14eb1d2d5", "281": "a618b7b467aa2c0c", "282": "60a2d42e0373376c", "283": "934bee98555c5f5b", "284": "3a30dd7bf2ececaa", "285": "23c1a365d72c9b86", "286": "3323cd7407922799", "287": "9050a3ebe80326e5", "288": "10d7c8f3898b68e5", "289": "2ce5bbc30db985b5", "290": "2a963843e9a8e153", "291": "28537a0c0fbd566f", "292": "3659ed0b62c213c5", "293": "912cf03978233ef7", "294": "324d8e36c3be5e01", "295": "60ce4fcea460e0a6", "296": "7a7f04630a11cc2b", "297": "69f2014dab3c4a93", "298": "9372bf2b2a6a0b97", "299": "5a4d1c1ef8bed9bb", "300": "b1d204e97a3c45dc", "302": "1c69dcee9405ce47", "305": "19ac29575c50f599", "306": "c556ac339be4aba5", "308": "bcf417101439fd9e", "309": "768db8a3a299f590", "310": "321732baccae846b", "313": "f9e342f69d6a5dae", "315": "a0fdc688ac30f227", "317": "31eb2ccb16c5af0f", "318": "2491d05d8bb29ad7"}
\ No newline at end of file
+{"0": "b0118f68a3e7f0ad", "1": "1b5729c63ebb6d53", "2": "7b9cd3374c9ebffa", "3": "61cf00732f2cbf96", "4": "97993ca1cfb6d71a", "5": "f34c872571e8a774", "6": "57f26bed5f2b7960", "7": "6759848caca5bb40", "8": "57e4918e2c522870", "9": "5c87636d50aa650f", "10": "fa0552af83961f8e", "11": "e2d43b24658f0055", "12": "f12f9a44ba955612", "13": "571266c2ba728290", "14": "8396b1c3c2a7a80c", "15": "bb968db320105479", "16": "bbaf7539ddd300b0", "17": "690dc63010f5642d", "18": "08077d6b96089ed8", "19": "43f37588c5b50939", "20": "67ce5a498e6dcd5c", "21": "0ba8e9f2dede578f", "22": "4c598395f4c06914", "23": "b64d81a71800bd4b", "24": "4eda46a5b0695ef6", "25": "90b79d6027d60d30", "26": "6bd6f2633370820c", "27": "7664e56213a29331", "28": "942c4f9928c60a45", "29": "0614b98d9013b5f5", "30": "53ff49b3d54f0fba", "31": "2153ddcd7477dfb7", "32": "899d2f5f0a53f8ab", "33": "4c3daa7635f2b586", "34": "9181b58fb473acc9", "35": "e24cf7738e0e68bd", "36": "0e81d60a5ed0df75", "37": "1c9a1f4c72613346", "38": "645b9e564165e121", "39": "c387d7ef8479ef21", "40": "f07a16ec76520068", "41": "7abb5bc6a0e4f65f", "42": "cbaa20536db72d3e", "43": "7478d6755ca2248a", "44": "67e5687526d9aecc", "45": "7dd5c61562c827a8", "46": "7d719ac4d8942365", "47": "65e41c1c22dcd058", "48": "aca3140856ef16e5", "49": "841013681f4e6e8c", "50": "b1c3283bd55a8fe9", "51": "f72c06a6893d6e7d", "52": "0d46d170fbface9a", "53": "ab44daeb527b6e64", "54": "4be0ea538ac175be", "55": "8296bedc69452de4", "56": "2a1dd74542bc4e00", "57": "0f62727f3b4907c0", "58": "93d54dd865cba4db", "59": "7369e85febb97f1a", "60": "1fb9355ac80e6777", "61": "6d5eeab3a20a1667", "62": "372a83084aeb9e55", "63": "0b962a47d1b049e5", "64": "3b9521f7d7986eaa", "65": "c35e392f1594d14e", "66": "f0754949c0ba3152", "67": "cbb795872ce2b286", "68": "bf5a253cc5340107", "69": "31a5a53f1fe77e46", "70": "01d4f9d6d9f3b08a", "71": "009e8e1df51d10de", "72": "69d0f8b228227690", "73": "22456307ff273d80", "74": "d9e74b032c5b8440", "75": "30a4a28cb6862c78", "76": "879780ef88205b22", "77": "62430df45afa65b5", "78": "0273bbf045eb1528", "79": "ba7bc17581366c9a", "80": "0727bb53199085fc", "81": "91393683c97d1773", "82": "b1fb8b1d0bcaa7fd", "83": "71d2ce6fb684bc0e", "84": "70497658d0e0cea6", "85": "f6ddba6f531d6b96", "86": "e3d13e2060945d3f", "87": "f0f56796aaebb4f5", "88": "c2df1288d3856e90", "89": "656f816eb51f2ab1", "90": "2957fa62543cf42d", "91": "25a6695f5783d2be", "92": "00341c22c4d34679", "93": "b796283dc9729998", "94": "f7a706f5fcb260c3", "95": "3b8f30fa05a39967", "96": "46e9411f2b2e725a", "97": "78aa95566e86b57f", "98": "5bbc8944b2ba2d8f", "99": "02ce7f8b4de6092a", "100": "3c1d9844d072bd2a", "101": "b3c5433df880f335", "102": "e036dbd1de0f8b38", "103": "ac7cb5ec7d5c0802", "104": "8d410ade17f20001", "105": "622f83f2eb300a25", "106": "989c014f76b74793", "107": "bfcc583da029935c", "108": "d1890c389166a07e", "109": "6d16ccde1291c9d4", "110": "d228746e85ead3af", "111": "b55ba9125ffb5729", "112": "5f50a360f18a880b", "113": "988a7d60a64afb53", "114": "c6b57d78299a27b3", "115": "4ab8ffab1d51ca61", "116": "db70db08c00162df", "117": "9a1080686fc7c39b", "118": "77fd76193df9f573", "119": "28355f848c862b6e", "120": "25f77f5455bdc96a", "121": "9141a0ede9461fd5", "122": "54decf0dc3db231e", "123": "0da603c9593f8955", "124": "3ceda88239910d9a", "125": "9409b3b8a334f51d", "126": "ac95a9f152e3d1c4", "127": "a7299f20633c0236", "128": "8539fb3b91d241af", "129": "ed938bf48ae6ca6c", "130": "7f405315686459b9", "131": "44c7924c829cc215", "132": "17ecb7325285cf7a", "133": "4487fd85ddc13c93", "134": "73382a9ef9d08673", "135": "c4abf0eb38ef740d", "136": "07d37aeefbe50e21", "137": "70b58e32c2890fdd", "138": "f2c7afb0c277c4b7", "139": "3ae63656c43c37a7", "140": "167643bcbbc26244", "141": "dcffd9ad7a1f7df6", "142": "f47469d48b3776b5", "143": "1b0ef1cf87b53de3", "144": "e195f425def606d0", "145": "558dcc9b37c5a8eb", "146": "c7ddffce8605b65b", "147": "aa45fe8ba8c7e724", "148": "8a3667a0e1bf82c5", "149": "39d16c91943d85e4", "150": "5910eeefe2f97a20", "151": "1323795afde6ef2d", "152": "f6f85b389abb3f1e", "153": "6cfdd09a6fdd9ff9", "154": "66efafa1e86d8081", "155": "562a328c3cebc9b1", "156": "3528c4c8a0e2db61", "157": "48f898ce95c8e90c", "158": "959e76250dbacbad", "159": "a2fe690317aef2ee", "160": "e30004421d79ffeb", "161": "cd66a5f43cd3407d", "162": "fa2d7dcf52348095", "163": "75efc6457f7fce22", "164": "8375a4fbf0573a52", "165": "edb079558c6f3d59", "166": "1d80b74f885d6716", "167": "3cd15de82f23093a", "168": "7a77349497fcdf37", "169": "85cd9ca1246dc437", "170": "3e93071fc4a80e95", "171": "6114ccb7b9036e33", "172": "f3d92800d756dd79", "173": "2aa85a497fd142d7", "174": "35d3a2679371e9a4", "175": "b8f35a499b36a57a", "176": "3a6753a80123a0f4", "177": "ca950b47c628b81a", "178": "255a8a95e2a3df67", "179": "7d22a9fa4c6bac26", "180": "4ac5f9965007617d", "181": "cff999497d56b512", "182": "06b38ffa6f58195d", "183": "ee705c178d6958bb", "184": "038915bd030e573c", "185": "47e08912fd6cd296", "186": "867babdd40f0c3fc", "187": "298144d1548a7dee", "188": "00d275127a7e435e", "189": "2942a9d30dae4a29", "190": "3e21e2fb50e12670", "191": "be62daa7d5bc336a", "192": "47c3e1a9d4bb7e67", "193": "82ff39c105ae3090", "194": "6747ecf936cb0400", "195": "ebc0087e3400009c", "196": "51d4e15c7e10decf", "197": "3a8a257d1f54b2ae", "198": "2ed3af4b96bcf920", "199": "4fd383eed2e51caf", "200": "162b36508e5879f3", "201": "6256958a9b817133", "202": "ab06e01c9caa9f90", "203": "204b3a83ef62f360", "204": "7fde599bf90ee0bf", "205": "67b5cef27d55952d", "206": "10b2996179aaaf2e", "207": "39031f751fb2d42f", "208": "54f53e5e0cc8c385", "209": "821696b1ff49347b", "210": "00739b5480732bdc", "211": "2434b1a28b16557f", "212": "cb3fe87c920b0cb3", "213": "ddb9c95db6575999", "214": "e2250667e3a77089", "215": "9069d5dda9013eee", "216": "0077975cffee54dc", "217": "e6fcd0aec85fac92", "218": "9590124db1601a96", "219": "e077f384ad6b18ad", "220": "dd8d62f9fb517bb5", "221": "6d0322fa3d03fa10", "222": "3be2a9ccdc6668cc", "223": "65d822bbba496dee", "224": "c7de3fe21e2e53b4", "225": "703a4a9860d7ed16", "226": "85fd4a84b5393d0e", "227": "97ec841e4f367258", "228": "4654167fd211d027", "229": "8176a164778526f9", "230": "a74925b45b279d6f", "231": "0bd7ed52b69464bf", "232": "b0b81cfb9e11502e", "233": "578638c4278d00c6", "234": "7c65a1f3c4f1b858", "235": "d7cad630fb1d1414", "236": "9a7b4968676954d7", "237": "70e62553403661a3", "238": "fc778d7a22e550eb", "239": "4865e180c0694458", "240": "8d1aad761b4c839d", "241": "e66a941c60456b44", "242": "a7cf02106e992a23", "243": "88604333ff6aa860", "244": "8365b02889fa6cfc", "245": "6e7b82d0387bf16d", "246": "2eef246ebb269184", "247": "f5edd0761d024ff0", "248": "1e833ee596b5ca23", "249": "9fd8a4abf0eb00a3", "250": "e9728eefddbaed5b", "251": "fe8ad8aaa5b6f652", "252": "be78134816511eaf", "253": "4737624cd139d117", "254": "5fcab665dcd75a7d", "255": "33b1870821fb012a", "256": "10992f7331cbdeba", "257": "cef806733796b489", "258": "76578e90353475ed", "259": "04d938f720c1db19", "260": "57931ddf408ceeeb", "261": "b4fbbd4b7a13369e", "262": "d64c6d160a7faed4", "263": "2d1c86501cdb42dd", "264": "e24cf60bcf607797", "265": "0650b6a561436852", "266": "bbcea5ec9d046ac0", "267": "fd158611e3227271", "268": "ecfb692b6f7a1014", "269": "88e82bb9fffbe642", "270": "ef2d2abc6e491968", "271": "a1e0a3465632c13a", "272": "e6273a4f9b65952b", "273": "38a03e32ab28113e", "274": "400d2883ce278be7", "275": "a13f9628796dc16a", "276": "6e3ce4714f76f2f9", "277": "de2233c73c628824", "278": "a144dcdc61af17a5", "279": "672ba0ee4d6993c2", "280": "daf108b14eb1d2d5", "281": "a618b7b467aa2c0c", "282": "60a2d42e0373376c", "283": "934bee98555c5f5b", "284": "3a30dd7bf2ececaa", "285": "23c1a365d72c9b86", "286": "3323cd7407922799", "287": "9050a3ebe80326e5", "288": "10d7c8f3898b68e5", "289": "2ce5bbc30db985b5", "290": "2a963843e9a8e153", "291": "28537a0c0fbd566f", "292": "3659ed0b62c213c5", "293": "912cf03978233ef7", "294": "947667b4ea34ac61", "295": "60ce4fcea460e0a6", "296": "7a7f04630a11cc2b", "297": "69f2014dab3c4a93", "298": "9372bf2b2a6a0b97", "299": "5a4d1c1ef8bed9bb", "300": "b1d204e97a3c45dc", "301": "47fc05295105c312", "302": "1c69dcee9405ce47", "303": "5eb83040a203bd16", "304": "20a2080eac259e2b", "305": "19ac29575c50f599", "306": "c556ac339be4aba5", "307": "d2a7888a77082d4c", "308": "bcf417101439fd9e", "309": "768db8a3a299f590", "310": "321732baccae846b", "311": "0598c15fa2a12fad", "312": "05f1ad1f29e435ff", "313": "40e436195389decc", "314": "6c1a09679076ea89", "315": "a0fdc688ac30f227", "317": "31eb2ccb16c5af0f", "318": "2491d05d8bb29ad7"}
\ No newline at end of file
diff --git a/graphify-out/2026-08-25/.graphify_labels.json b/graphify-out/2026-08-25/.graphify_labels.json
index 4398e8d..be7518a 100644
--- a/graphify-out/2026-08-25/.graphify_labels.json
+++ b/graphify-out/2026-08-25/.graphify_labels.json
@@ -7,20 +7,20 @@
"5": "CmsController",
"6": "tickets.controller.ts",
"7": "pets/pets.controller.ts",
- "8": "ReportsController",
+ "8": "admin.module.ts",
"9": "devDependencies",
- "10": "ReviewsController",
+ "10": "ReviewsService",
"11": "Spinner.tsx",
"12": "PetProfile.tsx",
"13": "app-audit-verification.e2e-spec.js",
"14": "lib/services/api.ts",
"15": "src/services/api.ts",
"16": "DoctorQueryDto",
- "17": "admin.service.ts",
+ "17": "schema.ts",
"18": "JwtAuthGuard",
- "19": "ProductsService",
+ "19": "ProductsController",
"20": "CreateVideoDto",
- "21": "eslint-config-next",
+ "21": "ProductPage.tsx",
"22": "UserDashboard.tsx",
"23": "MenuService",
"24": "BE-001",
@@ -43,30 +43,30 @@
"41": "What You Must Do When Invoked",
"42": "SslController",
"43": "BannersService",
- "44": "TestimonialsService",
+ "44": "TestimonialsController",
"45": "What You Must Do When Invoked",
- "46": "ApiOperation",
+ "46": "api",
"47": "IngredientsService",
- "48": "Reports.tsx",
+ "48": "cartStore.ts",
"49": "devDependencies",
"50": "devDependencies",
"51": "BlogsController",
- "52": "PrescriptionsService",
- "53": "SmartAdvisorService",
+ "52": "PrescriptionsController",
+ "53": "SmartAdvisorController",
"54": "UsersService",
"55": "UITexts.tsx",
"56": "Orders.tsx",
"57": "Role & Core Objective",
"58": "ContactService",
"59": "compilerOptions",
- "60": "admin.controller.ts",
- "61": "CreateEBankCheckoutDto",
- "62": "api",
+ "60": "Blogs.tsx",
+ "61": "payment.controller.ts",
+ "62": "ProductsService",
"63": "dependencies",
"64": "compilerOptions",
- "65": "AdminTransactionFilterDto",
+ "65": "app.e2e-spec.js",
"66": "AdminQueryDto",
- "67": "PaginationDto",
+ "67": "PetsController",
"68": "20260526145407_init/migration.sql",
"69": "Required Review Group Closures",
"70": "compilerOptions",
@@ -84,7 +84,7 @@
"82": "scripts",
"83": "dependencies",
"84": "Role & Core Objective",
- "85": "PetsController",
+ "85": "eslint-config-prettier",
"86": "zibal.service.ts",
"87": "dependencies",
"88": "useSettingsStore",
@@ -92,11 +92,11 @@
"90": "HomeClient.tsx",
"91": "Reconciled Audit Roles & Assignments",
"92": "OrdersService",
- "93": "ProductPage.tsx",
+ "93": "@nestjs/schematics",
"94": "Phase 3.1 — Human Review Preparation and Master Backlog Critique",
"95": "blog/[slug]/page.tsx",
"96": "compilerOptions",
- "97": "prisma",
+ "97": "prettier",
"98": "scripts",
"99": "BlogsController",
"100": "Deep Audit Summary Report",
@@ -105,8 +105,8 @@
"103": "Comprehensive Change Log",
"104": "Coupons.tsx",
"105": "Operational Rules & Boundaries",
- "106": "auth.controller.ts",
- "107": "shop/page.tsx",
+ "106": "Reports.tsx",
+ "107": "@types/supertest",
"108": "PrismaService",
"109": "1. Summary of Integrity Repairs Performed",
"110": "Operational Rules & Boundaries",
@@ -114,50 +114,50 @@
"112": "Operational Rules & Boundaries",
"113": "reviews.controller.ts",
"114": "AppService",
- "115": "seo.ts",
+ "115": "@types/react-dom",
"116": "Vazirmatn Changelog",
"117": "Vazirmatn Font فونت وزیرمتن",
"118": "Operational Rules & Boundaries",
"119": "compilerOptions",
"120": "compilerOptions",
"121": "backend/README.md",
- "122": "auth.module.ts",
+ "122": "AuthService",
"123": "BlogsService",
"124": "Repository Map",
"125": "validate_integrity.js",
"126": "admin-panel/package.json",
"127": "Sahel-Font",
- "128": "AdminController",
- "129": "videos.controller.ts",
+ "128": "AdminService",
+ "129": "RouteErrorBoundary",
"130": "Sahel-Font",
"131": "Role & Core Objective",
"132": "orchestrate.py",
"133": "backend/package.json",
- "134": "CreateReviewDto",
+ "134": "blog/page.tsx",
"135": "graphify reference: extra exports and benchmark",
"136": "Phase 2 Final Quality Gate Summary Report",
"137": "Task Modifications Log",
"138": "Install",
- "139": "RouteErrorBoundary",
+ "139": "layout.tsx",
"140": "ErrorBoundary",
"141": "application/package.json",
"142": "start-dev.js",
"143": "generate-openapi.js",
"144": "@testing-library/react",
- "145": "ProductDto",
+ "145": "admin.service.ts",
"146": "System Discovery",
- "147": "ReviewsService",
- "148": "Body",
+ "147": "RevalidationService",
+ "148": "wiki/[slug]/page.tsx",
"149": "SmsSettingsPage.tsx",
"150": "Product Requirement Document (PRD)",
- "151": "AuthService",
- "152": "@nestjs/cli",
+ "151": "auth.service.ts",
+ "152": "trust-seals/page.tsx",
"153": "exclude",
"154": "Baseline Command Plan & Reconciled Command History",
- "155": "Blogs.tsx",
- "156": "contact/page.tsx",
+ "155": "seo-backfill.ts",
+ "156": "bcrypt",
"157": "ErrorPages.tsx",
- "158": "@types/bcryptjs",
+ "158": "class-transformer",
"159": "with-vpn.sh",
"160": "Architecture Specification",
"161": "Project Health Audit Report",
@@ -175,16 +175,16 @@
"173": "Phase 3 Audit Traceability Matrix",
"174": "rebuild_honest_ledger.js",
"175": "validate_evidence_grade.js",
- "176": "@types/node",
- "177": "blog/page.tsx",
- "178": "typescript",
- "179": "BlogsService",
+ "176": "helmet",
+ "177": "js-yaml",
+ "178": "@nestjs/core",
+ "179": "PaginationDto",
"180": "API Contract Specification",
"181": "⚙️ Backend Technical Review (05_dev_backend)",
"182": "🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)",
"183": "🚀 SEO & Content Strategy Review (12_seo_content)",
"184": "MetricsController",
- "185": "WikiController",
+ "185": "@nestjs/jwt",
"186": "seed-ui-texts.ts",
"187": "seed-wiki.ts",
"188": "update-blog.dto.ts",
@@ -196,14 +196,14 @@
"194": "Raw Finding Verification & Disposition Report",
"195": "React + TypeScript + Vite",
"196": "Select.tsx",
- "197": "AuthService",
- "198": "users.service.ts",
- "199": "auth.service.ts",
+ "197": "@nestjs/throttler",
+ "198": "passport",
+ "199": "auth.controller.ts",
"200": "application/README.md",
"201": "deploy.sh",
"202": "🔒 Security & Performance Review (09_devops_security)",
"203": "👁️ UX & Persona Interface Review (08_visual_qa)",
- "204": "supertest",
+ "204": "reflect-metadata",
"205": "prisma/scientificTerms.ts",
"206": "seed-blogs.ts",
"207": "seed-custom.ts",
@@ -222,7 +222,7 @@
"220": "Input.tsx",
"221": "Textarea.tsx",
"222": "admin-panel/tsconfig.json",
- "223": "@eslint/js",
+ "223": "swagger-ui-express",
"224": "jest",
"225": "next.config.ts",
"226": "Shabnam Font README",
@@ -230,16 +230,16 @@
"228": "rules/graphify.md",
"229": ".agents/workflows/graphify.md",
"230": "instructions.md",
- "231": "catalog/page.tsx",
- "232": "ts-loader",
- "233": "ts-node",
+ "231": "@eslint/eslintrc",
+ "232": "@eslint/js",
+ "233": "eslint-plugin-prettier",
"234": "20260526160916_add_ui_texts_and_scientific_terms/migration.sql",
- "235": "source-map-support",
- "236": "@types/bcrypt",
+ "235": "@nestjs/cli",
+ "236": "@nestjs/testing",
"237": "ts-jest",
- "238": "tsconfig-paths",
- "239": "RegisterDto",
- "240": "eslint",
+ "238": "prisma",
+ "239": "source-map-support",
+ "240": "supertest",
"241": "blog.entity.ts",
"242": "home.entity.ts",
"243": "wiki.entity.ts",
@@ -263,10 +263,11 @@
"261": "User Login API",
"262": "User Logout API",
"263": "generate-openapi.d.ts",
- "264": "InitiatePaymentDto",
+ "264": "ts-loader",
"265": "@testing-library/jest-dom",
- "267": "@types/js-yaml",
- "268": "@types/multer",
+ "266": "ts-node",
+ "267": "tsconfig-paths",
+ "268": "@types/bcrypt",
"269": "eslint-plugin-react-hooks",
"270": "app-audit-verification.e2e-spec.d.ts",
"271": "app.e2e-spec.d.ts",
@@ -296,21 +297,24 @@
"295": "eslint-plugin-react-refresh",
"296": "tailwindcss",
"297": "ZibalEBankService",
- "298": "ZibalCallbackQueryDto",
+ "298": ".initiateOrderPayment",
"299": "@tailwindcss/postcss",
"300": "typescript",
+ "301": "@types/compression",
"302": "typescript-eslint",
+ "303": "@types/express",
+ "304": "@types/jest",
"305": "@types/react",
"306": "globals",
+ "307": "@types/js-yaml",
"308": "vitest",
"309": "axios",
"310": "tailwindcss",
- "311": "track/page.tsx",
+ "311": "@types/multer",
+ "312": "@types/passport-jwt",
"313": "MenuManager.tsx",
- "314": "layout.tsx",
+ "314": "typescript-eslint",
"315": "typescript",
"317": "revalidate/route.ts",
- "318": "MaskableField.tsx",
- "319": "AdminService",
- "330": "@types/passport-jwt"
+ "318": "MaskableField.tsx"
}
diff --git a/graphify-out/2026-08-25/GRAPH_REPORT.md b/graphify-out/2026-08-25/GRAPH_REPORT.md
index bb0affe..b422adc 100644
--- a/graphify-out/2026-08-25/GRAPH_REPORT.md
+++ b/graphify-out/2026-08-25/GRAPH_REPORT.md
@@ -1,16 +1,16 @@
# Graph Report - canina (2026-08-25)
## Corpus Check
-- 552 files · ~1,314,196 words
+- 557 files · ~1,318,554 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
-- 4007 nodes · 7228 edges · 314 communities (207 shown, 107 thin omitted)
+- 4034 nodes · 7290 edges · 318 communities (200 shown, 118 thin omitted)
- Extraction: 96% EXTRACTED · 4% INFERRED · 0% AMBIGUOUS · INFERRED: 281 edges (avg confidence: 0.79)
- Token cost: 0 input · 0 output
## Graph Freshness
-- Built from commit: `de038dba`
+- Built from commit: `fa69aa4c`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -23,20 +23,20 @@
- CmsController
- tickets.controller.ts
- pets/pets.controller.ts
-- ReportsController
+- admin.module.ts
- devDependencies
-- ReviewsController
+- ReviewsService
- Spinner.tsx
- PetProfile.tsx
- app-audit-verification.e2e-spec.js
- lib/services/api.ts
- src/services/api.ts
- DoctorQueryDto
-- admin.service.ts
+- schema.ts
- JwtAuthGuard
-- ProductsService
+- ProductsController
- CreateVideoDto
-- eslint-config-next
+- ProductPage.tsx
- UserDashboard.tsx
- MenuService
- BE-001
@@ -59,30 +59,30 @@
- What You Must Do When Invoked
- SslController
- BannersService
-- TestimonialsService
+- TestimonialsController
- What You Must Do When Invoked
-- ApiOperation
+- api
- IngredientsService
-- Reports.tsx
+- cartStore.ts
- devDependencies
- devDependencies
- BlogsController
-- PrescriptionsService
-- SmartAdvisorService
+- PrescriptionsController
+- SmartAdvisorController
- UsersService
- UITexts.tsx
- Orders.tsx
- Role & Core Objective
- ContactService
- compilerOptions
-- admin.controller.ts
-- CreateEBankCheckoutDto
-- api
+- Blogs.tsx
+- payment.controller.ts
+- ProductsService
- dependencies
- compilerOptions
-- AdminTransactionFilterDto
+- app.e2e-spec.js
- AdminQueryDto
-- PaginationDto
+- PetsController
- 20260526145407_init/migration.sql
- Required Review Group Closures
- compilerOptions
@@ -100,7 +100,7 @@
- scripts
- dependencies
- Role & Core Objective
-- PetsController
+- eslint-config-prettier
- zibal.service.ts
- dependencies
- useSettingsStore
@@ -108,11 +108,11 @@
- HomeClient.tsx
- Reconciled Audit Roles & Assignments
- OrdersService
-- ProductPage.tsx
+- @nestjs/schematics
- Phase 3.1 — Human Review Preparation and Master Backlog Critique
- blog/[slug]/page.tsx
- compilerOptions
-- prisma
+- prettier
- scripts
- BlogsController
- Deep Audit Summary Report
@@ -121,8 +121,8 @@
- Comprehensive Change Log
- Coupons.tsx
- Operational Rules & Boundaries
-- auth.controller.ts
-- shop/page.tsx
+- Reports.tsx
+- @types/supertest
- PrismaService
- 1. Summary of Integrity Repairs Performed
- Operational Rules & Boundaries
@@ -130,50 +130,50 @@
- Operational Rules & Boundaries
- reviews.controller.ts
- AppService
-- seo.ts
+- @types/react-dom
- Vazirmatn Changelog
- Vazirmatn Font فونت وزیرمتن
- Operational Rules & Boundaries
- compilerOptions
- compilerOptions
- backend/README.md
-- auth.module.ts
+- AuthService
- BlogsService
- Repository Map
- validate_integrity.js
- admin-panel/package.json
- Sahel-Font
-- AdminController
-- videos.controller.ts
+- AdminService
+- RouteErrorBoundary
- Sahel-Font
- Role & Core Objective
- orchestrate.py
- backend/package.json
-- CreateReviewDto
+- blog/page.tsx
- graphify reference: extra exports and benchmark
- Phase 2 Final Quality Gate Summary Report
- Task Modifications Log
- Install
-- RouteErrorBoundary
+- layout.tsx
- ErrorBoundary
- application/package.json
- start-dev.js
- generate-openapi.js
- @testing-library/react
-- ProductDto
+- admin.service.ts
- System Discovery
-- ReviewsService
-- Body
+- RevalidationService
+- wiki/[slug]/page.tsx
- SmsSettingsPage.tsx
- Product Requirement Document (PRD)
-- AuthService
-- @nestjs/cli
+- auth.service.ts
+- trust-seals/page.tsx
- exclude
- Baseline Command Plan & Reconciled Command History
-- Blogs.tsx
-- contact/page.tsx
+- seo-backfill.ts
+- bcrypt
- ErrorPages.tsx
-- @types/bcryptjs
+- class-transformer
- with-vpn.sh
- Architecture Specification
- Project Health Audit Report
@@ -191,16 +191,16 @@
- Phase 3 Audit Traceability Matrix
- rebuild_honest_ledger.js
- validate_evidence_grade.js
-- @types/node
-- blog/page.tsx
-- typescript
-- BlogsService
+- helmet
+- js-yaml
+- @nestjs/core
+- PaginationDto
- API Contract Specification
- ⚙️ Backend Technical Review (05_dev_backend)
- 🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)
- 🚀 SEO & Content Strategy Review (12_seo_content)
- MetricsController
-- WikiController
+- @nestjs/jwt
- seed-ui-texts.ts
- seed-wiki.ts
- update-blog.dto.ts
@@ -212,14 +212,14 @@
- Raw Finding Verification & Disposition Report
- React + TypeScript + Vite
- Select.tsx
-- AuthService
-- users.service.ts
-- auth.service.ts
+- @nestjs/throttler
+- passport
+- auth.controller.ts
- application/README.md
- deploy.sh
- 🔒 Security & Performance Review (09_devops_security)
- 👁️ UX & Persona Interface Review (08_visual_qa)
-- supertest
+- reflect-metadata
- prisma/scientificTerms.ts
- seed-blogs.ts
- seed-custom.ts
@@ -238,7 +238,7 @@
- Input.tsx
- Textarea.tsx
- admin-panel/tsconfig.json
-- @eslint/js
+- swagger-ui-express
- jest
- next.config.ts
- Shabnam Font README
@@ -246,16 +246,16 @@
- rules/graphify.md
- .agents/workflows/graphify.md
- instructions.md
-- catalog/page.tsx
-- ts-loader
-- ts-node
+- @eslint/eslintrc
+- @eslint/js
+- eslint-plugin-prettier
- 20260526160916_add_ui_texts_and_scientific_terms/migration.sql
-- source-map-support
-- @types/bcrypt
+- @nestjs/cli
+- @nestjs/testing
- ts-jest
-- tsconfig-paths
-- RegisterDto
-- eslint
+- prisma
+- source-map-support
+- supertest
- blog.entity.ts
- home.entity.ts
- wiki.entity.ts
@@ -275,10 +275,11 @@
- start.sh
- User Login API
- User Logout API
-- InitiatePaymentDto
+- ts-loader
- @testing-library/jest-dom
-- @types/js-yaml
-- @types/multer
+- ts-node
+- tsconfig-paths
+- @types/bcrypt
- eslint-plugin-react-hooks
- Canina Pharma GmbH
- Pets Table
@@ -297,26 +298,29 @@
- eslint-plugin-react-refresh
- tailwindcss
- ZibalEBankService
-- ZibalCallbackQueryDto
+- .initiateOrderPayment
- @tailwindcss/postcss
- typescript
+- @types/compression
- typescript-eslint
+- @types/express
+- @types/jest
- @types/react
- globals
+- @types/js-yaml
- vitest
-- track/page.tsx
+- @types/multer
+- @types/passport-jwt
- MenuManager.tsx
-- layout.tsx
+- typescript-eslint
- typescript
- revalidate/route.ts
- MaskableField.tsx
-- AdminService
-- @types/passport-jwt
## God Nodes (most connected - your core abstractions)
1. `Roles()` - 106 edges
2. `PrismaService` - 87 edges
-3. `useSettingsStore` - 53 edges
+3. `useSettingsStore` - 55 edges
4. `api` - 44 edges
5. `SmsService` - 42 edges
6. `PaginationDto` - 41 edges
@@ -342,27 +346,27 @@
- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/api.ts`
- 4-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/orderService.ts -> frontend/application/lib/services/api.ts`
-## Communities (314 total, 107 thin omitted)
+## Communities (318 total, 118 thin omitted)
### Community 0 - "Roles"
-Cohesion: 0.18
-Nodes (19): Roles(), PaymentController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body (+11 more)
+Cohesion: 0.24
+Nodes (13): Roles(), PaymentController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get (+5 more)
### Community 1 - "app.module.ts"
-Cohesion: 0.06
-Nodes (34): AdminModule, Module, CmsModule, Module, SmsModule, Global, Module, ContactModule (+26 more)
+Cohesion: 0.07
+Nodes (34): BannersModule, Module, CmsModule, Module, SmsModule, Global, Module, ContactModule (+26 more)
### Community 2 - "SmsService"
Cohesion: 0.06
-Nodes (26): SmsService, Injectable, SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString (+18 more)
+Nodes (27): SmsLogQuery, SmsService, Injectable, SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional (+19 more)
### Community 3 - "ProductService"
Cohesion: 0.06
-Nodes (37): dynamic, revalidate, DEFAULT_CATEGORIES, dynamic, revalidate, dynamic, revalidate, ArchiveProductCard() (+29 more)
+Nodes (34): generateMetadata(), dynamic, revalidate, DEFAULT_CATEGORIES, dynamic, revalidate, dynamic, revalidate (+26 more)
### Community 4 - "SafeImage.tsx"
-Cohesion: 0.08
-Nodes (22): BlogPost, BlogPreviewSection(), ProductDetailModalProps, OrderDetailsModalProps, PLAYBACK_RATES, PodcastPlayerModal(), PodcastPlayerModalProps, VideoModalPlayer (+14 more)
+Cohesion: 0.09
+Nodes (21): BlogCategory, BlogPostItem, ProductDetailModalProps, OrderDetailsModalProps, PLAYBACK_RATES, PodcastInlinePlayerProps, PLAYBACK_RATES, PodcastPlayerModal() (+13 more)
### Community 5 - "CmsController"
Cohesion: 0.09
@@ -373,36 +377,36 @@ Cohesion: 0.09
Nodes (31): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString (+23 more)
### Community 7 - "pets/pets.controller.ts"
-Cohesion: 0.12
+Cohesion: 0.11
Nodes (15): CreatePetDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional, IsString (+7 more)
-### Community 8 - "ReportsController"
-Cohesion: 0.16
-Nodes (9): ReportsController, ApiBearerAuth, ApiOperation, ApiTags, Controller, Get, UseGuards, ReportsService (+1 more)
+### Community 8 - "admin.module.ts"
+Cohesion: 0.07
+Nodes (19): AdminModule, Module, MediaService, Injectable, ReportsController, ApiBearerAuth, ApiOperation, ApiTags (+11 more)
### Community 9 - "devDependencies"
-Cohesion: 0.09
-Nodes (23): devDependencies, eslint-config-prettier, @eslint/eslintrc, eslint-plugin-prettier, @nestjs/schematics, @nestjs/testing, prettier, @types/compression (+15 more)
+Cohesion: 0.22
+Nodes (9): devDependencies, eslint, @types/bcryptjs, @types/node, typescript, eslint, @types/node, typescript (+1 more)
-### Community 10 - "ReviewsController"
-Cohesion: 0.20
-Nodes (11): ReviewsController, ApiBearerAuth, ApiOperation, ApiTags, Controller, Delete, Get, Param (+3 more)
+### Community 10 - "ReviewsService"
+Cohesion: 0.13
+Nodes (16): ReviewsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more)
### Community 11 - "Spinner.tsx"
Cohesion: 0.09
Nodes (30): ConfirmModal(), ConfirmModalProps, getFileType(), Media, MediaSelector(), MediaSelectorProps, maxWidthClasses, Modal() (+22 more)
### Community 12 - "PetProfile.tsx"
-Cohesion: 0.11
-Nodes (20): FeaturedProducts(), ProductCard(), OrderSuccess(), SearchResultsPage(), OrderRowSkeleton(), PetProfileSkeleton(), ProductCardSkeleton(), Skeleton() (+12 more)
+Cohesion: 0.13
+Nodes (13): FeaturedProducts(), OrderDetailsModal(), OrderRowSkeleton(), PetProfileSkeleton(), ProductCardSkeleton(), Skeleton(), SkeletonProps, mockProducts (+5 more)
### Community 13 - "app-audit-verification.e2e-spec.js"
Cohesion: 0.07
Nodes (22): AppModule, Module, CustomHttpExceptionFilter, Catch, PrismaExceptionFilter, Catch, DecimalInterceptor, Injectable (+14 more)
### Community 14 - "lib/services/api.ts"
-Cohesion: 0.08
-Nodes (29): LoginModal, VerifyContent(), B2BPortal(), CartDrawer(), ContactInfoItem, Header(), LoginModal(), LoginModalProps (+21 more)
+Cohesion: 0.09
+Nodes (21): BlogPost, ContactInfoItem, FAQItem, Testimonial, api, ApiErrorPayload, BASE_DOMAIN, baseURL (+13 more)
### Community 15 - "src/services/api.ts"
Cohesion: 0.09
@@ -412,25 +416,29 @@ Nodes (25): ProtectedRoute(), Login(), B2BManager, SeoSettingsPage, SmartAdvisor
Cohesion: 0.09
Nodes (24): DoctorsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+16 more)
-### Community 17 - "admin.service.ts"
-Cohesion: 0.11
-Nodes (11): CouponTargetInput, PaginationQuery, RevalidationModule, Global, Module, RedisModule, Global, Module (+3 more)
+### Community 17 - "schema.ts"
+Cohesion: 0.14
+Nodes (18): B2BPage(), generateMetadata(), ContactPage(), generateMetadata(), generateMetadata(), getInitialVideos(), Videos(), ContactFormClient() (+10 more)
### Community 18 - "JwtAuthGuard"
-Cohesion: 0.21
+Cohesion: 0.19
Nodes (7): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload
-### Community 19 - "ProductsService"
-Cohesion: 0.10
-Nodes (19): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, ProductsController, ApiOperation, ApiTags (+11 more)
+### Community 19 - "ProductsController"
+Cohesion: 0.15
+Nodes (9): ProductsController, ApiOperation, ApiTags, Body, Controller, Get, Param, Patch (+1 more)
### Community 20 - "CreateVideoDto"
Cohesion: 0.09
Nodes (24): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+16 more)
+### Community 21 - "ProductPage.tsx"
+Cohesion: 0.14
+Nodes (14): PodcastInlinePlayer(), CalculatorState, ICON_MAP, ProductPage(), ProductReviews, useCalculatorStore, ProductReviews(), ProductReviewsProps (+6 more)
+
### Community 22 - "UserDashboard.tsx"
Cohesion: 0.10
-Nodes (30): AddressModal(), AddressModalProps, AuthModal(), AuthModalProps, extractOtpFromText(), BackButton(), BackButtonProps, CheckoutPage() (+22 more)
+Nodes (38): VerifyContent(), AddressModal(), AddressModalProps, ArchiveProductCard(), B2BPortal(), BackButton(), BackButtonProps, CheckoutPage() (+30 more)
### Community 23 - "MenuService"
Cohesion: 0.12
@@ -477,16 +485,16 @@ Cohesion: 0.10
Nodes (20): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+12 more)
### Community 34 - "B2BService"
-Cohesion: 0.14
-Nodes (14): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more)
+Cohesion: 0.12
+Nodes (17): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+9 more)
### Community 35 - "AuthController"
Cohesion: 0.27
Nodes (12): AuthController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+4 more)
### Community 36 - "FaqService"
-Cohesion: 0.14
-Nodes (14): FaqController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
+Cohesion: 0.12
+Nodes (16): FaqController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more)
### Community 37 - "راهنمای تست سیستم (Software Testing)"
Cohesion: 0.07
@@ -497,8 +505,8 @@ Cohesion: 0.07
Nodes (26): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Button(), ButtonProps, ButtonSize, ButtonVariant, ThSort() (+18 more)
### Community 39 - "CategoriesController"
-Cohesion: 0.10
-Nodes (16): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more)
+Cohesion: 0.09
+Nodes (17): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+9 more)
### Community 40 - "MediaController"
Cohesion: 0.11
@@ -516,21 +524,25 @@ Nodes (14): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controlle
Cohesion: 0.13
Nodes (15): BannersController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+7 more)
-### Community 44 - "TestimonialsService"
+### Community 44 - "TestimonialsController"
Cohesion: 0.13
-Nodes (14): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
+Nodes (12): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+4 more)
### Community 45 - "What You Must Do When Invoked"
Cohesion: 0.07
Nodes (26): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+18 more)
+### Community 46 - "api"
+Cohesion: 0.13
+Nodes (13): Layout(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES, Topbar() (+5 more)
+
### Community 47 - "IngredientsService"
Cohesion: 0.13
Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
-### Community 48 - "Reports.tsx"
-Cohesion: 0.20
-Nodes (7): BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps, ReportData, TopCouponItem, Reports
+### Community 48 - "cartStore.ts"
+Cohesion: 0.13
+Nodes (6): OrderSuccess(), OrderTracking(), OrderService, CartItem, CartStore, Order
### Community 49 - "devDependencies"
Cohesion: 0.11
@@ -538,23 +550,23 @@ Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, glo
### Community 50 - "devDependencies"
Cohesion: 0.13
-Nodes (15): devDependencies, eslint, jsdom, tailwindcss, @tailwindcss/postcss, @types/node, @types/react-dom, @vitejs/plugin-react (+7 more)
+Nodes (15): eslint-config-next, devDependencies, eslint, eslint-config-next, jsdom, tailwindcss, @tailwindcss/postcss, @types/node (+7 more)
### Community 51 - "BlogsController"
Cohesion: 0.14
Nodes (16): BlogsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more)
-### Community 52 - "PrescriptionsService"
-Cohesion: 0.14
-Nodes (14): PrescriptionsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more)
+### Community 52 - "PrescriptionsController"
+Cohesion: 0.15
+Nodes (12): PrescriptionsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+4 more)
-### Community 53 - "SmartAdvisorService"
-Cohesion: 0.13
-Nodes (14): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
+### Community 53 - "SmartAdvisorController"
+Cohesion: 0.14
+Nodes (12): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+4 more)
### Community 54 - "UsersService"
-Cohesion: 0.08
-Nodes (31): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+23 more)
+Cohesion: 0.06
+Nodes (42): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable (+34 more)
### Community 55 - "UITexts.tsx"
Cohesion: 0.09
@@ -576,37 +588,37 @@ Nodes (11): ContactController, Body, Controller, Get, Param, Post, Put, Query (+
Cohesion: 0.06
Nodes (30): compilerOptions, allowSyntheticDefaultImports, baseUrl, declaration, emitDecoratorMetadata, esModuleInterop, experimentalDecorators, forceConsistentCasingInFileNames (+22 more)
-### Community 60 - "admin.controller.ts"
-Cohesion: 0.21
-Nodes (10): CreateUserDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsNumber, IsOptional, IsString (+2 more)
+### Community 60 - "Blogs.tsx"
+Cohesion: 0.15
+Nodes (11): ActiveStates, PRESET_BG_COLORS, PRESET_COLORS, RichTextEditor(), RichTextEditorProps, AuthorUser, BlogCategory, BlogPost (+3 more)
-### Community 61 - "CreateEBankCheckoutDto"
-Cohesion: 0.22
-Nodes (8): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsNumber, IsOptional, IsString, Min
+### Community 61 - "payment.controller.ts"
+Cohesion: 0.08
+Nodes (26): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type, CreateEBankCheckoutDto (+18 more)
-### Community 62 - "api"
-Cohesion: 0.13
-Nodes (13): Layout(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES, Topbar() (+5 more)
+### Community 62 - "ProductsService"
+Cohesion: 0.18
+Nodes (10): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, Query, ProductsModule, Module (+2 more)
### Community 63 - "dependencies"
-Cohesion: 0.05
-Nodes (43): dependencies, bcrypt, bcryptjs, class-transformer, class-validator, compression, helmet, ioredis (+35 more)
+Cohesion: 0.09
+Nodes (23): dependencies, bcryptjs, class-validator, compression, ioredis, @nestjs/common, @nestjs/passport, @nestjs/platform-express (+15 more)
### Community 64 - "compilerOptions"
Cohesion: 0.10
Nodes (20): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, lib, module, moduleDetection, moduleResolution, noEmit (+12 more)
-### Community 65 - "AdminTransactionFilterDto"
-Cohesion: 0.25
-Nodes (7): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type
+### Community 65 - "app.e2e-spec.js"
+Cohesion: 0.50
+Nodes (3): app_module_1, supertest_1, testing_1
### Community 66 - "AdminQueryDto"
Cohesion: 0.18
Nodes (7): ApiQuery, Get, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString
-### Community 67 - "PaginationDto"
-Cohesion: 0.07
-Nodes (19): CategoryQuery, MediaService, Injectable, PetQuery, PetsService, Injectable, SslCertInfo, Injectable (+11 more)
+### Community 67 - "PetsController"
+Cohesion: 0.11
+Nodes (13): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+5 more)
### Community 68 - "20260526145407_init/migration.sql"
Cohesion: 0.27
@@ -621,8 +633,8 @@ Cohesion: 0.08
Nodes (23): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, jsx, lib, module, moduleDetection, moduleResolution (+15 more)
### Community 71 - "getPageMetadata"
-Cohesion: 0.11
-Nodes (9): generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata() (+1 more)
+Cohesion: 0.08
+Nodes (18): generateMetadata(), CatalogClient(), generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata(), getHomeData(), Home() (+10 more)
### Community 72 - "Operational Rules & Boundaries"
Cohesion: 0.11
@@ -672,10 +684,6 @@ Nodes (21): dependencies, axios, lucide-react, react, react-dom, react-hot-toast
Cohesion: 0.12
Nodes (16): 1. Active Secret Scanning (All Modified Files), 2. Docker Container Verification (if Dockerfile exists), 3. CI/CD Basic Check (if `.github/workflows/` exists), 4. Failure Routing Protocol, 5. Forbidden Actions, ENFORCE MODE — Normal Operation, Expected JSON Output Schema, Operational Rules & Boundaries (+8 more)
-### Community 85 - "PetsController"
-Cohesion: 0.15
-Nodes (11): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+3 more)
-
### Community 86 - "zibal.service.ts"
Cohesion: 0.16
Nodes (9): GatewayHealthResult, IPaymentGateway, PaymentInquiryResult, PaymentRequestOptions, PaymentRequestResult, PaymentVerifyResult, ZibalInquiryResponse, ZibalRequestResponse (+1 more)
@@ -686,47 +694,43 @@ Nodes (17): dependencies, axios, lucide-react, motion, next, react, react-dom, s
### Community 88 - "useSettingsStore"
Cohesion: 0.11
-Nodes (21): AuthModal, B2BPortal, CartDrawer, ClientLayout(), BrandLogo(), BrandLogoProps, EnamadBadge(), FAQItem (+13 more)
+Nodes (24): AuthModal, B2BPortal, CartDrawer, ClientLayout(), LoginModal, AuthModal(), AuthModalProps, extractOtpFromText() (+16 more)
### Community 89 - "seed-products.ts"
Cohesion: 0.17
Nodes (12): prisma, main(), prisma, determineSuitableFor(), findOrCreateCategory(), getProductImageUrl(), main(), parseSize() (+4 more)
### Community 90 - "HomeClient.tsx"
-Cohesion: 0.14
-Nodes (17): HomeClient(), HomeClientProps, getHomeData(), Home(), BannerPlacement(), BannerPlacementProps, Hero(), StatCounter() (+9 more)
+Cohesion: 0.10
+Nodes (20): HomeClient(), HomeClientProps, CATEGORY_MAP, ICON_MAP, BannerPlacement(), BannerPlacementProps, BlogPreviewSection(), FAQSection() (+12 more)
### Community 91 - "Reconciled Audit Roles & Assignments"
Cohesion: 0.12
Nodes (15): 10. Documentation Engineer, 1. Lead Architect / Orchestrator, 2. React / Vite Storefront Auditor, 3. NestJS Backend Auditor, 4. Admin Features Auditor, 5. Database & Data Integrity Auditor, 6. Security Auditor, 7. TypeScript & Code Quality Auditor (+7 more)
### Community 92 - "OrdersService"
-Cohesion: 0.06
-Nodes (35): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+27 more)
-
-### Community 93 - "ProductPage.tsx"
-Cohesion: 0.13
-Nodes (15): PLAYBACK_RATES, PodcastInlinePlayer(), PodcastInlinePlayerProps, CalculatorState, ICON_MAP, ProductPage(), ProductReviews, useCalculatorStore (+7 more)
+Cohesion: 0.07
+Nodes (29): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+21 more)
### Community 94 - "Phase 3.1 — Human Review Preparation and Master Backlog Critique"
Cohesion: 0.13
Nodes (14): 10. Dependency & Wave Adjustments, 11. Acceptance Criteria Refinements, 12. Business and Product Decision Classification, 13. Final Recommended Backlog Summary, 1. Executive Assessment, 2. Findings That Require No Change, 3. Findings Requiring Task Refinements, 4. Tasks Requiring Splitting (+6 more)
### Community 95 - "blog/[slug]/page.tsx"
-Cohesion: 0.24
-Nodes (13): BlogPostPage(), generateMetadata(), getBlog(), revalidate, safeIso(), safeLocalDate(), generateMetadata(), revalidate (+5 more)
+Cohesion: 0.23
+Nodes (12): BlogPostPage(), generateMetadata(), getBlog(), revalidate, safeIso(), safeLocalDate(), generateMetadata(), revalidate (+4 more)
### Community 96 - "compilerOptions"
Cohesion: 0.06
Nodes (32): compilerOptions, allowJs, esModuleInterop, incremental, isolatedModules, jsx, lib, module (+24 more)
### Community 98 - "scripts"
-Cohesion: 0.14
-Nodes (14): scripts, build, build:nest, docs:generate, lint, start, start:debug, start:dev (+6 more)
+Cohesion: 0.13
+Nodes (15): scripts, build, build:nest, docs:generate, lint, seo:backfill, start, start:debug (+7 more)
### Community 99 - "BlogsController"
-Cohesion: 0.08
-Nodes (25): BlogsController, ApiBearerAuth, ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+17 more)
+Cohesion: 0.06
+Nodes (34): BlogsController, ApiBearerAuth, ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+26 more)
### Community 100 - "Deep Audit Summary Report"
Cohesion: 0.14
@@ -752,13 +756,13 @@ Nodes (12): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDig
Cohesion: 0.17
Nodes (11): 1. Detect Test Runner from Tech Stack, 2. Execution Output Capture (Mandatory), 3. Acceptance Criteria Verification, 4. Failure Routing Protocol, 5. Success Routing Protocol, 6. Forbidden Actions, Expected JSON Output Schema, Operational Rules & Boundaries (+3 more)
-### Community 106 - "auth.controller.ts"
-Cohesion: 0.16
-Nodes (11): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+3 more)
+### Community 106 - "Reports.tsx"
+Cohesion: 0.20
+Nodes (7): BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps, ReportData, TopCouponItem, Reports
### Community 108 - "PrismaService"
Cohesion: 0.06
-Nodes (25): B2BModule, Module, B2BWholesaleOrderItem, BannersModule, Module, RevalidationService, Injectable, MeliPayamakPattern (+17 more)
+Nodes (26): PetQuery, WikiQuery, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions, SmsConfig, CreateContactSubmissionDto, UpdateContactInfoItemDto (+18 more)
### Community 109 - "1. Summary of Integrity Repairs Performed"
Cohesion: 0.17
@@ -777,17 +781,13 @@ Cohesion: 0.18
Nodes (10): 1. Pre-Deployment Checklist, 2. Build Verification, 3. Deployment Strategy (Based on Target), 4. Post-Deployment Health Check, 5. Forbidden Actions, Expected JSON Output Schema, Operational Rules & Boundaries, Required Output Artifacts (What files to write/update) (+2 more)
### Community 113 - "reviews.controller.ts"
-Cohesion: 0.24
-Nodes (7): ApiProperty, IsIn, IsOptional, IsString, UpdateReviewDto, ReviewsModule, Module
+Cohesion: 0.15
+Nodes (13): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+5 more)
### Community 114 - "AppService"
Cohesion: 0.29
Nodes (5): AppController, Controller, Get, AppService, Injectable
-### Community 115 - "seo.ts"
-Cohesion: 0.18
-Nodes (6): generateMetadata(), generateMetadata(), VideosPage(), DEFAULT_SEO_CONFIG, PageMetadataOptions, SeoConfig
-
### Community 116 - "Vazirmatn Changelog"
Cohesion: 0.18
Nodes (10): 32.0.0, 32.1, 32.101, 32.102, 33.000, 33.001, 33.002, 33.003 (+2 more)
@@ -812,10 +812,6 @@ Nodes (9): compilerOptions, esModuleInterop, module, moduleResolution, skipLibCh
Cohesion: 0.20
Nodes (9): Compile and run the project, Deployment, Description, License, Project setup, Resources, Run tests, Stay in touch (+1 more)
-### Community 122 - "auth.module.ts"
-Cohesion: 0.22
-Nodes (8): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable
-
### Community 124 - "Repository Map"
Cohesion: 0.20
Nodes (9): 1. Active Customer Storefront: React 19 + Vite Application, 2. Active Backend Service: NestJS Application, 3. Excluded Placeholder / Non-Auditable Directories, Active Applications & Non-Auditable Scopes, Documentation Governance, Important Configuration & Infrastructure Files, Mandatory Global Audit Exclusions, Repository Map (+1 more)
@@ -832,13 +828,13 @@ Nodes (9): name, private, scripts, build, dev, lint, preview, type (+1 more)
Cohesion: 0.20
Nodes (9): Arch Linux, Contributors, Install, Known problems for variable version, License, Sahel-Font, To Do (variable), طریقه استفاده از نسخه متغیر variable (+1 more)
-### Community 128 - "AdminController"
-Cohesion: 0.15
-Nodes (7): AdminController, ApiBearerAuth, ApiTags, Controller, Delete, Param, UseGuards
+### Community 128 - "AdminService"
+Cohesion: 0.09
+Nodes (13): AdminController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Param (+5 more)
-### Community 129 - "videos.controller.ts"
-Cohesion: 0.20
-Nodes (8): GetVideosQueryDto, ApiPropertyOptional, IsBoolean, IsOptional, Transform, Module, VideosModule, VideoQuery
+### Community 129 - "RouteErrorBoundary"
+Cohesion: 0.22
+Nodes (3): Props, RouteErrorBoundary, State
### Community 130 - "Sahel-Font"
Cohesion: 0.20
@@ -856,9 +852,9 @@ Nodes (8): cmd_next_task(), cmd_progress(), cmd_reset(), cmd_status(), cmd_unblo
Cohesion: 0.22
Nodes (8): author, description, license, name, prisma, seed, private, version
-### Community 134 - "CreateReviewDto"
-Cohesion: 0.17
-Nodes (11): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, Body (+3 more)
+### Community 134 - "blog/page.tsx"
+Cohesion: 0.38
+Nodes (6): Blog(), generateMetadata(), getBlogs(), getCategories(), revalidate, BlogPage()
### Community 135 - "graphify reference: extra exports and benchmark"
Cohesion: 0.22
@@ -876,9 +872,9 @@ Nodes (8): 1. `TASK-AUTH-001`, 2. `TASK-FIN-001`, 3. `DECISION-002`, 4. `TASK-VE
Cohesion: 0.22
Nodes (8): Arch Linux, bower, Install, npm, Shabnam Font, yarn, طریقه استفاده در صفحات وب:, نمونه متن Sample:
-### Community 139 - "RouteErrorBoundary"
-Cohesion: 0.22
-Nodes (3): Props, RouteErrorBoundary, State
+### Community 139 - "layout.tsx"
+Cohesion: 0.43
+Nodes (5): generateMetadata(), RootLayout(), lalezar, vazirmatn, generateOrganizationSchema()
### Community 140 - "ErrorBoundary"
Cohesion: 0.22
@@ -896,17 +892,21 @@ Nodes (7): backend, distMainPath, fs, http, path, { spawn, execSync }, waitForBa
Cohesion: 0.25
Nodes (6): app_module_1, core_1, fs, path, swagger_1, yaml
-### Community 145 - "ProductDto"
-Cohesion: 0.20
-Nodes (7): ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber, IsOptional, IsString
+### Community 145 - "admin.service.ts"
+Cohesion: 0.13
+Nodes (20): CouponInput, CouponTargetInput, PaginationQuery, ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber (+12 more)
### Community 146 - "System Discovery"
Cohesion: 0.25
Nodes (7): Active Core Applications, Current Architecture, Evidence-Based Status Matrix, Excluded / Non-Auditable Artifacts, Major Business Domains Discovered, System Discovery, Technical Architecture Summary
-### Community 148 - "Body"
-Cohesion: 0.21
-Nodes (3): Body, Post, CouponInput
+### Community 147 - "RevalidationService"
+Cohesion: 0.17
+Nodes (5): RevalidationModule, Global, Module, RevalidationService, Injectable
+
+### Community 148 - "wiki/[slug]/page.tsx"
+Cohesion: 0.60
+Nodes (5): generateMetadata(), getRelatedProducts(), getWikiTerm(), WikiTermPage(), generateMedicalWebPageSchema()
### Community 149 - "SmsSettingsPage.tsx"
Cohesion: 0.29
@@ -916,9 +916,9 @@ Nodes (7): PatternItem, SmsConfigState, SmsLogItem, SmsLogStats, SmsSettingsPage
Cohesion: 0.29
Nodes (6): 1. Executive Vision, 2. Target Audience, 3. Functional Requirements, 4. Non-Functional Requirements (Performance, Security), 5. Epic / Feature Breakdown, Product Requirement Document (PRD)
-### Community 151 - "AuthService"
-Cohesion: 0.21
-Nodes (3): AuthService, Injectable, normalizeMobile()
+### Community 151 - "auth.service.ts"
+Cohesion: 0.08
+Nodes (13): AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, SendOtpDto, ApiProperty, IsNotEmpty (+5 more)
### Community 153 - "exclude"
Cohesion: 0.22
@@ -928,9 +928,9 @@ Nodes (8): exclude, extends, dist, node_modules, prisma, **/*spec.ts, test, ./ts
Cohesion: 0.29
Nodes (6): Attempted Command Execution Log, Backend `backend/package.json` Scripts, Baseline Command Plan & Reconciled Command History, Package Scripts Safety Analysis, Permitted Safe Checks for Phase 2, Root `package.json` Scripts
-### Community 155 - "Blogs.tsx"
-Cohesion: 0.15
-Nodes (11): ActiveStates, PRESET_BG_COLORS, PRESET_COLORS, RichTextEditor(), RichTextEditorProps, AuthorUser, BlogCategory, BlogPost (+3 more)
+### Community 155 - "seo-backfill.ts"
+Cohesion: 0.67
+Nodes (3): prisma, runSeoBackfill(), stripHtml()
### Community 159 - "with-vpn.sh"
Cohesion: 0.62
@@ -1000,13 +1000,9 @@ Nodes (4): evidenceList, ledger, mandatoryMap, mandatoryScope
Cohesion: 0.40
Nodes (4): activeFiles, errors, validationOutput, warnings
-### Community 177 - "blog/page.tsx"
-Cohesion: 0.38
-Nodes (6): Blog(), generateMetadata(), getBlogs(), getCategories(), revalidate, BlogPage()
-
-### Community 179 - "BlogsService"
-Cohesion: 0.15
-Nodes (5): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable
+### Community 179 - "PaginationDto"
+Cohesion: 0.05
+Nodes (29): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional (+21 more)
### Community 180 - "API Contract Specification"
Cohesion: 0.50
@@ -1025,13 +1021,9 @@ Cohesion: 0.50
Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO & Content Strategy Review (12_seo_content)
### Community 184 - "MetricsController"
-Cohesion: 0.18
+Cohesion: 0.29
Nodes (5): ApiExcludeController, MetricsController, Controller, Get, Res
-### Community 185 - "WikiController"
-Cohesion: 0.13
-Nodes (13): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+5 more)
-
### Community 191 - "graphify reference: add a URL and watch a folder"
Cohesion: 0.50
Nodes (3): For /graphify add, For --watch, graphify reference: add a URL and watch a folder
@@ -1056,13 +1048,9 @@ Nodes (3): Expanding the ESLint configuration, React Compiler, React + TypeScrip
Cohesion: 0.50
Nodes (3): Select, SelectOption, SelectProps
-### Community 198 - "users.service.ts"
-Cohesion: 0.31
-Nodes (3): Module, UsersModule, UserAddressInput
-
-### Community 199 - "auth.service.ts"
-Cohesion: 0.13
-Nodes (14): AdminLoginInput, LoginInput, RegisterInput, SendOtpDto, ApiProperty, IsNotEmpty, IsString, Matches (+6 more)
+### Community 199 - "auth.controller.ts"
+Cohesion: 0.08
+Nodes (25): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+17 more)
### Community 200 - "application/README.md"
Cohesion: 0.50
@@ -1080,49 +1068,37 @@ Nodes (3): ADR-AUTH-001: Admin Panel Authentication Architecture & Token Managem
Cohesion: 0.67
Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font
-### Community 239 - "RegisterDto"
-Cohesion: 0.22
-Nodes (8): RegisterDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsOptional, IsString, MinLength
-
-### Community 264 - "InitiatePaymentDto"
-Cohesion: 0.43
-Nodes (7): InitiatePaymentDto, InitiateWalletTopupDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString
-
-### Community 298 - "ZibalCallbackQueryDto"
-Cohesion: 0.40
-Nodes (4): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto
+### Community 298 - ".initiateOrderPayment"
+Cohesion: 0.21
+Nodes (6): ApiBadRequestResponse, ApiOkResponse, Req, Res, Headers, Ip
### Community 313 - "MenuManager.tsx"
Cohesion: 0.33
Nodes (4): MENU_TABS, MenuItem, MenuType, MenuManager
-### Community 314 - "layout.tsx"
-Cohesion: 0.47
-Nodes (3): generateMetadata(), lalezar, vazirmatn
-
### Community 317 - "revalidate/route.ts"
Cohesion: 0.83
Nodes (3): GET(), handleRevalidate(), POST()
## Knowledge Gaps
-- **1299 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1294 more)
+- **1307 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1302 more)
These have ≤1 connection - possible missing edges or undocumented components.
-- **107 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
+- **118 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
-- **Why does `ApiResponse` connect `BlogsController` to `AuthController`, `PetsController`, `src/services/api.ts`, `ProductsService`, `UsersService`, `WikiController`, `OrdersService`?**
- _High betweenness centrality (0.070) - this node is a cross-community bridge._
-- **Why does `Roles()` connect `Roles` to `SmsService`, `CmsController`, `tickets.controller.ts`, `ReviewsController`, `JwtAuthGuard`, `ProductsService`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `FaqService`, `SslController`, `BannersService`, `TestimonialsService`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `ContactService`, `AdminTransactionFilterDto`, `reviews.controller.ts`?**
- _High betweenness centrality (0.063) - this node is a cross-community bridge._
-- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `videos.controller.ts`, `PaginationDto`, `CmsController`, `tickets.controller.ts`, `pets/pets.controller.ts`, `ReportsController`, `users.service.ts`, `auth.controller.ts`, `OrdersService`, `DoctorQueryDto`, `reviews.controller.ts`, `BlogsService`, `ProductsService`, `admin.controller.ts`?**
- _High betweenness centrality (0.033) - this node is a cross-community bridge._
+- **Why does `ApiResponse` connect `BlogsController` to `AuthController`, `PetsController`, `src/services/api.ts`, `ProductsController`, `UsersService`, `OrdersService`?**
+ _High betweenness centrality (0.069) - this node is a cross-community bridge._
+- **Why does `Roles()` connect `Roles` to `SmsService`, `CmsController`, `tickets.controller.ts`, `ReviewsService`, `JwtAuthGuard`, `ProductsController`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `FaqService`, `SslController`, `BannersService`, `TestimonialsController`, `IngredientsService`, `PrescriptionsController`, `SmartAdvisorController`, `ContactService`, `payment.controller.ts`, `ProductsService`, `reviews.controller.ts`?**
+ _High betweenness centrality (0.059) - this node is a cross-community bridge._
+- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `B2BService`, `PetsController`, `FaqService`, `CmsController`, `tickets.controller.ts`, `CategoriesController`, `admin.module.ts`, `auth.controller.ts`, `pets/pets.controller.ts`, `DoctorQueryDto`, `admin.service.ts`, `reviews.controller.ts`, `PaginationDto`, `UsersService`, `payment.controller.ts`, `ProductsService`?**
+ _High betweenness centrality (0.030) - this node is a cross-community bridge._
- **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?**
- _1299 weakly-connected nodes found - possible documentation gaps or missing edges._
+ _1307 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `app.module.ts` be split into smaller, more focused modules?**
- _Cohesion score 0.05555555555555555 - nodes in this community are weakly interconnected._
+ _Cohesion score 0.07215686274509804 - nodes in this community are weakly interconnected._
- **Should `SmsService` be split into smaller, more focused modules?**
- _Cohesion score 0.055964653902798235 - nodes in this community are weakly interconnected._
+ _Cohesion score 0.055040197897340756 - nodes in this community are weakly interconnected._
- **Should `ProductService` be split into smaller, more focused modules?**
- _Cohesion score 0.06041986687147977 - nodes in this community are weakly interconnected._
\ No newline at end of file
+ _Cohesion score 0.060814383923849816 - nodes in this community are weakly interconnected._
\ No newline at end of file
diff --git a/graphify-out/2026-08-25/graph.json b/graphify-out/2026-08-25/graph.json
index 406783b..f29c020 100644
--- a/graphify-out/2026-08-25/graph.json
+++ b/graphify-out/2026-08-25/graph.json
@@ -17,17 +17,17 @@
"norm_label": "paymentcontroller"
},
{
- "label": "AdminModule",
+ "label": "BannersModule",
"file_type": "code",
- "source_file": "backend/src/admin/admin.module.ts",
- "source_location": "L44",
+ "source_file": "backend/src/banners/banners.module.ts",
+ "source_location": "L12",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_module_adminmodule",
+ "id": "backend_src_banners_banners_module_bannersmodule",
"community": 1,
"community_name": "app.module.ts",
- "norm_label": "adminmodule"
+ "norm_label": "bannersmodule"
},
{
"label": "CmsModule",
@@ -81,19 +81,6 @@
"community_name": "app.module.ts",
"norm_label": "doctorsmodule"
},
- {
- "label": "FaqModule",
- "file_type": "code",
- "source_file": "backend/src/faq/faq.module.ts",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_faq_faq_module_faqmodule",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "faqmodule"
- },
{
"label": "IngredientsModule",
"file_type": "code",
@@ -133,58 +120,6 @@
"community_name": "app.module.ts",
"norm_label": "paymentmodule"
},
- {
- "label": "EBankCheckoutListFilter",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal-ebank.service.ts",
- "source_location": "L16",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_ebank_service_ebankcheckoutlistfilter",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "ebankcheckoutlistfilter"
- },
- {
- "label": "EBankCheckoutOptions",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal-ebank.service.ts",
- "source_location": "L4",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_ebank_service_ebankcheckoutoptions",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "ebankcheckoutoptions"
- },
- {
- "label": "EBankIdentifiedPaymentFilter",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal-ebank.service.ts",
- "source_location": "L34",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_ebank_service_ebankidentifiedpaymentfilter",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "ebankidentifiedpaymentfilter"
- },
- {
- "label": "EBankStatementFilter",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal-ebank.service.ts",
- "source_location": "L25",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_ebank_service_ebankstatementfilter",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "ebankstatementfilter"
- },
{
"label": "PrescriptionsModule",
"file_type": "code",
@@ -198,6 +133,45 @@
"community_name": "app.module.ts",
"norm_label": "prescriptionsmodule"
},
+ {
+ "label": "PrismaModule",
+ "file_type": "code",
+ "source_file": "backend/src/prisma/prisma.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_prisma_prisma_module_prismamodule",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "prismamodule"
+ },
+ {
+ "label": "ReviewsModule",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.module.ts",
+ "source_location": "L12",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_module_reviewsmodule",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "reviewsmodule"
+ },
+ {
+ "label": "SettingsModule",
+ "file_type": "code",
+ "source_file": "backend/src/settings/settings.module.ts",
+ "source_location": "L12",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_settings_settings_module_settingsmodule",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "settingsmodule"
+ },
{
"label": "SmartAdvisorModule",
"file_type": "code",
@@ -224,6 +198,19 @@
"community_name": "app.module.ts",
"norm_label": "testimonialsmodule"
},
+ {
+ "label": "VideosModule",
+ "file_type": "code",
+ "source_file": "backend/src/videos/videos.module.ts",
+ "source_location": "L10",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_videos_videos_module_videosmodule",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "videosmodule"
+ },
{
"label": "WholesaleModule",
"file_type": "code",
@@ -247,9 +234,22 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_reviewscontroller",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "reviewscontroller"
},
+ {
+ "label": "ReviewsService",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.service.ts",
+ "source_location": "L13",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_reviewsservice",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": "reviewsservice"
+ },
{
"label": "PriceInputProps",
"file_type": "code",
@@ -329,82 +329,95 @@
"norm_label": "financialsettings"
},
{
- "label": "AdminLoginDto",
+ "label": "BestSellerItem",
"file_type": "code",
- "source_file": "backend/src/auth/dto/admin-login.dto.ts",
- "source_location": "L4",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L39",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto_adminlogindto",
+ "id": "frontend_admin_panel_src_pages_reports_bestselleritem",
"community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "adminlogindto"
+ "community_name": "Reports.tsx",
+ "norm_label": "bestselleritem"
},
{
- "label": "LoginDto",
+ "label": "CategoryDistItem",
"file_type": "code",
- "source_file": "backend/src/auth/dto/login.dto.ts",
- "source_location": "L4",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L34",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_auth_dto_login_dto_logindto",
+ "id": "frontend_admin_panel_src_pages_reports_categorydistitem",
"community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "logindto"
+ "community_name": "Reports.tsx",
+ "norm_label": "categorydistitem"
},
{
- "label": "B2BModule",
+ "label": "CustomTooltipProps",
"file_type": "code",
- "source_file": "backend/src/b2b/b2b.module.ts",
- "source_location": "L12",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L16",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_b2b_b2b_module_b2bmodule",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "b2bmodule"
+ "id": "frontend_admin_panel_src_pages_reports_customtooltipprops",
+ "community": 106,
+ "community_name": "Reports.tsx",
+ "norm_label": "customtooltipprops"
},
{
- "label": "B2BWholesaleOrderItem",
+ "label": "ReportData",
"file_type": "code",
- "source_file": "backend/src/b2b/b2b.service.ts",
- "source_location": "L8",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L50",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_b2b_b2b_service_b2bwholesaleorderitem",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "b2bwholesaleorderitem"
+ "id": "frontend_admin_panel_src_pages_reports_reportdata",
+ "community": 106,
+ "community_name": "Reports.tsx",
+ "norm_label": "reportdata"
},
{
- "label": "BannersModule",
+ "label": "TopCouponItem",
"file_type": "code",
- "source_file": "backend/src/banners/banners.module.ts",
- "source_location": "L12",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L44",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_banners_banners_module_bannersmodule",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "bannersmodule"
+ "id": "frontend_admin_panel_src_pages_reports_topcouponitem",
+ "community": 106,
+ "community_name": "Reports.tsx",
+ "norm_label": "topcouponitem"
},
{
- "label": "RevalidationService",
+ "label": "PetQuery",
"file_type": "code",
- "source_file": "backend/src/common/revalidation/revalidation.service.ts",
- "source_location": "L4",
+ "source_file": "backend/src/admin/pets.service.ts",
+ "source_location": "L5",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_service_revalidationservice",
+ "id": "backend_src_admin_pets_service_petquery",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "revalidationservice"
+ "norm_label": "petquery"
+ },
+ {
+ "label": "WikiQuery",
+ "file_type": "code",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L5",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_service_wikiquery",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "wikiquery"
},
{
"label": "MeliPayamakPattern",
@@ -458,19 +471,6 @@
"community_name": "PrismaService",
"norm_label": "smsconfig"
},
- {
- "label": "SmsLogQuery",
- "file_type": "code",
- "source_file": "backend/src/common/services/sms.service.ts",
- "source_location": "L34",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_common_services_sms_service_smslogquery",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "smslogquery"
- },
{
"label": "CreateContactSubmissionDto",
"file_type": "code",
@@ -524,17 +524,69 @@
"norm_label": "clientmetadata"
},
{
- "label": "PrismaModule",
+ "label": "EBankCheckoutListFilter",
"file_type": "code",
- "source_file": "backend/src/prisma/prisma.module.ts",
- "source_location": "L9",
+ "source_file": "backend/src/payment/zibal-ebank.service.ts",
+ "source_location": "L16",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_prisma_prisma_module_prismamodule",
+ "id": "backend_src_payment_zibal_ebank_service_ebankcheckoutlistfilter",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "prismamodule"
+ "norm_label": "ebankcheckoutlistfilter"
+ },
+ {
+ "label": "EBankCheckoutOptions",
+ "file_type": "code",
+ "source_file": "backend/src/payment/zibal-ebank.service.ts",
+ "source_location": "L4",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_zibal_ebank_service_ebankcheckoutoptions",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "ebankcheckoutoptions"
+ },
+ {
+ "label": "EBankIdentifiedPaymentFilter",
+ "file_type": "code",
+ "source_file": "backend/src/payment/zibal-ebank.service.ts",
+ "source_location": "L34",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_zibal_ebank_service_ebankidentifiedpaymentfilter",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "ebankidentifiedpaymentfilter"
+ },
+ {
+ "label": "EBankStatementFilter",
+ "file_type": "code",
+ "source_file": "backend/src/payment/zibal-ebank.service.ts",
+ "source_location": "L25",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_zibal_ebank_service_ebankstatementfilter",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "ebankstatementfilter"
+ },
+ {
+ "label": "PrescriptionsService",
+ "file_type": "code",
+ "source_file": "backend/src/prescriptions/prescriptions.service.ts",
+ "source_location": "L11",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "prescriptionsservice"
},
{
"label": "PrismaService",
@@ -549,19 +601,6 @@
"community_name": "PrismaService",
"norm_label": "prismaservice"
},
- {
- "label": "SettingsModule",
- "file_type": "code",
- "source_file": "backend/src/settings/settings.module.ts",
- "source_location": "L12",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_settings_settings_module_settingsmodule",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "settingsmodule"
- },
{
"label": "ScientificTermData",
"file_type": "code",
@@ -575,6 +614,45 @@
"community_name": "PrismaService",
"norm_label": "scientifictermdata"
},
+ {
+ "label": "SmartAdvisorService",
+ "file_type": "code",
+ "source_file": "backend/src/smart-advisor/smart-advisor.service.ts",
+ "source_location": "L6",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "smartadvisorservice"
+ },
+ {
+ "label": "TestimonialsService",
+ "file_type": "code",
+ "source_file": "backend/src/testimonials/testimonials.service.ts",
+ "source_location": "L6",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_testimonials_testimonials_service_testimonialsservice",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "testimonialsservice"
+ },
+ {
+ "label": "VideoQuery",
+ "file_type": "code",
+ "source_file": "backend/src/videos/videos.service.ts",
+ "source_location": "L6",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_videos_videos_service_videoquery",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "videoquery"
+ },
{
"label": "ConfirmModalProps",
"file_type": "code",
@@ -796,6 +874,19 @@
"community_name": "Spinner.tsx",
"norm_label": "wikiterm"
},
+ {
+ "label": "CreateReviewDto",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/dto/create-review.dto.ts",
+ "source_location": "L11",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_createreviewdto",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "createreviewdto"
+ },
{
"label": "UpdateReviewDto",
"file_type": "code",
@@ -809,19 +900,6 @@
"community_name": "reviews.controller.ts",
"norm_label": "updatereviewdto"
},
- {
- "label": "ReviewsModule",
- "file_type": "code",
- "source_file": "backend/src/reviews/reviews.module.ts",
- "source_location": "L12",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_module_reviewsmodule",
- "community": 113,
- "community_name": "reviews.controller.ts",
- "norm_label": "reviewsmodule"
- },
{
"label": "AppController",
"file_type": "code",
@@ -848,32 +926,6 @@
"community_name": "AppService",
"norm_label": "appservice"
},
- {
- "label": "PageMetadataOptions",
- "file_type": "code",
- "source_file": "frontend/application/lib/seo.ts",
- "source_location": "L160",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_seo_pagemetadataoptions",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "pagemetadataoptions"
- },
- {
- "label": "SeoConfig",
- "file_type": "code",
- "source_file": "frontend/application/lib/seo.ts",
- "source_location": "L3",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_seo_seoconfig",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "seoconfig"
- },
{
"label": "SkeletonProps",
"file_type": "code",
@@ -887,19 +939,6 @@
"community_name": "PetProfile.tsx",
"norm_label": "skeletonprops"
},
- {
- "label": "SmartAdvisorProps",
- "file_type": "code",
- "source_file": "frontend/application/components/SmartAdvisor.tsx",
- "source_location": "L28",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_smartadvisor_smartadvisorprops",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "smartadvisorprops"
- },
{
"label": "HealthLog",
"file_type": "code",
@@ -966,43 +1005,17 @@
"norm_label": "reminder"
},
{
- "label": "AuthModule",
+ "label": "AuthService",
"file_type": "code",
- "source_file": "backend/src/auth/auth.module.ts",
- "source_location": "L25",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L38",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_auth_auth_module_authmodule",
+ "id": "frontend_application_lib_services_authservice_authservice",
"community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "authmodule"
- },
- {
- "label": "JwtPayload",
- "file_type": "code",
- "source_file": "backend/src/auth/jwt.strategy.ts",
- "source_location": "L7",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_auth_jwt_strategy_jwtpayload",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "jwtpayload"
- },
- {
- "label": "JwtStrategy",
- "file_type": "code",
- "source_file": "backend/src/auth/jwt.strategy.ts",
- "source_location": "L15",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_auth_jwt_strategy_jwtstrategy",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "jwtstrategy"
+ "community_name": "AuthService",
+ "norm_label": "authservice"
},
{
"label": "BlogsService",
@@ -1027,47 +1040,60 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "admincontroller"
},
{
- "label": "GetVideosQueryDto",
+ "label": "AdminService",
"file_type": "code",
- "source_file": "backend/src/videos/dto/get-videos-query.dto.ts",
- "source_location": "L6",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L51",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_videos_dto_get_videos_query_dto_getvideosquerydto",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "getvideosquerydto"
+ "id": "backend_src_admin_admin_service_adminservice",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": "adminservice"
},
{
- "label": "VideosModule",
+ "label": "Props",
"file_type": "code",
- "source_file": "backend/src/videos/videos.module.ts",
- "source_location": "L10",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L4",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_videos_videos_module_videosmodule",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_props",
"community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "videosmodule"
+ "community_name": "RouteErrorBoundary",
+ "norm_label": "props"
},
{
- "label": "VideoQuery",
+ "label": "RouteErrorBoundary",
"file_type": "code",
- "source_file": "backend/src/videos/videos.service.ts",
- "source_location": "L6",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L15",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_videos_videos_service_videoquery",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary",
"community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "videoquery"
+ "community_name": "RouteErrorBoundary",
+ "norm_label": "routeerrorboundary"
+ },
+ {
+ "label": "State",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_state",
+ "community": 129,
+ "community_name": "RouteErrorBoundary",
+ "norm_label": "state"
},
{
"label": "AppModule",
@@ -1148,56 +1174,17 @@
"norm_label": "errordetailfield"
},
{
- "label": "CreateReviewDto",
+ "label": "BlogPost",
"file_type": "code",
- "source_file": "backend/src/reviews/dto/create-review.dto.ts",
+ "source_file": "frontend/application/components/BlogPreviewSection.tsx",
"source_location": "L11",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_createreviewdto",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "createreviewdto"
- },
- {
- "label": "Props",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L4",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_props",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": "props"
- },
- {
- "label": "RouteErrorBoundary",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L15",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": "routeerrorboundary"
- },
- {
- "label": "State",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_state",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": "state"
+ "id": "frontend_application_components_blogpreviewsection_blogpost",
+ "community": 14,
+ "community_name": "lib/services/api.ts",
+ "norm_label": "blogpost"
},
{
"label": "ContactInfoItem",
@@ -1213,30 +1200,30 @@
"norm_label": "contactinfoitem"
},
{
- "label": "LoginModalProps",
+ "label": "FAQItem",
"file_type": "code",
- "source_file": "frontend/application/components/LoginModal.tsx",
- "source_location": "L10",
+ "source_file": "frontend/application/components/FAQSection.tsx",
+ "source_location": "L8",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_components_loginmodal_loginmodalprops",
+ "id": "frontend_application_components_faqsection_faqitem",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "loginmodalprops"
+ "norm_label": "faqitem"
},
{
- "label": "PrescriptionUploadModalProps",
+ "label": "Testimonial",
"file_type": "code",
- "source_file": "frontend/application/components/PrescriptionUploadModal.tsx",
+ "source_file": "frontend/application/components/TestimonialsSection.tsx",
"source_location": "L9",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_components_prescriptionuploadmodal_prescriptionuploadmodalprops",
+ "id": "frontend_application_components_testimonialssection_testimonial",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "prescriptionuploadmodalprops"
+ "norm_label": "testimonial"
},
{
"label": "ApiErrorPayload",
@@ -1330,82 +1317,69 @@
"norm_label": "orderitem"
},
{
- "label": "OrderService",
+ "label": "CreateTicketPayload",
"file_type": "code",
- "source_file": "frontend/application/lib/services/orderService.ts",
- "source_location": "L31",
+ "source_file": "frontend/application/lib/services/ticketService.ts",
+ "source_location": "L34",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_lib_services_orderservice_orderservice",
+ "id": "frontend_application_lib_services_ticketservice_createticketpayload",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "orderservice"
+ "norm_label": "createticketpayload"
},
{
- "label": "Order",
+ "label": "Ticket",
"file_type": "code",
- "source_file": "frontend/application/lib/store/cartStore.ts",
- "source_location": "L18",
+ "source_file": "frontend/application/lib/services/ticketService.ts",
+ "source_location": "L14",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_lib_store_cartstore_order",
+ "id": "frontend_application_lib_services_ticketservice_ticket",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "order"
+ "norm_label": "ticket"
},
{
- "label": "Transaction",
+ "label": "TicketMessage",
"file_type": "code",
- "source_file": "frontend/application/lib/store/userStore.ts",
- "source_location": "L25",
+ "source_file": "frontend/application/lib/services/ticketService.ts",
+ "source_location": "L3",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_lib_store_userstore_transaction",
+ "id": "frontend_application_lib_services_ticketservice_ticketmessage",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "transaction"
+ "norm_label": "ticketmessage"
},
{
- "label": "UserProfile",
+ "label": "ScientificTerm",
"file_type": "code",
- "source_file": "frontend/application/lib/store/userStore.ts",
- "source_location": "L33",
+ "source_file": "frontend/application/lib/store/settingsStore.ts",
+ "source_location": "L5",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_lib_store_userstore_userprofile",
+ "id": "frontend_application_lib_store_settingsstore_scientificterm",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "userprofile"
+ "norm_label": "scientificterm"
},
{
- "label": "UserRole",
+ "label": "SettingsStore",
"file_type": "code",
- "source_file": "frontend/application/lib/store/userStore.ts",
- "source_location": "L11",
+ "source_file": "frontend/application/lib/store/settingsStore.ts",
+ "source_location": "L12",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_lib_store_userstore_userrole",
+ "id": "frontend_application_lib_store_settingsstore_settingsstore",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "userrole"
- },
- {
- "label": "UserStore",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/userStore.ts",
- "source_location": "L45",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_store_userstore_userstore",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "userstore"
+ "norm_label": "settingsstore"
},
{
"label": "ErrorBoundary",
@@ -1446,6 +1420,45 @@
"community_name": "ErrorBoundary",
"norm_label": "state"
},
+ {
+ "label": "CouponInput",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L38",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_couponinput",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "couponinput"
+ },
+ {
+ "label": "CouponTargetInput",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L31",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_coupontargetinput",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "coupontargetinput"
+ },
+ {
+ "label": "PaginationQuery",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L17",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_paginationquery",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "paginationquery"
+ },
{
"label": "ProductDto",
"file_type": "code",
@@ -1456,34 +1469,60 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_productdto",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "productdto"
},
{
- "label": "ReviewsService",
+ "label": "CreateUserDto",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.service.ts",
- "source_location": "L13",
+ "source_file": "backend/src/admin/dto/user.dto.ts",
+ "source_location": "L11",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_reviews_reviews_service_reviewsservice",
- "community": 147,
- "community_name": "ReviewsService",
- "norm_label": "reviewsservice"
+ "id": "backend_src_admin_dto_user_dto_createuserdto",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "createuserdto"
},
{
- "label": "CouponInput",
+ "label": "UpdateUserDto",
"file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L38",
+ "source_file": "backend/src/admin/dto/user.dto.ts",
+ "source_location": "L52",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_service_couponinput",
- "community": 148,
- "community_name": "Body",
- "norm_label": "couponinput"
+ "id": "backend_src_admin_dto_user_dto_updateuserdto",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "updateuserdto"
+ },
+ {
+ "label": "RevalidationModule",
+ "file_type": "code",
+ "source_file": "backend/src/common/revalidation/revalidation.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_module_revalidationmodule",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": "revalidationmodule"
+ },
+ {
+ "label": "RevalidationService",
+ "file_type": "code",
+ "source_file": "backend/src/common/revalidation/revalidation.service.ts",
+ "source_location": "L4",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_service_revalidationservice",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": "revalidationservice"
},
{
"label": "PatternItem",
@@ -1758,6 +1797,19 @@
"community_name": "src/services/api.ts",
"norm_label": "verifyotppayload"
},
+ {
+ "label": "AdminLoginInput",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.service.ts",
+ "source_location": "L30",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_service_adminlogininput",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "adminlogininput"
+ },
{
"label": "AuthService",
"file_type": "code",
@@ -1768,99 +1820,60 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": "authservice"
},
{
- "label": "ActiveStates",
+ "label": "LoginInput",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
- "source_location": "L61",
+ "source_file": "backend/src/auth/auth.service.ts",
+ "source_location": "L25",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_ui_richtexteditor_activestates",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "activestates"
+ "id": "backend_src_auth_auth_service_logininput",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "logininput"
},
{
- "label": "RichTextEditorProps",
+ "label": "RegisterInput",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
- "source_location": "L33",
+ "source_file": "backend/src/auth/auth.service.ts",
+ "source_location": "L17",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditorprops",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "richtexteditorprops"
+ "id": "backend_src_auth_auth_service_registerinput",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "registerinput"
},
{
- "label": "AuthorUser",
+ "label": "SendOtpDto",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L54",
+ "source_file": "backend/src/auth/dto/send-otp.dto.ts",
+ "source_location": "L4",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs_authoruser",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "authoruser"
+ "id": "backend_src_auth_dto_send_otp_dto_sendotpdto",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "sendotpdto"
},
{
- "label": "BlogCategory",
+ "label": "RedisService",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L39",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L5",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs_blogcategory",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "blogcategory"
- },
- {
- "label": "BlogPost",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L70",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs_blogpost",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "blogpost"
- },
- {
- "label": "BlogTag",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L48",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs_blogtag",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "blogtag"
- },
- {
- "label": "ProductSimple",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L62",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs_productsimple",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "productsimple"
+ "id": "backend_src_redis_redis_service_redisservice",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "redisservice"
},
{
"label": "DoctorsController",
@@ -1928,69 +1941,69 @@
"norm_label": "paginationmeta"
},
{
- "label": "CouponTargetInput",
+ "label": "B2BServiceSchemaOptions",
"file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L31",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L114",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_service_coupontargetinput",
+ "id": "frontend_application_lib_schema_b2bserviceschemaoptions",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "coupontargetinput"
+ "community_name": "schema.ts",
+ "norm_label": "b2bserviceschemaoptions"
},
{
- "label": "PaginationQuery",
+ "label": "BreadcrumbItem",
"file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L17",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L217",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_service_paginationquery",
+ "id": "frontend_application_lib_schema_breadcrumbitem",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "paginationquery"
+ "community_name": "schema.ts",
+ "norm_label": "breadcrumbitem"
},
{
- "label": "RevalidationModule",
+ "label": "MedicalWebPageSchemaOptions",
"file_type": "code",
- "source_file": "backend/src/common/revalidation/revalidation.module.ts",
- "source_location": "L9",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L149",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_module_revalidationmodule",
+ "id": "frontend_application_lib_schema_medicalwebpageschemaoptions",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "revalidationmodule"
+ "community_name": "schema.ts",
+ "norm_label": "medicalwebpageschemaoptions"
},
{
- "label": "RedisModule",
+ "label": "OrganizationSchemaOptions",
"file_type": "code",
- "source_file": "backend/src/redis/redis.module.ts",
- "source_location": "L9",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L6",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_redis_redis_module_redismodule",
+ "id": "frontend_application_lib_schema_organizationschemaoptions",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "redismodule"
+ "community_name": "schema.ts",
+ "norm_label": "organizationschemaoptions"
},
{
- "label": "RedisService",
+ "label": "VideoObjectSchemaOptions",
"file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
- "source_location": "L5",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L185",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_redis_redis_service_redisservice",
+ "id": "frontend_application_lib_schema_videoobjectschemaoptions",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "redisservice"
+ "community_name": "schema.ts",
+ "norm_label": "videoobjectschemaoptions"
},
{
"label": "BlogsModule",
@@ -2002,7 +2015,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_module_blogsmodule",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "blogsmodule"
},
{
@@ -2015,7 +2028,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogfilterdto",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "blogfilterdto"
},
{
@@ -2028,9 +2041,100 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "blogsservice"
},
+ {
+ "label": "PaginationDto",
+ "file_type": "code",
+ "source_file": "backend/src/common/dto/pagination.dto.ts",
+ "source_location": "L10",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_paginationdto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "paginationdto"
+ },
+ {
+ "label": "SortOrder",
+ "file_type": "code",
+ "source_file": "backend/src/common/dto/pagination.dto.ts",
+ "source_location": "L5",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_sortorder",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "sortorder"
+ },
+ {
+ "label": "ValidateCouponDto",
+ "file_type": "code",
+ "source_file": "backend/src/orders/orders.controller.ts",
+ "source_location": "L29",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_controller_validatecoupondto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "validatecoupondto"
+ },
+ {
+ "label": "OrdersModule",
+ "file_type": "code",
+ "source_file": "backend/src/orders/orders.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_module_ordersmodule",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "ordersmodule"
+ },
+ {
+ "label": "GetVideosQueryDto",
+ "file_type": "code",
+ "source_file": "backend/src/videos/dto/get-videos-query.dto.ts",
+ "source_location": "L6",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_videos_dto_get_videos_query_dto_getvideosquerydto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "getvideosquerydto"
+ },
+ {
+ "label": "WikiModule",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_module_wikimodule",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "wikimodule"
+ },
+ {
+ "label": "WikiService",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.service.ts",
+ "source_location": "L7",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_service_wikiservice",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "wikiservice"
+ },
{
"label": "JwtAuthGuard",
"file_type": "code",
@@ -2096,45 +2200,6 @@
"community_name": "MetricsController",
"norm_label": "metricscontroller"
},
- {
- "label": "WikiController",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.controller.ts",
- "source_location": "L18",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_wikicontroller",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "wikicontroller"
- },
- {
- "label": "WikiModule",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.module.ts",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_module_wikimodule",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "wikimodule"
- },
- {
- "label": "WikiService",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.service.ts",
- "source_location": "L7",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_service_wikiservice",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "wikiservice"
- },
{
"label": "CreateBlogDto",
"file_type": "code",
@@ -2187,19 +2252,6 @@
"community_name": "update-home.dto.ts",
"norm_label": "updatehomedto"
},
- {
- "label": "GetProductsDto",
- "file_type": "code",
- "source_file": "backend/src/products/dto/get-products.dto.ts",
- "source_location": "L5",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_products_dto_get_products_dto_getproductsdto",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "getproductsdto"
- },
{
"label": "ProductsController",
"file_type": "code",
@@ -2210,35 +2262,9 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "productscontroller"
},
- {
- "label": "ProductsModule",
- "file_type": "code",
- "source_file": "backend/src/products/products.module.ts",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_products_products_module_productsmodule",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "productsmodule"
- },
- {
- "label": "ProductsService",
- "file_type": "code",
- "source_file": "backend/src/products/products.service.ts",
- "source_location": "L8",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_products_products_service_productsservice",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "productsservice"
- },
{
"label": "CreateWikiDto",
"file_type": "code",
@@ -2292,95 +2318,43 @@
"norm_label": "selectprops"
},
{
- "label": "AuthService",
+ "label": "AdminLoginDto",
"file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L38",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": "authservice"
- },
- {
- "label": "UsersModule",
- "file_type": "code",
- "source_file": "backend/src/users/users.module.ts",
- "source_location": "L10",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_users_users_module_usersmodule",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "usersmodule"
- },
- {
- "label": "UserAddressInput",
- "file_type": "code",
- "source_file": "backend/src/users/users.service.ts",
- "source_location": "L12",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_users_users_service_useraddressinput",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "useraddressinput"
- },
- {
- "label": "AdminLoginInput",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.service.ts",
- "source_location": "L30",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_auth_auth_service_adminlogininput",
- "community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "adminlogininput"
- },
- {
- "label": "LoginInput",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.service.ts",
- "source_location": "L25",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_auth_auth_service_logininput",
- "community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "logininput"
- },
- {
- "label": "RegisterInput",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.service.ts",
- "source_location": "L17",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_auth_auth_service_registerinput",
- "community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "registerinput"
- },
- {
- "label": "SendOtpDto",
- "file_type": "code",
- "source_file": "backend/src/auth/dto/send-otp.dto.ts",
+ "source_file": "backend/src/auth/dto/admin-login.dto.ts",
"source_location": "L4",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_auth_dto_send_otp_dto_sendotpdto",
+ "id": "backend_src_auth_dto_admin_login_dto_adminlogindto",
"community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "sendotpdto"
+ "community_name": "auth.controller.ts",
+ "norm_label": "adminlogindto"
+ },
+ {
+ "label": "LoginDto",
+ "file_type": "code",
+ "source_file": "backend/src/auth/dto/login.dto.ts",
+ "source_location": "L4",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_login_dto_logindto",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "logindto"
+ },
+ {
+ "label": "RegisterDto",
+ "file_type": "code",
+ "source_file": "backend/src/auth/dto/register.dto.ts",
+ "source_location": "L10",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_registerdto",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "registerdto"
},
{
"label": "VerifyOtpDto",
@@ -2392,9 +2366,22 @@
"_origin": "ast",
"id": "backend_src_auth_dto_verify_otp_dto_verifyotpdto",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "verifyotpdto"
},
+ {
+ "label": "SmsLogQuery",
+ "file_type": "code",
+ "source_file": "backend/src/common/services/sms.service.ts",
+ "source_location": "L34",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_common_services_sms_service_smslogquery",
+ "community": 2,
+ "community_name": "SmsService",
+ "norm_label": "smslogquery"
+ },
{
"label": "SmsService",
"file_type": "code",
@@ -2512,6 +2499,84 @@
"community_name": "prisma/scientificTerms.ts",
"norm_label": "scientificterm"
},
+ {
+ "label": "CalculatorState",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductPage.tsx",
+ "source_location": "L54",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_productpage_calculatorstate",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "calculatorstate"
+ },
+ {
+ "label": "ProductReviewsProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductReviews.tsx",
+ "source_location": "L28",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_productreviews_productreviewsprops",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "productreviewsprops"
+ },
+ {
+ "label": "ReviewItem",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductReviews.tsx",
+ "source_location": "L19",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_productreviews_reviewitem",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "reviewitem"
+ },
+ {
+ "label": "TooltipProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/Tooltip.tsx",
+ "source_location": "L8",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_tooltip_tooltipprops",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "tooltipprops"
+ },
+ {
+ "label": "ScientificTerm",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/data/scientificTerms.ts",
+ "source_location": "L1",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_data_scientificterms_scientificterm",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "scientificterm"
+ },
+ {
+ "label": "DosageConfig",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/types.ts",
+ "source_location": "L94",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_types_dosageconfig",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "dosageconfig"
+ },
{
"label": "FormFieldProps",
"file_type": "code",
@@ -2538,19 +2603,6 @@
"community_name": "UserDashboard.tsx",
"norm_label": "addressmodalprops"
},
- {
- "label": "AuthModalProps",
- "file_type": "code",
- "source_file": "frontend/application/components/AuthModal.tsx",
- "source_location": "L25",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_authmodal_authmodalprops",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "authmodalprops"
- },
{
"label": "BackButtonProps",
"file_type": "code",
@@ -2590,6 +2642,32 @@
"community_name": "UserDashboard.tsx",
"norm_label": "headerbuttonprops"
},
+ {
+ "label": "LoginModalProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/LoginModal.tsx",
+ "source_location": "L10",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_loginmodal_loginmodalprops",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "loginmodalprops"
+ },
+ {
+ "label": "PrescriptionUploadModalProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PrescriptionUploadModal.tsx",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_prescriptionuploadmodal_prescriptionuploadmodalprops",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "prescriptionuploadmodalprops"
+ },
{
"label": "SearchableSelectProps",
"file_type": "code",
@@ -2616,45 +2694,6 @@
"community_name": "UserDashboard.tsx",
"norm_label": "topupmodalprops"
},
- {
- "label": "CreateTicketPayload",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/ticketService.ts",
- "source_location": "L34",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_ticketservice_createticketpayload",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "createticketpayload"
- },
- {
- "label": "Ticket",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/ticketService.ts",
- "source_location": "L14",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_ticketservice_ticket",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "ticket"
- },
- {
- "label": "TicketMessage",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/ticketService.ts",
- "source_location": "L3",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_ticketservice_ticketmessage",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "ticketmessage"
- },
{
"label": "Address",
"file_type": "code",
@@ -2668,6 +2707,58 @@
"community_name": "UserDashboard.tsx",
"norm_label": "address"
},
+ {
+ "label": "Transaction",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/userStore.ts",
+ "source_location": "L25",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_userstore_transaction",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "transaction"
+ },
+ {
+ "label": "UserProfile",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/userStore.ts",
+ "source_location": "L33",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_userstore_userprofile",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "userprofile"
+ },
+ {
+ "label": "UserRole",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/userStore.ts",
+ "source_location": "L11",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_userstore_userrole",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "userrole"
+ },
+ {
+ "label": "UserStore",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/userStore.ts",
+ "source_location": "L45",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_userstore_userstore",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "userstore"
+ },
{
"label": "InputProps",
"file_type": "code",
@@ -2720,19 +2811,6 @@
"community_name": "MenuService",
"norm_label": "menuservice"
},
- {
- "label": "RegisterDto",
- "file_type": "code",
- "source_file": "backend/src/auth/dto/register.dto.ts",
- "source_location": "L10",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_registerdto",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "registerdto"
- },
{
"label": "Blog",
"file_type": "code",
@@ -2785,32 +2863,6 @@
"community_name": "vitest.setup.ts",
"norm_label": "mockintersectionobserver"
},
- {
- "label": "InitiatePaymentDto",
- "file_type": "code",
- "source_file": "backend/src/payment/dto/initiate-payment.dto.ts",
- "source_location": "L4",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_initiatepaymentdto",
- "community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "initiatepaymentdto"
- },
- {
- "label": "InitiateWalletTopupDto",
- "file_type": "code",
- "source_file": "backend/src/payment/dto/initiate-payment.dto.ts",
- "source_location": "L16",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_initiatewallettopupdto",
- "community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "initiatewallettopupdto"
- },
{
"label": "ZibalService",
"file_type": "code",
@@ -2837,45 +2889,6 @@
"community_name": "ZibalEBankService",
"norm_label": "zibalebankservice"
},
- {
- "label": "ZibalCallbackQueryDto",
- "file_type": "code",
- "source_file": "backend/src/payment/dto/verify-payment.dto.ts",
- "source_location": "L4",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_payment_dto_verify_payment_dto_zibalcallbackquerydto",
- "community": 298,
- "community_name": "ZibalCallbackQueryDto",
- "norm_label": "zibalcallbackquerydto"
- },
- {
- "label": "BlogCategory",
- "file_type": "code",
- "source_file": "frontend/application/components/BlogPage.tsx",
- "source_location": "L28",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_blogpage_blogcategory",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "blogcategory"
- },
- {
- "label": "BlogPostItem",
- "file_type": "code",
- "source_file": "frontend/application/components/BlogPage.tsx",
- "source_location": "L34",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_blogpage_blogpostitem",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "blogpostitem"
- },
{
"label": "CatalogPageSpreadProps",
"file_type": "code",
@@ -2915,6 +2928,19 @@
"community_name": "ProductService",
"norm_label": "flipbookcatalogprops"
},
+ {
+ "label": "SmartAdvisorProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SmartAdvisor.tsx",
+ "source_location": "L28",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_smartadvisor_smartadvisorprops",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "smartadvisorprops"
+ },
{
"label": "DosageResult",
"file_type": "code",
@@ -2954,19 +2980,6 @@
"community_name": "ProductService",
"norm_label": "ingredientinfo"
},
- {
- "label": "PetType",
- "file_type": "code",
- "source_file": "frontend/application/lib/data/products.ts",
- "source_location": "L8",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_data_products_pettype",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "pettype"
- },
{
"label": "Product",
"file_type": "code",
@@ -3019,32 +3032,6 @@
"community_name": "ProductService",
"norm_label": "productservice"
},
- {
- "label": "CartItem",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/cartStore.ts",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_store_cartstore_cartitem",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "cartitem"
- },
- {
- "label": "CartStore",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/cartStore.ts",
- "source_location": "L32",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_store_cartstore_cartstore",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "cartstore"
- },
{
"label": "Ingredient",
"file_type": "code",
@@ -3097,19 +3084,6 @@
"community_name": "MaskableField.tsx",
"norm_label": "maskablefieldprops"
},
- {
- "label": "AdminService",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L51",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": "adminservice"
- },
{
"label": "CategoryDist",
"file_type": "code",
@@ -3214,6 +3188,19 @@
"community_name": "B2BService",
"norm_label": "b2bcontroller"
},
+ {
+ "label": "B2BModule",
+ "file_type": "code",
+ "source_file": "backend/src/b2b/b2b.module.ts",
+ "source_location": "L12",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_b2b_b2b_module_b2bmodule",
+ "community": 34,
+ "community_name": "B2BService",
+ "norm_label": "b2bmodule"
+ },
{
"label": "B2BService",
"file_type": "code",
@@ -3227,6 +3214,19 @@
"community_name": "B2BService",
"norm_label": "b2bservice"
},
+ {
+ "label": "B2BWholesaleOrderItem",
+ "file_type": "code",
+ "source_file": "backend/src/b2b/b2b.service.ts",
+ "source_location": "L8",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_b2b_b2b_service_b2bwholesaleorderitem",
+ "community": 34,
+ "community_name": "B2BService",
+ "norm_label": "b2bwholesaleorderitem"
+ },
{
"label": "AuthController",
"file_type": "code",
@@ -3253,6 +3253,19 @@
"community_name": "FaqService",
"norm_label": "faqcontroller"
},
+ {
+ "label": "FaqModule",
+ "file_type": "code",
+ "source_file": "backend/src/faq/faq.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_faq_faq_module_faqmodule",
+ "community": 36,
+ "community_name": "FaqService",
+ "norm_label": "faqmodule"
+ },
{
"label": "FaqService",
"file_type": "code",
@@ -3488,17 +3501,43 @@
"norm_label": "categoriesservice"
},
{
- "label": "BlogPost",
+ "label": "CategoryQuery",
"file_type": "code",
- "source_file": "frontend/application/components/BlogPreviewSection.tsx",
- "source_location": "L11",
+ "source_file": "backend/src/admin/categories.service.ts",
+ "source_location": "L5",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_components_blogpreviewsection_blogpost",
+ "id": "backend_src_admin_categories_service_categoryquery",
+ "community": 39,
+ "community_name": "CategoriesController",
+ "norm_label": "categoryquery"
+ },
+ {
+ "label": "BlogCategory",
+ "file_type": "code",
+ "source_file": "frontend/application/components/BlogPage.tsx",
+ "source_location": "L28",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_blogpage_blogcategory",
"community": 4,
"community_name": "SafeImage.tsx",
- "norm_label": "blogpost"
+ "norm_label": "blogcategory"
+ },
+ {
+ "label": "BlogPostItem",
+ "file_type": "code",
+ "source_file": "frontend/application/components/BlogPage.tsx",
+ "source_location": "L34",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_blogpage_blogpostitem",
+ "community": 4,
+ "community_name": "SafeImage.tsx",
+ "norm_label": "blogpostitem"
},
{
"label": "ProductDetailModalProps",
@@ -3526,6 +3565,19 @@
"community_name": "SafeImage.tsx",
"norm_label": "orderdetailsmodalprops"
},
+ {
+ "label": "PodcastInlinePlayerProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
+ "source_location": "L19",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_podcastinlineplayer_podcastinlineplayerprops",
+ "community": 4,
+ "community_name": "SafeImage.tsx",
+ "norm_label": "podcastinlineplayerprops"
+ },
{
"label": "PodcastPlayerModalProps",
"file_type": "code",
@@ -3552,19 +3604,6 @@
"community_name": "SafeImage.tsx",
"norm_label": "safeimageprops"
},
- {
- "label": "Testimonial",
- "file_type": "code",
- "source_file": "frontend/application/components/TestimonialsSection.tsx",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_testimonialssection_testimonial",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "testimonial"
- },
{
"label": "DisplayVideoItem",
"file_type": "code",
@@ -3692,21 +3731,99 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "testimonialscontroller"
},
{
- "label": "TestimonialsService",
+ "label": "MenuGroup",
"file_type": "code",
- "source_file": "backend/src/testimonials/testimonials.service.ts",
- "source_location": "L6",
+ "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
+ "source_location": "L49",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_testimonials_testimonials_service_testimonialsservice",
- "community": 44,
- "community_name": "TestimonialsService",
- "norm_label": "testimonialsservice"
+ "id": "frontend_admin_panel_src_components_sidebar_menugroup",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "menugroup"
+ },
+ {
+ "label": "SidebarProps",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
+ "source_location": "L56",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_sidebar_sidebarprops",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "sidebarprops"
+ },
+ {
+ "label": "SubMenuItem",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
+ "source_location": "L42",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_sidebar_submenuitem",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "submenuitem"
+ },
+ {
+ "label": "LiveMonitoringSummary",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
+ "source_location": "L47",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_topbar_livemonitoringsummary",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "livemonitoringsummary"
+ },
+ {
+ "label": "TopbarProps",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
+ "source_location": "L8",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_topbar_topbarprops",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "topbarprops"
+ },
+ {
+ "label": "HeroBanner",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
+ "source_location": "L8",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_cms_herobanner",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "herobanner"
+ },
+ {
+ "label": "VetTestimonial",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
+ "source_location": "L16",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_cms_vettestimonial",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "vettestimonial"
},
{
"label": "IngredientsController",
@@ -3735,69 +3852,56 @@
"norm_label": "ingredientsservice"
},
{
- "label": "BestSellerItem",
+ "label": "OrderService",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L39",
+ "source_file": "frontend/application/lib/services/orderService.ts",
+ "source_location": "L31",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_bestselleritem",
+ "id": "frontend_application_lib_services_orderservice_orderservice",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "bestselleritem"
+ "community_name": "cartStore.ts",
+ "norm_label": "orderservice"
},
{
- "label": "CategoryDistItem",
+ "label": "CartItem",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L34",
+ "source_file": "frontend/application/lib/store/cartStore.ts",
+ "source_location": "L9",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_categorydistitem",
+ "id": "frontend_application_lib_store_cartstore_cartitem",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "categorydistitem"
+ "community_name": "cartStore.ts",
+ "norm_label": "cartitem"
},
{
- "label": "CustomTooltipProps",
+ "label": "CartStore",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L16",
+ "source_file": "frontend/application/lib/store/cartStore.ts",
+ "source_location": "L32",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_customtooltipprops",
+ "id": "frontend_application_lib_store_cartstore_cartstore",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "customtooltipprops"
+ "community_name": "cartStore.ts",
+ "norm_label": "cartstore"
},
{
- "label": "ReportData",
+ "label": "Order",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L50",
+ "source_file": "frontend/application/lib/store/cartStore.ts",
+ "source_location": "L18",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_reportdata",
+ "id": "frontend_application_lib_store_cartstore_order",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "reportdata"
- },
- {
- "label": "TopCouponItem",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L44",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_topcouponitem",
- "community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "topcouponitem"
+ "community_name": "cartStore.ts",
+ "norm_label": "order"
},
{
"label": "CmsController",
@@ -3887,22 +3991,9 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_prescriptionscontroller",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "prescriptionscontroller"
},
- {
- "label": "PrescriptionsService",
- "file_type": "code",
- "source_file": "backend/src/prescriptions/prescriptions.service.ts",
- "source_location": "L11",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice",
- "community": 52,
- "community_name": "PrescriptionsService",
- "norm_label": "prescriptionsservice"
- },
{
"label": "SmartAdvisorController",
"file_type": "code",
@@ -3913,21 +4004,47 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_smartadvisorcontroller",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "smartadvisorcontroller"
},
{
- "label": "SmartAdvisorService",
+ "label": "AuthModule",
"file_type": "code",
- "source_file": "backend/src/smart-advisor/smart-advisor.service.ts",
- "source_location": "L6",
+ "source_file": "backend/src/auth/auth.module.ts",
+ "source_location": "L25",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice",
- "community": 53,
- "community_name": "SmartAdvisorService",
- "norm_label": "smartadvisorservice"
+ "id": "backend_src_auth_auth_module_authmodule",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "authmodule"
+ },
+ {
+ "label": "JwtPayload",
+ "file_type": "code",
+ "source_file": "backend/src/auth/jwt.strategy.ts",
+ "source_location": "L7",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_jwt_strategy_jwtpayload",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "jwtpayload"
+ },
+ {
+ "label": "JwtStrategy",
+ "file_type": "code",
+ "source_file": "backend/src/auth/jwt.strategy.ts",
+ "source_location": "L15",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_jwt_strategy_jwtstrategy",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "jwtstrategy"
},
{
"label": "AddressDto",
@@ -3968,6 +4085,32 @@
"community_name": "UsersService",
"norm_label": "userscontroller"
},
+ {
+ "label": "UsersModule",
+ "file_type": "code",
+ "source_file": "backend/src/users/users.module.ts",
+ "source_location": "L10",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_users_users_module_usersmodule",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "usersmodule"
+ },
+ {
+ "label": "UserAddressInput",
+ "file_type": "code",
+ "source_file": "backend/src/users/users.service.ts",
+ "source_location": "L12",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_users_users_service_useraddressinput",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "useraddressinput"
+ },
{
"label": "UsersService",
"file_type": "code",
@@ -4307,30 +4450,108 @@
"norm_label": "ticketsservice"
},
{
- "label": "CreateUserDto",
+ "label": "ActiveStates",
"file_type": "code",
- "source_file": "backend/src/admin/dto/user.dto.ts",
- "source_location": "L11",
+ "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
+ "source_location": "L61",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_createuserdto",
+ "id": "frontend_admin_panel_src_components_ui_richtexteditor_activestates",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "createuserdto"
+ "community_name": "Blogs.tsx",
+ "norm_label": "activestates"
},
{
- "label": "UpdateUserDto",
+ "label": "RichTextEditorProps",
"file_type": "code",
- "source_file": "backend/src/admin/dto/user.dto.ts",
- "source_location": "L52",
+ "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
+ "source_location": "L33",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_updateuserdto",
+ "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditorprops",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "updateuserdto"
+ "community_name": "Blogs.tsx",
+ "norm_label": "richtexteditorprops"
+ },
+ {
+ "label": "AuthorUser",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
+ "source_location": "L54",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_blogs_authoruser",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "authoruser"
+ },
+ {
+ "label": "BlogCategory",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
+ "source_location": "L39",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_blogs_blogcategory",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "blogcategory"
+ },
+ {
+ "label": "BlogPost",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
+ "source_location": "L70",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_blogs_blogpost",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "blogpost"
+ },
+ {
+ "label": "BlogTag",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
+ "source_location": "L48",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_blogs_blogtag",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "blogtag"
+ },
+ {
+ "label": "ProductSimple",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
+ "source_location": "L62",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_blogs_productsimple",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "productsimple"
+ },
+ {
+ "label": "AdminTransactionFilterDto",
+ "file_type": "code",
+ "source_file": "backend/src/payment/dto/admin-transaction-filter.dto.ts",
+ "source_location": "L5",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_admintransactionfilterdto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "admintransactionfilterdto"
},
{
"label": "CreateEBankCheckoutDto",
@@ -4342,112 +4563,86 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_createebankcheckoutdto",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "createebankcheckoutdto"
},
{
- "label": "MenuGroup",
+ "label": "InitiatePaymentDto",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
- "source_location": "L49",
+ "source_file": "backend/src/payment/dto/initiate-payment.dto.ts",
+ "source_location": "L4",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_sidebar_menugroup",
- "community": 62,
- "community_name": "api",
- "norm_label": "menugroup"
+ "id": "backend_src_payment_dto_initiate_payment_dto_initiatepaymentdto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "initiatepaymentdto"
},
{
- "label": "SidebarProps",
+ "label": "InitiateWalletTopupDto",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
- "source_location": "L56",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_sidebar_sidebarprops",
- "community": 62,
- "community_name": "api",
- "norm_label": "sidebarprops"
- },
- {
- "label": "SubMenuItem",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
- "source_location": "L42",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_sidebar_submenuitem",
- "community": 62,
- "community_name": "api",
- "norm_label": "submenuitem"
- },
- {
- "label": "LiveMonitoringSummary",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
- "source_location": "L47",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_topbar_livemonitoringsummary",
- "community": 62,
- "community_name": "api",
- "norm_label": "livemonitoringsummary"
- },
- {
- "label": "TopbarProps",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
- "source_location": "L8",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_topbar_topbarprops",
- "community": 62,
- "community_name": "api",
- "norm_label": "topbarprops"
- },
- {
- "label": "HeroBanner",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
- "source_location": "L8",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_cms_herobanner",
- "community": 62,
- "community_name": "api",
- "norm_label": "herobanner"
- },
- {
- "label": "VetTestimonial",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
+ "source_file": "backend/src/payment/dto/initiate-payment.dto.ts",
"source_location": "L16",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_cms_vettestimonial",
- "community": 62,
- "community_name": "api",
- "norm_label": "vettestimonial"
+ "id": "backend_src_payment_dto_initiate_payment_dto_initiatewallettopupdto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "initiatewallettopupdto"
},
{
- "label": "AdminTransactionFilterDto",
+ "label": "ZibalCallbackQueryDto",
"file_type": "code",
- "source_file": "backend/src/payment/dto/admin-transaction-filter.dto.ts",
+ "source_file": "backend/src/payment/dto/verify-payment.dto.ts",
+ "source_location": "L4",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_verify_payment_dto_zibalcallbackquerydto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "zibalcallbackquerydto"
+ },
+ {
+ "label": "GetProductsDto",
+ "file_type": "code",
+ "source_file": "backend/src/products/dto/get-products.dto.ts",
"source_location": "L5",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_admintransactionfilterdto",
- "community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "admintransactionfilterdto"
+ "id": "backend_src_products_dto_get_products_dto_getproductsdto",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "getproductsdto"
+ },
+ {
+ "label": "ProductsModule",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_products_products_module_productsmodule",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "productsmodule"
+ },
+ {
+ "label": "ProductsService",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.service.ts",
+ "source_location": "L8",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_products_products_service_productsservice",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "productsservice"
},
{
"label": "AdminQueryDto",
@@ -4463,43 +4658,17 @@
"norm_label": "adminquerydto"
},
{
- "label": "CategoryQuery",
+ "label": "PetsController",
"file_type": "code",
- "source_file": "backend/src/admin/categories.service.ts",
- "source_location": "L5",
+ "source_file": "backend/src/admin/pets.controller.ts",
+ "source_location": "L24",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_categories_service_categoryquery",
+ "id": "backend_src_admin_pets_controller_petscontroller",
"community": 67,
- "community_name": "PaginationDto",
- "norm_label": "categoryquery"
- },
- {
- "label": "MediaService",
- "file_type": "code",
- "source_file": "backend/src/admin/media.service.ts",
- "source_location": "L7",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_admin_media_service_mediaservice",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "mediaservice"
- },
- {
- "label": "PetQuery",
- "file_type": "code",
- "source_file": "backend/src/admin/pets.service.ts",
- "source_location": "L5",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_admin_pets_service_petquery",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "petquery"
+ "community_name": "PetsController",
+ "norm_label": "petscontroller"
},
{
"label": "PetsService",
@@ -4511,74 +4680,9 @@
"_origin": "ast",
"id": "backend_src_admin_pets_service_petsservice",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": "petsservice"
},
- {
- "label": "SslCertInfo",
- "file_type": "code",
- "source_file": "backend/src/admin/ssl.service.ts",
- "source_location": "L7",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_admin_ssl_service_sslcertinfo",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "sslcertinfo"
- },
- {
- "label": "WikiQuery",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L5",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiquery",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "wikiquery"
- },
- {
- "label": "WikiService",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L12",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiservice",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "wikiservice"
- },
- {
- "label": "PaginationDto",
- "file_type": "code",
- "source_file": "backend/src/common/dto/pagination.dto.ts",
- "source_location": "L10",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_paginationdto",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "paginationdto"
- },
- {
- "label": "SortOrder",
- "file_type": "code",
- "source_file": "backend/src/common/dto/pagination.dto.ts",
- "source_location": "L5",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_sortorder",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "sortorder"
- },
{
"label": "CreatePetDto",
"file_type": "code",
@@ -4657,6 +4761,32 @@
"community_name": "pets/pets.controller.ts",
"norm_label": "reminderinput"
},
+ {
+ "label": "PageMetadataOptions",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/seo.ts",
+ "source_location": "L160",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_seo_pagemetadataoptions",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "pagemetadataoptions"
+ },
+ {
+ "label": "SeoConfig",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/seo.ts",
+ "source_location": "L3",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_seo_seoconfig",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "seoconfig"
+ },
{
"label": "WikiController",
"file_type": "code",
@@ -4761,6 +4891,32 @@
"community_name": "seo.module.ts",
"norm_label": "seoservice"
},
+ {
+ "label": "AdminModule",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.module.ts",
+ "source_location": "L44",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_module_adminmodule",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "adminmodule"
+ },
+ {
+ "label": "MediaService",
+ "file_type": "code",
+ "source_file": "backend/src/admin/media.service.ts",
+ "source_location": "L7",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_media_service_mediaservice",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "mediaservice"
+ },
{
"label": "ReportsController",
"file_type": "code",
@@ -4771,7 +4927,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_reportscontroller",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "reportscontroller"
},
{
@@ -4784,21 +4940,47 @@
"_origin": "ast",
"id": "backend_src_admin_reports_service_reportsservice",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "reportsservice"
},
{
- "label": "PetsController",
+ "label": "SslCertInfo",
"file_type": "code",
- "source_file": "backend/src/admin/pets.controller.ts",
- "source_location": "L24",
+ "source_file": "backend/src/admin/ssl.service.ts",
+ "source_location": "L7",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "backend_src_admin_pets_controller_petscontroller",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "petscontroller"
+ "id": "backend_src_admin_ssl_service_sslcertinfo",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "sslcertinfo"
+ },
+ {
+ "label": "WikiService",
+ "file_type": "code",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L12",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_service_wikiservice",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "wikiservice"
+ },
+ {
+ "label": "RedisModule",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.module.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_module_redismodule",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "redismodule"
},
{
"label": "GatewayHealthResult",
@@ -4917,6 +5099,19 @@
"community_name": "zibal.service.ts",
"norm_label": "zibalverifyresponse"
},
+ {
+ "label": "AuthModalProps",
+ "file_type": "code",
+ "source_file": "frontend/application/components/AuthModal.tsx",
+ "source_location": "L25",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_authmodal_authmodalprops",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "authmodalprops"
+ },
{
"label": "BrandLogoProps",
"file_type": "code",
@@ -4930,45 +5125,6 @@
"community_name": "useSettingsStore",
"norm_label": "brandlogoprops"
},
- {
- "label": "FAQItem",
- "file_type": "code",
- "source_file": "frontend/application/components/FAQSection.tsx",
- "source_location": "L8",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_faqsection_faqitem",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "faqitem"
- },
- {
- "label": "ScientificTerm",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/settingsStore.ts",
- "source_location": "L5",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_store_settingsstore_scientificterm",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "scientificterm"
- },
- {
- "label": "SettingsStore",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/settingsStore.ts",
- "source_location": "L12",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_store_settingsstore_settingsstore",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "settingsstore"
- },
{
"label": "UIState",
"file_type": "code",
@@ -5021,6 +5177,19 @@
"community_name": "HomeClient.tsx",
"norm_label": "bannerplacementprops"
},
+ {
+ "label": "PetType",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/data/products.ts",
+ "source_location": "L8",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_data_products_pettype",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "pettype"
+ },
{
"label": "B2BInquiry",
"file_type": "code",
@@ -5047,19 +5216,6 @@
"community_name": "HomeClient.tsx",
"norm_label": "banner"
},
- {
- "label": "DosageConfig",
- "file_type": "code",
- "source_file": "frontend/application/lib/types.ts",
- "source_location": "L94",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_types_dosageconfig",
- "community": 90,
- "community_name": "HomeClient.tsx",
- "norm_label": "dosageconfig"
- },
{
"label": "HomeApiResponse",
"file_type": "code",
@@ -5177,32 +5333,6 @@
"community_name": "OrdersService",
"norm_label": "orderscontroller"
},
- {
- "label": "ValidateCouponDto",
- "file_type": "code",
- "source_file": "backend/src/orders/orders.controller.ts",
- "source_location": "L29",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_orders_orders_controller_validatecoupondto",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "validatecoupondto"
- },
- {
- "label": "OrdersModule",
- "file_type": "code",
- "source_file": "backend/src/orders/orders.module.ts",
- "source_location": "L9",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "backend_src_orders_orders_module_ordersmodule",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "ordersmodule"
- },
{
"label": "OrdersService",
"file_type": "code",
@@ -5217,82 +5347,17 @@
"norm_label": "ordersservice"
},
{
- "label": "PodcastInlinePlayerProps",
+ "label": "BlogPostClientProps",
"file_type": "code",
- "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
- "source_location": "L19",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
+ "source_location": "L20",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
- "id": "frontend_application_components_podcastinlineplayer_podcastinlineplayerprops",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "podcastinlineplayerprops"
- },
- {
- "label": "CalculatorState",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductPage.tsx",
- "source_location": "L54",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_productpage_calculatorstate",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "calculatorstate"
- },
- {
- "label": "ProductReviewsProps",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductReviews.tsx",
- "source_location": "L28",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_productreviews_productreviewsprops",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "productreviewsprops"
- },
- {
- "label": "ReviewItem",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductReviews.tsx",
- "source_location": "L19",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_productreviews_reviewitem",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "reviewitem"
- },
- {
- "label": "TooltipProps",
- "file_type": "code",
- "source_file": "frontend/application/components/Tooltip.tsx",
- "source_location": "L8",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_components_tooltip_tooltipprops",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "tooltipprops"
- },
- {
- "label": "ScientificTerm",
- "file_type": "code",
- "source_file": "frontend/application/lib/data/scientificTerms.ts",
- "source_location": "L1",
- "_callable": true,
- "_callable_class": true,
- "_origin": "ast",
- "id": "frontend_application_lib_data_scientificterms_scientificterm",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "scientificterm"
+ "id": "frontend_application_components_blogpostclient_blogpostclientprops",
+ "community": 95,
+ "community_name": "blog/[slug]/page.tsx",
+ "norm_label": "blogpostclientprops"
},
{
"label": "BlogsController",
@@ -5346,6 +5411,19 @@
"community_name": "BlogsController",
"norm_label": "homeservice"
},
+ {
+ "label": "WikiController",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.controller.ts",
+ "source_location": "L18",
+ "_callable": true,
+ "_callable_class": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_wikicontroller",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "wikicontroller"
+ },
{
"label": "ApiResponse",
"file_type": "code",
@@ -5443,18 +5521,6 @@
"community_name": "Roles",
"norm_label": ".editsubmerchant()"
},
- {
- "label": ".extractRealClientIp()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L48",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_extractrealclientip",
- "community": 0,
- "community_name": "Roles",
- "norm_label": ".extractrealclientip()"
- },
{
"label": ".getAdminStats()",
"file_type": "code",
@@ -5467,6 +5533,18 @@
"community_name": "Roles",
"norm_label": ".getadminstats()"
},
+ {
+ "label": ".getAdminTransactions()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L525",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_getadmintransactions",
+ "community": 0,
+ "community_name": "Roles",
+ "norm_label": ".getadmintransactions()"
+ },
{
"label": ".getAdminWallets()",
"file_type": "code",
@@ -5623,54 +5701,6 @@
"community_name": "Roles",
"norm_label": ".gettransactionstatus()"
},
- {
- "label": ".handleZibalCallback()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L116",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_handlezibalcallback",
- "community": 0,
- "community_name": "Roles",
- "norm_label": ".handlezibalcallback()"
- },
- {
- "label": ".handleZibalLazyCallback()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L194",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_handleziballazycallback",
- "community": 0,
- "community_name": "Roles",
- "norm_label": ".handleziballazycallback()"
- },
- {
- "label": ".initiateOrderPayment()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L75",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_initiateorderpayment",
- "community": 0,
- "community_name": "Roles",
- "norm_label": ".initiateorderpayment()"
- },
- {
- "label": ".initiateWalletTopup()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L97",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_initiatewallettopup",
- "community": 0,
- "community_name": "Roles",
- "norm_label": ".initiatewallettopup()"
- },
{
"label": ".inquireRefund()",
"file_type": "code",
@@ -5743,18 +5773,6 @@
"community_name": "Roles",
"norm_label": ".reconcilepending()"
},
- {
- "label": ".verifyPaymentDirect()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L169",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_verifypaymentdirect",
- "community": 0,
- "community_name": "Roles",
- "norm_label": ".verifypaymentdirect()"
- },
{
"label": ".constructor()",
"file_type": "code",
@@ -5764,9 +5782,21 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_reviewscontroller_constructor",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": ".constructor()"
},
+ {
+ "label": ".createReview()",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.controller.ts",
+ "source_location": "L31",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_controller_reviewscontroller_createreview",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": ".createreview()"
+ },
{
"label": ".deleteReview()",
"file_type": "code",
@@ -5776,7 +5806,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_reviewscontroller_deletereview",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": ".deletereview()"
},
{
@@ -5788,7 +5818,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_reviewscontroller_getadminreviews",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": ".getadminreviews()"
},
{
@@ -5800,7 +5830,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_reviewscontroller_getproductreviews",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": ".getproductreviews()"
},
{
@@ -5812,9 +5842,57 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_reviewscontroller_updatereviewstatus",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": ".updatereviewstatus()"
},
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.service.ts",
+ "source_location": "L16",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_reviewsservice_constructor",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": ".constructor()"
+ },
+ {
+ "label": ".createReview()",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.service.ts",
+ "source_location": "L24",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_reviewsservice_createreview",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": ".createreview()"
+ },
+ {
+ "label": ".deleteReview()",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.service.ts",
+ "source_location": "L243",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_reviewsservice_deletereview",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": ".deletereview()"
+ },
+ {
+ "label": ".getAdminReviews()",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.service.ts",
+ "source_location": "L137",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_reviewsservice_getadminreviews",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": ".getadminreviews()"
+ },
{
"label": ".getProductReviews()",
"file_type": "code",
@@ -5824,7 +5902,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_service_reviewsservice_getproductreviews",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": ".getproductreviews()"
},
{
@@ -5912,89 +5990,41 @@
"norm_label": "shippingsettingspage()"
},
{
- "label": "generateMetadata()",
+ "label": "CustomTooltip()",
"file_type": "code",
- "source_file": "frontend/application/app/shop/page.tsx",
- "source_location": "L5",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L22",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_shop_page_generatemetadata",
- "community": 107,
- "community_name": "shop/page.tsx",
- "norm_label": "generatemetadata()"
+ "id": "frontend_admin_panel_src_pages_reports_customtooltip",
+ "community": 106,
+ "community_name": "Reports.tsx",
+ "norm_label": "customtooltip()"
},
{
- "label": "Shop()",
+ "label": "Reports()",
"file_type": "code",
- "source_file": "frontend/application/app/shop/page.tsx",
- "source_location": "L13",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L65",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_shop_page_shop",
- "community": 107,
- "community_name": "shop/page.tsx",
- "norm_label": "shop()"
- },
- {
- "label": "ArchivePage()",
- "file_type": "code",
- "source_file": "frontend/application/components/ArchivePage.tsx",
- "source_location": "L237",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_archivepage_archivepage",
- "community": 107,
- "community_name": "shop/page.tsx",
- "norm_label": "archivepage()"
+ "id": "frontend_admin_panel_src_pages_reports_reports",
+ "community": 106,
+ "community_name": "Reports.tsx",
+ "norm_label": "reports()"
},
{
"label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L52",
+ "source_file": "backend/src/prescriptions/prescriptions.service.ts",
+ "source_location": "L14",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_constructor",
+ "id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice_constructor",
"community": 108,
"community_name": "PrismaService",
"norm_label": ".constructor()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/admin/blogs.service.ts",
- "source_location": "L9",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_blogs_service_blogsservice_constructor",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": ".constructor()"
- },
- {
- "label": ".frontendUrl()",
- "file_type": "code",
- "source_file": "backend/src/common/revalidation/revalidation.service.ts",
- "source_location": "L7",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_frontendurl",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": ".frontendurl()"
- },
- {
- "label": ".secret()",
- "file_type": "code",
- "source_file": "backend/src/common/revalidation/revalidation.service.ts",
- "source_location": "L15",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_secret",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": ".secret()"
- },
{
"label": ".ensureTablesExist()",
"file_type": "code",
@@ -6034,11 +6064,11 @@
{
"label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/products/products.service.ts",
- "source_location": "L9",
+ "source_file": "backend/src/smart-advisor/smart-advisor.service.ts",
+ "source_location": "L7",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_products_products_service_productsservice_constructor",
+ "id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice_constructor",
"community": 108,
"community_name": "PrismaService",
"norm_label": ".constructor()"
@@ -6046,11 +6076,11 @@
{
"label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.service.ts",
- "source_location": "L16",
+ "source_file": "backend/src/testimonials/testimonials.service.ts",
+ "source_location": "L7",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_reviews_reviews_service_reviewsservice_constructor",
+ "id": "backend_src_testimonials_testimonials_service_testimonialsservice_constructor",
"community": 108,
"community_name": "PrismaService",
"norm_label": ".constructor()"
@@ -6283,6 +6313,18 @@
"community_name": "Spinner.tsx",
"norm_label": "wiki()"
},
+ {
+ "label": ".updateReviewStatus()",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.service.ts",
+ "source_location": "L207",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_reviewsservice_updatereviewstatus",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": ".updatereviewstatus()"
+ },
{
"label": ".constructor()",
"file_type": "code",
@@ -6319,78 +6361,6 @@
"community_name": "AppService",
"norm_label": ".gethello()"
},
- {
- "label": "Checkout()",
- "file_type": "code",
- "source_file": "frontend/application/app/checkout/page.tsx",
- "source_location": "L14",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_checkout_page_checkout",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "checkout()"
- },
- {
- "label": "generateMetadata()",
- "file_type": "code",
- "source_file": "frontend/application/app/checkout/page.tsx",
- "source_location": "L5",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_checkout_page_generatemetadata",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "generatemetadata()"
- },
- {
- "label": "generateMetadata()",
- "file_type": "code",
- "source_file": "frontend/application/app/videos/page.tsx",
- "source_location": "L5",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_videos_page_generatemetadata",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "generatemetadata()"
- },
- {
- "label": "Videos()",
- "file_type": "code",
- "source_file": "frontend/application/app/videos/page.tsx",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_videos_page_videos",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "videos()"
- },
- {
- "label": "VideosPage()",
- "file_type": "code",
- "source_file": "frontend/application/components/VideosPage.tsx",
- "source_location": "L12",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_videospage_videospage",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "videospage()"
- },
- {
- "label": "SuccessPage()",
- "file_type": "code",
- "source_file": "frontend/application/app/checkout/success/[id]/page.tsx",
- "source_location": "L3",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_checkout_success_id_page_successpage",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "successpage()"
- },
{
"label": "GlobalLoading()",
"file_type": "code",
@@ -6416,40 +6386,40 @@
"norm_label": "featuredproducts()"
},
{
- "label": "ProductCard()",
+ "label": "OrderDetailsModal()",
"file_type": "code",
- "source_file": "frontend/application/components/FeaturedProducts.tsx",
- "source_location": "L16",
+ "source_file": "frontend/application/components/OrderDetailsModal.tsx",
+ "source_location": "L37",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_featuredproducts_productcard",
+ "id": "frontend_application_components_orderdetailsmodal_orderdetailsmodal",
"community": 12,
"community_name": "PetProfile.tsx",
- "norm_label": "productcard()"
+ "norm_label": "orderdetailsmodal()"
},
{
- "label": "OrderSuccess()",
+ "label": "getStatusIcon()",
"file_type": "code",
- "source_file": "frontend/application/components/OrderSuccess.tsx",
- "source_location": "L17",
+ "source_file": "frontend/application/components/OrderDetailsModal.tsx",
+ "source_location": "L282",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_ordersuccess_ordersuccess",
+ "id": "frontend_application_components_orderdetailsmodal_orderdetailsmodal_getstatusicon",
"community": 12,
"community_name": "PetProfile.tsx",
- "norm_label": "ordersuccess()"
+ "norm_label": "getstatusicon()"
},
{
- "label": "SearchResultsPage()",
+ "label": "getStatusLabel()",
"file_type": "code",
- "source_file": "frontend/application/components/SearchResultsPage.tsx",
- "source_location": "L13",
+ "source_file": "frontend/application/components/OrderDetailsModal.tsx",
+ "source_location": "L302",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_searchresultspage_searchresultspage",
+ "id": "frontend_application_components_orderdetailsmodal_orderdetailsmodal_getstatuslabel",
"community": 12,
"community_name": "PetProfile.tsx",
- "norm_label": "searchresultspage()"
+ "norm_label": "getstatuslabel()"
},
{
"label": "OrderRowSkeleton()",
@@ -6499,54 +6469,114 @@
"community_name": "PetProfile.tsx",
"norm_label": "skeleton()"
},
- {
- "label": "SmartAdvisor()",
- "file_type": "code",
- "source_file": "frontend/application/components/SmartAdvisor.tsx",
- "source_location": "L54",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_smartadvisor_smartadvisor",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "smartadvisor()"
- },
- {
- "label": "getJwtRefreshSecret()",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.constants.ts",
- "source_location": "L10",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_auth_auth_constants_getjwtrefreshsecret",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "getjwtrefreshsecret()"
- },
- {
- "label": "getJwtSecret()",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.constants.ts",
- "source_location": "L7",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_auth_auth_constants_getjwtsecret",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "getjwtsecret()"
- },
{
"label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/auth/jwt.strategy.ts",
- "source_location": "L16",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L41",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_auth_jwt_strategy_jwtstrategy_constructor",
+ "id": "frontend_application_lib_services_authservice_authservice_constructor",
"community": 122,
- "community_name": "auth.module.ts",
+ "community_name": "AuthService",
"norm_label": ".constructor()"
},
+ {
+ "label": ".getInstance()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L43",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_getinstance",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".getinstance()"
+ },
+ {
+ "label": ".getProfile()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L121",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_getprofile",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".getprofile()"
+ },
+ {
+ "label": ".login()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L103",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_login",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".login()"
+ },
+ {
+ "label": ".logout()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L152",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_logout",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".logout()"
+ },
+ {
+ "label": ".register()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L85",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_register",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".register()"
+ },
+ {
+ "label": ".sendOtp()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L53",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_sendotp",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".sendotp()"
+ },
+ {
+ "label": ".updateProfile()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L138",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_updateprofile",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".updateprofile()"
+ },
+ {
+ "label": ".verifyOtp()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/authService.ts",
+ "source_location": "L67",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_authservice_authservice_verifyotp",
+ "community": 122,
+ "community_name": "AuthService",
+ "norm_label": ".verifyotp()"
+ },
{
"label": ".constructor()",
"file_type": "code",
@@ -6559,6 +6589,18 @@
"community_name": "BlogsService",
"norm_label": ".constructor()"
},
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/blogs.service.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_blogs_service_blogsservice_constructor",
+ "community": 123,
+ "community_name": "BlogsService",
+ "norm_label": ".constructor()"
+ },
{
"label": ".createBlog()",
"file_type": "code",
@@ -6763,6 +6805,78 @@
"community_name": "BlogsService",
"norm_label": ".revalidateblog()"
},
+ {
+ "label": ".adjustWallet()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L97",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_adjustwallet",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".adjustwallet()"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L30",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_constructor",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".constructor()"
+ },
+ {
+ "label": ".createCoupon()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L209",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_createcoupon",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createcoupon()"
+ },
+ {
+ "label": ".createDoctor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L247",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_createdoctor",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createdoctor()"
+ },
+ {
+ "label": ".createProduct()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L128",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_createproduct",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createproduct()"
+ },
+ {
+ "label": ".createUser()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L51",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_createuser",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createuser()"
+ },
{
"label": ".deleteCoupon()",
"file_type": "code",
@@ -6772,7 +6886,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller_deletecoupon",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deletecoupon()"
},
{
@@ -6784,7 +6898,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller_deletedoctor",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deletedoctor()"
},
{
@@ -6796,7 +6910,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller_deleteproduct",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deleteproduct()"
},
{
@@ -6808,7 +6922,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller_deleteuser",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deleteuser()"
},
{
@@ -6820,9 +6934,21 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller_getorderbyid",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".getorderbyid()"
},
+ {
+ "label": ".getSettings()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L287",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_getsettings",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".getsettings()"
+ },
{
"label": ".getUserDetails()",
"file_type": "code",
@@ -6832,9 +6958,177 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_admincontroller_getuserdetails",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".getuserdetails()"
},
+ {
+ "label": ".refundOrderToWallet()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L184",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_refundordertowallet",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".refundordertowallet()"
+ },
+ {
+ "label": ".toggleCoupon()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L223",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_togglecoupon",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".togglecoupon()"
+ },
+ {
+ "label": ".updateCoupon()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L216",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updatecoupon",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updatecoupon()"
+ },
+ {
+ "label": ".updateDoctor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L263",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updatedoctor",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updatedoctor()"
+ },
+ {
+ "label": ".updateOrderStatus()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L169",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updateorderstatus",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateorderstatus()"
+ },
+ {
+ "label": ".updateProduct()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L135",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updateproduct",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateproduct()"
+ },
+ {
+ "label": ".updateSettings()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L294",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updatesettings",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updatesettings()"
+ },
+ {
+ "label": ".updateUser()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L69",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updateuser",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateuser()"
+ },
+ {
+ "label": ".updateUserRole()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L90",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_updateuserrole",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateuserrole()"
+ },
+ {
+ "label": ".adjustUserWallet()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L970",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_adjustuserwallet",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".adjustuserwallet()"
+ },
+ {
+ "label": ".createCoupon()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L772",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_createcoupon",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createcoupon()"
+ },
+ {
+ "label": ".createDoctor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L943",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_createdoctor",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createdoctor()"
+ },
+ {
+ "label": ".createProduct()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L399",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_createproduct",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createproduct()"
+ },
+ {
+ "label": ".createUser()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L177",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_createuser",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".createuser()"
+ },
{
"label": ".deleteCoupon()",
"file_type": "code",
@@ -6844,7 +7138,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_service_adminservice_deletecoupon",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deletecoupon()"
},
{
@@ -6856,21 +7150,9 @@
"_origin": "ast",
"id": "backend_src_admin_admin_service_adminservice_deletedoctor",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deletedoctor()"
},
- {
- "label": ".deleteProduct()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L559",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_deleteproduct",
- "community": 128,
- "community_name": "AdminController",
- "norm_label": ".deleteproduct()"
- },
{
"label": ".deleteUser()",
"file_type": "code",
@@ -6880,7 +7162,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_service_adminservice_deleteuser",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".deleteuser()"
},
{
@@ -6892,9 +7174,33 @@
"_origin": "ast",
"id": "backend_src_admin_admin_service_adminservice_getorderbyid",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".getorderbyid()"
},
+ {
+ "label": ".getPets()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L887",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_getpets",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".getpets()"
+ },
+ {
+ "label": ".getSettings()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L842",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_getsettings",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".getsettings()"
+ },
{
"label": ".getUserDetails()",
"file_type": "code",
@@ -6904,9 +7210,177 @@
"_origin": "ast",
"id": "backend_src_admin_admin_service_adminservice_getuserdetails",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": ".getuserdetails()"
},
+ {
+ "label": ".refundOrderToWallet()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L673",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_refundordertowallet",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".refundordertowallet()"
+ },
+ {
+ "label": ".toggleCoupon()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L829",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_togglecoupon",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".togglecoupon()"
+ },
+ {
+ "label": ".updateCoupon()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L799",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updatecoupon",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updatecoupon()"
+ },
+ {
+ "label": ".updateDoctor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L953",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updatedoctor",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updatedoctor()"
+ },
+ {
+ "label": ".updateOrderStatus()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L653",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updateorderstatus",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateorderstatus()"
+ },
+ {
+ "label": ".updateProduct()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L468",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updateproduct",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateproduct()"
+ },
+ {
+ "label": ".updateSettings()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L850",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updatesettings",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updatesettings()"
+ },
+ {
+ "label": ".updateUser()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L220",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updateuser",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateuser()"
+ },
+ {
+ "label": ".updateUserRole()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L281",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_updateuserrole",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": ".updateuserrole()"
+ },
+ {
+ "label": ".componentDidCatch()",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L36",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_componentdidcatch",
+ "community": 129,
+ "community_name": "RouteErrorBoundary",
+ "norm_label": ".componentdidcatch()"
+ },
+ {
+ "label": ".getDerivedStateFromError()",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L22",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_getderivedstatefromerror",
+ "community": 129,
+ "community_name": "RouteErrorBoundary",
+ "norm_label": ".getderivedstatefromerror()"
+ },
+ {
+ "label": ".handleGoHome()",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L57",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_handlegohome",
+ "community": 129,
+ "community_name": "RouteErrorBoundary",
+ "norm_label": ".handlegohome()"
+ },
+ {
+ "label": ".handleReload()",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L53",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_handlereload",
+ "community": 129,
+ "community_name": "RouteErrorBoundary",
+ "norm_label": ".handlereload()"
+ },
+ {
+ "label": ".render()",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_location": "L61",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_render",
+ "community": 129,
+ "community_name": "RouteErrorBoundary",
+ "norm_label": ".render()"
+ },
{
"label": "generateOpenApi()",
"file_type": "code",
@@ -7112,184 +7586,100 @@
"norm_label": "save_json()"
},
{
- "label": ".createReview()",
+ "label": "Blog()",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.controller.ts",
+ "source_file": "frontend/application/app/blog/page.tsx",
+ "source_location": "L75",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_blog_page_blog",
+ "community": 134,
+ "community_name": "blog/page.tsx",
+ "norm_label": "blog()"
+ },
+ {
+ "label": "generateMetadata()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/blog/page.tsx",
+ "source_location": "L5",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_blog_page_generatemetadata",
+ "community": 134,
+ "community_name": "blog/page.tsx",
+ "norm_label": "generatemetadata()"
+ },
+ {
+ "label": "getBlogs()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/blog/page.tsx",
"source_location": "L31",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_reviews_reviews_controller_reviewscontroller_createreview",
+ "id": "frontend_application_app_blog_page_getblogs",
"community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": ".createreview()"
+ "community_name": "blog/page.tsx",
+ "norm_label": "getblogs()"
},
{
- "label": ".createReview()",
+ "label": "getCategories()",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.service.ts",
- "source_location": "L24",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_service_reviewsservice_createreview",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": ".createreview()"
- },
- {
- "label": ".componentDidCatch()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L36",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_componentdidcatch",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": ".componentdidcatch()"
- },
- {
- "label": ".getDerivedStateFromError()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L22",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_getderivedstatefromerror",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": ".getderivedstatefromerror()"
- },
- {
- "label": ".handleGoHome()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L57",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_handlegohome",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": ".handlegohome()"
- },
- {
- "label": ".handleReload()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L53",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_handlereload",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": ".handlereload()"
- },
- {
- "label": ".render()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
- "source_location": "L61",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary_routeerrorboundary_render",
- "community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": ".render()"
- },
- {
- "label": "PaymentVerifyPage()",
- "file_type": "code",
- "source_file": "frontend/application/app/payment/verify/page.tsx",
- "source_location": "L319",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_payment_verify_page_paymentverifypage",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "paymentverifypage()"
- },
- {
- "label": "VerifyContent()",
- "file_type": "code",
- "source_file": "frontend/application/app/payment/verify/page.tsx",
- "source_location": "L23",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_payment_verify_page_verifycontent",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "verifycontent()"
- },
- {
- "label": "B2BPortal()",
- "file_type": "code",
- "source_file": "frontend/application/components/B2BPortal.tsx",
- "source_location": "L23",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_b2bportal_b2bportal",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "b2bportal()"
- },
- {
- "label": "CartDrawer()",
- "file_type": "code",
- "source_file": "frontend/application/components/CartDrawer.tsx",
+ "source_file": "frontend/application/app/blog/page.tsx",
"source_location": "L15",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_cartdrawer_cartdrawer",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "cartdrawer()"
+ "id": "frontend_application_app_blog_page_getcategories",
+ "community": 134,
+ "community_name": "blog/page.tsx",
+ "norm_label": "getcategories()"
},
{
- "label": "Header()",
+ "label": "BlogPage()",
"file_type": "code",
- "source_file": "frontend/application/components/Header.tsx",
- "source_location": "L28",
+ "source_file": "frontend/application/components/BlogPage.tsx",
+ "source_location": "L52",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_header_header",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "header()"
+ "id": "frontend_application_components_blogpage_blogpage",
+ "community": 134,
+ "community_name": "blog/page.tsx",
+ "norm_label": "blogpage()"
},
{
- "label": "handleClickOutside()",
+ "label": "generateMetadata()",
"file_type": "code",
- "source_file": "frontend/application/components/Header.tsx",
- "source_location": "L180",
+ "source_file": "frontend/application/app/layout.tsx",
+ "source_location": "L7",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_header_header_handleclickoutside",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "handleclickoutside()"
+ "id": "frontend_application_app_layout_generatemetadata",
+ "community": 139,
+ "community_name": "layout.tsx",
+ "norm_label": "generatemetadata()"
},
{
- "label": "LoginModal()",
+ "label": "RootLayout()",
"file_type": "code",
- "source_file": "frontend/application/components/LoginModal.tsx",
- "source_location": "L18",
+ "source_file": "frontend/application/app/layout.tsx",
+ "source_location": "L100",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_loginmodal_loginmodal",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "loginmodal()"
+ "id": "frontend_application_app_layout_rootlayout",
+ "community": 139,
+ "community_name": "layout.tsx",
+ "norm_label": "rootlayout()"
},
{
- "label": "PrescriptionUploadModal()",
+ "label": "generateOrganizationSchema()",
"file_type": "code",
- "source_file": "frontend/application/components/PrescriptionUploadModal.tsx",
- "source_location": "L14",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L24",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_prescriptionuploadmodal_prescriptionuploadmodal",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "prescriptionuploadmodal()"
+ "id": "frontend_application_lib_schema_generateorganizationschema",
+ "community": 139,
+ "community_name": "layout.tsx",
+ "norm_label": "generateorganizationschema()"
},
{
"label": "getBaseURL()",
@@ -7303,66 +7693,6 @@
"community_name": "lib/services/api.ts",
"norm_label": "getbaseurl()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/orderService.ts",
- "source_location": "L34",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_orderservice_orderservice_constructor",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": ".constructor()"
- },
- {
- "label": ".createOrder()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/orderService.ts",
- "source_location": "L46",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_orderservice_orderservice_createorder",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": ".createorder()"
- },
- {
- "label": ".getInstance()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/orderService.ts",
- "source_location": "L36",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_orderservice_orderservice_getinstance",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": ".getinstance()"
- },
- {
- "label": ".getOrderById()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/orderService.ts",
- "source_location": "L84",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_orderservice_orderservice_getorderbyid",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": ".getorderbyid()"
- },
- {
- "label": ".getUserOrders()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/orderService.ts",
- "source_location": "L70",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_orderservice_orderservice_getuserorders",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": ".getuserorders()"
- },
{
"label": ".componentDidCatch()",
"file_type": "code",
@@ -7460,52 +7790,40 @@
"norm_label": "generateopenapi()"
},
{
- "label": ".createProduct()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L128",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_createproduct",
- "community": 145,
- "community_name": "ProductDto",
- "norm_label": ".createproduct()"
- },
- {
- "label": ".updateProduct()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L135",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updateproduct",
- "community": 145,
- "community_name": "ProductDto",
- "norm_label": ".updateproduct()"
- },
- {
- "label": ".createProduct()",
+ "label": ".constructor()",
"file_type": "code",
"source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L399",
+ "source_location": "L52",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_createproduct",
- "community": 145,
- "community_name": "ProductDto",
- "norm_label": ".createproduct()"
+ "id": "backend_src_admin_admin_service_adminservice_constructor",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": ".constructor()"
},
{
- "label": ".updateProduct()",
+ "label": ".deleteProduct()",
"file_type": "code",
"source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L468",
+ "source_location": "L559",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updateproduct",
- "community": 145,
- "community_name": "ProductDto",
- "norm_label": ".updateproduct()"
+ "id": "backend_src_admin_admin_service_adminservice_deleteproduct",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": ".deleteproduct()"
+ },
+ {
+ "label": ".frontendUrl()",
+ "file_type": "code",
+ "source_file": "backend/src/common/revalidation/revalidation.service.ts",
+ "source_location": "L7",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_frontendurl",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": ".frontendurl()"
},
{
"label": ".revalidatePath()",
@@ -7516,7 +7834,7 @@
"_origin": "ast",
"id": "backend_src_common_revalidation_revalidation_service_revalidationservice_revalidatepath",
"community": 147,
- "community_name": "ReviewsService",
+ "community_name": "RevalidationService",
"norm_label": ".revalidatepath()"
},
{
@@ -7528,7 +7846,7 @@
"_origin": "ast",
"id": "backend_src_common_revalidation_revalidation_service_revalidationservice_revalidateproduct",
"community": 147,
- "community_name": "ReviewsService",
+ "community_name": "RevalidationService",
"norm_label": ".revalidateproduct()"
},
{
@@ -7540,7 +7858,7 @@
"_origin": "ast",
"id": "backend_src_common_revalidation_revalidation_service_revalidationservice_revalidatesettings",
"community": 147,
- "community_name": "ReviewsService",
+ "community_name": "RevalidationService",
"norm_label": ".revalidatesettings()"
},
{
@@ -7552,164 +7870,92 @@
"_origin": "ast",
"id": "backend_src_common_revalidation_revalidation_service_revalidationservice_revalidatetag",
"community": 147,
- "community_name": "ReviewsService",
+ "community_name": "RevalidationService",
"norm_label": ".revalidatetag()"
},
{
- "label": ".deleteReview()",
+ "label": ".secret()",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.service.ts",
- "source_location": "L243",
+ "source_file": "backend/src/common/revalidation/revalidation.service.ts",
+ "source_location": "L15",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_reviews_reviews_service_reviewsservice_deletereview",
+ "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_secret",
"community": 147,
- "community_name": "ReviewsService",
- "norm_label": ".deletereview()"
+ "community_name": "RevalidationService",
+ "norm_label": ".secret()"
},
{
- "label": ".getAdminReviews()",
+ "label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.service.ts",
- "source_location": "L137",
+ "source_file": "backend/src/products/products.service.ts",
+ "source_location": "L9",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_reviews_reviews_service_reviewsservice_getadminreviews",
+ "id": "backend_src_products_products_service_productsservice_constructor",
"community": 147,
- "community_name": "ReviewsService",
- "norm_label": ".getadminreviews()"
+ "community_name": "RevalidationService",
+ "norm_label": ".constructor()"
},
{
- "label": ".updateReviewStatus()",
+ "label": "generateMetadata()",
"file_type": "code",
- "source_file": "backend/src/reviews/reviews.service.ts",
- "source_location": "L207",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L38",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_reviews_reviews_service_reviewsservice_updatereviewstatus",
- "community": 147,
- "community_name": "ReviewsService",
- "norm_label": ".updatereviewstatus()"
- },
- {
- "label": ".adjustWallet()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L97",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_adjustwallet",
+ "id": "frontend_application_app_wiki_slug_page_generatemetadata",
"community": 148,
- "community_name": "Body",
- "norm_label": ".adjustwallet()"
+ "community_name": "wiki/[slug]/page.tsx",
+ "norm_label": "generatemetadata()"
},
{
- "label": ".createCoupon()",
+ "label": "getRelatedProducts()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L209",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L24",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_createcoupon",
+ "id": "frontend_application_app_wiki_slug_page_getrelatedproducts",
"community": 148,
- "community_name": "Body",
- "norm_label": ".createcoupon()"
+ "community_name": "wiki/[slug]/page.tsx",
+ "norm_label": "getrelatedproducts()"
},
{
- "label": ".createDoctor()",
+ "label": "getWikiTerm()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L247",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L11",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_createdoctor",
+ "id": "frontend_application_app_wiki_slug_page_getwikiterm",
"community": 148,
- "community_name": "Body",
- "norm_label": ".createdoctor()"
+ "community_name": "wiki/[slug]/page.tsx",
+ "norm_label": "getwikiterm()"
},
{
- "label": ".refundOrderToWallet()",
+ "label": "WikiTermPage()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L184",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L78",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_refundordertowallet",
+ "id": "frontend_application_app_wiki_slug_page_wikitermpage",
"community": 148,
- "community_name": "Body",
- "norm_label": ".refundordertowallet()"
+ "community_name": "wiki/[slug]/page.tsx",
+ "norm_label": "wikitermpage()"
},
{
- "label": ".updateCoupon()",
+ "label": "generateMedicalWebPageSchema()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L216",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L159",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updatecoupon",
+ "id": "frontend_application_lib_schema_generatemedicalwebpageschema",
"community": 148,
- "community_name": "Body",
- "norm_label": ".updatecoupon()"
- },
- {
- "label": ".adjustUserWallet()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L970",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_adjustuserwallet",
- "community": 148,
- "community_name": "Body",
- "norm_label": ".adjustuserwallet()"
- },
- {
- "label": ".createCoupon()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L772",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_createcoupon",
- "community": 148,
- "community_name": "Body",
- "norm_label": ".createcoupon()"
- },
- {
- "label": ".createDoctor()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L943",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_createdoctor",
- "community": 148,
- "community_name": "Body",
- "norm_label": ".createdoctor()"
- },
- {
- "label": ".refundOrderToWallet()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L673",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_refundordertowallet",
- "community": 148,
- "community_name": "Body",
- "norm_label": ".refundordertowallet()"
- },
- {
- "label": ".updateCoupon()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L799",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updatecoupon",
- "community": 148,
- "community_name": "Body",
- "norm_label": ".updatecoupon()"
+ "community_name": "wiki/[slug]/page.tsx",
+ "norm_label": "generatemedicalwebpageschema()"
},
{
"label": "SmsSettingsPage()",
@@ -7819,6 +8065,42 @@
"community_name": "src/services/api.ts",
"norm_label": "processqueue()"
},
+ {
+ "label": ".getDashboardStats()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L34",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_admincontroller_getdashboardstats",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".getdashboardstats()"
+ },
+ {
+ "label": ".getDashboardStats()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L58",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_adminservice_getdashboardstats",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".getdashboardstats()"
+ },
+ {
+ "label": ".configure()",
+ "file_type": "code",
+ "source_file": "backend/src/app.module.ts",
+ "source_location": "L92",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_app_module_appmodule_configure",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".configure()"
+ },
{
"label": ".adminLogin()",
"file_type": "code",
@@ -7828,9 +8110,21 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice_adminlogin",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".adminlogin()"
},
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.service.ts",
+ "source_location": "L38",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_service_authservice_constructor",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".constructor()"
+ },
{
"label": ".login()",
"file_type": "code",
@@ -7840,7 +8134,7 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice_login",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".login()"
},
{
@@ -7852,7 +8146,7 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice_refresh",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".refresh()"
},
{
@@ -7864,7 +8158,7 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice_register",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".register()"
},
{
@@ -7876,7 +8170,7 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice_sendotp",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".sendotp()"
},
{
@@ -7888,9 +8182,21 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_authservice_verifyotp",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".verifyotp()"
},
+ {
+ "label": ".incrementRequestCount()",
+ "file_type": "code",
+ "source_file": "backend/src/common/metrics.controller.ts",
+ "source_location": "L13",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_common_metrics_controller_metricscontroller_incrementrequestcount",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".incrementrequestcount()"
+ },
{
"label": "normalizeMobile()",
"file_type": "code",
@@ -7900,7 +8206,7 @@
"_origin": "ast",
"id": "backend_src_common_utils_phone_utils_normalizemobile",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": "normalizemobile()"
},
{
@@ -7912,9 +8218,69 @@
"_origin": "ast",
"id": "backend_src_redis_redis_service_redisservice_del",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".del()"
},
+ {
+ "label": ".get()",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L27",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_service_redisservice_get",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".get()"
+ },
+ {
+ "label": ".incr()",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L35",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_service_redisservice_incr",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".incr()"
+ },
+ {
+ "label": ".onModuleDestroy()",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L15",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_service_redisservice_onmoduledestroy",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".onmoduledestroy()"
+ },
+ {
+ "label": ".onModuleInit()",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L8",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_service_redisservice_onmoduleinit",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".onmoduleinit()"
+ },
+ {
+ "label": ".set()",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L19",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_service_redisservice_set",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": ".set()"
+ },
{
"label": ".ttl()",
"file_type": "code",
@@ -7924,80 +8290,68 @@
"_origin": "ast",
"id": "backend_src_redis_redis_service_redisservice_ttl",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": ".ttl()"
},
- {
- "label": "RichTextEditor()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
- "source_location": "L76",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditor",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "richtexteditor()"
- },
- {
- "label": "Blogs()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L113",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs_blogs",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "blogs()"
- },
- {
- "label": "ContactPage()",
- "file_type": "code",
- "source_file": "frontend/application/app/contact/page.tsx",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_contact_page_contactpage",
- "community": 156,
- "community_name": "contact/page.tsx",
- "norm_label": "contactpage()"
- },
{
"label": "generateMetadata()",
"file_type": "code",
- "source_file": "frontend/application/app/contact/page.tsx",
- "source_location": "L5",
+ "source_file": "frontend/application/app/trust-seals/page.tsx",
+ "source_location": "L7",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_contact_page_generatemetadata",
- "community": 156,
- "community_name": "contact/page.tsx",
+ "id": "frontend_application_app_trust_seals_page_generatemetadata",
+ "community": 152,
+ "community_name": "trust-seals/page.tsx",
"norm_label": "generatemetadata()"
},
{
- "label": "ContactFormClient()",
+ "label": "TrustSealsPage()",
"file_type": "code",
- "source_file": "frontend/application/components/ContactFormClient.tsx",
- "source_location": "L14",
+ "source_file": "frontend/application/app/trust-seals/page.tsx",
+ "source_location": "L15",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_contactformclient_contactformclient",
- "community": 156,
- "community_name": "contact/page.tsx",
- "norm_label": "contactformclient()"
+ "id": "frontend_application_app_trust_seals_page_trustsealspage",
+ "community": 152,
+ "community_name": "trust-seals/page.tsx",
+ "norm_label": "trustsealspage()"
},
{
- "label": "fetchContactInfo()",
+ "label": "EnamadBadge()",
"file_type": "code",
- "source_file": "frontend/application/components/ContactFormClient.tsx",
- "source_location": "L25",
+ "source_file": "frontend/application/components/EnamadBadge.tsx",
+ "source_location": "L9",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_contactformclient_contactformclient_fetchcontactinfo",
- "community": 156,
- "community_name": "contact/page.tsx",
- "norm_label": "fetchcontactinfo()"
+ "id": "frontend_application_components_enamadbadge_enamadbadge",
+ "community": 152,
+ "community_name": "trust-seals/page.tsx",
+ "norm_label": "enamadbadge()"
+ },
+ {
+ "label": "runSeoBackfill()",
+ "file_type": "code",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L9",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_scripts_seo_backfill_runseobackfill",
+ "community": 155,
+ "community_name": "seo-backfill.ts",
+ "norm_label": "runseobackfill()"
+ },
+ {
+ "label": "stripHtml()",
+ "file_type": "code",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L5",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_scripts_seo_backfill_striphtml",
+ "community": 155,
+ "community_name": "seo-backfill.ts",
+ "norm_label": "striphtml()"
},
{
"label": "ErrorBoundary()",
@@ -8228,112 +8582,172 @@
"norm_label": "createpaginatedschema()"
},
{
- "label": ".constructor()",
+ "label": "B2BPage()",
"file_type": "code",
- "source_file": "backend/src/auth/auth.service.ts",
- "source_location": "L38",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_auth_auth_service_authservice_constructor",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": ".constructor()"
- },
- {
- "label": ".onModuleDestroy()",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
+ "source_file": "frontend/application/app/b2b/page.tsx",
"source_location": "L15",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_redis_redis_service_redisservice_onmoduledestroy",
+ "id": "frontend_application_app_b2b_page_b2bpage",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": ".onmoduledestroy()"
- },
- {
- "label": ".onModuleInit()",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
- "source_location": "L8",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_redis_redis_service_redisservice_onmoduleinit",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": ".onmoduleinit()"
- },
- {
- "label": ".set()",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
- "source_location": "L19",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_redis_redis_service_redisservice_set",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": ".set()"
- },
- {
- "label": "Blog()",
- "file_type": "code",
- "source_file": "frontend/application/app/blog/page.tsx",
- "source_location": "L75",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_blog_page_blog",
- "community": 177,
- "community_name": "blog/page.tsx",
- "norm_label": "blog()"
+ "community_name": "schema.ts",
+ "norm_label": "b2bpage()"
},
{
"label": "generateMetadata()",
"file_type": "code",
- "source_file": "frontend/application/app/blog/page.tsx",
- "source_location": "L5",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L7",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_blog_page_generatemetadata",
- "community": 177,
- "community_name": "blog/page.tsx",
+ "id": "frontend_application_app_b2b_page_generatemetadata",
+ "community": 17,
+ "community_name": "schema.ts",
"norm_label": "generatemetadata()"
},
{
- "label": "getBlogs()",
+ "label": "ContactPage()",
"file_type": "code",
- "source_file": "frontend/application/app/blog/page.tsx",
- "source_location": "L31",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_blog_page_getblogs",
- "community": 177,
- "community_name": "blog/page.tsx",
- "norm_label": "getblogs()"
- },
- {
- "label": "getCategories()",
- "file_type": "code",
- "source_file": "frontend/application/app/blog/page.tsx",
+ "source_file": "frontend/application/app/contact/page.tsx",
"source_location": "L15",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_blog_page_getcategories",
- "community": 177,
- "community_name": "blog/page.tsx",
- "norm_label": "getcategories()"
+ "id": "frontend_application_app_contact_page_contactpage",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "contactpage()"
},
{
- "label": "BlogPage()",
+ "label": "generateMetadata()",
"file_type": "code",
- "source_file": "frontend/application/components/BlogPage.tsx",
- "source_location": "L52",
+ "source_file": "frontend/application/app/contact/page.tsx",
+ "source_location": "L5",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_blogpage_blogpage",
- "community": 177,
- "community_name": "blog/page.tsx",
- "norm_label": "blogpage()"
+ "id": "frontend_application_app_contact_page_generatemetadata",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "generatemetadata()"
+ },
+ {
+ "label": "generateMetadata()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L6",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_videos_page_generatemetadata",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "generatemetadata()"
+ },
+ {
+ "label": "getInitialVideos()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L14",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_videos_page_getinitialvideos",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "getinitialvideos()"
+ },
+ {
+ "label": "Videos()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L30",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_videos_page_videos",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "videos()"
+ },
+ {
+ "label": "ContactFormClient()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ContactFormClient.tsx",
+ "source_location": "L14",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_contactformclient_contactformclient",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "contactformclient()"
+ },
+ {
+ "label": "fetchContactInfo()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ContactFormClient.tsx",
+ "source_location": "L25",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_contactformclient_contactformclient_fetchcontactinfo",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "fetchcontactinfo()"
+ },
+ {
+ "label": "VideosPage()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/VideosPage.tsx",
+ "source_location": "L12",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_videospage_videospage",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "videospage()"
+ },
+ {
+ "label": "generateB2BServiceSchema()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L120",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_schema_generateb2bserviceschema",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "generateb2bserviceschema()"
+ },
+ {
+ "label": "generateBreadcrumbSchema()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L222",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_schema_generatebreadcrumbschema",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "generatebreadcrumbschema()"
+ },
+ {
+ "label": "generateLocalBusinessSchema()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L72",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_schema_generatelocalbusinessschema",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "generatelocalbusinessschema()"
+ },
+ {
+ "label": "generateVideoObjectSchema()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L195",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_schema_generatevideoobjectschema",
+ "community": 17,
+ "community_name": "schema.ts",
+ "norm_label": "generatevideoobjectschema()"
},
{
"label": ".addComment()",
@@ -8344,7 +8758,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_addcomment",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".addcomment()"
},
{
@@ -8356,7 +8770,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_constructor",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".constructor()"
},
{
@@ -8368,7 +8782,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_findall",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".findall()"
},
{
@@ -8380,7 +8794,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_findcommentsbyslug",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".findcommentsbyslug()"
},
{
@@ -8392,7 +8806,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_findhomepage",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".findhomepage()"
},
{
@@ -8404,7 +8818,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_findonebyslug",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".findonebyslug()"
},
{
@@ -8416,7 +8830,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_getcategories",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".getcategories()"
},
{
@@ -8428,9 +8842,45 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_blogsservice_gettags",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": ".gettags()"
},
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.service.ts",
+ "source_location": "L8",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_service_wikiservice_constructor",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": ".constructor()"
+ },
+ {
+ "label": ".findAll()",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.service.ts",
+ "source_location": "L10",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_service_wikiservice_findall",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": ".findall()"
+ },
+ {
+ "label": ".findOneByKey()",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.service.ts",
+ "source_location": "L52",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_service_wikiservice_findonebykey",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": ".findonebykey()"
+ },
{
"label": ".handleRequest()",
"file_type": "code",
@@ -8467,18 +8917,6 @@
"community_name": "JwtAuthGuard",
"norm_label": ".constructor()"
},
- {
- "label": ".configure()",
- "file_type": "code",
- "source_file": "backend/src/app.module.ts",
- "source_location": "L92",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_app_module_appmodule_configure",
- "community": 184,
- "community_name": "MetricsController",
- "norm_label": ".configure()"
- },
{
"label": ".constructor()",
"file_type": "code",
@@ -8503,102 +8941,6 @@
"community_name": "MetricsController",
"norm_label": ".getmetrics()"
},
- {
- "label": ".incrementRequestCount()",
- "file_type": "code",
- "source_file": "backend/src/common/metrics.controller.ts",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_common_metrics_controller_metricscontroller_incrementrequestcount",
- "community": 184,
- "community_name": "MetricsController",
- "norm_label": ".incrementrequestcount()"
- },
- {
- "label": ".incr()",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
- "source_location": "L35",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_redis_redis_service_redisservice_incr",
- "community": 184,
- "community_name": "MetricsController",
- "norm_label": ".incr()"
- },
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.controller.ts",
- "source_location": "L19",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_wikicontroller_constructor",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": ".constructor()"
- },
- {
- "label": ".findAll()",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.controller.ts",
- "source_location": "L24",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_wikicontroller_findall",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": ".findall()"
- },
- {
- "label": ".findOne()",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.controller.ts",
- "source_location": "L32",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_wikicontroller_findone",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": ".findone()"
- },
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.service.ts",
- "source_location": "L8",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_service_wikiservice_constructor",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": ".constructor()"
- },
- {
- "label": ".findAll()",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.service.ts",
- "source_location": "L10",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_service_wikiservice_findall",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": ".findall()"
- },
- {
- "label": ".findOneByKey()",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.service.ts",
- "source_location": "L52",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_service_wikiservice_findonebykey",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": ".findonebykey()"
- },
{
"label": "main()",
"file_type": "code",
@@ -8632,21 +8974,9 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller_constructor",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".constructor()"
},
- {
- "label": ".findAll()",
- "file_type": "code",
- "source_file": "backend/src/products/products.controller.ts",
- "source_location": "L31",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_products_products_controller_productscontroller_findall",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": ".findall()"
- },
{
"label": ".findOne()",
"file_type": "code",
@@ -8656,7 +8986,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller_findone",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".findone()"
},
{
@@ -8668,7 +8998,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller_getactivefilters",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".getactivefilters()"
},
{
@@ -8680,7 +9010,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller_getdosageconfig",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".getdosageconfig()"
},
{
@@ -8692,7 +9022,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller_getnavigationfilters",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".getnavigationfilters()"
},
{
@@ -8704,21 +9034,9 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_productscontroller_updatedosageconfig",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".updatedosageconfig()"
},
- {
- "label": ".findAll()",
- "file_type": "code",
- "source_file": "backend/src/products/products.service.ts",
- "source_location": "L14",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_products_products_service_productsservice_findall",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": ".findall()"
- },
{
"label": ".findOne()",
"file_type": "code",
@@ -8728,7 +9046,7 @@
"_origin": "ast",
"id": "backend_src_products_products_service_productsservice_findone",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".findone()"
},
{
@@ -8740,7 +9058,7 @@
"_origin": "ast",
"id": "backend_src_products_products_service_productsservice_getactivefilters",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".getactivefilters()"
},
{
@@ -8752,7 +9070,7 @@
"_origin": "ast",
"id": "backend_src_products_products_service_productsservice_getdosageconfig",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".getdosageconfig()"
},
{
@@ -8764,7 +9082,7 @@
"_origin": "ast",
"id": "backend_src_products_products_service_productsservice_getnavigationfilters",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".getnavigationfilters()"
},
{
@@ -8776,117 +9094,9 @@
"_origin": "ast",
"id": "backend_src_products_products_service_productsservice_updatedosageconfig",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": ".updatedosageconfig()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L41",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_constructor",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".constructor()"
- },
- {
- "label": ".getInstance()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L43",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_getinstance",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".getinstance()"
- },
- {
- "label": ".getProfile()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L121",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_getprofile",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".getprofile()"
- },
- {
- "label": ".login()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L103",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_login",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".login()"
- },
- {
- "label": ".logout()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L152",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_logout",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".logout()"
- },
- {
- "label": ".register()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L85",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_register",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".register()"
- },
- {
- "label": ".sendOtp()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L53",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_sendotp",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".sendotp()"
- },
- {
- "label": ".updateProfile()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L138",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_updateprofile",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".updateprofile()"
- },
- {
- "label": ".verifyOtp()",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/authService.ts",
- "source_location": "L67",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_services_authservice_authservice_verifyotp",
- "community": 197,
- "community_name": "AuthService",
- "norm_label": ".verifyotp()"
- },
{
"label": ".addPattern()",
"file_type": "code",
@@ -9907,6 +10117,66 @@
"community_name": "seed-custom.ts",
"norm_label": "main()"
},
+ {
+ "label": "PodcastInlinePlayer()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
+ "source_location": "L33",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_podcastinlineplayer_podcastinlineplayer",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "podcastinlineplayer()"
+ },
+ {
+ "label": "handleClickOutside()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
+ "source_location": "L50",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_podcastinlineplayer_podcastinlineplayer_handleclickoutside",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "handleclickoutside()"
+ },
+ {
+ "label": "ProductPage()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductPage.tsx",
+ "source_location": "L78",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_productpage_productpage",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "productpage()"
+ },
+ {
+ "label": "ProductReviews()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductReviews.tsx",
+ "source_location": "L33",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_productreviews_productreviews",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "productreviews()"
+ },
+ {
+ "label": "Tooltip()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/Tooltip.tsx",
+ "source_location": "L14",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_tooltip_tooltip",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "tooltip()"
+ },
{
"label": "FormField()",
"file_type": "code",
@@ -9919,6 +10189,30 @@
"community_name": "FormField.tsx",
"norm_label": "formfield()"
},
+ {
+ "label": "PaymentVerifyPage()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/payment/verify/page.tsx",
+ "source_location": "L319",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_payment_verify_page_paymentverifypage",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "paymentverifypage()"
+ },
+ {
+ "label": "VerifyContent()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/payment/verify/page.tsx",
+ "source_location": "L23",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_payment_verify_page_verifycontent",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "verifycontent()"
+ },
{
"label": "AddressModal()",
"file_type": "code",
@@ -9932,28 +10226,28 @@
"norm_label": "addressmodal()"
},
{
- "label": "AuthModal()",
+ "label": "ArchiveProductCard()",
"file_type": "code",
- "source_file": "frontend/application/components/AuthModal.tsx",
- "source_location": "L38",
+ "source_file": "frontend/application/components/ArchivePage.tsx",
+ "source_location": "L74",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_authmodal_authmodal",
+ "id": "frontend_application_components_archivepage_archiveproductcard",
"community": 22,
"community_name": "UserDashboard.tsx",
- "norm_label": "authmodal()"
+ "norm_label": "archiveproductcard()"
},
{
- "label": "extractOtpFromText()",
+ "label": "B2BPortal()",
"file_type": "code",
- "source_file": "frontend/application/components/AuthModal.tsx",
- "source_location": "L30",
+ "source_file": "frontend/application/components/B2BPortal.tsx",
+ "source_location": "L23",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_authmodal_extractotpfromtext",
+ "id": "frontend_application_components_b2bportal_b2bportal",
"community": 22,
"community_name": "UserDashboard.tsx",
- "norm_label": "extractotpfromtext()"
+ "norm_label": "b2bportal()"
},
{
"label": "BackButton()",
@@ -9991,6 +10285,42 @@
"community_name": "UserDashboard.tsx",
"norm_label": "deleteconfirmmodal()"
},
+ {
+ "label": "ProductCard()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/FeaturedProducts.tsx",
+ "source_location": "L16",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_featuredproducts_productcard",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "productcard()"
+ },
+ {
+ "label": "Header()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/Header.tsx",
+ "source_location": "L28",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_header_header",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "header()"
+ },
+ {
+ "label": "handleClickOutside()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/Header.tsx",
+ "source_location": "L180",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_header_header_handleclickoutside",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "handleclickoutside()"
+ },
{
"label": "HeaderButton()",
"file_type": "code",
@@ -10004,40 +10334,16 @@
"norm_label": "headerbutton()"
},
{
- "label": "OrderDetailsModal()",
+ "label": "LoginModal()",
"file_type": "code",
- "source_file": "frontend/application/components/OrderDetailsModal.tsx",
- "source_location": "L37",
+ "source_file": "frontend/application/components/LoginModal.tsx",
+ "source_location": "L18",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_orderdetailsmodal_orderdetailsmodal",
+ "id": "frontend_application_components_loginmodal_loginmodal",
"community": 22,
"community_name": "UserDashboard.tsx",
- "norm_label": "orderdetailsmodal()"
- },
- {
- "label": "getStatusIcon()",
- "file_type": "code",
- "source_file": "frontend/application/components/OrderDetailsModal.tsx",
- "source_location": "L282",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_orderdetailsmodal_orderdetailsmodal_getstatusicon",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "getstatusicon()"
- },
- {
- "label": "getStatusLabel()",
- "file_type": "code",
- "source_file": "frontend/application/components/OrderDetailsModal.tsx",
- "source_location": "L302",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_orderdetailsmodal_orderdetailsmodal_getstatuslabel",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "getstatuslabel()"
+ "norm_label": "loginmodal()"
},
{
"label": "PetProfile()",
@@ -10051,6 +10357,18 @@
"community_name": "UserDashboard.tsx",
"norm_label": "petprofile()"
},
+ {
+ "label": "PrescriptionUploadModal()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PrescriptionUploadModal.tsx",
+ "source_location": "L14",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_prescriptionuploadmodal_prescriptionuploadmodal",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "prescriptionuploadmodal()"
+ },
{
"label": "SearchableSelect()",
"file_type": "code",
@@ -10063,6 +10381,18 @@
"community_name": "UserDashboard.tsx",
"norm_label": "searchableselect()"
},
+ {
+ "label": "SmartAdvisor()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SmartAdvisor.tsx",
+ "source_location": "L54",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_smartadvisor_smartadvisor",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "smartadvisor()"
+ },
{
"label": "TopUpModal()",
"file_type": "code",
@@ -10099,18 +10429,6 @@
"community_name": "UserDashboard.tsx",
"norm_label": "cn()"
},
- {
- "label": "toEnglishDigits()",
- "file_type": "code",
- "source_file": "frontend/application/lib/utils.ts",
- "source_location": "L6",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_lib_utils_toenglishdigits",
- "community": 22,
- "community_name": "UserDashboard.tsx",
- "norm_label": "toenglishdigits()"
- },
{
"label": "toPersian()",
"file_type": "code",
@@ -10327,42 +10645,6 @@
"community_name": "MenuService",
"norm_label": ".update()"
},
- {
- "label": "CatalogClient()",
- "file_type": "code",
- "source_file": "frontend/application/app/catalog/CatalogClient.tsx",
- "source_location": "L8",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_catalog_catalogclient_catalogclient",
- "community": 231,
- "community_name": "catalog/page.tsx",
- "norm_label": "catalogclient()"
- },
- {
- "label": "CatalogPage()",
- "file_type": "code",
- "source_file": "frontend/application/app/catalog/page.tsx",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_catalog_page_catalogpage",
- "community": 231,
- "community_name": "catalog/page.tsx",
- "norm_label": "catalogpage()"
- },
- {
- "label": "generateMetadata()",
- "file_type": "code",
- "source_file": "frontend/application/app/catalog/page.tsx",
- "source_location": "L5",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_catalog_page_generatemetadata",
- "community": 231,
- "community_name": "catalog/page.tsx",
- "norm_label": "generatemetadata()"
- },
{
"label": "robots()",
"file_type": "code",
@@ -10375,30 +10657,6 @@
"community_name": "robots.ts",
"norm_label": "robots()"
},
- {
- "label": ".initiateOrderPayment()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.service.ts",
- "source_location": "L31",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_service_paymentservice_initiateorderpayment",
- "community": 294,
- "community_name": "ZibalService",
- "norm_label": ".initiateorderpayment()"
- },
- {
- "label": ".initiateWalletTopup()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.service.ts",
- "source_location": "L139",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_service_paymentservice_initiatewallettopup",
- "community": 294,
- "community_name": "ZibalService",
- "norm_label": ".initiatewallettopup()"
- },
{
"label": ".apiRequest()",
"file_type": "code",
@@ -10483,18 +10741,6 @@
"community_name": "ZibalService",
"norm_label": ".getaccesstoken()"
},
- {
- "label": ".getBackendUrl()",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal.service.ts",
- "source_location": "L130",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_service_zibalservice_getbackendurl",
- "community": 294,
- "community_name": "ZibalService",
- "norm_label": ".getbackendurl()"
- },
{
"label": ".getCheckoutQueueReport()",
"file_type": "code",
@@ -10519,18 +10765,6 @@
"community_name": "ZibalService",
"norm_label": ".getcheckoutreport()"
},
- {
- "label": ".getFrontendUrl()",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal.service.ts",
- "source_location": "L111",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_service_zibalservice_getfrontendurl",
- "community": 294,
- "community_name": "ZibalService",
- "norm_label": ".getfrontendurl()"
- },
{
"label": ".getGatewayName()",
"file_type": "code",
@@ -10579,18 +10813,6 @@
"community_name": "ZibalService",
"norm_label": ".getrefundlist()"
},
- {
- "label": ".getStartUrl()",
- "file_type": "code",
- "source_file": "backend/src/payment/zibal.service.ts",
- "source_location": "L211",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_zibal_service_zibalservice_getstarturl",
- "community": 294,
- "community_name": "ZibalService",
- "norm_label": ".getstarturl()"
- },
{
"label": ".getSubMerchantList()",
"file_type": "code",
@@ -10879,6 +11101,162 @@
"community_name": "ZibalEBankService",
"norm_label": ".request()"
},
+ {
+ "label": ".extractRealClientIp()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L48",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_extractrealclientip",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".extractrealclientip()"
+ },
+ {
+ "label": ".handleZibalCallback()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L116",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_handlezibalcallback",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".handlezibalcallback()"
+ },
+ {
+ "label": ".handleZibalLazyCallback()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L194",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_handleziballazycallback",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".handleziballazycallback()"
+ },
+ {
+ "label": ".initiateOrderPayment()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L75",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_initiateorderpayment",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".initiateorderpayment()"
+ },
+ {
+ "label": ".initiateWalletTopup()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L97",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_initiatewallettopup",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".initiatewallettopup()"
+ },
+ {
+ "label": ".verifyPaymentDirect()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
+ "source_location": "L169",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_paymentcontroller_verifypaymentdirect",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".verifypaymentdirect()"
+ },
+ {
+ "label": ".initiateOrderPayment()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.service.ts",
+ "source_location": "L31",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_service_paymentservice_initiateorderpayment",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".initiateorderpayment()"
+ },
+ {
+ "label": ".initiateWalletTopup()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.service.ts",
+ "source_location": "L139",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_service_paymentservice_initiatewallettopup",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".initiatewallettopup()"
+ },
+ {
+ "label": ".getBackendUrl()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/zibal.service.ts",
+ "source_location": "L130",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_zibal_service_zibalservice_getbackendurl",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".getbackendurl()"
+ },
+ {
+ "label": ".getFrontendUrl()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/zibal.service.ts",
+ "source_location": "L111",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_zibal_service_zibalservice_getfrontendurl",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".getfrontendurl()"
+ },
+ {
+ "label": ".getStartUrl()",
+ "file_type": "code",
+ "source_file": "backend/src/payment/zibal.service.ts",
+ "source_location": "L211",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_payment_zibal_service_zibalservice_getstarturl",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": ".getstarturl()"
+ },
+ {
+ "label": "generateMetadata()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/search/page.tsx",
+ "source_location": "L5",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_search_page_generatemetadata",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "generatemetadata()"
+ },
+ {
+ "label": "SearchPage()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/search/page.tsx",
+ "source_location": "L13",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_search_page_searchpage",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "searchpage()"
+ },
{
"label": "GET()",
"file_type": "code",
@@ -10927,18 +11305,6 @@
"community_name": "ProductService",
"norm_label": "sitemap()"
},
- {
- "label": "ArchiveProductCard()",
- "file_type": "code",
- "source_file": "frontend/application/components/ArchivePage.tsx",
- "source_location": "L74",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_archivepage_archiveproductcard",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "archiveproductcard()"
- },
{
"label": "CatalogPageSpread()",
"file_type": "code",
@@ -11023,6 +11389,18 @@
"community_name": "ProductService",
"norm_label": "ingredientwiki()"
},
+ {
+ "label": "SearchResultsPage()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SearchResultsPage.tsx",
+ "source_location": "L13",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_searchresultspage_searchresultspage",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "searchresultspage()"
+ },
{
"label": ".constructor()",
"file_type": "code",
@@ -11143,42 +11521,6 @@
"community_name": "ProductService",
"norm_label": ".serverfetch()"
},
- {
- "label": "generateMetadata()",
- "file_type": "code",
- "source_file": "frontend/application/app/track/page.tsx",
- "source_location": "L5",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_track_page_generatemetadata",
- "community": 311,
- "community_name": "track/page.tsx",
- "norm_label": "generatemetadata()"
- },
- {
- "label": "TrackPage()",
- "file_type": "code",
- "source_file": "frontend/application/app/track/page.tsx",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_track_page_trackpage",
- "community": 311,
- "community_name": "track/page.tsx",
- "norm_label": "trackpage()"
- },
- {
- "label": "OrderTracking()",
- "file_type": "code",
- "source_file": "frontend/application/components/OrderTracking.tsx",
- "source_location": "L18",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_ordertracking_ordertracking",
- "community": 311,
- "community_name": "track/page.tsx",
- "norm_label": "ordertracking()"
- },
{
"label": "MenuManager()",
"file_type": "code",
@@ -11191,30 +11533,6 @@
"community_name": "MenuManager.tsx",
"norm_label": "menumanager()"
},
- {
- "label": "generateMetadata()",
- "file_type": "code",
- "source_file": "frontend/application/app/layout.tsx",
- "source_location": "L7",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_layout_generatemetadata",
- "community": 314,
- "community_name": "layout.tsx",
- "norm_label": "generatemetadata()"
- },
- {
- "label": "RootLayout()",
- "file_type": "code",
- "source_file": "frontend/application/app/layout.tsx",
- "source_location": "L98",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_layout_rootlayout",
- "community": 314,
- "community_name": "layout.tsx",
- "norm_label": "rootlayout()"
- },
{
"label": "GET()",
"file_type": "code",
@@ -11263,66 +11581,6 @@
"community_name": "MaskableField.tsx",
"norm_label": "maskablefield()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L30",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_constructor",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": ".constructor()"
- },
- {
- "label": ".getDashboardStats()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L34",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_getdashboardstats",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": ".getdashboardstats()"
- },
- {
- "label": ".getDashboardStats()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L58",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_getdashboardstats",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": ".getdashboardstats()"
- },
- {
- "label": ".getPets()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L887",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_getpets",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": ".getpets()"
- },
- {
- "label": ".get()",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
- "source_location": "L27",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_redis_redis_service_redisservice_get",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": ".get()"
- },
{
"label": "App()",
"file_type": "code",
@@ -12223,30 +12481,6 @@
"community_name": "CategoriesController",
"norm_label": ".updatecategory()"
},
- {
- "label": "BlogPreviewSection()",
- "file_type": "code",
- "source_file": "frontend/application/components/BlogPreviewSection.tsx",
- "source_location": "L28",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_blogpreviewsection_blogpreviewsection",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "blogpreviewsection()"
- },
- {
- "label": "loadBlogs()",
- "file_type": "code",
- "source_file": "frontend/application/components/BlogPreviewSection.tsx",
- "source_location": "L34",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_blogpreviewsection_blogpreviewsection_loadblogs",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "loadblogs()"
- },
{
"label": "ProductDetailModal()",
"file_type": "code",
@@ -12295,30 +12529,6 @@
"community_name": "SafeImage.tsx",
"norm_label": "safeimage()"
},
- {
- "label": "TestimonialsSection()",
- "file_type": "code",
- "source_file": "frontend/application/components/TestimonialsSection.tsx",
- "source_location": "L20",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_testimonialssection_testimonialssection",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "testimonialssection()"
- },
- {
- "label": "loadTestimonials()",
- "file_type": "code",
- "source_file": "frontend/application/components/TestimonialsSection.tsx",
- "source_location": "L26",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_testimonialssection_testimonialssection_loadtestimonials",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "loadtestimonials()"
- },
{
"label": "VetGallery()",
"file_type": "code",
@@ -12784,7 +12994,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller_constructor",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".constructor()"
},
{
@@ -12796,7 +13006,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller_create",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".create()"
},
{
@@ -12808,7 +13018,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller_findall",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".findall()"
},
{
@@ -12820,7 +13030,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller_findhomepage",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".findhomepage()"
},
{
@@ -12832,7 +13042,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller_remove",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".remove()"
},
{
@@ -12844,21 +13054,9 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_testimonialscontroller_update",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".update()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/testimonials/testimonials.service.ts",
- "source_location": "L7",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_testimonials_testimonials_service_testimonialsservice_constructor",
- "community": 44,
- "community_name": "TestimonialsService",
- "norm_label": ".constructor()"
- },
{
"label": ".create()",
"file_type": "code",
@@ -12868,7 +13066,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_service_testimonialsservice_create",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".create()"
},
{
@@ -12880,7 +13078,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_service_testimonialsservice_findall",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".findall()"
},
{
@@ -12892,7 +13090,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_service_testimonialsservice_findhomepage",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".findhomepage()"
},
{
@@ -12904,7 +13102,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_service_testimonialsservice_remove",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".remove()"
},
{
@@ -12916,152 +13114,56 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_service_testimonialsservice_update",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": ".update()"
},
{
- "label": ".getSettings()",
+ "label": "Layout()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L287",
+ "source_file": "frontend/admin-panel/src/components/Layout.tsx",
+ "source_location": "L6",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_getsettings",
+ "id": "frontend_admin_panel_src_components_layout_layout",
"community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".getsettings()"
+ "community_name": "api",
+ "norm_label": "layout()"
},
{
- "label": ".toggleCoupon()",
+ "label": "Sidebar()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L223",
+ "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
+ "source_location": "L61",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_togglecoupon",
+ "id": "frontend_admin_panel_src_components_sidebar_sidebar",
"community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".togglecoupon()"
+ "community_name": "api",
+ "norm_label": "sidebar()"
},
{
- "label": ".updateDoctor()",
+ "label": "Topbar()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L263",
+ "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
+ "source_location": "L60",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updatedoctor",
+ "id": "frontend_admin_panel_src_components_topbar_topbar",
"community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updatedoctor()"
+ "community_name": "api",
+ "norm_label": "topbar()"
},
{
- "label": ".updateOrderStatus()",
+ "label": "CMS()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L169",
+ "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
+ "source_location": "L23",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updateorderstatus",
+ "id": "frontend_admin_panel_src_pages_cms_cms",
"community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updateorderstatus()"
- },
- {
- "label": ".updateSettings()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L294",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updatesettings",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updatesettings()"
- },
- {
- "label": ".updateUserRole()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L90",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updateuserrole",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updateuserrole()"
- },
- {
- "label": ".getSettings()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L842",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_getsettings",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".getsettings()"
- },
- {
- "label": ".toggleCoupon()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L829",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_togglecoupon",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".togglecoupon()"
- },
- {
- "label": ".updateDoctor()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L953",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updatedoctor",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updatedoctor()"
- },
- {
- "label": ".updateOrderStatus()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L653",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updateorderstatus",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updateorderstatus()"
- },
- {
- "label": ".updateSettings()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L850",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updatesettings",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updatesettings()"
- },
- {
- "label": ".updateUserRole()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L281",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updateuserrole",
- "community": 46,
- "community_name": "ApiOperation",
- "norm_label": ".updateuserrole()"
+ "community_name": "api",
+ "norm_label": "cms()"
},
{
"label": ".constructor()",
@@ -13208,28 +13310,100 @@
"norm_label": ".update()"
},
{
- "label": "CustomTooltip()",
+ "label": "SuccessPage()",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L22",
+ "source_file": "frontend/application/app/checkout/success/[id]/page.tsx",
+ "source_location": "L3",
"_callable": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_customtooltip",
+ "id": "frontend_application_app_checkout_success_id_page_successpage",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "customtooltip()"
+ "community_name": "cartStore.ts",
+ "norm_label": "successpage()"
},
{
- "label": "Reports()",
+ "label": "OrderSuccess()",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L65",
+ "source_file": "frontend/application/components/OrderSuccess.tsx",
+ "source_location": "L17",
"_callable": true,
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_reports",
+ "id": "frontend_application_components_ordersuccess_ordersuccess",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "reports()"
+ "community_name": "cartStore.ts",
+ "norm_label": "ordersuccess()"
+ },
+ {
+ "label": "OrderTracking()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/OrderTracking.tsx",
+ "source_location": "L18",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_ordertracking_ordertracking",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": "ordertracking()"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/orderService.ts",
+ "source_location": "L34",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_orderservice_orderservice_constructor",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": ".constructor()"
+ },
+ {
+ "label": ".createOrder()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/orderService.ts",
+ "source_location": "L46",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_orderservice_orderservice_createorder",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": ".createorder()"
+ },
+ {
+ "label": ".getInstance()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/orderService.ts",
+ "source_location": "L36",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_orderservice_orderservice_getinstance",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": ".getinstance()"
+ },
+ {
+ "label": ".getOrderById()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/orderService.ts",
+ "source_location": "L84",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_orderservice_orderservice_getorderbyid",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": ".getorderbyid()"
+ },
+ {
+ "label": ".getUserOrders()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/orderService.ts",
+ "source_location": "L70",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_orderservice_orderservice_getuserorders",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": ".getuserorders()"
},
{
"label": ".constructor()",
@@ -13744,7 +13918,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_prescriptionscontroller_constructor",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".constructor()"
},
{
@@ -13756,7 +13930,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_prescriptionscontroller_create",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".create()"
},
{
@@ -13768,7 +13942,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_prescriptionscontroller_findall",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".findall()"
},
{
@@ -13780,7 +13954,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_prescriptionscontroller_findone",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".findone()"
},
{
@@ -13792,21 +13966,9 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_prescriptionscontroller_review",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".review()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/prescriptions/prescriptions.service.ts",
- "source_location": "L14",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice_constructor",
- "community": 52,
- "community_name": "PrescriptionsService",
- "norm_label": ".constructor()"
- },
{
"label": ".create()",
"file_type": "code",
@@ -13816,7 +13978,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice_create",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".create()"
},
{
@@ -13828,7 +13990,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice_findall",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".findall()"
},
{
@@ -13840,7 +14002,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice_findone",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".findone()"
},
{
@@ -13852,7 +14014,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_service_prescriptionsservice_review",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": ".review()"
},
{
@@ -13864,7 +14026,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_smartadvisorcontroller_constructor",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".constructor()"
},
{
@@ -13876,7 +14038,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_smartadvisorcontroller_create",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".create()"
},
{
@@ -13888,7 +14050,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_smartadvisorcontroller_findall",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".findall()"
},
{
@@ -13900,7 +14062,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_smartadvisorcontroller_remove",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".remove()"
},
{
@@ -13912,21 +14074,9 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_smartadvisorcontroller_update",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".update()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/smart-advisor/smart-advisor.service.ts",
- "source_location": "L7",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice_constructor",
- "community": 53,
- "community_name": "SmartAdvisorService",
- "norm_label": ".constructor()"
- },
{
"label": ".create()",
"file_type": "code",
@@ -13936,7 +14086,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice_create",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".create()"
},
{
@@ -13948,7 +14098,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice_findall",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".findall()"
},
{
@@ -13960,7 +14110,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice_remove",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".remove()"
},
{
@@ -13972,9 +14122,45 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_service_smartadvisorservice_update",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": ".update()"
},
+ {
+ "label": "getJwtRefreshSecret()",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.constants.ts",
+ "source_location": "L10",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_constants_getjwtrefreshsecret",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "getjwtrefreshsecret()"
+ },
+ {
+ "label": "getJwtSecret()",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.constants.ts",
+ "source_location": "L7",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_constants_getjwtsecret",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "getjwtsecret()"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/auth/jwt.strategy.ts",
+ "source_location": "L16",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_auth_jwt_strategy_jwtstrategy_constructor",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": ".constructor()"
+ },
{
"label": ".validate()",
"file_type": "code",
@@ -14696,112 +14882,28 @@
"norm_label": ".updateticketstatus()"
},
{
- "label": ".createUser()",
+ "label": "RichTextEditor()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L51",
+ "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
+ "source_location": "L76",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_createuser",
+ "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditor",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": ".createuser()"
+ "community_name": "Blogs.tsx",
+ "norm_label": "richtexteditor()"
},
{
- "label": ".updateUser()",
+ "label": "Blogs()",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
- "source_location": "L69",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
+ "source_location": "L113",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_admincontroller_updateuser",
+ "id": "frontend_admin_panel_src_pages_blogs_blogs",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": ".updateuser()"
- },
- {
- "label": ".createUser()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L177",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_createuser",
- "community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": ".createuser()"
- },
- {
- "label": ".updateUser()",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
- "source_location": "L220",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_adminservice_updateuser",
- "community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": ".updateuser()"
- },
- {
- "label": "Layout()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Layout.tsx",
- "source_location": "L6",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_layout_layout",
- "community": 62,
- "community_name": "api",
- "norm_label": "layout()"
- },
- {
- "label": "Sidebar()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
- "source_location": "L61",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_sidebar_sidebar",
- "community": 62,
- "community_name": "api",
- "norm_label": "sidebar()"
- },
- {
- "label": "Topbar()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
- "source_location": "L60",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_topbar_topbar",
- "community": 62,
- "community_name": "api",
- "norm_label": "topbar()"
- },
- {
- "label": "CMS()",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
- "source_location": "L23",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_cms_cms",
- "community": 62,
- "community_name": "api",
- "norm_label": "cms()"
- },
- {
- "label": ".getAdminTransactions()",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L525",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_paymentcontroller_getadmintransactions",
- "community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": ".getadmintransactions()"
+ "community_name": "Blogs.tsx",
+ "norm_label": "blogs()"
},
{
"label": ".getAdminTransactions()",
@@ -14811,10 +14913,34 @@
"_callable": true,
"_origin": "ast",
"id": "backend_src_payment_payment_service_paymentservice_getadmintransactions",
- "community": 65,
- "community_name": "AdminTransactionFilterDto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
"norm_label": ".getadmintransactions()"
},
+ {
+ "label": ".findAll()",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.controller.ts",
+ "source_location": "L31",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_products_products_controller_productscontroller_findall",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": ".findall()"
+ },
+ {
+ "label": ".findAll()",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.service.ts",
+ "source_location": "L14",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_products_products_service_productsservice_findall",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": ".findall()"
+ },
{
"label": ".getCoupons()",
"file_type": "code",
@@ -14938,15 +15064,39 @@
{
"label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/admin/media.service.ts",
- "source_location": "L8",
+ "source_file": "backend/src/admin/pets.controller.ts",
+ "source_location": "L25",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_media_service_mediaservice_constructor",
+ "id": "backend_src_admin_pets_controller_petscontroller_constructor",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": ".constructor()"
},
+ {
+ "label": ".deletePet()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/pets.controller.ts",
+ "source_location": "L38",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_petscontroller_deletepet",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": ".deletepet()"
+ },
+ {
+ "label": ".getPets()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/pets.controller.ts",
+ "source_location": "L32",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_petscontroller_getpets",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": ".getpets()"
+ },
{
"label": ".constructor()",
"file_type": "code",
@@ -14956,7 +15106,7 @@
"_origin": "ast",
"id": "backend_src_admin_pets_service_petsservice_constructor",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": ".constructor()"
},
{
@@ -14968,7 +15118,7 @@
"_origin": "ast",
"id": "backend_src_admin_pets_service_petsservice_deletepet",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": ".deletepet()"
},
{
@@ -14980,93 +15130,9 @@
"_origin": "ast",
"id": "backend_src_admin_pets_service_petsservice_getpets",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": ".getpets()"
},
- {
- "label": ".constructor()",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiservice_constructor",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".constructor()"
- },
- {
- "label": ".createTerm()",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L45",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiservice_createterm",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".createterm()"
- },
- {
- "label": ".deleteTerm()",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L57",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiservice_deleteterm",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".deleteterm()"
- },
- {
- "label": ".getTerms()",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L15",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiservice_getterms",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".getterms()"
- },
- {
- "label": ".updateTerm()",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L49",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_wikiservice_updateterm",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".updateterm()"
- },
- {
- "label": ".findAllAdmin()",
- "file_type": "code",
- "source_file": "backend/src/pets/pets.service.ts",
- "source_location": "L49",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_pets_pets_service_petsservice_findalladmin",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".findalladmin()"
- },
- {
- "label": ".findAllByUser()",
- "file_type": "code",
- "source_file": "backend/src/pets/pets.service.ts",
- "source_location": "L109",
- "_callable": true,
- "_origin": "ast",
- "id": "backend_src_pets_pets_service_petsservice_findallbyuser",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": ".findallbyuser()"
- },
{
"label": ".addHealthLog()",
"file_type": "code",
@@ -15115,6 +15181,30 @@
"community_name": "pets/pets.controller.ts",
"norm_label": ".create()"
},
+ {
+ "label": ".findAllAdmin()",
+ "file_type": "code",
+ "source_file": "backend/src/pets/pets.service.ts",
+ "source_location": "L49",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_pets_pets_service_petsservice_findalladmin",
+ "community": 7,
+ "community_name": "pets/pets.controller.ts",
+ "norm_label": ".findalladmin()"
+ },
+ {
+ "label": ".findAllByUser()",
+ "file_type": "code",
+ "source_file": "backend/src/pets/pets.service.ts",
+ "source_location": "L109",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_pets_pets_service_petsservice_findallbyuser",
+ "community": 7,
+ "community_name": "pets/pets.controller.ts",
+ "norm_label": ".findallbyuser()"
+ },
{
"label": ".findOne()",
"file_type": "code",
@@ -15187,6 +15277,66 @@
"community_name": "getPageMetadata",
"norm_label": "generatemetadata()"
},
+ {
+ "label": "CatalogClient()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/catalog/CatalogClient.tsx",
+ "source_location": "L8",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_catalog_catalogclient_catalogclient",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "catalogclient()"
+ },
+ {
+ "label": "CatalogPage()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/catalog/page.tsx",
+ "source_location": "L13",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_catalog_page_catalogpage",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "catalogpage()"
+ },
+ {
+ "label": "generateMetadata()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/catalog/page.tsx",
+ "source_location": "L5",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_catalog_page_generatemetadata",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "generatemetadata()"
+ },
+ {
+ "label": "Checkout()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/checkout/page.tsx",
+ "source_location": "L14",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_checkout_page_checkout",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "checkout()"
+ },
+ {
+ "label": "generateMetadata()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/checkout/page.tsx",
+ "source_location": "L5",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_checkout_page_generatemetadata",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "generatemetadata()"
+ },
{
"label": "DashboardPage()",
"file_type": "code",
@@ -15223,6 +15373,30 @@
"community_name": "getPageMetadata",
"norm_label": "generatemetadata()"
},
+ {
+ "label": "getHomeData()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/page.tsx",
+ "source_location": "L13",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_page_gethomedata",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "gethomedata()"
+ },
+ {
+ "label": "Home()",
+ "file_type": "code",
+ "source_file": "frontend/application/app/page.tsx",
+ "source_location": "L32",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_app_page_home",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "home()"
+ },
{
"label": "generateMetadata()",
"file_type": "code",
@@ -15274,50 +15448,50 @@
{
"label": "generateMetadata()",
"file_type": "code",
- "source_file": "frontend/application/app/search/page.tsx",
+ "source_file": "frontend/application/app/shop/page.tsx",
"source_location": "L5",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_search_page_generatemetadata",
+ "id": "frontend_application_app_shop_page_generatemetadata",
"community": 71,
"community_name": "getPageMetadata",
"norm_label": "generatemetadata()"
},
{
- "label": "SearchPage()",
+ "label": "Shop()",
"file_type": "code",
- "source_file": "frontend/application/app/search/page.tsx",
- "source_location": "L13",
+ "source_file": "frontend/application/app/shop/page.tsx",
+ "source_location": "L34",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_search_page_searchpage",
+ "id": "frontend_application_app_shop_page_shop",
"community": 71,
"community_name": "getPageMetadata",
- "norm_label": "searchpage()"
+ "norm_label": "shop()"
},
{
"label": "generateMetadata()",
"file_type": "code",
- "source_file": "frontend/application/app/trust-seals/page.tsx",
- "source_location": "L7",
+ "source_file": "frontend/application/app/track/page.tsx",
+ "source_location": "L5",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_trust_seals_page_generatemetadata",
+ "id": "frontend_application_app_track_page_generatemetadata",
"community": 71,
"community_name": "getPageMetadata",
"norm_label": "generatemetadata()"
},
{
- "label": "TrustSealsPage()",
+ "label": "TrackPage()",
"file_type": "code",
- "source_file": "frontend/application/app/trust-seals/page.tsx",
- "source_location": "L15",
+ "source_file": "frontend/application/app/track/page.tsx",
+ "source_location": "L13",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_trust_seals_page_trustsealspage",
+ "id": "frontend_application_app_track_page_trackpage",
"community": 71,
"community_name": "getPageMetadata",
- "norm_label": "trustsealspage()"
+ "norm_label": "trackpage()"
},
{
"label": "generateMetadata()",
@@ -15343,6 +15517,18 @@
"community_name": "getPageMetadata",
"norm_label": "wikipage()"
},
+ {
+ "label": "ArchivePage()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ArchivePage.tsx",
+ "source_location": "L237",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_archivepage_archivepage",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "archivepage()"
+ },
{
"label": "getPageMetadata()",
"file_type": "code",
@@ -15811,6 +15997,18 @@
"community_name": "route.ts",
"norm_label": "get()"
},
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/media.service.ts",
+ "source_location": "L8",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_media_service_mediaservice_constructor",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": ".constructor()"
+ },
{
"label": ".constructor()",
"file_type": "code",
@@ -15820,7 +16018,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_reportscontroller_constructor",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": ".constructor()"
},
{
@@ -15832,7 +16030,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_reportscontroller_getreports",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": ".getreports()"
},
{
@@ -15844,7 +16042,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_service_reportsservice_constructor",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": ".constructor()"
},
{
@@ -15856,44 +16054,68 @@
"_origin": "ast",
"id": "backend_src_admin_reports_service_reportsservice_getdashboardreports",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": ".getdashboardreports()"
},
{
"label": ".constructor()",
"file_type": "code",
- "source_file": "backend/src/admin/pets.controller.ts",
- "source_location": "L25",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L13",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_pets_controller_petscontroller_constructor",
- "community": 85,
- "community_name": "PetsController",
+ "id": "backend_src_admin_wiki_service_wikiservice_constructor",
+ "community": 8,
+ "community_name": "admin.module.ts",
"norm_label": ".constructor()"
},
{
- "label": ".deletePet()",
+ "label": ".createTerm()",
"file_type": "code",
- "source_file": "backend/src/admin/pets.controller.ts",
- "source_location": "L38",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L45",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_pets_controller_petscontroller_deletepet",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": ".deletepet()"
+ "id": "backend_src_admin_wiki_service_wikiservice_createterm",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": ".createterm()"
},
{
- "label": ".getPets()",
+ "label": ".deleteTerm()",
"file_type": "code",
- "source_file": "backend/src/admin/pets.controller.ts",
- "source_location": "L32",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L57",
"_callable": true,
"_origin": "ast",
- "id": "backend_src_admin_pets_controller_petscontroller_getpets",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": ".getpets()"
+ "id": "backend_src_admin_wiki_service_wikiservice_deleteterm",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": ".deleteterm()"
+ },
+ {
+ "label": ".getTerms()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L15",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_service_wikiservice_getterms",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": ".getterms()"
+ },
+ {
+ "label": ".updateTerm()",
+ "file_type": "code",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L49",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_service_wikiservice_updateterm",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": ".updateterm()"
},
{
"label": ".checkHealth()",
@@ -15979,6 +16201,42 @@
"community_name": "useSettingsStore",
"norm_label": "clientlayout()"
},
+ {
+ "label": "AuthModal()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/AuthModal.tsx",
+ "source_location": "L38",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_authmodal_authmodal",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "authmodal()"
+ },
+ {
+ "label": "extractOtpFromText()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/AuthModal.tsx",
+ "source_location": "L30",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_authmodal_extractotpfromtext",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "extractotpfromtext()"
+ },
+ {
+ "label": "B2BLandingClient()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L25",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_b2blandingclient_b2blandingclient",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "b2blandingclient()"
+ },
{
"label": "BrandLogo()",
"file_type": "code",
@@ -15992,40 +16250,16 @@
"norm_label": "brandlogo()"
},
{
- "label": "EnamadBadge()",
+ "label": "CartDrawer()",
"file_type": "code",
- "source_file": "frontend/application/components/EnamadBadge.tsx",
- "source_location": "L9",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_enamadbadge_enamadbadge",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "enamadbadge()"
- },
- {
- "label": "FAQSection()",
- "file_type": "code",
- "source_file": "frontend/application/components/FAQSection.tsx",
+ "source_file": "frontend/application/components/CartDrawer.tsx",
"source_location": "L15",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_components_faqsection_faqsection",
+ "id": "frontend_application_components_cartdrawer_cartdrawer",
"community": 88,
"community_name": "useSettingsStore",
- "norm_label": "faqsection()"
- },
- {
- "label": "loadFaqs()",
- "file_type": "code",
- "source_file": "frontend/application/components/FAQSection.tsx",
- "source_location": "L22",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_faqsection_faqsection_loadfaqs",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "loadfaqs()"
+ "norm_label": "cartdrawer()"
},
{
"label": "Footer()",
@@ -16087,6 +16321,18 @@
"community_name": "useSettingsStore",
"norm_label": "usenetworkstatus()"
},
+ {
+ "label": "toEnglishDigits()",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/utils.ts",
+ "source_location": "L6",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_lib_utils_toenglishdigits",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "toenglishdigits()"
+ },
{
"label": "main()",
"file_type": "code",
@@ -16195,30 +16441,6 @@
"community_name": "HomeClient.tsx",
"norm_label": "homeclient()"
},
- {
- "label": "getHomeData()",
- "file_type": "code",
- "source_file": "frontend/application/app/page.tsx",
- "source_location": "L13",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_page_gethomedata",
- "community": 90,
- "community_name": "HomeClient.tsx",
- "norm_label": "gethomedata()"
- },
- {
- "label": "Home()",
- "file_type": "code",
- "source_file": "frontend/application/app/page.tsx",
- "source_location": "L32",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_page_home",
- "community": 90,
- "community_name": "HomeClient.tsx",
- "norm_label": "home()"
- },
{
"label": "BannerPlacement()",
"file_type": "code",
@@ -16231,6 +16453,54 @@
"community_name": "HomeClient.tsx",
"norm_label": "bannerplacement()"
},
+ {
+ "label": "BlogPreviewSection()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/BlogPreviewSection.tsx",
+ "source_location": "L28",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_blogpreviewsection_blogpreviewsection",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "blogpreviewsection()"
+ },
+ {
+ "label": "loadBlogs()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/BlogPreviewSection.tsx",
+ "source_location": "L34",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_blogpreviewsection_blogpreviewsection_loadblogs",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "loadblogs()"
+ },
+ {
+ "label": "FAQSection()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/FAQSection.tsx",
+ "source_location": "L15",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_faqsection_faqsection",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "faqsection()"
+ },
+ {
+ "label": "loadFaqs()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/FAQSection.tsx",
+ "source_location": "L22",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_faqsection_faqsection_loadfaqs",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "loadfaqs()"
+ },
{
"label": "Hero()",
"file_type": "code",
@@ -16255,6 +16525,30 @@
"community_name": "HomeClient.tsx",
"norm_label": "statcounter()"
},
+ {
+ "label": "TestimonialsSection()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/TestimonialsSection.tsx",
+ "source_location": "L20",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_testimonialssection_testimonialssection",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "testimonialssection()"
+ },
+ {
+ "label": "loadTestimonials()",
+ "file_type": "code",
+ "source_file": "frontend/application/components/TestimonialsSection.tsx",
+ "source_location": "L26",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "frontend_application_components_testimonialssection_testimonialssection_loadtestimonials",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "loadtestimonials()"
+ },
{
"label": ".getBanners()",
"file_type": "code",
@@ -16459,71 +16753,11 @@
"community_name": "OrdersService",
"norm_label": ".validatecoupon()"
},
- {
- "label": "PodcastInlinePlayer()",
- "file_type": "code",
- "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
- "source_location": "L33",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_podcastinlineplayer_podcastinlineplayer",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "podcastinlineplayer()"
- },
- {
- "label": "handleClickOutside()",
- "file_type": "code",
- "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
- "source_location": "L50",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_podcastinlineplayer_podcastinlineplayer_handleclickoutside",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "handleclickoutside()"
- },
- {
- "label": "ProductPage()",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductPage.tsx",
- "source_location": "L78",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_productpage_productpage",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "productpage()"
- },
- {
- "label": "ProductReviews()",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductReviews.tsx",
- "source_location": "L33",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_productreviews_productreviews",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "productreviews()"
- },
- {
- "label": "Tooltip()",
- "file_type": "code",
- "source_file": "frontend/application/components/Tooltip.tsx",
- "source_location": "L14",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_components_tooltip_tooltip",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "tooltip()"
- },
{
"label": "BlogPostPage()",
"file_type": "code",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L153",
+ "source_location": "L138",
"_callable": true,
"_origin": "ast",
"id": "frontend_application_app_blog_slug_page_blogpostpage",
@@ -16535,7 +16769,7 @@
"label": "generateMetadata()",
"file_type": "code",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L68",
+ "source_location": "L53",
"_callable": true,
"_origin": "ast",
"id": "frontend_application_app_blog_slug_page_generatemetadata",
@@ -16547,7 +16781,7 @@
"label": "getBlog()",
"file_type": "code",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L42",
+ "source_location": "L27",
"_callable": true,
"_origin": "ast",
"id": "frontend_application_app_blog_slug_page_getblog",
@@ -16559,7 +16793,7 @@
"label": "safeIso()",
"file_type": "code",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L22",
+ "source_location": "L7",
"_callable": true,
"_origin": "ast",
"id": "frontend_application_app_blog_slug_page_safeiso",
@@ -16571,7 +16805,7 @@
"label": "safeLocalDate()",
"file_type": "code",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L32",
+ "source_location": "L17",
"_callable": true,
"_origin": "ast",
"id": "frontend_application_app_blog_slug_page_safelocaldate",
@@ -16604,40 +16838,16 @@
"norm_label": "shopproductpage()"
},
{
- "label": "generateMetadata()",
+ "label": "BlogPostClient()",
"file_type": "code",
- "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L20",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
+ "source_location": "L26",
"_callable": true,
"_origin": "ast",
- "id": "frontend_application_app_wiki_slug_page_generatemetadata",
+ "id": "frontend_application_components_blogpostclient_blogpostclient",
"community": 95,
"community_name": "blog/[slug]/page.tsx",
- "norm_label": "generatemetadata()"
- },
- {
- "label": "getWikiTerm()",
- "file_type": "code",
- "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L7",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_wiki_slug_page_getwikiterm",
- "community": 95,
- "community_name": "blog/[slug]/page.tsx",
- "norm_label": "getwikiterm()"
- },
- {
- "label": "WikiTermPage()",
- "file_type": "code",
- "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L52",
- "_callable": true,
- "_origin": "ast",
- "id": "frontend_application_app_wiki_slug_page_wikitermpage",
- "community": 95,
- "community_name": "blog/[slug]/page.tsx",
- "norm_label": "wikitermpage()"
+ "norm_label": "blogpostclient()"
},
{
"label": "formatPageTitle()",
@@ -16808,15 +17018,40 @@
"norm_label": ".gethomedata()"
},
{
- "label": "ApiBadRequestResponse",
+ "label": ".constructor()",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/src/wiki/wiki.controller.ts",
+ "source_location": "L19",
+ "_callable": true,
"_origin": "ast",
- "id": "backend_src_payment_payment_controller_ts_apibadrequestresponse",
- "community": 0,
- "community_name": "Roles",
- "norm_label": "apibadrequestresponse"
+ "id": "backend_src_wiki_wiki_controller_wikicontroller_constructor",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": ".constructor()"
+ },
+ {
+ "label": ".findAll()",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.controller.ts",
+ "source_location": "L24",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_wikicontroller_findall",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": ".findall()"
+ },
+ {
+ "label": ".findOne()",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.controller.ts",
+ "source_location": "L32",
+ "_callable": true,
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_wikicontroller_findone",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": ".findone()"
},
{
"label": "ApiBearerAuth",
@@ -16829,17 +17064,6 @@
"community_name": "Roles",
"norm_label": "apibearerauth"
},
- {
- "label": "ApiOkResponse",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_ts_apiokresponse",
- "community": 0,
- "community_name": "Roles",
- "norm_label": "apiokresponse"
- },
{
"label": "ApiOperation",
"file_type": "code",
@@ -16939,28 +17163,6 @@
"community_name": "Roles",
"norm_label": "query"
},
- {
- "label": "Req",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_ts_req",
- "community": 0,
- "community_name": "Roles",
- "norm_label": "req"
- },
- {
- "label": "Res",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller_ts_res",
- "community": 0,
- "community_name": "Roles",
- "norm_label": "res"
- },
{
"label": "UseGuards",
"file_type": "code",
@@ -16972,39 +17174,6 @@
"community_name": "Roles",
"norm_label": "useguards"
},
- {
- "label": "Headers",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "headers",
- "community": 0,
- "community_name": "Roles",
- "norm_label": "headers"
- },
- {
- "label": "Ip",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "ip",
- "community": 0,
- "community_name": "Roles",
- "norm_label": "ip"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_admin_module_ts_module",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "module"
- },
{
"label": "app.module.ts",
"file_type": "code",
@@ -17016,6 +17185,28 @@
"community_name": "app.module.ts",
"norm_label": "app.module.ts"
},
+ {
+ "label": "banners.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/banners/banners.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_banners_banners_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "banners.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_banners_banners_module_ts_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "module"
+ },
{
"label": "cms.module.ts",
"file_type": "code",
@@ -17116,37 +17307,15 @@
"norm_label": "module"
},
{
- "label": "faq.module.ts",
+ "label": "ingredients.module.ts",
"file_type": "code",
- "source_file": "backend/src/faq/faq.module.ts",
+ "source_file": "backend/src/ingredients/ingredients.module.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_faq_faq_module",
+ "id": "backend_src_ingredients_ingredients_module",
"community": 1,
"community_name": "app.module.ts",
- "norm_label": "faq.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_faq_faq_module_ts_module",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "module"
- },
- {
- "label": "faq.service.ts",
- "file_type": "code",
- "source_file": "backend/src/faq/faq.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_faq_faq_service",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "faq.service.ts"
+ "norm_label": "ingredients.module.ts"
},
{
"label": "Module",
@@ -17204,15 +17373,15 @@
"norm_label": "module"
},
{
- "label": "zibal-ebank.service.ts",
+ "label": "prescriptions.module.ts",
"file_type": "code",
- "source_file": "backend/src/payment/zibal-ebank.service.ts",
+ "source_file": "backend/src/prescriptions/prescriptions.module.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_payment_zibal_ebank_service",
+ "id": "backend_src_prescriptions_prescriptions_module",
"community": 1,
"community_name": "app.module.ts",
- "norm_label": "zibal-ebank.service.ts"
+ "norm_label": "prescriptions.module.ts"
},
{
"label": "Module",
@@ -17225,6 +17394,94 @@
"community_name": "app.module.ts",
"norm_label": "module"
},
+ {
+ "label": "prisma.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/prisma/prisma.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_prisma_prisma_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "prisma.module.ts"
+ },
+ {
+ "label": "Global",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_prisma_prisma_module_ts_global",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "global"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_prisma_prisma_module_ts_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "module"
+ },
+ {
+ "label": "reviews.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/reviews/reviews.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "reviews.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_module_ts_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "module"
+ },
+ {
+ "label": "settings.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/settings/settings.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_settings_settings_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "settings.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_settings_settings_module_ts_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "module"
+ },
+ {
+ "label": "smart-advisor.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/smart-advisor/smart-advisor.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_smart_advisor_smart_advisor_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "smart-advisor.module.ts"
+ },
{
"label": "Module",
"file_type": "code",
@@ -17236,6 +17493,17 @@
"community_name": "app.module.ts",
"norm_label": "module"
},
+ {
+ "label": "testimonials.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/testimonials/testimonials.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_testimonials_testimonials_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "testimonials.module.ts"
+ },
{
"label": "Module",
"file_type": "code",
@@ -17247,6 +17515,39 @@
"community_name": "app.module.ts",
"norm_label": "module"
},
+ {
+ "label": "videos.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/videos/videos.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_videos_videos_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "videos.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_videos_videos_module_ts_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "module"
+ },
+ {
+ "label": "wholesale.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/wholesale/wholesale.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_wholesale_wholesale_module",
+ "community": 1,
+ "community_name": "app.module.ts",
+ "norm_label": "wholesale.module.ts"
+ },
{
"label": "Module",
"file_type": "code",
@@ -17258,50 +17559,6 @@
"community_name": "app.module.ts",
"norm_label": "module"
},
- {
- "label": "app_module_1",
- "file_type": "code",
- "source_file": "backend/test/app.e2e-spec.js",
- "source_location": "L8",
- "_origin": "ast",
- "id": "backend_test_app_e2e_spec_app_module_1",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "app_module_1"
- },
- {
- "label": "app.e2e-spec.js",
- "file_type": "code",
- "source_file": "backend/test/app.e2e-spec.js",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_test_app_e2e_spec_js_backend_test_app_e2e_spec",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "app.e2e-spec.js"
- },
- {
- "label": "supertest_1",
- "file_type": "code",
- "source_file": "backend/test/app.e2e-spec.js",
- "source_location": "L7",
- "_origin": "ast",
- "id": "backend_test_app_e2e_spec_supertest_1",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "supertest_1"
- },
- {
- "label": "testing_1",
- "file_type": "code",
- "source_file": "backend/test/app.e2e-spec.js",
- "source_location": "L6",
- "_origin": "ast",
- "id": "backend_test_app_e2e_spec_testing_1",
- "community": 1,
- "community_name": "app.module.ts",
- "norm_label": "testing_1"
- },
{
"label": "ApiBearerAuth",
"file_type": "code",
@@ -17310,7 +17567,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_apibearerauth",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "apibearerauth"
},
{
@@ -17321,7 +17578,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_apioperation",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "apioperation"
},
{
@@ -17332,9 +17589,20 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_apitags",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "apitags"
},
+ {
+ "label": "Body",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_controller_ts_body",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": "body"
+ },
{
"label": "Controller",
"file_type": "code",
@@ -17343,7 +17611,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_controller",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "controller"
},
{
@@ -17354,7 +17622,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_delete",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "delete"
},
{
@@ -17365,7 +17633,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_get",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "get"
},
{
@@ -17376,7 +17644,7 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_param",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "param"
},
{
@@ -17387,9 +17655,20 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_patch",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "patch"
},
+ {
+ "label": "Post",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_controller_ts_post",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": "post"
+ },
{
"label": "Query",
"file_type": "code",
@@ -17398,9 +17677,20 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_query",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "query"
},
+ {
+ "label": "Req",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_controller_ts_req",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": "req"
+ },
{
"label": "UseGuards",
"file_type": "code",
@@ -17409,9 +17699,20 @@
"_origin": "ast",
"id": "backend_src_reviews_reviews_controller_ts_useguards",
"community": 10,
- "community_name": "ReviewsController",
+ "community_name": "ReviewsService",
"norm_label": "useguards"
},
+ {
+ "label": "Injectable",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_reviews_service_ts_injectable",
+ "community": 10,
+ "community_name": "ReviewsService",
+ "norm_label": "injectable"
+ },
{
"label": "16-deep-audit-summary.md",
"file_type": "document",
@@ -17713,7 +18014,7 @@
"label": "jest",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L78",
+ "source_location": "L79",
"_origin": "ast",
"id": "backend_package_jest",
"community": 102,
@@ -17724,7 +18025,7 @@
"label": "collectCoverageFrom",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L89",
+ "source_location": "L90",
"_origin": "ast",
"id": "backend_package_jest_collectcoveragefrom",
"community": 102,
@@ -17735,7 +18036,7 @@
"label": "coverageDirectory",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L92",
+ "source_location": "L93",
"_origin": "ast",
"id": "backend_package_jest_coveragedirectory",
"community": 102,
@@ -17746,7 +18047,7 @@
"label": "moduleFileExtensions",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"_origin": "ast",
"id": "backend_package_jest_modulefileextensions",
"community": 102,
@@ -17757,7 +18058,7 @@
"label": "rootDir",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L84",
+ "source_location": "L85",
"_origin": "ast",
"id": "backend_package_jest_rootdir",
"community": 102,
@@ -17768,7 +18069,7 @@
"label": "testEnvironment",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L93",
+ "source_location": "L94",
"_origin": "ast",
"id": "backend_package_jest_testenvironment",
"community": 102,
@@ -17779,7 +18080,7 @@
"label": "testRegex",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L85",
+ "source_location": "L86",
"_origin": "ast",
"id": "backend_package_jest_testregex",
"community": 102,
@@ -17790,7 +18091,7 @@
"label": "transform",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L86",
+ "source_location": "L87",
"_origin": "ast",
"id": "backend_package_jest_transform",
"community": 102,
@@ -17801,7 +18102,7 @@
"label": "^.+\\\\.(t|j)s$",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L87",
+ "source_location": "L88",
"_origin": "ast",
"id": "backend_package_transform_t_j_s",
"community": 102,
@@ -17812,7 +18113,7 @@
"label": "ts",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"_origin": "ast",
"id": "backend_package_json_ref_ts",
"community": 102,
@@ -17823,7 +18124,7 @@
"label": "js",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"_origin": "ast",
"id": "ref_js",
"community": 102,
@@ -17834,7 +18135,7 @@
"label": "json",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"_origin": "ast",
"id": "ref_json",
"community": 102,
@@ -17845,7 +18146,7 @@
"label": "**/*.(t|j)s",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L89",
+ "source_location": "L90",
"_origin": "ast",
"id": "ref_t_j_s",
"community": 102,
@@ -18205,147 +18506,92 @@
"norm_label": "strict input specifications (what files to read)"
},
{
- "label": "auth.controller.ts",
+ "label": "Reports.tsx",
"file_type": "code",
- "source_file": "backend/src/auth/auth.controller.ts",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_auth_auth_controller",
+ "id": "frontend_admin_panel_src_pages_reports",
"community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "auth.controller.ts"
+ "community_name": "Reports.tsx",
+ "norm_label": "reports.tsx"
},
{
- "label": "admin-login.dto.ts",
+ "label": "COLORS",
"file_type": "code",
- "source_file": "backend/src/auth/dto/admin-login.dto.ts",
- "source_location": "L1",
+ "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_location": "L14",
"_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto",
+ "id": "frontend_admin_panel_src_pages_reports_colors",
"community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "admin-login.dto.ts"
+ "community_name": "Reports.tsx",
+ "norm_label": "colors"
},
{
- "label": "ApiProperty",
+ "label": "Reports",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
+ "source_location": "L16",
"_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto_ts_apiproperty",
+ "id": "frontend_admin_panel_src_routes_adminroutes_reports",
"community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "apiproperty"
+ "community_name": "Reports.tsx",
+ "norm_label": "reports"
},
{
- "label": "IsEmail",
+ "label": "@types/supertest",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/package.json",
+ "source_location": "L62",
"_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto_ts_isemail",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "isemail"
- },
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto_ts_isnotempty",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "isnotempty"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto_ts_isstring",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "isstring"
- },
- {
- "label": "MinLength",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_admin_login_dto_ts_minlength",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "minlength"
- },
- {
- "label": "login.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/auth/dto/login.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_auth_dto_login_dto",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "login.dto.ts"
- },
- {
- "label": "ApiProperty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_login_dto_ts_apiproperty",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "apiproperty"
- },
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_login_dto_ts_isnotempty",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "isnotempty"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_login_dto_ts_isstring",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "isstring"
- },
- {
- "label": "MinLength",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_login_dto_ts_minlength",
- "community": 106,
- "community_name": "auth.controller.ts",
- "norm_label": "minlength"
- },
- {
- "label": "shop/page.tsx",
- "file_type": "code",
- "source_file": "frontend/application/app/shop/page.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_app_shop_page",
+ "id": "backend_package_devdependencies_types_supertest",
"community": 107,
- "community_name": "shop/page.tsx",
- "norm_label": "shop/page.tsx"
+ "community_name": "@types/supertest",
+ "norm_label": "@types/supertest"
+ },
+ {
+ "label": "@types/supertest",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L62",
+ "_origin": "ast",
+ "id": "types_supertest",
+ "community": 107,
+ "community_name": "@types/supertest",
+ "norm_label": "@types/supertest"
+ },
+ {
+ "label": "admin.service.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_spec",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "admin.service.spec.ts"
+ },
+ {
+ "label": "admin/pets.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/pets.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_service",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "admin/pets.service.ts"
+ },
+ {
+ "label": "admin/wiki.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/wiki.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_service",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "admin/wiki.service.ts"
},
{
"label": "auth.service.spec.ts",
@@ -18358,61 +18604,6 @@
"community_name": "PrismaService",
"norm_label": "auth.service.spec.ts"
},
- {
- "label": "b2b.module.ts",
- "file_type": "code",
- "source_file": "backend/src/b2b/b2b.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_b2b_b2b_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "b2b.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_b2b_b2b_module_ts_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "module"
- },
- {
- "label": "b2b.service.ts",
- "file_type": "code",
- "source_file": "backend/src/b2b/b2b.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_b2b_b2b_service",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "b2b.service.ts"
- },
- {
- "label": "banners.module.ts",
- "file_type": "code",
- "source_file": "backend/src/banners/banners.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_banners_banners_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "banners.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_banners_banners_module_ts_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "module"
- },
{
"label": "banners.service.ts",
"file_type": "code",
@@ -18425,15 +18616,15 @@
"norm_label": "banners.service.ts"
},
{
- "label": "Injectable",
+ "label": "metrics.controller.ts",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/src/common/metrics.controller.ts",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_service_ts_injectable",
+ "id": "backend_src_common_metrics_controller",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "injectable"
+ "norm_label": "metrics.controller.ts"
},
{
"label": "sms.service.ts",
@@ -18457,17 +18648,6 @@
"community_name": "PrismaService",
"norm_label": "contact.service.ts"
},
- {
- "label": "ingredients.module.ts",
- "file_type": "code",
- "source_file": "backend/src/ingredients/ingredients.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_ingredients_ingredients_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "ingredients.module.ts"
- },
{
"label": "ingredients.service.ts",
"file_type": "code",
@@ -18501,17 +18681,6 @@
"community_name": "PrismaService",
"norm_label": "orders.service.spec.ts"
},
- {
- "label": "admin-transaction-filter.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/payment/dto/admin-transaction-filter.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "admin-transaction-filter.dto.ts"
- },
{
"label": "payment.service.ts",
"file_type": "code",
@@ -18524,15 +18693,26 @@
"norm_label": "payment.service.ts"
},
{
- "label": "prescriptions.module.ts",
+ "label": "zibal-ebank.service.ts",
"file_type": "code",
- "source_file": "backend/src/prescriptions/prescriptions.module.ts",
+ "source_file": "backend/src/payment/zibal-ebank.service.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_prescriptions_prescriptions_module",
+ "id": "backend_src_payment_zibal_ebank_service",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "prescriptions.module.ts"
+ "norm_label": "zibal-ebank.service.ts"
+ },
+ {
+ "label": "pets.service.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/pets/pets.service.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_pets_pets_service_spec",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "pets.service.spec.ts"
},
{
"label": "prescriptions.service.ts",
@@ -18546,37 +18726,15 @@
"norm_label": "prescriptions.service.ts"
},
{
- "label": "prisma.module.ts",
- "file_type": "code",
- "source_file": "backend/src/prisma/prisma.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_prisma_prisma_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "prisma.module.ts"
- },
- {
- "label": "Global",
+ "label": "Injectable",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_prisma_prisma_module_ts_global",
+ "id": "backend_src_prescriptions_prescriptions_service_ts_injectable",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "global"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_prisma_prisma_module_ts_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "module"
+ "norm_label": "injectable"
},
{
"label": "prisma.service.ts",
@@ -18600,6 +18758,17 @@
"community_name": "PrismaService",
"norm_label": "injectable"
},
+ {
+ "label": "redis.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_service",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "redis.service.ts"
+ },
{
"label": "default-ui-texts.ts",
"file_type": "code",
@@ -18622,28 +18791,6 @@
"community_name": "PrismaService",
"norm_label": "default_ui_texts"
},
- {
- "label": "settings.module.ts",
- "file_type": "code",
- "source_file": "backend/src/settings/settings.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_settings_settings_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "settings.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_settings_settings_module_ts_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "module"
- },
{
"label": "settings.service.ts",
"file_type": "code",
@@ -18655,6 +18802,17 @@
"community_name": "PrismaService",
"norm_label": "settings.service.ts"
},
+ {
+ "label": "CANONICAL_ALIASES",
+ "file_type": "code",
+ "source_file": "backend/src/settings/settings.service.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "id": "backend_src_settings_settings_service_canonical_aliases",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "canonical_aliases"
+ },
{
"label": "settings.service.spec.ts",
"file_type": "code",
@@ -18666,17 +18824,6 @@
"community_name": "PrismaService",
"norm_label": "settings.service.spec.ts"
},
- {
- "label": "smart-advisor.module.ts",
- "file_type": "code",
- "source_file": "backend/src/smart-advisor/smart-advisor.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_smart_advisor_smart_advisor_module",
- "community": 108,
- "community_name": "PrismaService",
- "norm_label": "smart-advisor.module.ts"
- },
{
"label": "smart-advisor.service.ts",
"file_type": "code",
@@ -18689,15 +18836,15 @@
"norm_label": "smart-advisor.service.ts"
},
{
- "label": "testimonials.module.ts",
+ "label": "Injectable",
"file_type": "code",
- "source_file": "backend/src/testimonials/testimonials.module.ts",
- "source_location": "L1",
+ "source_file": "",
+ "source_location": "",
"_origin": "ast",
- "id": "backend_src_testimonials_testimonials_module",
+ "id": "backend_src_smart_advisor_smart_advisor_service_ts_injectable",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "testimonials.module.ts"
+ "norm_label": "injectable"
},
{
"label": "testimonials.service.ts",
@@ -18711,26 +18858,37 @@
"norm_label": "testimonials.service.ts"
},
{
- "label": "wholesale-apply.dto.ts",
+ "label": "Injectable",
"file_type": "code",
- "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts",
- "source_location": "L1",
+ "source_file": "",
+ "source_location": "",
"_origin": "ast",
- "id": "backend_src_wholesale_dto_wholesale_apply_dto",
+ "id": "backend_src_testimonials_testimonials_service_ts_injectable",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "wholesale-apply.dto.ts"
+ "norm_label": "injectable"
},
{
- "label": "wholesale.module.ts",
+ "label": "users.service.spec.ts",
"file_type": "code",
- "source_file": "backend/src/wholesale/wholesale.module.ts",
+ "source_file": "backend/src/users/users.service.spec.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_wholesale_wholesale_module",
+ "id": "backend_src_users_users_service_spec",
"community": 108,
"community_name": "PrismaService",
- "norm_label": "wholesale.module.ts"
+ "norm_label": "users.service.spec.ts"
+ },
+ {
+ "label": "videos.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/videos/videos.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_videos_videos_service",
+ "community": 108,
+ "community_name": "PrismaService",
+ "norm_label": "videos.service.ts"
},
{
"label": "wholesale.service.ts",
@@ -19491,6 +19649,72 @@
"community_name": "reviews.controller.ts",
"norm_label": "create-review.dto.ts"
},
+ {
+ "label": "ApiProperty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_ts_apiproperty",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "apiproperty"
+ },
+ {
+ "label": "IsInt",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_ts_isint",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "isint"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_ts_isnotempty",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_ts_isoptional",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_ts_isstring",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "Min",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_reviews_dto_create_review_dto_ts_min",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "min"
+ },
{
"label": "update-review.dto.ts",
"file_type": "code",
@@ -19557,28 +19781,6 @@
"community_name": "reviews.controller.ts",
"norm_label": "reviews.controller.ts"
},
- {
- "label": "reviews.module.ts",
- "file_type": "code",
- "source_file": "backend/src/reviews/reviews.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_module",
- "community": 113,
- "community_name": "reviews.controller.ts",
- "norm_label": "reviews.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_module_ts_module",
- "community": 113,
- "community_name": "reviews.controller.ts",
- "norm_label": "module"
- },
{
"label": "reviews.service.ts",
"file_type": "code",
@@ -19590,6 +19792,17 @@
"community_name": "reviews.controller.ts",
"norm_label": "reviews.service.ts"
},
+ {
+ "label": "Max",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "max",
+ "community": 113,
+ "community_name": "reviews.controller.ts",
+ "norm_label": "max"
+ },
{
"label": "app.controller.ts",
"file_type": "code",
@@ -19657,48 +19870,26 @@
"norm_label": "injectable"
},
{
- "label": "checkout/page.tsx",
+ "label": "@types/react-dom",
"file_type": "code",
- "source_file": "frontend/application/app/checkout/page.tsx",
- "source_location": "L1",
+ "source_file": "frontend/application/package.json",
+ "source_location": "L27",
"_origin": "ast",
- "id": "frontend_application_app_checkout_page",
+ "id": "frontend_application_package_devdependencies_types_react_dom",
"community": 115,
- "community_name": "seo.ts",
- "norm_label": "checkout/page.tsx"
+ "community_name": "@types/react-dom",
+ "norm_label": "@types/react-dom"
},
{
- "label": "videos/page.tsx",
- "file_type": "code",
- "source_file": "frontend/application/app/videos/page.tsx",
- "source_location": "L1",
+ "label": "@types/react-dom",
+ "file_type": "concept",
+ "source_file": "frontend/application/package.json",
+ "source_location": "L27",
"_origin": "ast",
- "id": "frontend_application_app_videos_page",
+ "id": "frontend_application_package_json_types_react_dom",
"community": 115,
- "community_name": "seo.ts",
- "norm_label": "videos/page.tsx"
- },
- {
- "label": "seo.ts",
- "file_type": "code",
- "source_file": "frontend/application/lib/seo.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_lib_seo",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "seo.ts"
- },
- {
- "label": "DEFAULT_SEO_CONFIG",
- "file_type": "code",
- "source_file": "frontend/application/lib/seo.ts",
- "source_location": "L16",
- "_origin": "ast",
- "id": "frontend_application_lib_seo_default_seo_config",
- "community": 115,
- "community_name": "seo.ts",
- "norm_label": "default_seo_config"
+ "community_name": "@types/react-dom",
+ "norm_label": "@types/react-dom"
},
{
"label": "vazirmatn-v33.003/CHANGELOG.md",
@@ -20162,17 +20353,6 @@
"community_name": "compilerOptions",
"norm_label": "./**/*.ts"
},
- {
- "label": "[id]/page.tsx",
- "file_type": "code",
- "source_file": "frontend/application/app/checkout/success/[id]/page.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_app_checkout_success_id_page",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "[id]/page.tsx"
- },
{
"label": "loading.tsx",
"file_type": "code",
@@ -20195,17 +20375,6 @@
"community_name": "PetProfile.tsx",
"norm_label": "featuredproducts.tsx"
},
- {
- "label": "OrderSuccess.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/OrderSuccess.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_ordersuccess",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "ordersuccess.tsx"
- },
{
"label": "PetProfile.tsx",
"file_type": "code",
@@ -20217,17 +20386,6 @@
"community_name": "PetProfile.tsx",
"norm_label": "petprofile.tsx"
},
- {
- "label": "SearchResultsPage.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/SearchResultsPage.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_searchresultspage",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "searchresultspage.tsx"
- },
{
"label": "components/Skeleton.tsx",
"file_type": "code",
@@ -20239,39 +20397,6 @@
"community_name": "PetProfile.tsx",
"norm_label": "components/skeleton.tsx"
},
- {
- "label": "SmartAdvisor.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/SmartAdvisor.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_smartadvisor",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "smartadvisor.tsx"
- },
- {
- "label": "CURRENT_SYMPTOMS",
- "file_type": "code",
- "source_file": "frontend/application/components/SmartAdvisor.tsx",
- "source_location": "L32",
- "_origin": "ast",
- "id": "frontend_application_components_smartadvisor_current_symptoms",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "current_symptoms"
- },
- {
- "label": "MEDICAL_HISTORIES",
- "file_type": "code",
- "source_file": "frontend/application/components/SmartAdvisor.tsx",
- "source_location": "L44",
- "_origin": "ast",
- "id": "frontend_application_components_smartadvisor_medical_histories",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "medical_histories"
- },
{
"label": "FeaturedProducts.test.tsx",
"file_type": "code",
@@ -20305,17 +20430,6 @@
"community_name": "PetProfile.tsx",
"norm_label": "usepetstore.ts"
},
- {
- "label": "usePetStore",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/usePetStore.ts",
- "source_location": "L65",
- "_origin": "ast",
- "id": "frontend_application_lib_store_usepetstore_usepetstore",
- "community": 12,
- "community_name": "PetProfile.tsx",
- "norm_label": "usepetstore"
- },
{
"label": "tsconfig.seed.json",
"file_type": "code",
@@ -20536,83 +20650,6 @@
"community_name": "backend/README.md",
"norm_label": "support"
},
- {
- "label": "auth.constants.ts",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.constants.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_auth_auth_constants",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "auth.constants.ts"
- },
- {
- "label": "DEFAULT_JWT_REFRESH_SECRET",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.constants.ts",
- "source_location": "L4",
- "_origin": "ast",
- "id": "backend_src_auth_auth_constants_default_jwt_refresh_secret",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "default_jwt_refresh_secret"
- },
- {
- "label": "DEFAULT_JWT_SECRET",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.constants.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_auth_auth_constants_default_jwt_secret",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "default_jwt_secret"
- },
- {
- "label": "auth.module.ts",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_auth_auth_module",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "auth.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_auth_module_ts_module",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "module"
- },
- {
- "label": "jwt.strategy.ts",
- "file_type": "code",
- "source_file": "backend/src/auth/jwt.strategy.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_auth_jwt_strategy",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "jwt.strategy.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_jwt_strategy_ts_injectable",
- "community": 122,
- "community_name": "auth.module.ts",
- "norm_label": "injectable"
- },
{
"label": "Injectable",
"file_type": "code",
@@ -21072,9 +21109,20 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_ts_apibearerauth",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "apibearerauth"
},
+ {
+ "label": "ApiOperation",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_ts_apioperation",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": "apioperation"
+ },
{
"label": "ApiTags",
"file_type": "code",
@@ -21083,9 +21131,20 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_ts_apitags",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "apitags"
},
+ {
+ "label": "Body",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_ts_body",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": "body"
+ },
{
"label": "Controller",
"file_type": "code",
@@ -21094,7 +21153,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_ts_controller",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "controller"
},
{
@@ -21105,7 +21164,7 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_ts_delete",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "delete"
},
{
@@ -21116,9 +21175,31 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_ts_param",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "param"
},
+ {
+ "label": "Post",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_ts_post",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": "post"
+ },
+ {
+ "label": "Put",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_ts_put",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": "put"
+ },
{
"label": "UseGuards",
"file_type": "code",
@@ -21127,107 +21208,30 @@
"_origin": "ast",
"id": "backend_src_admin_admin_controller_ts_useguards",
"community": 128,
- "community_name": "AdminController",
+ "community_name": "AdminService",
"norm_label": "useguards"
},
{
- "label": "get-videos-query.dto.ts",
+ "label": "Injectable",
"file_type": "code",
- "source_file": "backend/src/videos/dto/get-videos-query.dto.ts",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service_ts_injectable",
+ "community": 128,
+ "community_name": "AdminService",
+ "norm_label": "injectable"
+ },
+ {
+ "label": "RouteErrorBoundary.tsx",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_videos_dto_get_videos_query_dto",
+ "id": "frontend_admin_panel_src_components_routeerrorboundary",
"community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "get-videos-query.dto.ts"
- },
- {
- "label": "ApiPropertyOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_videos_dto_get_videos_query_dto_ts_apipropertyoptional",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "apipropertyoptional"
- },
- {
- "label": "IsBoolean",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_videos_dto_get_videos_query_dto_ts_isboolean",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "isboolean"
- },
- {
- "label": "IsOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_videos_dto_get_videos_query_dto_ts_isoptional",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "isoptional"
- },
- {
- "label": "Transform",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_videos_dto_get_videos_query_dto_ts_transform",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "transform"
- },
- {
- "label": "videos.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/videos/videos.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_videos_videos_controller",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "videos.controller.ts"
- },
- {
- "label": "videos.module.ts",
- "file_type": "code",
- "source_file": "backend/src/videos/videos.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_videos_videos_module",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "videos.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_videos_videos_module_ts_module",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "module"
- },
- {
- "label": "videos.service.ts",
- "file_type": "code",
- "source_file": "backend/src/videos/videos.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_videos_videos_service",
- "community": 129,
- "community_name": "videos.controller.ts",
- "norm_label": "videos.service.ts"
+ "community_name": "RouteErrorBoundary",
+ "norm_label": "routeerrorboundary.tsx"
},
{
"label": "generate-openapi.ts",
@@ -21794,7 +21798,7 @@
"label": "prisma",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L95",
+ "source_location": "L96",
"_origin": "ast",
"id": "backend_package_prisma",
"community": 133,
@@ -21805,7 +21809,7 @@
"label": "seed",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L96",
+ "source_location": "L97",
"_origin": "ast",
"id": "backend_package_prisma_seed",
"community": 133,
@@ -21835,114 +21839,26 @@
"norm_label": "version"
},
{
- "label": "ApiProperty",
+ "label": "blog/page.tsx",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/application/app/blog/page.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_ts_apiproperty",
+ "id": "frontend_application_app_blog_page",
"community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "apiproperty"
+ "community_name": "blog/page.tsx",
+ "norm_label": "blog/page.tsx"
},
{
- "label": "IsInt",
+ "label": "revalidate",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/application/app/blog/page.tsx",
+ "source_location": "L13",
"_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_ts_isint",
+ "id": "frontend_application_app_blog_page_revalidate",
"community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "isint"
- },
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_ts_isnotempty",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "isnotempty"
- },
- {
- "label": "IsOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_ts_isoptional",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "isoptional"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_ts_isstring",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "isstring"
- },
- {
- "label": "Min",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_dto_create_review_dto_ts_min",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "min"
- },
- {
- "label": "Body",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_controller_ts_body",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "body"
- },
- {
- "label": "Post",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_controller_ts_post",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "post"
- },
- {
- "label": "Req",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_reviews_reviews_controller_ts_req",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "req"
- },
- {
- "label": "Max",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "max",
- "community": 134,
- "community_name": "CreateReviewDto",
- "norm_label": "max"
+ "community_name": "blog/page.tsx",
+ "norm_label": "revalidate"
},
{
"label": "exports.md",
@@ -22341,59 +22257,70 @@
"norm_label": "\u0646\u0645\u0648\u0646\u0647 \u0645\u062a\u0646 sample:"
},
{
- "label": "RouteErrorBoundary.tsx",
+ "label": "layout.tsx",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/RouteErrorBoundary.tsx",
+ "source_file": "frontend/application/app/layout.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_routeerrorboundary",
+ "id": "frontend_application_app_layout",
"community": 139,
- "community_name": "RouteErrorBoundary",
- "norm_label": "routeerrorboundary.tsx"
+ "community_name": "layout.tsx",
+ "norm_label": "layout.tsx"
},
{
- "label": "LoginModal",
+ "label": "fonts.ts",
"file_type": "code",
- "source_file": "frontend/application/app/ClientLayout.tsx",
- "source_location": "L12",
- "_origin": "ast",
- "id": "frontend_application_app_clientlayout_loginmodal",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "loginmodal"
- },
- {
- "label": "verify/page.tsx",
- "file_type": "code",
- "source_file": "frontend/application/app/payment/verify/page.tsx",
+ "source_file": "frontend/application/lib/fonts.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_payment_verify_page",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "verify/page.tsx"
+ "id": "frontend_application_lib_fonts",
+ "community": 139,
+ "community_name": "layout.tsx",
+ "norm_label": "fonts.ts"
},
{
- "label": "B2BPortal.tsx",
+ "label": "lalezar",
"file_type": "code",
- "source_file": "frontend/application/components/B2BPortal.tsx",
- "source_location": "L1",
+ "source_file": "frontend/application/lib/fonts.ts",
+ "source_location": "L16",
"_origin": "ast",
- "id": "frontend_application_components_b2bportal",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "b2bportal.tsx"
+ "id": "frontend_application_lib_fonts_lalezar",
+ "community": 139,
+ "community_name": "layout.tsx",
+ "norm_label": "lalezar"
},
{
- "label": "CartDrawer.tsx",
+ "label": "vazirmatn",
"file_type": "code",
- "source_file": "frontend/application/components/CartDrawer.tsx",
+ "source_file": "frontend/application/lib/fonts.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "id": "frontend_application_lib_fonts_vazirmatn",
+ "community": 139,
+ "community_name": "layout.tsx",
+ "norm_label": "vazirmatn"
+ },
+ {
+ "label": "B2BLandingClient.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_components_cartdrawer",
+ "id": "frontend_application_components_b2blandingclient",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "cartdrawer.tsx"
+ "norm_label": "b2blandingclient.tsx"
+ },
+ {
+ "label": "BlogPreviewSection.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/BlogPreviewSection.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_blogpreviewsection",
+ "community": 14,
+ "community_name": "lib/services/api.ts",
+ "norm_label": "blogpreviewsection.tsx"
},
{
"label": "ContactFormClient.tsx",
@@ -22407,59 +22334,26 @@
"norm_label": "contactformclient.tsx"
},
{
- "label": "LoginModal.tsx",
+ "label": "FAQSection.tsx",
"file_type": "code",
- "source_file": "frontend/application/components/LoginModal.tsx",
+ "source_file": "frontend/application/components/FAQSection.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_components_loginmodal",
+ "id": "frontend_application_components_faqsection",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "loginmodal.tsx"
+ "norm_label": "faqsection.tsx"
},
{
- "label": "PrescriptionUploadModal.tsx",
+ "label": "TestimonialsSection.tsx",
"file_type": "code",
- "source_file": "frontend/application/components/PrescriptionUploadModal.tsx",
+ "source_file": "frontend/application/components/TestimonialsSection.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_components_prescriptionuploadmodal",
+ "id": "frontend_application_components_testimonialssection",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "prescriptionuploadmodal.tsx"
- },
- {
- "label": "CartDrawer.test.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_tests_cartdrawer_test",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "cartdrawer.test.tsx"
- },
- {
- "label": "mockProduct",
- "file_type": "code",
- "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx",
- "source_location": "L19",
- "_origin": "ast",
- "id": "frontend_application_components_tests_cartdrawer_test_mockproduct",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "mockproduct"
- },
- {
- "label": "Header.test.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/__tests__/Header.test.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_tests_header_test",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "header.test.tsx"
+ "norm_label": "testimonialssection.tsx"
},
{
"label": "lib/services/api.ts",
@@ -22483,6 +22377,17 @@
"community_name": "lib/services/api.ts",
"norm_label": "api"
},
+ {
+ "label": "BASE_DOMAIN",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/services/api.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "id": "frontend_application_lib_services_api_base_domain",
+ "community": 14,
+ "community_name": "lib/services/api.ts",
+ "norm_label": "base_domain"
+ },
{
"label": "baseURL",
"file_type": "code",
@@ -22517,26 +22422,37 @@
"norm_label": "orderservice.ts"
},
{
- "label": "cartStore.ts",
+ "label": "ticketService.ts",
"file_type": "code",
- "source_file": "frontend/application/lib/store/cartStore.ts",
+ "source_file": "frontend/application/lib/services/ticketService.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_lib_store_cartstore",
+ "id": "frontend_application_lib_services_ticketservice",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "cartstore.ts"
+ "norm_label": "ticketservice.ts"
},
{
- "label": "useCartStore",
+ "label": "ticketService",
"file_type": "code",
- "source_file": "frontend/application/lib/store/cartStore.ts",
- "source_location": "L54",
+ "source_file": "frontend/application/lib/services/ticketService.ts",
+ "source_location": "L43",
"_origin": "ast",
- "id": "frontend_application_lib_store_cartstore_usecartstore",
+ "id": "frontend_application_lib_services_ticketservice_ticketservice",
"community": 14,
"community_name": "lib/services/api.ts",
- "norm_label": "usecartstore"
+ "norm_label": "ticketservice"
+ },
+ {
+ "label": "settingsStore.ts",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/settingsStore.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_settingsstore",
+ "community": 14,
+ "community_name": "lib/services/api.ts",
+ "norm_label": "settingsstore.ts"
},
{
"label": "cartStore.test.ts",
@@ -22560,6 +22476,17 @@
"community_name": "lib/services/api.ts",
"norm_label": "mockproduct"
},
+ {
+ "label": "settingsStore.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/__tests__/settingsStore.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_tests_settingsstore_test",
+ "community": 14,
+ "community_name": "lib/services/api.ts",
+ "norm_label": "settingsstore.test.ts"
+ },
{
"label": "userStore.test.ts",
"file_type": "code",
@@ -22571,28 +22498,6 @@
"community_name": "lib/services/api.ts",
"norm_label": "userstore.test.ts"
},
- {
- "label": "userStore.ts",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/userStore.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_lib_store_userstore",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "userstore.ts"
- },
- {
- "label": "useUserStore",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/userStore.ts",
- "source_location": "L63",
- "_origin": "ast",
- "id": "frontend_application_lib_store_userstore_useuserstore",
- "community": 14,
- "community_name": "lib/services/api.ts",
- "norm_label": "useuserstore"
- },
{
"label": "ErrorBoundary.tsx",
"file_type": "code",
@@ -22879,6 +22784,39 @@
"community_name": "@testing-library/react",
"norm_label": "@testing-library/react"
},
+ {
+ "label": "admin.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "admin.controller.ts"
+ },
+ {
+ "label": "admin.controller.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.controller.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_controller_spec",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "admin.controller.spec.ts"
+ },
+ {
+ "label": "admin.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_service",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "admin.service.ts"
+ },
{
"label": "product.dto.ts",
"file_type": "code",
@@ -22887,7 +22825,7 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "product.dto.ts"
},
{
@@ -22898,7 +22836,7 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_ts_apipropertyoptional",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "apipropertyoptional"
},
{
@@ -22909,7 +22847,7 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_ts_isarray",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "isarray"
},
{
@@ -22920,7 +22858,7 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_ts_isboolean",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "isboolean"
},
{
@@ -22931,7 +22869,7 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_ts_isnumber",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "isnumber"
},
{
@@ -22942,7 +22880,7 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_ts_isoptional",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "isoptional"
},
{
@@ -22953,9 +22891,108 @@
"_origin": "ast",
"id": "backend_src_admin_dto_product_dto_ts_isstring",
"community": 145,
- "community_name": "ProductDto",
+ "community_name": "admin.service.ts",
"norm_label": "isstring"
},
+ {
+ "label": "user.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/dto/user.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "user.dto.ts"
+ },
+ {
+ "label": "ApiProperty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_apiproperty",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "apiproperty"
+ },
+ {
+ "label": "ApiPropertyOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_apipropertyoptional",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "apipropertyoptional"
+ },
+ {
+ "label": "IsEmail",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_isemail",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "isemail"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_isnotempty",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsNumber",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_isnumber",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "isnumber"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_isoptional",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_isstring",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "MinLength",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_dto_user_dto_ts_minlength",
+ "community": 145,
+ "community_name": "admin.service.ts",
+ "norm_label": "minlength"
+ },
{
"label": "01-system-discovery.md",
"file_type": "document",
@@ -23044,38 +23081,71 @@
"community_name": "System Discovery",
"norm_label": "technical architecture summary"
},
+ {
+ "label": "revalidation.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/common/revalidation/revalidation.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_module",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": "revalidation.module.ts"
+ },
+ {
+ "label": "Global",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_module_ts_global",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": "global"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_module_ts_module",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": "module"
+ },
+ {
+ "label": "revalidation.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/common/revalidation/revalidation.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_common_revalidation_revalidation_service",
+ "community": 147,
+ "community_name": "RevalidationService",
+ "norm_label": "revalidation.service.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_reviews_reviews_service_ts_injectable",
+ "id": "backend_src_common_revalidation_revalidation_service_ts_injectable",
"community": 147,
- "community_name": "ReviewsService",
+ "community_name": "RevalidationService",
"norm_label": "injectable"
},
{
- "label": "Body",
+ "label": "wiki/[slug]/page.tsx",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_ts_body",
+ "id": "frontend_application_app_wiki_slug_page",
"community": 148,
- "community_name": "Body",
- "norm_label": "body"
- },
- {
- "label": "Post",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_ts_post",
- "community": 148,
- "community_name": "Body",
- "norm_label": "post"
+ "community_name": "wiki/[slug]/page.tsx",
+ "norm_label": "wiki/[slug]/page.tsx"
},
{
"label": "SmsSettingsPage.tsx",
@@ -23349,9 +23419,20 @@
"_origin": "ast",
"id": "backend_src_auth_auth_controller_spec",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": "auth.controller.spec.ts"
},
+ {
+ "label": "auth.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_service",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "auth.service.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
@@ -23360,9 +23441,64 @@
"_origin": "ast",
"id": "backend_src_auth_auth_service_ts_injectable",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": "injectable"
},
+ {
+ "label": "send-otp.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/dto/send-otp.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_send_otp_dto",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "send-otp.dto.ts"
+ },
+ {
+ "label": "ApiProperty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_send_otp_dto_ts_apiproperty",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "apiproperty"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_send_otp_dto_ts_isnotempty",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_send_otp_dto_ts_isstring",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "Matches",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_send_otp_dto_ts_matches",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "matches"
+ },
{
"label": "phone.utils.ts",
"file_type": "code",
@@ -23371,30 +23507,52 @@
"_origin": "ast",
"id": "backend_src_common_utils_phone_utils",
"community": 151,
- "community_name": "AuthService",
+ "community_name": "auth.service.ts",
"norm_label": "phone.utils.ts"
},
{
- "label": "@nestjs/cli",
+ "label": "redis.service.spec.ts",
"file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L49",
+ "source_file": "backend/src/redis/redis.service.spec.ts",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_package_devdependencies_nestjs_cli",
- "community": 152,
- "community_name": "@nestjs/cli",
- "norm_label": "@nestjs/cli"
+ "id": "backend_src_redis_redis_service_spec",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "redis.service.spec.ts"
},
{
- "label": "@nestjs/cli",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L49",
+ "label": "Injectable",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
"_origin": "ast",
- "id": "nestjs_cli",
+ "id": "backend_src_redis_redis_service_ts_injectable",
+ "community": 151,
+ "community_name": "auth.service.ts",
+ "norm_label": "injectable"
+ },
+ {
+ "label": "trust-seals/page.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/app/trust-seals/page.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_app_trust_seals_page",
"community": 152,
- "community_name": "@nestjs/cli",
- "norm_label": "@nestjs/cli"
+ "community_name": "trust-seals/page.tsx",
+ "norm_label": "trust-seals/page.tsx"
+ },
+ {
+ "label": "EnamadBadge.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/EnamadBadge.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_enamadbadge",
+ "community": 152,
+ "community_name": "trust-seals/page.tsx",
+ "norm_label": "enamadbadge.tsx"
},
{
"label": "tsconfig.build.json",
@@ -23573,70 +23731,48 @@
"norm_label": "root `package.json` scripts"
},
{
- "label": "RichTextEditor.tsx",
+ "label": "seo-backfill.ts",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
+ "source_file": "backend/scripts/seo-backfill.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_ui_richtexteditor",
+ "id": "backend_scripts_seo_backfill",
"community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "richtexteditor.tsx"
+ "community_name": "seo-backfill.ts",
+ "norm_label": "seo-backfill.ts"
},
{
- "label": "PRESET_BG_COLORS",
+ "label": "prisma",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
- "source_location": "L51",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L3",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_bg_colors",
+ "id": "backend_scripts_seo_backfill_prisma",
"community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "preset_bg_colors"
+ "community_name": "seo-backfill.ts",
+ "norm_label": "prisma"
},
{
- "label": "PRESET_COLORS",
+ "label": "bcrypt",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
- "source_location": "L41",
+ "source_file": "backend/package.json",
+ "source_location": "L33",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_colors",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "preset_colors"
- },
- {
- "label": "Blogs.tsx",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_admin_panel_src_pages_blogs",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "blogs.tsx"
- },
- {
- "label": "Blogs",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
- "source_location": "L18",
- "_origin": "ast",
- "id": "frontend_admin_panel_src_routes_adminroutes_blogs",
- "community": 155,
- "community_name": "Blogs.tsx",
- "norm_label": "blogs"
- },
- {
- "label": "contact/page.tsx",
- "file_type": "code",
- "source_file": "frontend/application/app/contact/page.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_app_contact_page",
+ "id": "backend_package_dependencies_bcrypt",
"community": 156,
- "community_name": "contact/page.tsx",
- "norm_label": "contact/page.tsx"
+ "community_name": "bcrypt",
+ "norm_label": "bcrypt"
+ },
+ {
+ "label": "bcrypt",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "id": "bcrypt",
+ "community": 156,
+ "community_name": "bcrypt",
+ "norm_label": "bcrypt"
},
{
"label": "error.tsx",
@@ -23672,26 +23808,26 @@
"norm_label": "errorpages.tsx"
},
{
- "label": "@types/bcryptjs",
+ "label": "class-transformer",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L53",
+ "source_location": "L35",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_bcryptjs",
+ "id": "backend_package_dependencies_class_transformer",
"community": 158,
- "community_name": "@types/bcryptjs",
- "norm_label": "@types/bcryptjs"
+ "community_name": "class-transformer",
+ "norm_label": "class-transformer"
},
{
- "label": "@types/bcryptjs",
+ "label": "class-transformer",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L53",
+ "source_location": "L35",
"_origin": "ast",
- "id": "types_bcryptjs",
+ "id": "class_transformer",
"community": 158,
- "community_name": "@types/bcryptjs",
- "norm_label": "@types/bcryptjs"
+ "community_name": "class-transformer",
+ "norm_label": "class-transformer"
},
{
"label": "with-vpn.sh",
@@ -24635,147 +24771,48 @@
"norm_label": "apiproperty"
},
{
- "label": "admin.service.ts",
+ "label": "b2b/page.tsx",
"file_type": "code",
- "source_file": "backend/src/admin/admin.service.ts",
+ "source_file": "frontend/application/app/b2b/page.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_admin_service",
+ "id": "frontend_application_app_b2b_page",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "admin.service.ts"
+ "community_name": "schema.ts",
+ "norm_label": "b2b/page.tsx"
},
{
- "label": "admin.service.spec.ts",
+ "label": "contact/page.tsx",
"file_type": "code",
- "source_file": "backend/src/admin/admin.service.spec.ts",
+ "source_file": "frontend/application/app/contact/page.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_admin_service_spec",
+ "id": "frontend_application_app_contact_page",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "admin.service.spec.ts"
+ "community_name": "schema.ts",
+ "norm_label": "contact/page.tsx"
},
{
- "label": "revalidation.module.ts",
+ "label": "videos/page.tsx",
"file_type": "code",
- "source_file": "backend/src/common/revalidation/revalidation.module.ts",
+ "source_file": "frontend/application/app/videos/page.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_module",
+ "id": "frontend_application_app_videos_page",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "revalidation.module.ts"
+ "community_name": "schema.ts",
+ "norm_label": "videos/page.tsx"
},
{
- "label": "Global",
+ "label": "schema.ts",
"file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_module_ts_global",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "global"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_module_ts_module",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "module"
- },
- {
- "label": "revalidation.service.ts",
- "file_type": "code",
- "source_file": "backend/src/common/revalidation/revalidation.service.ts",
+ "source_file": "frontend/application/lib/schema.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_common_revalidation_revalidation_service",
+ "id": "frontend_application_lib_schema",
"community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "revalidation.service.ts"
- },
- {
- "label": "redis.module.ts",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_redis_redis_module",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "redis.module.ts"
- },
- {
- "label": "Global",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_redis_redis_module_ts_global",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "global"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_redis_redis_module_ts_module",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "module"
- },
- {
- "label": "redis.service.ts",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_redis_redis_service",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "redis.service.ts"
- },
- {
- "label": "redis.service.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/redis/redis.service.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_redis_redis_service_spec",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "redis.service.spec.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_redis_redis_service_ts_injectable",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "injectable"
- },
- {
- "label": "CANONICAL_ALIASES",
- "file_type": "code",
- "source_file": "backend/src/settings/settings.service.ts",
- "source_location": "L13",
- "_origin": "ast",
- "id": "backend_src_settings_settings_service_canonical_aliases",
- "community": 17,
- "community_name": "admin.service.ts",
- "norm_label": "canonical_aliases"
+ "community_name": "schema.ts",
+ "norm_label": "schema.ts"
},
{
"label": "24-omitted-file-inspection-report.md",
@@ -25053,70 +25090,103 @@
"norm_label": "warnings"
},
{
- "label": "@types/node",
+ "label": "helmet",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L59",
+ "source_location": "L38",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_node",
+ "id": "backend_package_dependencies_helmet",
"community": 176,
- "community_name": "@types/node",
- "norm_label": "@types/node"
+ "community_name": "helmet",
+ "norm_label": "helmet"
},
{
- "label": "@types/node",
+ "label": "helmet",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L59",
+ "source_location": "L38",
"_origin": "ast",
- "id": "backend_package_json_types_node",
+ "id": "helmet",
"community": 176,
- "community_name": "@types/node",
- "norm_label": "@types/node"
+ "community_name": "helmet",
+ "norm_label": "helmet"
},
{
- "label": "blog/page.tsx",
+ "label": "js-yaml",
"file_type": "code",
- "source_file": "frontend/application/app/blog/page.tsx",
+ "source_file": "backend/package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "id": "backend_package_dependencies_js_yaml",
+ "community": 177,
+ "community_name": "js-yaml",
+ "norm_label": "js-yaml"
+ },
+ {
+ "label": "js-yaml",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "id": "js_yaml",
+ "community": 177,
+ "community_name": "js-yaml",
+ "norm_label": "js-yaml"
+ },
+ {
+ "label": "@nestjs/core",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "id": "backend_package_dependencies_nestjs_core",
+ "community": 178,
+ "community_name": "@nestjs/core",
+ "norm_label": "@nestjs/core"
+ },
+ {
+ "label": "@nestjs/core",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "id": "nestjs_core",
+ "community": 178,
+ "community_name": "@nestjs/core",
+ "norm_label": "@nestjs/core"
+ },
+ {
+ "label": "admin/blogs.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/blogs.controller.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_blog_page",
- "community": 177,
- "community_name": "blog/page.tsx",
- "norm_label": "blog/page.tsx"
+ "id": "backend_src_admin_blogs_controller",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "admin/blogs.controller.ts"
},
{
- "label": "revalidate",
+ "label": "admin/blogs.service.ts",
"file_type": "code",
- "source_file": "frontend/application/app/blog/page.tsx",
- "source_location": "L13",
+ "source_file": "backend/src/admin/blogs.service.ts",
+ "source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_blog_page_revalidate",
- "community": 177,
- "community_name": "blog/page.tsx",
- "norm_label": "revalidate"
+ "id": "backend_src_admin_blogs_service",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "admin/blogs.service.ts"
},
{
- "label": "typescript",
+ "label": "admin-query.dto.ts",
"file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L75",
+ "source_file": "backend/src/admin/dto/admin-query.dto.ts",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_package_devdependencies_typescript",
- "community": 178,
- "community_name": "typescript",
- "norm_label": "typescript"
- },
- {
- "label": "typescript",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L75",
- "_origin": "ast",
- "id": "backend_package_json_typescript",
- "community": 178,
- "community_name": "typescript",
- "norm_label": "typescript"
+ "id": "backend_src_admin_dto_admin_query_dto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "admin-query.dto.ts"
},
{
"label": "blogs/blogs.controller.ts",
@@ -25126,7 +25196,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_controller",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "blogs/blogs.controller.ts"
},
{
@@ -25137,7 +25207,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_module",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "blogs.module.ts"
},
{
@@ -25148,7 +25218,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_module_ts_module",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "module"
},
{
@@ -25159,7 +25229,7 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
"norm_label": "blogs/blogs.service.ts"
},
{
@@ -25170,7 +25240,315 @@
"_origin": "ast",
"id": "backend_src_blogs_blogs_service_ts_injectable",
"community": 179,
- "community_name": "BlogsService",
+ "community_name": "PaginationDto",
+ "norm_label": "injectable"
+ },
+ {
+ "label": "pagination.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/common/dto/pagination.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "pagination.dto.ts"
+ },
+ {
+ "label": "ApiPropertyOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_apipropertyoptional",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "apipropertyoptional"
+ },
+ {
+ "label": "IsEnum",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_isenum",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isenum"
+ },
+ {
+ "label": "IsInt",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_isint",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isint"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_isoptional",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_isstring",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "Min",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_min",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "min"
+ },
+ {
+ "label": "Type",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_common_dto_pagination_dto_ts_type",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "type"
+ },
+ {
+ "label": "create-order.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/orders/dto/create-order.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_orders_dto_create_order_dto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "create-order.dto.ts"
+ },
+ {
+ "label": "orders.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/orders/orders.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_controller",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "orders.controller.ts"
+ },
+ {
+ "label": "orders.controller.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/orders/orders.controller.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_controller_spec",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "orders.controller.spec.ts"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_controller_ts_isnotempty",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsNumber",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_controller_ts_isnumber",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isnumber"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_controller_ts_isstring",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "orders.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/orders/orders.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_module",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "orders.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_module_ts_module",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "module"
+ },
+ {
+ "label": "orders.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/orders/orders.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_orders_orders_service",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "orders.service.ts"
+ },
+ {
+ "label": "get-videos-query.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/videos/dto/get-videos-query.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_videos_dto_get_videos_query_dto",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "get-videos-query.dto.ts"
+ },
+ {
+ "label": "ApiPropertyOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_videos_dto_get_videos_query_dto_ts_apipropertyoptional",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "apipropertyoptional"
+ },
+ {
+ "label": "IsBoolean",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_videos_dto_get_videos_query_dto_ts_isboolean",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isboolean"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_videos_dto_get_videos_query_dto_ts_isoptional",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "Transform",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_videos_dto_get_videos_query_dto_ts_transform",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "transform"
+ },
+ {
+ "label": "videos.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/videos/videos.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_videos_videos_controller",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "videos.controller.ts"
+ },
+ {
+ "label": "wiki/wiki.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "wiki/wiki.controller.ts"
+ },
+ {
+ "label": "wiki.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_module",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "wiki.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_module_ts_module",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "module"
+ },
+ {
+ "label": "wiki/wiki.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/wiki/wiki.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_service",
+ "community": 179,
+ "community_name": "PaginationDto",
+ "norm_label": "wiki/wiki.service.ts"
+ },
+ {
+ "label": "Injectable",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_service_ts_injectable",
+ "community": 179,
+ "community_name": "PaginationDto",
"norm_label": "injectable"
},
{
@@ -25184,6 +25562,17 @@
"community_name": "JwtAuthGuard",
"norm_label": "ssl.controller.ts"
},
+ {
+ "label": "admin/wiki.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/wiki.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_controller",
+ "community": 18,
+ "community_name": "JwtAuthGuard",
+ "norm_label": "admin/wiki.controller.ts"
+ },
{
"label": "jwt-auth.guard.ts",
"file_type": "code",
@@ -25228,17 +25617,6 @@
"community_name": "JwtAuthGuard",
"norm_label": "auth/roles.guard.ts"
},
- {
- "label": "b2b.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/b2b/b2b.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_b2b_b2b_controller",
- "community": 18,
- "community_name": "JwtAuthGuard",
- "norm_label": "b2b.controller.ts"
- },
{
"label": "banners.controller.ts",
"file_type": "code",
@@ -25316,17 +25694,6 @@
"community_name": "JwtAuthGuard",
"norm_label": "contact.controller.ts"
},
- {
- "label": "faq.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/faq/faq.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_faq_faq_controller",
- "community": 18,
- "community_name": "JwtAuthGuard",
- "norm_label": "faq.controller.ts"
- },
{
"label": "ingredients.controller.ts",
"file_type": "code",
@@ -25349,17 +25716,6 @@
"community_name": "JwtAuthGuard",
"norm_label": "menu.controller.ts"
},
- {
- "label": "payment.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/payment/payment.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_payment_payment_controller",
- "community": 18,
- "community_name": "JwtAuthGuard",
- "norm_label": "payment.controller.ts"
- },
{
"label": "prescriptions.controller.ts",
"file_type": "code",
@@ -25415,6 +25771,17 @@
"community_name": "JwtAuthGuard",
"norm_label": "testimonials.controller.ts"
},
+ {
+ "label": "wholesale-apply.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_wholesale_dto_wholesale_apply_dto",
+ "community": 18,
+ "community_name": "JwtAuthGuard",
+ "norm_label": "wholesale-apply.dto.ts"
+ },
{
"label": "wholesale.controller.ts",
"file_type": "code",
@@ -25613,17 +25980,6 @@
"community_name": "MetricsController",
"norm_label": "apiexcludecontroller"
},
- {
- "label": "metrics.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/common/metrics.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_common_metrics_controller",
- "community": 184,
- "community_name": "MetricsController",
- "norm_label": "metrics.controller.ts"
- },
{
"label": "Controller",
"file_type": "code",
@@ -25658,147 +26014,26 @@
"norm_label": "res"
},
{
- "label": "wiki/wiki.controller.ts",
+ "label": "@nestjs/jwt",
"file_type": "code",
- "source_file": "backend/src/wiki/wiki.controller.ts",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L27",
"_origin": "ast",
- "id": "backend_src_wiki_wiki_controller",
+ "id": "backend_package_dependencies_nestjs_jwt",
"community": 185,
- "community_name": "WikiController",
- "norm_label": "wiki/wiki.controller.ts"
+ "community_name": "@nestjs/jwt",
+ "norm_label": "@nestjs/jwt"
},
{
- "label": "ApiNotFoundResponse",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
+ "label": "@nestjs/jwt",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L27",
"_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_apinotfoundresponse",
+ "id": "nestjs_jwt",
"community": 185,
- "community_name": "WikiController",
- "norm_label": "apinotfoundresponse"
- },
- {
- "label": "ApiOkResponse",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_apiokresponse",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "apiokresponse"
- },
- {
- "label": "ApiOperation",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_apioperation",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "apioperation"
- },
- {
- "label": "ApiTags",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_apitags",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "apitags"
- },
- {
- "label": "Controller",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_controller",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "controller"
- },
- {
- "label": "Get",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_get",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "get"
- },
- {
- "label": "Param",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_param",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "param"
- },
- {
- "label": "Query",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_controller_ts_query",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "query"
- },
- {
- "label": "wiki.module.ts",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_module",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "wiki.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_module_ts_module",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "module"
- },
- {
- "label": "wiki/wiki.service.ts",
- "file_type": "code",
- "source_file": "backend/src/wiki/wiki.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_service",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "wiki/wiki.service.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_wiki_wiki_service_ts_injectable",
- "community": 185,
- "community_name": "WikiController",
- "norm_label": "injectable"
+ "community_name": "@nestjs/jwt",
+ "norm_label": "@nestjs/jwt"
},
{
"label": "seed-ui-texts.ts",
@@ -25910,83 +26145,6 @@
"community_name": "update-home.dto.ts",
"norm_label": "update-home.dto.ts"
},
- {
- "label": "get-products.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/products/dto/get-products.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_products_dto_get_products_dto",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "get-products.dto.ts"
- },
- {
- "label": "ApiPropertyOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_dto_get_products_dto_ts_apipropertyoptional",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "apipropertyoptional"
- },
- {
- "label": "IsEnum",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_dto_get_products_dto_ts_isenum",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "isenum"
- },
- {
- "label": "IsOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_dto_get_products_dto_ts_isoptional",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "isoptional"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_dto_get_products_dto_ts_isstring",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "isstring"
- },
- {
- "label": "products.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/products/products.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_products_products_controller",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "products.controller.ts"
- },
- {
- "label": "products.controller.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/products/products.controller.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_products_products_controller_spec",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "products.controller.spec.ts"
- },
{
"label": "ApiOperation",
"file_type": "code",
@@ -25995,7 +26153,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_apioperation",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "apioperation"
},
{
@@ -26006,7 +26164,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_apitags",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "apitags"
},
{
@@ -26017,7 +26175,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_body",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "body"
},
{
@@ -26028,7 +26186,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_controller",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "controller"
},
{
@@ -26039,7 +26197,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_get",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "get"
},
{
@@ -26050,7 +26208,7 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_param",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "param"
},
{
@@ -26061,20 +26219,9 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_patch",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "patch"
},
- {
- "label": "Query",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_products_controller_ts_query",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "query"
- },
{
"label": "UseGuards",
"file_type": "code",
@@ -26083,64 +26230,9 @@
"_origin": "ast",
"id": "backend_src_products_products_controller_ts_useguards",
"community": 19,
- "community_name": "ProductsService",
+ "community_name": "ProductsController",
"norm_label": "useguards"
},
- {
- "label": "products.module.ts",
- "file_type": "code",
- "source_file": "backend/src/products/products.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_products_products_module",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "products.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_products_module_ts_module",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "module"
- },
- {
- "label": "products.service.ts",
- "file_type": "code",
- "source_file": "backend/src/products/products.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_products_products_service",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "products.service.ts"
- },
- {
- "label": "products.service.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/products/products.service.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_products_products_service_spec",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "products.service.spec.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_products_products_service_ts_injectable",
- "community": 19,
- "community_name": "ProductsService",
- "norm_label": "injectable"
- },
{
"label": "create-wiki.dto.ts",
"file_type": "code",
@@ -26406,103 +26498,70 @@
"norm_label": "select"
},
{
- "label": "update-profile.dto.ts",
+ "label": "@nestjs/throttler",
"file_type": "code",
- "source_file": "backend/src/users/dto/update-profile.dto.ts",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L31",
"_origin": "ast",
- "id": "backend_src_users_dto_update_profile_dto",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "update-profile.dto.ts"
+ "id": "backend_package_dependencies_nestjs_throttler",
+ "community": 197,
+ "community_name": "@nestjs/throttler",
+ "norm_label": "@nestjs/throttler"
},
{
- "label": "users.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/users/users.controller.ts",
- "source_location": "L1",
+ "label": "@nestjs/throttler",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L31",
"_origin": "ast",
- "id": "backend_src_users_users_controller",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "users.controller.ts"
+ "id": "nestjs_throttler",
+ "community": 197,
+ "community_name": "@nestjs/throttler",
+ "norm_label": "@nestjs/throttler"
},
{
- "label": "users.controller.spec.ts",
+ "label": "passport",
"file_type": "code",
- "source_file": "backend/src/users/users.controller.spec.ts",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L41",
"_origin": "ast",
- "id": "backend_src_users_users_controller_spec",
+ "id": "backend_package_dependencies_passport",
"community": 198,
- "community_name": "users.service.ts",
- "norm_label": "users.controller.spec.ts"
+ "community_name": "passport",
+ "norm_label": "passport"
},
{
- "label": "users.module.ts",
- "file_type": "code",
- "source_file": "backend/src/users/users.module.ts",
- "source_location": "L1",
+ "label": "passport",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L41",
"_origin": "ast",
- "id": "backend_src_users_users_module",
+ "id": "passport",
"community": 198,
- "community_name": "users.service.ts",
- "norm_label": "users.module.ts"
+ "community_name": "passport",
+ "norm_label": "passport"
},
{
- "label": "Module",
+ "label": "auth.controller.ts",
"file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_users_users_module_ts_module",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "module"
- },
- {
- "label": "users.service.ts",
- "file_type": "code",
- "source_file": "backend/src/users/users.service.ts",
+ "source_file": "backend/src/auth/auth.controller.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_users_users_service",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "users.service.ts"
- },
- {
- "label": "users.service.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/users/users.service.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_users_users_service_spec",
- "community": 198,
- "community_name": "users.service.ts",
- "norm_label": "users.service.spec.ts"
- },
- {
- "label": "auth.service.ts",
- "file_type": "code",
- "source_file": "backend/src/auth/auth.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_auth_auth_service",
+ "id": "backend_src_auth_auth_controller",
"community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "auth.service.ts"
+ "community_name": "auth.controller.ts",
+ "norm_label": "auth.controller.ts"
},
{
- "label": "send-otp.dto.ts",
+ "label": "admin-login.dto.ts",
"file_type": "code",
- "source_file": "backend/src/auth/dto/send-otp.dto.ts",
+ "source_file": "backend/src/auth/dto/admin-login.dto.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_auth_dto_send_otp_dto",
+ "id": "backend_src_auth_dto_admin_login_dto",
"community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "send-otp.dto.ts"
+ "community_name": "auth.controller.ts",
+ "norm_label": "admin-login.dto.ts"
},
{
"label": "ApiProperty",
@@ -26510,20 +26569,31 @@
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_auth_dto_send_otp_dto_ts_apiproperty",
+ "id": "backend_src_auth_dto_admin_login_dto_ts_apiproperty",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "apiproperty"
},
+ {
+ "label": "IsEmail",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_admin_login_dto_ts_isemail",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isemail"
+ },
{
"label": "IsNotEmpty",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_auth_dto_send_otp_dto_ts_isnotempty",
+ "id": "backend_src_auth_dto_admin_login_dto_ts_isnotempty",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "isnotempty"
},
{
@@ -26532,21 +26602,164 @@
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_auth_dto_send_otp_dto_ts_isstring",
+ "id": "backend_src_auth_dto_admin_login_dto_ts_isstring",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "isstring"
},
{
- "label": "Matches",
+ "label": "MinLength",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_auth_dto_send_otp_dto_ts_matches",
+ "id": "backend_src_auth_dto_admin_login_dto_ts_minlength",
"community": 199,
- "community_name": "auth.service.ts",
- "norm_label": "matches"
+ "community_name": "auth.controller.ts",
+ "norm_label": "minlength"
+ },
+ {
+ "label": "login.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/dto/login.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_login_dto",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "login.dto.ts"
+ },
+ {
+ "label": "ApiProperty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_login_dto_ts_apiproperty",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "apiproperty"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_login_dto_ts_isnotempty",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_login_dto_ts_isstring",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "MinLength",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_login_dto_ts_minlength",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "minlength"
+ },
+ {
+ "label": "register.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/dto/register.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "register.dto.ts"
+ },
+ {
+ "label": "ApiProperty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_apiproperty",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "apiproperty"
+ },
+ {
+ "label": "ApiPropertyOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_apipropertyoptional",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "apipropertyoptional"
+ },
+ {
+ "label": "IsEmail",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_isemail",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isemail"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_isnotempty",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_isoptional",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_isstring",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "MinLength",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_dto_register_dto_ts_minlength",
+ "community": 199,
+ "community_name": "auth.controller.ts",
+ "norm_label": "minlength"
},
{
"label": "verify-otp.dto.ts",
@@ -26556,7 +26769,7 @@
"_origin": "ast",
"id": "backend_src_auth_dto_verify_otp_dto",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "verify-otp.dto.ts"
},
{
@@ -26567,7 +26780,7 @@
"_origin": "ast",
"id": "backend_src_auth_dto_verify_otp_dto_ts_apiproperty",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "apiproperty"
},
{
@@ -26578,7 +26791,7 @@
"_origin": "ast",
"id": "backend_src_auth_dto_verify_otp_dto_ts_isnotempty",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "isnotempty"
},
{
@@ -26589,7 +26802,7 @@
"_origin": "ast",
"id": "backend_src_auth_dto_verify_otp_dto_ts_isstring",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "isstring"
},
{
@@ -26600,7 +26813,7 @@
"_origin": "ast",
"id": "backend_src_auth_dto_verify_otp_dto_ts_matches",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "matches"
},
{
@@ -26611,7 +26824,7 @@
"_origin": "ast",
"id": "length",
"community": 199,
- "community_name": "auth.service.ts",
+ "community_name": "auth.controller.ts",
"norm_label": "length"
},
{
@@ -27269,26 +27482,26 @@
"norm_label": "\ud83d\udc41\ufe0f ux & persona interface review (08_visual_qa)"
},
{
- "label": "supertest",
+ "label": "reflect-metadata",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L70",
+ "source_location": "L43",
"_origin": "ast",
- "id": "backend_package_devdependencies_supertest",
+ "id": "backend_package_dependencies_reflect_metadata",
"community": 204,
- "community_name": "supertest",
- "norm_label": "supertest"
+ "community_name": "reflect-metadata",
+ "norm_label": "reflect-metadata"
},
{
- "label": "supertest",
+ "label": "reflect-metadata",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L70",
+ "source_location": "L43",
"_origin": "ast",
- "id": "supertest",
+ "id": "reflect_metadata",
"community": 204,
- "community_name": "supertest",
- "norm_label": "supertest"
+ "community_name": "reflect-metadata",
+ "norm_label": "reflect-metadata"
},
{
"label": "prisma/scientificTerms.ts",
@@ -27423,26 +27636,103 @@
"norm_label": "step 2.5 - transcribe video / audio files (only if video files detected)"
},
{
- "label": "eslint-config-next",
+ "label": "ProductPage.tsx",
"file_type": "code",
- "source_file": "frontend/application/package.json",
- "source_location": "L30",
+ "source_file": "frontend/application/components/ProductPage.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_package_devdependencies_eslint_config_next",
+ "id": "frontend_application_components_productpage",
"community": 21,
- "community_name": "eslint-config-next",
- "norm_label": "eslint-config-next"
+ "community_name": "ProductPage.tsx",
+ "norm_label": "productpage.tsx"
},
{
- "label": "eslint-config-next",
- "file_type": "concept",
- "source_file": "frontend/application/package.json",
- "source_location": "L30",
+ "label": "ICON_MAP",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductPage.tsx",
+ "source_location": "L34",
"_origin": "ast",
- "id": "eslint_config_next",
+ "id": "frontend_application_components_productpage_icon_map",
"community": 21,
- "community_name": "eslint-config-next",
- "norm_label": "eslint-config-next"
+ "community_name": "ProductPage.tsx",
+ "norm_label": "icon_map"
+ },
+ {
+ "label": "ProductReviews",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductPage.tsx",
+ "source_location": "L74",
+ "_origin": "ast",
+ "id": "frontend_application_components_productpage_productreviews",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "productreviews"
+ },
+ {
+ "label": "useCalculatorStore",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductPage.tsx",
+ "source_location": "L61",
+ "_origin": "ast",
+ "id": "frontend_application_components_productpage_usecalculatorstore",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "usecalculatorstore"
+ },
+ {
+ "label": "ProductReviews.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ProductReviews.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_productreviews",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "productreviews.tsx"
+ },
+ {
+ "label": "Tooltip.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/__tests__/Tooltip.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_tests_tooltip_test",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "tooltip.test.tsx"
+ },
+ {
+ "label": "Tooltip.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/Tooltip.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_tooltip",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "tooltip.tsx"
+ },
+ {
+ "label": "data/scientificTerms.ts",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/data/scientificTerms.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_lib_data_scientificterms",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "data/scientificterms.ts"
+ },
+ {
+ "label": "SCIENTIFIC_TERMS",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/data/scientificTerms.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "id": "frontend_application_lib_data_scientificterms_scientific_terms",
+ "community": 21,
+ "community_name": "ProductPage.tsx",
+ "norm_label": "scientific_terms"
},
{
"label": "18-compiler-diagnostic-dispositions.md",
@@ -27719,6 +28009,17 @@
"community_name": "FormField.tsx",
"norm_label": "formfield.tsx"
},
+ {
+ "label": "verify/page.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/app/payment/verify/page.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_app_payment_verify_page",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "verify/page.tsx"
+ },
{
"label": "AddressModal.tsx",
"file_type": "code",
@@ -27731,15 +28032,15 @@
"norm_label": "addressmodal.tsx"
},
{
- "label": "AuthModal.tsx",
+ "label": "B2BPortal.tsx",
"file_type": "code",
- "source_file": "frontend/application/components/AuthModal.tsx",
+ "source_file": "frontend/application/components/B2BPortal.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_components_authmodal",
+ "id": "frontend_application_components_b2bportal",
"community": 22,
"community_name": "UserDashboard.tsx",
- "norm_label": "authmodal.tsx"
+ "norm_label": "b2bportal.tsx"
},
{
"label": "BackButton.tsx",
@@ -27785,6 +28086,28 @@
"community_name": "UserDashboard.tsx",
"norm_label": "headerbutton.tsx"
},
+ {
+ "label": "LoginModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/LoginModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_loginmodal",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "loginmodal.tsx"
+ },
+ {
+ "label": "PrescriptionUploadModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PrescriptionUploadModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_prescriptionuploadmodal",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "prescriptionuploadmodal.tsx"
+ },
{
"label": "SearchableSelect.tsx",
"file_type": "code",
@@ -27796,6 +28119,17 @@
"community_name": "UserDashboard.tsx",
"norm_label": "searchableselect.tsx"
},
+ {
+ "label": "Header.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/__tests__/Header.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_tests_header_test",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "header.test.tsx"
+ },
{
"label": "TopUpModal.tsx",
"file_type": "code",
@@ -27863,26 +28197,48 @@
"norm_label": "province_cities"
},
{
- "label": "ticketService.ts",
+ "label": "useCartStore",
"file_type": "code",
- "source_file": "frontend/application/lib/services/ticketService.ts",
- "source_location": "L1",
+ "source_file": "frontend/application/lib/store/cartStore.ts",
+ "source_location": "L54",
"_origin": "ast",
- "id": "frontend_application_lib_services_ticketservice",
+ "id": "frontend_application_lib_store_cartstore_usecartstore",
"community": 22,
"community_name": "UserDashboard.tsx",
- "norm_label": "ticketservice.ts"
+ "norm_label": "usecartstore"
},
{
- "label": "ticketService",
+ "label": "usePetStore",
"file_type": "code",
- "source_file": "frontend/application/lib/services/ticketService.ts",
- "source_location": "L43",
+ "source_file": "frontend/application/lib/store/usePetStore.ts",
+ "source_location": "L65",
"_origin": "ast",
- "id": "frontend_application_lib_services_ticketservice_ticketservice",
+ "id": "frontend_application_lib_store_usepetstore_usepetstore",
"community": 22,
"community_name": "UserDashboard.tsx",
- "norm_label": "ticketservice"
+ "norm_label": "usepetstore"
+ },
+ {
+ "label": "userStore.ts",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/userStore.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_userstore",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "userstore.ts"
+ },
+ {
+ "label": "useUserStore",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/userStore.ts",
+ "source_location": "L63",
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_userstore_useuserstore",
+ "community": 22,
+ "community_name": "UserDashboard.tsx",
+ "norm_label": "useuserstore"
},
{
"label": "utils.ts",
@@ -27973,32 +28329,32 @@
"norm_label": "references"
},
{
- "label": "@eslint/js",
+ "label": "swagger-ui-express",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L48",
+ "source_location": "L45",
"_origin": "ast",
- "id": "backend_package_devdependencies_eslint_js",
+ "id": "backend_package_dependencies_swagger_ui_express",
"community": 223,
- "community_name": "@eslint/js",
- "norm_label": "@eslint/js"
+ "community_name": "swagger-ui-express",
+ "norm_label": "swagger-ui-express"
},
{
- "label": "@eslint/js",
+ "label": "swagger-ui-express",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L48",
+ "source_location": "L45",
"_origin": "ast",
- "id": "backend_package_json_eslint_js",
+ "id": "swagger_ui_express",
"community": 223,
- "community_name": "@eslint/js",
- "norm_label": "@eslint/js"
+ "community_name": "swagger-ui-express",
+ "norm_label": "swagger-ui-express"
},
{
"label": "jest",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L66",
+ "source_location": "L67",
"_origin": "ast",
"id": "backend_package_devdependencies_jest",
"community": 224,
@@ -28009,7 +28365,7 @@
"label": "jest",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L66",
+ "source_location": "L67",
"_origin": "ast",
"id": "jest",
"community": 224,
@@ -28292,59 +28648,70 @@
"norm_label": "graphify"
},
{
- "label": "catalog/page.tsx",
+ "label": "@eslint/eslintrc",
"file_type": "code",
- "source_file": "frontend/application/app/catalog/page.tsx",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L48",
"_origin": "ast",
- "id": "frontend_application_app_catalog_page",
+ "id": "backend_package_devdependencies_eslint_eslintrc",
"community": 231,
- "community_name": "catalog/page.tsx",
- "norm_label": "catalog/page.tsx"
+ "community_name": "@eslint/eslintrc",
+ "norm_label": "@eslint/eslintrc"
},
{
- "label": "ts-loader",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L72",
- "_origin": "ast",
- "id": "backend_package_devdependencies_ts_loader",
- "community": 232,
- "community_name": "ts-loader",
- "norm_label": "ts-loader"
- },
- {
- "label": "ts-loader",
+ "label": "@eslint/eslintrc",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L72",
+ "source_location": "L48",
"_origin": "ast",
- "id": "ts_loader",
- "community": 232,
- "community_name": "ts-loader",
- "norm_label": "ts-loader"
+ "id": "eslint_eslintrc",
+ "community": 231,
+ "community_name": "@eslint/eslintrc",
+ "norm_label": "@eslint/eslintrc"
},
{
- "label": "ts-node",
+ "label": "@eslint/js",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L73",
+ "source_location": "L49",
"_origin": "ast",
- "id": "backend_package_devdependencies_ts_node",
- "community": 233,
- "community_name": "ts-node",
- "norm_label": "ts-node"
+ "id": "backend_package_devdependencies_eslint_js",
+ "community": 232,
+ "community_name": "@eslint/js",
+ "norm_label": "@eslint/js"
},
{
- "label": "ts-node",
+ "label": "@eslint/js",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L73",
+ "source_location": "L49",
"_origin": "ast",
- "id": "ts_node",
+ "id": "backend_package_json_eslint_js",
+ "community": 232,
+ "community_name": "@eslint/js",
+ "norm_label": "@eslint/js"
+ },
+ {
+ "label": "eslint-plugin-prettier",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L65",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_eslint_plugin_prettier",
"community": 233,
- "community_name": "ts-node",
- "norm_label": "ts-node"
+ "community_name": "eslint-plugin-prettier",
+ "norm_label": "eslint-plugin-prettier"
+ },
+ {
+ "label": "eslint-plugin-prettier",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L65",
+ "_origin": "ast",
+ "id": "eslint_plugin_prettier",
+ "community": 233,
+ "community_name": "eslint-plugin-prettier",
+ "norm_label": "eslint-plugin-prettier"
},
{
"label": "20260526160916_add_ui_texts_and_scientific_terms/migration.sql",
@@ -28380,54 +28747,54 @@
"norm_label": "\"ui_texts\""
},
{
- "label": "source-map-support",
+ "label": "@nestjs/cli",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L69",
+ "source_location": "L50",
"_origin": "ast",
- "id": "backend_package_devdependencies_source_map_support",
+ "id": "backend_package_devdependencies_nestjs_cli",
"community": 235,
- "community_name": "source-map-support",
- "norm_label": "source-map-support"
+ "community_name": "@nestjs/cli",
+ "norm_label": "@nestjs/cli"
},
{
- "label": "source-map-support",
+ "label": "@nestjs/cli",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L69",
+ "source_location": "L50",
"_origin": "ast",
- "id": "source_map_support",
+ "id": "nestjs_cli",
"community": 235,
- "community_name": "source-map-support",
- "norm_label": "source-map-support"
+ "community_name": "@nestjs/cli",
+ "norm_label": "@nestjs/cli"
},
{
- "label": "@types/bcrypt",
+ "label": "@nestjs/testing",
"file_type": "code",
"source_file": "backend/package.json",
"source_location": "L52",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_bcrypt",
+ "id": "backend_package_devdependencies_nestjs_testing",
"community": 236,
- "community_name": "@types/bcrypt",
- "norm_label": "@types/bcrypt"
+ "community_name": "@nestjs/testing",
+ "norm_label": "@nestjs/testing"
},
{
- "label": "@types/bcrypt",
+ "label": "@nestjs/testing",
"file_type": "concept",
"source_file": "backend/package.json",
"source_location": "L52",
"_origin": "ast",
- "id": "types_bcrypt",
+ "id": "nestjs_testing",
"community": 236,
- "community_name": "@types/bcrypt",
- "norm_label": "@types/bcrypt"
+ "community_name": "@nestjs/testing",
+ "norm_label": "@nestjs/testing"
},
{
"label": "ts-jest",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L71",
+ "source_location": "L72",
"_origin": "ast",
"id": "backend_package_devdependencies_ts_jest",
"community": 237,
@@ -28438,7 +28805,7 @@
"label": "ts-jest",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L71",
+ "source_location": "L72",
"_origin": "ast",
"id": "ts_jest",
"community": 237,
@@ -28446,114 +28813,48 @@
"norm_label": "ts-jest"
},
{
- "label": "tsconfig-paths",
+ "label": "prisma",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L74",
+ "source_location": "L69",
"_origin": "ast",
- "id": "backend_package_devdependencies_tsconfig_paths",
+ "id": "backend_package_devdependencies_prisma",
"community": 238,
- "community_name": "tsconfig-paths",
- "norm_label": "tsconfig-paths"
+ "community_name": "prisma",
+ "norm_label": "prisma"
},
{
- "label": "tsconfig-paths",
+ "label": "prisma",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L74",
+ "source_location": "L69",
"_origin": "ast",
- "id": "tsconfig_paths",
+ "id": "prisma",
"community": 238,
- "community_name": "tsconfig-paths",
- "norm_label": "tsconfig-paths"
+ "community_name": "prisma",
+ "norm_label": "prisma"
},
{
- "label": "register.dto.ts",
+ "label": "source-map-support",
"file_type": "code",
- "source_file": "backend/src/auth/dto/register.dto.ts",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L70",
"_origin": "ast",
- "id": "backend_src_auth_dto_register_dto",
+ "id": "backend_package_devdependencies_source_map_support",
"community": 239,
- "community_name": "RegisterDto",
- "norm_label": "register.dto.ts"
+ "community_name": "source-map-support",
+ "norm_label": "source-map-support"
},
{
- "label": "ApiProperty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
+ "label": "source-map-support",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L70",
"_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_apiproperty",
+ "id": "source_map_support",
"community": 239,
- "community_name": "RegisterDto",
- "norm_label": "apiproperty"
- },
- {
- "label": "ApiPropertyOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_apipropertyoptional",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "apipropertyoptional"
- },
- {
- "label": "IsEmail",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_isemail",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "isemail"
- },
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_isnotempty",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "isnotempty"
- },
- {
- "label": "IsOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_isoptional",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "isoptional"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_isstring",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "isstring"
- },
- {
- "label": "MinLength",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_auth_dto_register_dto_ts_minlength",
- "community": 239,
- "community_name": "RegisterDto",
- "norm_label": "minlength"
+ "community_name": "source-map-support",
+ "norm_label": "source-map-support"
},
{
"label": "07-backend-audit.md",
@@ -28919,26 +29220,26 @@
"norm_label": "why it matters"
},
{
- "label": "eslint",
+ "label": "supertest",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L62",
+ "source_location": "L71",
"_origin": "ast",
- "id": "backend_package_devdependencies_eslint",
+ "id": "backend_package_devdependencies_supertest",
"community": 240,
- "community_name": "eslint",
- "norm_label": "eslint"
+ "community_name": "supertest",
+ "norm_label": "supertest"
},
{
- "label": "eslint",
+ "label": "supertest",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L62",
+ "source_location": "L71",
"_origin": "ast",
- "id": "backend_package_json_eslint",
+ "id": "supertest",
"community": 240,
- "community_name": "eslint",
- "norm_label": "eslint"
+ "community_name": "supertest",
+ "norm_label": "supertest"
},
{
"label": "blog.entity.ts",
@@ -29903,70 +30204,26 @@
"norm_label": "generate-openapi.d.ts"
},
{
- "label": "initiate-payment.dto.ts",
+ "label": "ts-loader",
"file_type": "code",
- "source_file": "backend/src/payment/dto/initiate-payment.dto.ts",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L73",
"_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto",
+ "id": "backend_package_devdependencies_ts_loader",
"community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "initiate-payment.dto.ts"
+ "community_name": "ts-loader",
+ "norm_label": "ts-loader"
},
{
- "label": "ApiProperty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
+ "label": "ts-loader",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L73",
"_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_ts_apiproperty",
+ "id": "ts_loader",
"community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "apiproperty"
- },
- {
- "label": "ApiPropertyOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_ts_apipropertyoptional",
- "community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "apipropertyoptional"
- },
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_ts_isnotempty",
- "community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "isnotempty"
- },
- {
- "label": "IsOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_ts_isoptional",
- "community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "isoptional"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_dto_initiate_payment_dto_ts_isstring",
- "community": 264,
- "community_name": "InitiatePaymentDto",
- "norm_label": "isstring"
+ "community_name": "ts-loader",
+ "norm_label": "ts-loader"
},
{
"label": "@testing-library/jest-dom",
@@ -29991,48 +30248,70 @@
"norm_label": "@testing-library/jest-dom"
},
{
- "label": "@types/js-yaml",
+ "label": "ts-node",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L57",
+ "source_location": "L74",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_js_yaml",
- "community": 267,
- "community_name": "@types/js-yaml",
- "norm_label": "@types/js-yaml"
+ "id": "backend_package_devdependencies_ts_node",
+ "community": 266,
+ "community_name": "ts-node",
+ "norm_label": "ts-node"
},
{
- "label": "@types/js-yaml",
+ "label": "ts-node",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L57",
+ "source_location": "L74",
"_origin": "ast",
- "id": "types_js_yaml",
- "community": 267,
- "community_name": "@types/js-yaml",
- "norm_label": "@types/js-yaml"
+ "id": "ts_node",
+ "community": 266,
+ "community_name": "ts-node",
+ "norm_label": "ts-node"
},
{
- "label": "@types/multer",
+ "label": "tsconfig-paths",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L58",
+ "source_location": "L75",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_multer",
- "community": 268,
- "community_name": "@types/multer",
- "norm_label": "@types/multer"
+ "id": "backend_package_devdependencies_tsconfig_paths",
+ "community": 267,
+ "community_name": "tsconfig-paths",
+ "norm_label": "tsconfig-paths"
},
{
- "label": "@types/multer",
+ "label": "tsconfig-paths",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L58",
+ "source_location": "L75",
"_origin": "ast",
- "id": "types_multer",
+ "id": "tsconfig_paths",
+ "community": 267,
+ "community_name": "tsconfig-paths",
+ "norm_label": "tsconfig-paths"
+ },
+ {
+ "label": "@types/bcrypt",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L53",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_types_bcrypt",
"community": 268,
- "community_name": "@types/multer",
- "norm_label": "@types/multer"
+ "community_name": "@types/bcrypt",
+ "norm_label": "@types/bcrypt"
+ },
+ {
+ "label": "@types/bcrypt",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L53",
+ "_origin": "ast",
+ "id": "types_bcrypt",
+ "community": 268,
+ "community_name": "@types/bcrypt",
+ "norm_label": "@types/bcrypt"
},
{
"label": "eslint-plugin-react-hooks",
@@ -31300,48 +31579,70 @@
"norm_label": "injectable"
},
{
- "label": "verify-payment.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/payment/dto/verify-payment.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_payment_dto_verify_payment_dto",
- "community": 298,
- "community_name": "ZibalCallbackQueryDto",
- "norm_label": "verify-payment.dto.ts"
- },
- {
- "label": "ApiPropertyOptional",
+ "label": "ApiBadRequestResponse",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_payment_dto_verify_payment_dto_ts_apipropertyoptional",
+ "id": "backend_src_payment_payment_controller_ts_apibadrequestresponse",
"community": 298,
- "community_name": "ZibalCallbackQueryDto",
- "norm_label": "apipropertyoptional"
+ "community_name": ".initiateOrderPayment",
+ "norm_label": "apibadrequestresponse"
},
{
- "label": "IsOptional",
+ "label": "ApiOkResponse",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_payment_dto_verify_payment_dto_ts_isoptional",
+ "id": "backend_src_payment_payment_controller_ts_apiokresponse",
"community": 298,
- "community_name": "ZibalCallbackQueryDto",
- "norm_label": "isoptional"
+ "community_name": ".initiateOrderPayment",
+ "norm_label": "apiokresponse"
},
{
- "label": "IsString",
+ "label": "Req",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_payment_dto_verify_payment_dto_ts_isstring",
+ "id": "backend_src_payment_payment_controller_ts_req",
"community": 298,
- "community_name": "ZibalCallbackQueryDto",
- "norm_label": "isstring"
+ "community_name": ".initiateOrderPayment",
+ "norm_label": "req"
+ },
+ {
+ "label": "Res",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_payment_controller_ts_res",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": "res"
+ },
+ {
+ "label": "Headers",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "headers",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": "headers"
+ },
+ {
+ "label": "Ip",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "ip",
+ "community": 298,
+ "community_name": ".initiateOrderPayment",
+ "norm_label": "ip"
},
{
"label": "@tailwindcss/postcss",
@@ -31376,6 +31677,17 @@
"community_name": "ProductService",
"norm_label": "catalogclient.tsx"
},
+ {
+ "label": "search/page.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/app/search/page.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_app_search_page",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "search/page.tsx"
+ },
{
"label": "feed.xml/route.ts",
"file_type": "code",
@@ -31497,50 +31809,6 @@
"community_name": "ProductService",
"norm_label": "revalidate"
},
- {
- "label": "ArchivePage.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/ArchivePage.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_archivepage",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "archivepage.tsx"
- },
- {
- "label": "CATEGORY_MAP",
- "file_type": "code",
- "source_file": "frontend/application/components/ArchivePage.tsx",
- "source_location": "L43",
- "_origin": "ast",
- "id": "frontend_application_components_archivepage_category_map",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "category_map"
- },
- {
- "label": "ICON_MAP",
- "file_type": "code",
- "source_file": "frontend/application/components/ArchivePage.tsx",
- "source_location": "L34",
- "_origin": "ast",
- "id": "frontend_application_components_archivepage_icon_map",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "icon_map"
- },
- {
- "label": "BlogPage.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/BlogPage.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_blogpage",
- "community": 3,
- "community_name": "ProductService",
- "norm_label": "blogpage.tsx"
- },
{
"label": "CatalogPageSpread.tsx",
"file_type": "code",
@@ -31585,6 +31853,50 @@
"community_name": "ProductService",
"norm_label": "ingredient_match_keywords"
},
+ {
+ "label": "SearchResultsPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SearchResultsPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_searchresultspage",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "searchresultspage.tsx"
+ },
+ {
+ "label": "SmartAdvisor.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SmartAdvisor.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_smartadvisor",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "smartadvisor.tsx"
+ },
+ {
+ "label": "CURRENT_SYMPTOMS",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SmartAdvisor.tsx",
+ "source_location": "L32",
+ "_origin": "ast",
+ "id": "frontend_application_components_smartadvisor_current_symptoms",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "current_symptoms"
+ },
+ {
+ "label": "MEDICAL_HISTORIES",
+ "file_type": "code",
+ "source_file": "frontend/application/components/SmartAdvisor.tsx",
+ "source_location": "L44",
+ "_origin": "ast",
+ "id": "frontend_application_components_smartadvisor_medical_histories",
+ "community": 3,
+ "community_name": "ProductService",
+ "norm_label": "medical_histories"
+ },
{
"label": "products.ts",
"file_type": "code",
@@ -32014,6 +32326,28 @@
"community_name": "typescript",
"norm_label": "typescript"
},
+ {
+ "label": "@types/compression",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L55",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_types_compression",
+ "community": 301,
+ "community_name": "@types/compression",
+ "norm_label": "@types/compression"
+ },
+ {
+ "label": "@types/compression",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L55",
+ "_origin": "ast",
+ "id": "types_compression",
+ "community": 301,
+ "community_name": "@types/compression",
+ "norm_label": "@types/compression"
+ },
{
"label": "typescript-eslint",
"file_type": "code",
@@ -32036,6 +32370,50 @@
"community_name": "typescript-eslint",
"norm_label": "typescript-eslint"
},
+ {
+ "label": "@types/express",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L56",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_types_express",
+ "community": 303,
+ "community_name": "@types/express",
+ "norm_label": "@types/express"
+ },
+ {
+ "label": "@types/express",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L56",
+ "_origin": "ast",
+ "id": "types_express",
+ "community": 303,
+ "community_name": "@types/express",
+ "norm_label": "@types/express"
+ },
+ {
+ "label": "@types/jest",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L57",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_types_jest",
+ "community": 304,
+ "community_name": "@types/jest",
+ "norm_label": "@types/jest"
+ },
+ {
+ "label": "@types/jest",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L57",
+ "_origin": "ast",
+ "id": "types_jest",
+ "community": 304,
+ "community_name": "@types/jest",
+ "norm_label": "@types/jest"
+ },
{
"label": "@types/react",
"file_type": "code",
@@ -32062,7 +32440,7 @@
"label": "globals",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L65",
+ "source_location": "L66",
"_origin": "ast",
"id": "backend_package_devdependencies_globals",
"community": 306,
@@ -32073,13 +32451,35 @@
"label": "globals",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L65",
+ "source_location": "L66",
"_origin": "ast",
"id": "backend_package_json_globals",
"community": 306,
"community_name": "globals",
"norm_label": "globals"
},
+ {
+ "label": "@types/js-yaml",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L58",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_types_js_yaml",
+ "community": 307,
+ "community_name": "@types/js-yaml",
+ "norm_label": "@types/js-yaml"
+ },
+ {
+ "label": "@types/js-yaml",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L58",
+ "_origin": "ast",
+ "id": "types_js_yaml",
+ "community": 307,
+ "community_name": "@types/js-yaml",
+ "norm_label": "@types/js-yaml"
+ },
{
"label": "vitest",
"file_type": "code",
@@ -32477,26 +32877,48 @@
"norm_label": "tailwindcss"
},
{
- "label": "track/page.tsx",
+ "label": "@types/multer",
"file_type": "code",
- "source_file": "frontend/application/app/track/page.tsx",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L59",
"_origin": "ast",
- "id": "frontend_application_app_track_page",
+ "id": "backend_package_devdependencies_types_multer",
"community": 311,
- "community_name": "track/page.tsx",
- "norm_label": "track/page.tsx"
+ "community_name": "@types/multer",
+ "norm_label": "@types/multer"
},
{
- "label": "OrderTracking.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/OrderTracking.tsx",
- "source_location": "L1",
+ "label": "@types/multer",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L59",
"_origin": "ast",
- "id": "frontend_application_components_ordertracking",
+ "id": "types_multer",
"community": 311,
- "community_name": "track/page.tsx",
- "norm_label": "ordertracking.tsx"
+ "community_name": "@types/multer",
+ "norm_label": "@types/multer"
+ },
+ {
+ "label": "@types/passport-jwt",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L61",
+ "_origin": "ast",
+ "id": "backend_package_devdependencies_types_passport_jwt",
+ "community": 312,
+ "community_name": "@types/passport-jwt",
+ "norm_label": "@types/passport-jwt"
+ },
+ {
+ "label": "@types/passport-jwt",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L61",
+ "_origin": "ast",
+ "id": "types_passport_jwt",
+ "community": 312,
+ "community_name": "@types/passport-jwt",
+ "norm_label": "@types/passport-jwt"
},
{
"label": "MenuManager.tsx",
@@ -32532,48 +32954,26 @@
"norm_label": "menumanager"
},
{
- "label": "layout.tsx",
+ "label": "typescript-eslint",
"file_type": "code",
- "source_file": "frontend/application/app/layout.tsx",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L77",
"_origin": "ast",
- "id": "frontend_application_app_layout",
+ "id": "backend_package_devdependencies_typescript_eslint",
"community": 314,
- "community_name": "layout.tsx",
- "norm_label": "layout.tsx"
+ "community_name": "typescript-eslint",
+ "norm_label": "typescript-eslint"
},
{
- "label": "fonts.ts",
- "file_type": "code",
- "source_file": "frontend/application/lib/fonts.ts",
- "source_location": "L1",
+ "label": "typescript-eslint",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L77",
"_origin": "ast",
- "id": "frontend_application_lib_fonts",
+ "id": "backend_package_json_typescript_eslint",
"community": 314,
- "community_name": "layout.tsx",
- "norm_label": "fonts.ts"
- },
- {
- "label": "lalezar",
- "file_type": "code",
- "source_file": "frontend/application/lib/fonts.ts",
- "source_location": "L16",
- "_origin": "ast",
- "id": "frontend_application_lib_fonts_lalezar",
- "community": 314,
- "community_name": "layout.tsx",
- "norm_label": "lalezar"
- },
- {
- "label": "vazirmatn",
- "file_type": "code",
- "source_file": "frontend/application/lib/fonts.ts",
- "source_location": "L3",
- "_origin": "ast",
- "id": "frontend_application_lib_fonts_vazirmatn",
- "community": 314,
- "community_name": "layout.tsx",
- "norm_label": "vazirmatn"
+ "community_name": "typescript-eslint",
+ "norm_label": "typescript-eslint"
},
{
"label": "typescript",
@@ -32619,28 +33019,6 @@
"community_name": "MaskableField.tsx",
"norm_label": "maskablefield.tsx"
},
- {
- "label": "admin.controller.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.controller.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_admin_controller_spec",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": "admin.controller.spec.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_admin_service_ts_injectable",
- "community": 319,
- "community_name": "AdminService",
- "norm_label": "injectable"
- },
{
"label": "App.tsx",
"file_type": "code",
@@ -33093,26 +33471,15 @@
"norm_label": "injectable"
},
{
- "label": "@types/passport-jwt",
+ "label": "b2b.controller.ts",
"file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L60",
+ "source_file": "backend/src/b2b/b2b.controller.ts",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_passport_jwt",
- "community": 330,
- "community_name": "@types/passport-jwt",
- "norm_label": "@types/passport-jwt"
- },
- {
- "label": "@types/passport-jwt",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L60",
- "_origin": "ast",
- "id": "types_passport_jwt",
- "community": 330,
- "community_name": "@types/passport-jwt",
- "norm_label": "@types/passport-jwt"
+ "id": "backend_src_b2b_b2b_controller",
+ "community": 34,
+ "community_name": "B2BService",
+ "norm_label": "b2b.controller.ts"
},
{
"label": "ApiBearerAuth",
@@ -33235,6 +33602,39 @@
"community_name": "B2BService",
"norm_label": "useguards"
},
+ {
+ "label": "b2b.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/b2b/b2b.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_b2b_b2b_module",
+ "community": 34,
+ "community_name": "B2BService",
+ "norm_label": "b2b.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_b2b_b2b_module_ts_module",
+ "community": 34,
+ "community_name": "B2BService",
+ "norm_label": "module"
+ },
+ {
+ "label": "b2b.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/b2b/b2b.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_b2b_b2b_service",
+ "community": 34,
+ "community_name": "B2BService",
+ "norm_label": "b2b.service.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
@@ -33367,6 +33767,17 @@
"community_name": "AuthController",
"norm_label": "httpcode"
},
+ {
+ "label": "faq.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/faq/faq.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_faq_faq_controller",
+ "community": 36,
+ "community_name": "FaqService",
+ "norm_label": "faq.controller.ts"
+ },
{
"label": "ApiBearerAuth",
"file_type": "code",
@@ -33488,6 +33899,39 @@
"community_name": "FaqService",
"norm_label": "useguards"
},
+ {
+ "label": "faq.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/faq/faq.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_faq_faq_module",
+ "community": 36,
+ "community_name": "FaqService",
+ "norm_label": "faq.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_faq_faq_module_ts_module",
+ "community": 36,
+ "community_name": "FaqService",
+ "norm_label": "module"
+ },
+ {
+ "label": "faq.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/faq/faq.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_faq_faq_service",
+ "community": 36,
+ "community_name": "FaqService",
+ "norm_label": "faq.service.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
@@ -33950,6 +34394,17 @@
"community_name": "Button.tsx",
"norm_label": "usetableparams.ts"
},
+ {
+ "label": "categories.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/categories.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_categories_controller",
+ "community": 39,
+ "community_name": "CategoriesController",
+ "norm_label": "categories.controller.ts"
+ },
{
"label": "ApiBearerAuth",
"file_type": "code",
@@ -34093,6 +34548,17 @@
"community_name": "CategoriesController",
"norm_label": "useguards"
},
+ {
+ "label": "categories.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/categories.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_categories_service",
+ "community": 39,
+ "community_name": "CategoriesController",
+ "norm_label": "categories.service.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
@@ -34105,15 +34571,15 @@
"norm_label": "injectable"
},
{
- "label": "BlogPreviewSection.tsx",
+ "label": "BlogPage.tsx",
"file_type": "code",
- "source_file": "frontend/application/components/BlogPreviewSection.tsx",
+ "source_file": "frontend/application/components/BlogPage.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_components_blogpreviewsection",
+ "id": "frontend_application_components_blogpage",
"community": 4,
"community_name": "SafeImage.tsx",
- "norm_label": "blogpreviewsection.tsx"
+ "norm_label": "blogpage.tsx"
},
{
"label": "ProductDetailModal.tsx",
@@ -34137,6 +34603,28 @@
"community_name": "SafeImage.tsx",
"norm_label": "orderdetailsmodal.tsx"
},
+ {
+ "label": "PodcastInlinePlayer.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_podcastinlineplayer",
+ "community": 4,
+ "community_name": "SafeImage.tsx",
+ "norm_label": "podcastinlineplayer.tsx"
+ },
+ {
+ "label": "PLAYBACK_RATES",
+ "file_type": "code",
+ "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "id": "frontend_application_components_podcastinlineplayer_playback_rates",
+ "community": 4,
+ "community_name": "SafeImage.tsx",
+ "norm_label": "playback_rates"
+ },
{
"label": "PodcastPlayerModal.tsx",
"file_type": "code",
@@ -34181,17 +34669,6 @@
"community_name": "SafeImage.tsx",
"norm_label": "safeimage.tsx"
},
- {
- "label": "TestimonialsSection.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/TestimonialsSection.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_testimonialssection",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "testimonialssection.tsx"
- },
{
"label": "VetGallery.tsx",
"file_type": "code",
@@ -34247,17 +34724,6 @@
"community_name": "SafeImage.tsx",
"norm_label": "videospage.tsx"
},
- {
- "label": "BASE_DOMAIN",
- "file_type": "code",
- "source_file": "frontend/application/lib/services/api.ts",
- "source_location": "L14",
- "_origin": "ast",
- "id": "frontend_application_lib_services_api_base_domain",
- "community": 4,
- "community_name": "SafeImage.tsx",
- "norm_label": "base_domain"
- },
{
"label": "videoService.ts",
"file_type": "code",
@@ -35003,7 +35469,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_apibearerauth",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "apibearerauth"
},
{
@@ -35014,7 +35480,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_apioperation",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "apioperation"
},
{
@@ -35025,7 +35491,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_apitags",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "apitags"
},
{
@@ -35036,7 +35502,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_body",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "body"
},
{
@@ -35047,7 +35513,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_controller",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "controller"
},
{
@@ -35058,7 +35524,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_delete",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "delete"
},
{
@@ -35069,7 +35535,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_get",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "get"
},
{
@@ -35080,7 +35546,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_param",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "param"
},
{
@@ -35091,7 +35557,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_patch",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "patch"
},
{
@@ -35102,7 +35568,7 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_post",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "post"
},
{
@@ -35113,20 +35579,9 @@
"_origin": "ast",
"id": "backend_src_testimonials_testimonials_controller_ts_useguards",
"community": 44,
- "community_name": "TestimonialsService",
+ "community_name": "TestimonialsController",
"norm_label": "useguards"
},
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_testimonials_testimonials_service_ts_injectable",
- "community": 44,
- "community_name": "TestimonialsService",
- "norm_label": "injectable"
- },
{
"label": "SKILL.md",
"file_type": "document",
@@ -35425,26 +35880,81 @@
"norm_label": "what you must do when invoked"
},
{
- "label": "ApiOperation",
+ "label": "Layout.tsx",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/admin-panel/src/components/Layout.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_ts_apioperation",
+ "id": "frontend_admin_panel_src_components_layout",
"community": 46,
- "community_name": "ApiOperation",
- "norm_label": "apioperation"
+ "community_name": "api",
+ "norm_label": "layout.tsx"
},
{
- "label": "Put",
+ "label": "Sidebar.tsx",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_admin_controller_ts_put",
+ "id": "frontend_admin_panel_src_components_sidebar",
"community": 46,
- "community_name": "ApiOperation",
- "norm_label": "put"
+ "community_name": "api",
+ "norm_label": "sidebar.tsx"
+ },
+ {
+ "label": "Topbar.tsx",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_topbar",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "topbar.tsx"
+ },
+ {
+ "label": "SEARCHABLE_PAGES",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_topbar_searchable_pages",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "searchable_pages"
+ },
+ {
+ "label": "CMS.tsx",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_pages_cms",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "cms.tsx"
+ },
+ {
+ "label": "CMS",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_routes_adminroutes_cms",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "cms"
+ },
+ {
+ "label": "api",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/services/api.ts",
+ "source_location": "L23",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_services_api_api",
+ "community": 46,
+ "community_name": "api",
+ "norm_label": "api"
},
{
"label": "ApiBearerAuth",
@@ -35579,37 +36089,48 @@
"norm_label": "injectable"
},
{
- "label": "Reports.tsx",
+ "label": "[id]/page.tsx",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
+ "source_file": "frontend/application/app/checkout/success/[id]/page.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports",
+ "id": "frontend_application_app_checkout_success_id_page",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "reports.tsx"
+ "community_name": "cartStore.ts",
+ "norm_label": "[id]/page.tsx"
},
{
- "label": "COLORS",
+ "label": "OrderSuccess.tsx",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/Reports.tsx",
- "source_location": "L14",
+ "source_file": "frontend/application/components/OrderSuccess.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_reports_colors",
+ "id": "frontend_application_components_ordersuccess",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "colors"
+ "community_name": "cartStore.ts",
+ "norm_label": "ordersuccess.tsx"
},
{
- "label": "Reports",
+ "label": "OrderTracking.tsx",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
- "source_location": "L16",
+ "source_file": "frontend/application/components/OrderTracking.tsx",
+ "source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_routes_adminroutes_reports",
+ "id": "frontend_application_components_ordertracking",
"community": 48,
- "community_name": "Reports.tsx",
- "norm_label": "reports"
+ "community_name": "cartStore.ts",
+ "norm_label": "ordertracking.tsx"
+ },
+ {
+ "label": "cartStore.ts",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/store/cartStore.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_lib_store_cartstore",
+ "community": 48,
+ "community_name": "cartStore.ts",
+ "norm_label": "cartstore.ts"
},
{
"label": "devDependencies",
@@ -36084,6 +36605,17 @@
"community_name": "devDependencies",
"norm_label": "eslint"
},
+ {
+ "label": "eslint-config-next",
+ "file_type": "code",
+ "source_file": "frontend/application/package.json",
+ "source_location": "L30",
+ "_origin": "ast",
+ "id": "frontend_application_package_devdependencies_eslint_config_next",
+ "community": 50,
+ "community_name": "devDependencies",
+ "norm_label": "eslint-config-next"
+ },
{
"label": "jsdom",
"file_type": "code",
@@ -36128,17 +36660,6 @@
"community_name": "devDependencies",
"norm_label": "@types/node"
},
- {
- "label": "@types/react-dom",
- "file_type": "code",
- "source_file": "frontend/application/package.json",
- "source_location": "L27",
- "_origin": "ast",
- "id": "frontend_application_package_devdependencies_types_react_dom",
- "community": 50,
- "community_name": "devDependencies",
- "norm_label": "@types/react-dom"
- },
{
"label": "@vitejs/plugin-react",
"file_type": "code",
@@ -36150,6 +36671,17 @@
"community_name": "devDependencies",
"norm_label": "@vitejs/plugin-react"
},
+ {
+ "label": "eslint-config-next",
+ "file_type": "concept",
+ "source_file": "frontend/application/package.json",
+ "source_location": "L30",
+ "_origin": "ast",
+ "id": "eslint_config_next",
+ "community": 50,
+ "community_name": "devDependencies",
+ "norm_label": "eslint-config-next"
+ },
{
"label": "eslint",
"file_type": "concept",
@@ -36194,17 +36726,6 @@
"community_name": "devDependencies",
"norm_label": "@types/node"
},
- {
- "label": "@types/react-dom",
- "file_type": "concept",
- "source_file": "frontend/application/package.json",
- "source_location": "L27",
- "_origin": "ast",
- "id": "frontend_application_package_json_types_react_dom",
- "community": 50,
- "community_name": "devDependencies",
- "norm_label": "@types/react-dom"
- },
{
"label": "@vitejs/plugin-react",
"file_type": "concept",
@@ -36400,7 +36921,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_apibearerauth",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "apibearerauth"
},
{
@@ -36411,7 +36932,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_apioperation",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "apioperation"
},
{
@@ -36422,7 +36943,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_apitags",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "apitags"
},
{
@@ -36433,7 +36954,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_body",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "body"
},
{
@@ -36444,7 +36965,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_controller",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "controller"
},
{
@@ -36455,7 +36976,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_get",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "get"
},
{
@@ -36466,7 +36987,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_param",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "param"
},
{
@@ -36477,7 +36998,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_patch",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "patch"
},
{
@@ -36488,7 +37009,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_post",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "post"
},
{
@@ -36499,7 +37020,7 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_req",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "req"
},
{
@@ -36510,20 +37031,9 @@
"_origin": "ast",
"id": "backend_src_prescriptions_prescriptions_controller_ts_useguards",
"community": 52,
- "community_name": "PrescriptionsService",
+ "community_name": "PrescriptionsController",
"norm_label": "useguards"
},
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_prescriptions_prescriptions_service_ts_injectable",
- "community": 52,
- "community_name": "PrescriptionsService",
- "norm_label": "injectable"
- },
{
"label": "ApiBearerAuth",
"file_type": "code",
@@ -36532,7 +37042,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_apibearerauth",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "apibearerauth"
},
{
@@ -36543,7 +37053,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_apioperation",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "apioperation"
},
{
@@ -36554,7 +37064,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_apitags",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "apitags"
},
{
@@ -36565,7 +37075,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_body",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "body"
},
{
@@ -36576,7 +37086,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_controller",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "controller"
},
{
@@ -36587,7 +37097,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_delete",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "delete"
},
{
@@ -36598,7 +37108,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_get",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "get"
},
{
@@ -36609,7 +37119,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_param",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "param"
},
{
@@ -36620,7 +37130,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_patch",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "patch"
},
{
@@ -36631,7 +37141,7 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_post",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "post"
},
{
@@ -36642,18 +37152,84 @@
"_origin": "ast",
"id": "backend_src_smart_advisor_smart_advisor_controller_ts_useguards",
"community": 53,
- "community_name": "SmartAdvisorService",
+ "community_name": "SmartAdvisorController",
"norm_label": "useguards"
},
+ {
+ "label": "auth.constants.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.constants.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_constants",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "auth.constants.ts"
+ },
+ {
+ "label": "DEFAULT_JWT_REFRESH_SECRET",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.constants.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_constants_default_jwt_refresh_secret",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "default_jwt_refresh_secret"
+ },
+ {
+ "label": "DEFAULT_JWT_SECRET",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.constants.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_constants_default_jwt_secret",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "default_jwt_secret"
+ },
+ {
+ "label": "auth.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/auth.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_module",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "auth.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_auth_auth_module_ts_module",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "module"
+ },
+ {
+ "label": "jwt.strategy.ts",
+ "file_type": "code",
+ "source_file": "backend/src/auth/jwt.strategy.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_auth_jwt_strategy",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "jwt.strategy.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_smart_advisor_smart_advisor_service_ts_injectable",
- "community": 53,
- "community_name": "SmartAdvisorService",
+ "id": "backend_src_auth_jwt_strategy_ts_injectable",
+ "community": 54,
+ "community_name": "UsersService",
"norm_label": "injectable"
},
{
@@ -36733,6 +37309,17 @@
"community_name": "UsersService",
"norm_label": "isstring"
},
+ {
+ "label": "update-profile.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/users/dto/update-profile.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_users_dto_update_profile_dto",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "update-profile.dto.ts"
+ },
{
"label": "ApiPropertyOptional",
"file_type": "code",
@@ -36788,6 +37375,28 @@
"community_name": "UsersService",
"norm_label": "minlength"
},
+ {
+ "label": "users.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/users/users.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_users_users_controller",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "users.controller.ts"
+ },
+ {
+ "label": "users.controller.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/users/users.controller.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_users_users_controller_spec",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "users.controller.spec.ts"
+ },
{
"label": "ApiBadRequestResponse",
"file_type": "code",
@@ -36953,6 +37562,39 @@
"community_name": "UsersService",
"norm_label": "useguards"
},
+ {
+ "label": "users.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/users/users.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_users_users_module",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "users.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_users_users_module_ts_module",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "module"
+ },
+ {
+ "label": "users.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/users/users.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_users_users_service",
+ "community": 54,
+ "community_name": "UsersService",
+ "norm_label": "users.service.ts"
+ },
{
"label": "Injectable",
"file_type": "code",
@@ -38241,37 +38883,70 @@
"norm_label": "injectable"
},
{
- "label": "admin.controller.ts",
+ "label": "RichTextEditor.tsx",
"file_type": "code",
- "source_file": "backend/src/admin/admin.controller.ts",
+ "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_admin_controller",
+ "id": "frontend_admin_panel_src_components_ui_richtexteditor",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "admin.controller.ts"
+ "community_name": "Blogs.tsx",
+ "norm_label": "richtexteditor.tsx"
},
{
- "label": "user.dto.ts",
+ "label": "PRESET_BG_COLORS",
"file_type": "code",
- "source_file": "backend/src/admin/dto/user.dto.ts",
+ "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
+ "source_location": "L51",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_bg_colors",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "preset_bg_colors"
+ },
+ {
+ "label": "PRESET_COLORS",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_colors",
+ "community": 60,
+ "community_name": "Blogs.tsx",
+ "norm_label": "preset_colors"
+ },
+ {
+ "label": "Blogs.tsx",
+ "file_type": "code",
+ "source_file": "frontend/admin-panel/src/pages/Blogs.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto",
+ "id": "frontend_admin_panel_src_pages_blogs",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "user.dto.ts"
+ "community_name": "Blogs.tsx",
+ "norm_label": "blogs.tsx"
},
{
- "label": "ApiProperty",
+ "label": "Blogs",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
+ "source_location": "L18",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_apiproperty",
+ "id": "frontend_admin_panel_src_routes_adminroutes_blogs",
"community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "apiproperty"
+ "community_name": "Blogs.tsx",
+ "norm_label": "blogs"
+ },
+ {
+ "label": "admin-transaction-filter.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/payment/dto/admin-transaction-filter.dto.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "admin-transaction-filter.dto.ts"
},
{
"label": "ApiPropertyOptional",
@@ -38279,32 +38954,21 @@
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_apipropertyoptional",
- "community": 60,
- "community_name": "admin.controller.ts",
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_apipropertyoptional",
+ "community": 61,
+ "community_name": "payment.controller.ts",
"norm_label": "apipropertyoptional"
},
{
- "label": "IsEmail",
+ "label": "IsIn",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_isemail",
- "community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "isemail"
- },
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_isnotempty",
- "community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "isnotempty"
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isin",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "isin"
},
{
"label": "IsNumber",
@@ -38312,9 +38976,9 @@
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_isnumber",
- "community": 60,
- "community_name": "admin.controller.ts",
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isnumber",
+ "community": 61,
+ "community_name": "payment.controller.ts",
"norm_label": "isnumber"
},
{
@@ -38323,9 +38987,9 @@
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_isoptional",
- "community": 60,
- "community_name": "admin.controller.ts",
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isoptional",
+ "community": 61,
+ "community_name": "payment.controller.ts",
"norm_label": "isoptional"
},
{
@@ -38334,21 +38998,21 @@
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_isstring",
- "community": 60,
- "community_name": "admin.controller.ts",
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isstring",
+ "community": 61,
+ "community_name": "payment.controller.ts",
"norm_label": "isstring"
},
{
- "label": "MinLength",
+ "label": "Type",
"file_type": "code",
"source_file": "",
"source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_dto_user_dto_ts_minlength",
- "community": 60,
- "community_name": "admin.controller.ts",
- "norm_label": "minlength"
+ "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_type",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "type"
},
{
"label": "ebank-checkout.dto.ts",
@@ -38358,7 +39022,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "ebank-checkout.dto.ts"
},
{
@@ -38369,7 +39033,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_apiproperty",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "apiproperty"
},
{
@@ -38380,7 +39044,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_apipropertyoptional",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "apipropertyoptional"
},
{
@@ -38391,7 +39055,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_isnotempty",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "isnotempty"
},
{
@@ -38402,7 +39066,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_isnumber",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "isnumber"
},
{
@@ -38413,7 +39077,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_isoptional",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "isoptional"
},
{
@@ -38424,7 +39088,7 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_isstring",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "isstring"
},
{
@@ -38435,135 +39099,300 @@
"_origin": "ast",
"id": "backend_src_payment_dto_ebank_checkout_dto_ts_min",
"community": 61,
- "community_name": "CreateEBankCheckoutDto",
+ "community_name": "payment.controller.ts",
"norm_label": "min"
},
{
- "label": "Layout.tsx",
+ "label": "initiate-payment.dto.ts",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Layout.tsx",
+ "source_file": "backend/src/payment/dto/initiate-payment.dto.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_layout",
- "community": 62,
- "community_name": "api",
- "norm_label": "layout.tsx"
+ "id": "backend_src_payment_dto_initiate_payment_dto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "initiate-payment.dto.ts"
},
{
- "label": "Sidebar.tsx",
+ "label": "ApiProperty",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Sidebar.tsx",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_initiate_payment_dto_ts_apiproperty",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "apiproperty"
+ },
+ {
+ "label": "ApiPropertyOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_initiate_payment_dto_ts_apipropertyoptional",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "apipropertyoptional"
+ },
+ {
+ "label": "IsNotEmpty",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_initiate_payment_dto_ts_isnotempty",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "isnotempty"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_initiate_payment_dto_ts_isoptional",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_initiate_payment_dto_ts_isstring",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "verify-payment.dto.ts",
+ "file_type": "code",
+ "source_file": "backend/src/payment/dto/verify-payment.dto.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_sidebar",
- "community": 62,
- "community_name": "api",
- "norm_label": "sidebar.tsx"
+ "id": "backend_src_payment_dto_verify_payment_dto",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "verify-payment.dto.ts"
},
{
- "label": "Topbar.tsx",
+ "label": "ApiPropertyOptional",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_verify_payment_dto_ts_apipropertyoptional",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "apipropertyoptional"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_verify_payment_dto_ts_isoptional",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_payment_dto_verify_payment_dto_ts_isstring",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "payment.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/payment/payment.controller.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_components_topbar",
- "community": 62,
- "community_name": "api",
- "norm_label": "topbar.tsx"
+ "id": "backend_src_payment_payment_controller",
+ "community": 61,
+ "community_name": "payment.controller.ts",
+ "norm_label": "payment.controller.ts"
},
{
- "label": "SEARCHABLE_PAGES",
+ "label": "get-products.dto.ts",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/components/Topbar.tsx",
- "source_location": "L12",
- "_origin": "ast",
- "id": "frontend_admin_panel_src_components_topbar_searchable_pages",
- "community": 62,
- "community_name": "api",
- "norm_label": "searchable_pages"
- },
- {
- "label": "CMS.tsx",
- "file_type": "code",
- "source_file": "frontend/admin-panel/src/pages/CMS.tsx",
+ "source_file": "backend/src/products/dto/get-products.dto.ts",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_admin_panel_src_pages_cms",
+ "id": "backend_src_products_dto_get_products_dto",
"community": 62,
- "community_name": "api",
- "norm_label": "cms.tsx"
+ "community_name": "ProductsService",
+ "norm_label": "get-products.dto.ts"
},
{
- "label": "CMS",
+ "label": "ApiPropertyOptional",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
- "source_location": "L23",
+ "source_file": "",
+ "source_location": "",
"_origin": "ast",
- "id": "frontend_admin_panel_src_routes_adminroutes_cms",
+ "id": "backend_src_products_dto_get_products_dto_ts_apipropertyoptional",
"community": 62,
- "community_name": "api",
- "norm_label": "cms"
+ "community_name": "ProductsService",
+ "norm_label": "apipropertyoptional"
},
{
- "label": "api",
+ "label": "IsEnum",
"file_type": "code",
- "source_file": "frontend/admin-panel/src/services/api.ts",
- "source_location": "L23",
+ "source_file": "",
+ "source_location": "",
"_origin": "ast",
- "id": "frontend_admin_panel_src_services_api_api",
+ "id": "backend_src_products_dto_get_products_dto_ts_isenum",
"community": 62,
- "community_name": "api",
- "norm_label": "api"
+ "community_name": "ProductsService",
+ "norm_label": "isenum"
+ },
+ {
+ "label": "IsOptional",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_products_dto_get_products_dto_ts_isoptional",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "isoptional"
+ },
+ {
+ "label": "IsString",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_products_dto_get_products_dto_ts_isstring",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "isstring"
+ },
+ {
+ "label": "products.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_products_products_controller",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "products.controller.ts"
+ },
+ {
+ "label": "products.controller.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.controller.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_products_products_controller_spec",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "products.controller.spec.ts"
+ },
+ {
+ "label": "Query",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_products_products_controller_ts_query",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "query"
+ },
+ {
+ "label": "products.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_products_products_module",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "products.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_products_products_module_ts_module",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "module"
+ },
+ {
+ "label": "products.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_products_products_service",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "products.service.ts"
+ },
+ {
+ "label": "products.service.spec.ts",
+ "file_type": "code",
+ "source_file": "backend/src/products/products.service.spec.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_products_products_service_spec",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "products.service.spec.ts"
+ },
+ {
+ "label": "Injectable",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_products_products_service_ts_injectable",
+ "community": 62,
+ "community_name": "ProductsService",
+ "norm_label": "injectable"
},
{
"label": "dependencies",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L23",
+ "source_location": "L24",
"_origin": "ast",
"id": "backend_package_dependencies",
"community": 63,
"community_name": "dependencies",
"norm_label": "dependencies"
},
- {
- "label": "bcrypt",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L32",
- "_origin": "ast",
- "id": "backend_package_dependencies_bcrypt",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "bcrypt"
- },
{
"label": "bcryptjs",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L33",
+ "source_location": "L34",
"_origin": "ast",
"id": "backend_package_dependencies_bcryptjs",
"community": 63,
"community_name": "dependencies",
"norm_label": "bcryptjs"
},
- {
- "label": "class-transformer",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L34",
- "_origin": "ast",
- "id": "backend_package_dependencies_class_transformer",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "class-transformer"
- },
{
"label": "class-validator",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L35",
+ "source_location": "L36",
"_origin": "ast",
"id": "backend_package_dependencies_class_validator",
"community": 63,
@@ -38574,84 +39403,40 @@
"label": "compression",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L36",
+ "source_location": "L37",
"_origin": "ast",
"id": "backend_package_dependencies_compression",
"community": 63,
"community_name": "dependencies",
"norm_label": "compression"
},
- {
- "label": "helmet",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L37",
- "_origin": "ast",
- "id": "backend_package_dependencies_helmet",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "helmet"
- },
{
"label": "ioredis",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L38",
+ "source_location": "L39",
"_origin": "ast",
"id": "backend_package_dependencies_ioredis",
"community": 63,
"community_name": "dependencies",
"norm_label": "ioredis"
},
- {
- "label": "js-yaml",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L39",
- "_origin": "ast",
- "id": "backend_package_dependencies_js_yaml",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "js-yaml"
- },
{
"label": "@nestjs/common",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L24",
+ "source_location": "L25",
"_origin": "ast",
"id": "backend_package_dependencies_nestjs_common",
"community": 63,
"community_name": "dependencies",
"norm_label": "@nestjs/common"
},
- {
- "label": "@nestjs/core",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L25",
- "_origin": "ast",
- "id": "backend_package_dependencies_nestjs_core",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "@nestjs/core"
- },
- {
- "label": "@nestjs/jwt",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L26",
- "_origin": "ast",
- "id": "backend_package_dependencies_nestjs_jwt",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "@nestjs/jwt"
- },
{
"label": "@nestjs/passport",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L27",
+ "source_location": "L28",
"_origin": "ast",
"id": "backend_package_dependencies_nestjs_passport",
"community": 63,
@@ -38662,7 +39447,7 @@
"label": "@nestjs/platform-express",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L28",
+ "source_location": "L29",
"_origin": "ast",
"id": "backend_package_dependencies_nestjs_platform_express",
"community": 63,
@@ -38673,40 +39458,18 @@
"label": "@nestjs/swagger",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L29",
+ "source_location": "L30",
"_origin": "ast",
"id": "backend_package_dependencies_nestjs_swagger",
"community": 63,
"community_name": "dependencies",
"norm_label": "@nestjs/swagger"
},
- {
- "label": "@nestjs/throttler",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L30",
- "_origin": "ast",
- "id": "backend_package_dependencies_nestjs_throttler",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "@nestjs/throttler"
- },
- {
- "label": "passport",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L40",
- "_origin": "ast",
- "id": "backend_package_dependencies_passport",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "passport"
- },
{
"label": "passport-jwt",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L41",
+ "source_location": "L42",
"_origin": "ast",
"id": "backend_package_dependencies_passport_jwt",
"community": 63,
@@ -38717,84 +39480,40 @@
"label": "@prisma/client",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L31",
+ "source_location": "L32",
"_origin": "ast",
"id": "backend_package_dependencies_prisma_client",
"community": 63,
"community_name": "dependencies",
"norm_label": "@prisma/client"
},
- {
- "label": "reflect-metadata",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L42",
- "_origin": "ast",
- "id": "backend_package_dependencies_reflect_metadata",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "reflect-metadata"
- },
{
"label": "rxjs",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L43",
+ "source_location": "L44",
"_origin": "ast",
"id": "backend_package_dependencies_rxjs",
"community": 63,
"community_name": "dependencies",
"norm_label": "rxjs"
},
- {
- "label": "swagger-ui-express",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L44",
- "_origin": "ast",
- "id": "backend_package_dependencies_swagger_ui_express",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "swagger-ui-express"
- },
- {
- "label": "bcrypt",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L32",
- "_origin": "ast",
- "id": "bcrypt",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "bcrypt"
- },
{
"label": "bcryptjs",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L33",
+ "source_location": "L34",
"_origin": "ast",
"id": "bcryptjs",
"community": 63,
"community_name": "dependencies",
"norm_label": "bcryptjs"
},
- {
- "label": "class-transformer",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L34",
- "_origin": "ast",
- "id": "class_transformer",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "class-transformer"
- },
{
"label": "class-validator",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L35",
+ "source_location": "L36",
"_origin": "ast",
"id": "class_validator",
"community": 63,
@@ -38805,84 +39524,40 @@
"label": "compression",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L36",
+ "source_location": "L37",
"_origin": "ast",
"id": "compression",
"community": 63,
"community_name": "dependencies",
"norm_label": "compression"
},
- {
- "label": "helmet",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L37",
- "_origin": "ast",
- "id": "helmet",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "helmet"
- },
{
"label": "ioredis",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L38",
+ "source_location": "L39",
"_origin": "ast",
"id": "ioredis",
"community": 63,
"community_name": "dependencies",
"norm_label": "ioredis"
},
- {
- "label": "js-yaml",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L39",
- "_origin": "ast",
- "id": "js_yaml",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "js-yaml"
- },
{
"label": "@nestjs/common",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L24",
+ "source_location": "L25",
"_origin": "ast",
"id": "nestjs_common",
"community": 63,
"community_name": "dependencies",
"norm_label": "@nestjs/common"
},
- {
- "label": "@nestjs/core",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L25",
- "_origin": "ast",
- "id": "nestjs_core",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "@nestjs/core"
- },
- {
- "label": "@nestjs/jwt",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L26",
- "_origin": "ast",
- "id": "nestjs_jwt",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "@nestjs/jwt"
- },
{
"label": "@nestjs/passport",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L27",
+ "source_location": "L28",
"_origin": "ast",
"id": "nestjs_passport",
"community": 63,
@@ -38893,7 +39568,7 @@
"label": "@nestjs/platform-express",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L28",
+ "source_location": "L29",
"_origin": "ast",
"id": "nestjs_platform_express",
"community": 63,
@@ -38904,40 +39579,18 @@
"label": "@nestjs/swagger",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L29",
+ "source_location": "L30",
"_origin": "ast",
"id": "nestjs_swagger",
"community": 63,
"community_name": "dependencies",
"norm_label": "@nestjs/swagger"
},
- {
- "label": "@nestjs/throttler",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L30",
- "_origin": "ast",
- "id": "nestjs_throttler",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "@nestjs/throttler"
- },
- {
- "label": "passport",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L40",
- "_origin": "ast",
- "id": "passport",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "passport"
- },
{
"label": "passport-jwt",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L41",
+ "source_location": "L42",
"_origin": "ast",
"id": "passport_jwt",
"community": 63,
@@ -38948,46 +39601,24 @@
"label": "@prisma/client",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L31",
+ "source_location": "L32",
"_origin": "ast",
"id": "prisma_client",
"community": 63,
"community_name": "dependencies",
"norm_label": "@prisma/client"
},
- {
- "label": "reflect-metadata",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L42",
- "_origin": "ast",
- "id": "reflect_metadata",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "reflect-metadata"
- },
{
"label": "rxjs",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L43",
+ "source_location": "L44",
"_origin": "ast",
"id": "rxjs",
"community": 63,
"community_name": "dependencies",
"norm_label": "rxjs"
},
- {
- "label": "swagger-ui-express",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L44",
- "_origin": "ast",
- "id": "swagger_ui_express",
- "community": 63,
- "community_name": "dependencies",
- "norm_label": "swagger-ui-express"
- },
{
"label": "tsconfig.node.json",
"file_type": "code",
@@ -39220,70 +39851,48 @@
"norm_label": "vite.config.ts"
},
{
- "label": "ApiPropertyOptional",
+ "label": "app_module_1",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/test/app.e2e-spec.js",
+ "source_location": "L8",
"_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_apipropertyoptional",
+ "id": "backend_test_app_e2e_spec_app_module_1",
"community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "apipropertyoptional"
+ "community_name": "app.e2e-spec.js",
+ "norm_label": "app_module_1"
},
{
- "label": "IsIn",
+ "label": "app.e2e-spec.js",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/test/app.e2e-spec.js",
+ "source_location": "L1",
"_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isin",
+ "id": "backend_test_app_e2e_spec_js_backend_test_app_e2e_spec",
"community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "isin"
+ "community_name": "app.e2e-spec.js",
+ "norm_label": "app.e2e-spec.js"
},
{
- "label": "IsNumber",
+ "label": "supertest_1",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/test/app.e2e-spec.js",
+ "source_location": "L7",
"_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isnumber",
+ "id": "backend_test_app_e2e_spec_supertest_1",
"community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "isnumber"
+ "community_name": "app.e2e-spec.js",
+ "norm_label": "supertest_1"
},
{
- "label": "IsOptional",
+ "label": "testing_1",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/test/app.e2e-spec.js",
+ "source_location": "L6",
"_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isoptional",
+ "id": "backend_test_app_e2e_spec_testing_1",
"community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "isoptional"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isstring",
- "community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "isstring"
- },
- {
- "label": "Type",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_type",
- "community": 65,
- "community_name": "AdminTransactionFilterDto",
- "norm_label": "type"
+ "community_name": "app.e2e-spec.js",
+ "norm_label": "testing_1"
},
{
"label": "ApiQuery",
@@ -39351,105 +39960,6 @@
"community_name": "AdminQueryDto",
"norm_label": "isstring"
},
- {
- "label": "admin.module.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/admin.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_admin_module",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin.module.ts"
- },
- {
- "label": "admin/blogs.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/blogs.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_blogs_controller",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin/blogs.controller.ts"
- },
- {
- "label": "admin/blogs.service.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/blogs.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_blogs_service",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin/blogs.service.ts"
- },
- {
- "label": "categories.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/categories.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_categories_controller",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "categories.controller.ts"
- },
- {
- "label": "categories.service.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/categories.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_categories_service",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "categories.service.ts"
- },
- {
- "label": "admin-query.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/dto/admin-query.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_dto_admin_query_dto",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin-query.dto.ts"
- },
- {
- "label": "media.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/media.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_media_controller",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "media.controller.ts"
- },
- {
- "label": "media.service.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/media.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_media_service",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "media.service.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_media_service_ts_injectable",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "injectable"
- },
{
"label": "admin/pets.controller.ts",
"file_type": "code",
@@ -39458,19 +39968,118 @@
"_origin": "ast",
"id": "backend_src_admin_pets_controller",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": "admin/pets.controller.ts"
},
{
- "label": "admin/pets.service.ts",
+ "label": "ApiBearerAuth",
"file_type": "code",
- "source_file": "backend/src/admin/pets.service.ts",
- "source_location": "L1",
+ "source_file": "",
+ "source_location": "",
"_origin": "ast",
- "id": "backend_src_admin_pets_service",
+ "id": "backend_src_admin_pets_controller_ts_apibearerauth",
"community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin/pets.service.ts"
+ "community_name": "PetsController",
+ "norm_label": "apibearerauth"
+ },
+ {
+ "label": "ApiOperation",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_apioperation",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "apioperation"
+ },
+ {
+ "label": "ApiQuery",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_apiquery",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "apiquery"
+ },
+ {
+ "label": "ApiTags",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_apitags",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "apitags"
+ },
+ {
+ "label": "Controller",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_controller",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "controller"
+ },
+ {
+ "label": "Delete",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_delete",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "delete"
+ },
+ {
+ "label": "Get",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_get",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "get"
+ },
+ {
+ "label": "Param",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_param",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "param"
+ },
+ {
+ "label": "Query",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_query",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "query"
+ },
+ {
+ "label": "UseGuards",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_pets_controller_ts_useguards",
+ "community": 67,
+ "community_name": "PetsController",
+ "norm_label": "useguards"
},
{
"label": "Injectable",
@@ -39480,141 +40089,9 @@
"_origin": "ast",
"id": "backend_src_admin_pets_service_ts_injectable",
"community": 67,
- "community_name": "PaginationDto",
+ "community_name": "PetsController",
"norm_label": "injectable"
},
- {
- "label": "ssl.service.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/ssl.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_ssl_service",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "ssl.service.ts"
- },
- {
- "label": "admin/wiki.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_wiki_controller",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin/wiki.controller.ts"
- },
- {
- "label": "admin/wiki.service.ts",
- "file_type": "code",
- "source_file": "backend/src/admin/wiki.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "admin/wiki.service.ts"
- },
- {
- "label": "Injectable",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_wiki_service_ts_injectable",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "injectable"
- },
- {
- "label": "pagination.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/common/dto/pagination.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "pagination.dto.ts"
- },
- {
- "label": "ApiPropertyOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_apipropertyoptional",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "apipropertyoptional"
- },
- {
- "label": "IsEnum",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_isenum",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "isenum"
- },
- {
- "label": "IsInt",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_isint",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "isint"
- },
- {
- "label": "IsOptional",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_isoptional",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "isoptional"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_isstring",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "isstring"
- },
- {
- "label": "Min",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_min",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "min"
- },
- {
- "label": "Type",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_common_dto_pagination_dto_ts_type",
- "community": 67,
- "community_name": "PaginationDto",
- "norm_label": "type"
- },
{
"label": "20260526145407_init/migration.sql",
"file_type": "code",
@@ -40154,17 +40631,6 @@
"community_name": "pets/pets.controller.ts",
"norm_label": "pets/pets.service.ts"
},
- {
- "label": "pets.service.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/pets/pets.service.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_pets_pets_service_spec",
- "community": 7,
- "community_name": "pets/pets.controller.ts",
- "norm_label": "pets.service.spec.ts"
- },
{
"label": "Injectable",
"file_type": "code",
@@ -40451,6 +40917,28 @@
"community_name": "getPageMetadata",
"norm_label": "about/page.tsx"
},
+ {
+ "label": "catalog/page.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/app/catalog/page.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_app_catalog_page",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "catalog/page.tsx"
+ },
+ {
+ "label": "checkout/page.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/app/checkout/page.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_app_checkout_page",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "checkout/page.tsx"
+ },
{
"label": "dashboard/page.tsx",
"file_type": "code",
@@ -40462,6 +40950,17 @@
"community_name": "getPageMetadata",
"norm_label": "dashboard/page.tsx"
},
+ {
+ "label": "app/page.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/app/page.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_app_page",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "app/page.tsx"
+ },
{
"label": "privacy/page.tsx",
"file_type": "code",
@@ -40485,26 +40984,26 @@
"norm_label": "profile/page.tsx"
},
{
- "label": "search/page.tsx",
+ "label": "shop/page.tsx",
"file_type": "code",
- "source_file": "frontend/application/app/search/page.tsx",
+ "source_file": "frontend/application/app/shop/page.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_search_page",
+ "id": "frontend_application_app_shop_page",
"community": 71,
"community_name": "getPageMetadata",
- "norm_label": "search/page.tsx"
+ "norm_label": "shop/page.tsx"
},
{
- "label": "trust-seals/page.tsx",
+ "label": "track/page.tsx",
"file_type": "code",
- "source_file": "frontend/application/app/trust-seals/page.tsx",
+ "source_file": "frontend/application/app/track/page.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_trust_seals_page",
+ "id": "frontend_application_app_track_page",
"community": 71,
"community_name": "getPageMetadata",
- "norm_label": "trust-seals/page.tsx"
+ "norm_label": "track/page.tsx"
},
{
"label": "wiki/page.tsx",
@@ -40517,6 +41016,28 @@
"community_name": "getPageMetadata",
"norm_label": "wiki/page.tsx"
},
+ {
+ "label": "seo.ts",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/seo.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_lib_seo",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "seo.ts"
+ },
+ {
+ "label": "DEFAULT_SEO_CONFIG",
+ "file_type": "code",
+ "source_file": "frontend/application/lib/seo.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "id": "frontend_application_lib_seo_default_seo_config",
+ "community": 71,
+ "community_name": "getPageMetadata",
+ "norm_label": "default_seo_config"
+ },
{
"label": "06_dev_frontend.md",
"file_type": "document",
@@ -41760,6 +42281,61 @@
"community_name": "\ud83c\udfe2 AI Software Agency \u2014 Master Orchestration Protocol v3",
"norm_label": "your identity"
},
+ {
+ "label": "admin.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/admin.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_module",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "admin.module.ts"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_admin_module_ts_module",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "module"
+ },
+ {
+ "label": "media.controller.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/media.controller.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_media_controller",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "media.controller.ts"
+ },
+ {
+ "label": "media.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/media.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_media_service",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "media.service.ts"
+ },
+ {
+ "label": "Injectable",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_media_service_ts_injectable",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "injectable"
+ },
{
"label": "reports.controller.ts",
"file_type": "code",
@@ -41768,7 +42344,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "reports.controller.ts"
},
{
@@ -41779,7 +42355,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_ts_apibearerauth",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "apibearerauth"
},
{
@@ -41790,7 +42366,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_ts_apioperation",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "apioperation"
},
{
@@ -41801,7 +42377,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_ts_apitags",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "apitags"
},
{
@@ -41812,7 +42388,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_ts_controller",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "controller"
},
{
@@ -41823,7 +42399,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_ts_get",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "get"
},
{
@@ -41834,7 +42410,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_controller_ts_useguards",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "useguards"
},
{
@@ -41845,7 +42421,7 @@
"_origin": "ast",
"id": "backend_src_admin_reports_service",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "reports.service.ts"
},
{
@@ -41856,9 +42432,64 @@
"_origin": "ast",
"id": "backend_src_admin_reports_service_ts_injectable",
"community": 8,
- "community_name": "ReportsController",
+ "community_name": "admin.module.ts",
"norm_label": "injectable"
},
+ {
+ "label": "ssl.service.ts",
+ "file_type": "code",
+ "source_file": "backend/src/admin/ssl.service.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_admin_ssl_service",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "ssl.service.ts"
+ },
+ {
+ "label": "Injectable",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_admin_wiki_service_ts_injectable",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "injectable"
+ },
+ {
+ "label": "redis.module.ts",
+ "file_type": "code",
+ "source_file": "backend/src/redis/redis.module.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_module",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "redis.module.ts"
+ },
+ {
+ "label": "Global",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_module_ts_global",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "global"
+ },
+ {
+ "label": "Module",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_redis_redis_module_ts_module",
+ "community": 8,
+ "community_name": "admin.module.ts",
+ "norm_label": "module"
+ },
{
"label": "03_product_manager.md",
"file_type": "document",
@@ -42872,114 +43503,26 @@
"norm_label": "your domain \u2014 what you review (only these areas)"
},
{
- "label": "ApiBearerAuth",
+ "label": "eslint-config-prettier",
"file_type": "code",
- "source_file": "",
- "source_location": "",
+ "source_file": "backend/package.json",
+ "source_location": "L64",
"_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_apibearerauth",
+ "id": "backend_package_devdependencies_eslint_config_prettier",
"community": 85,
- "community_name": "PetsController",
- "norm_label": "apibearerauth"
+ "community_name": "eslint-config-prettier",
+ "norm_label": "eslint-config-prettier"
},
{
- "label": "ApiOperation",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
+ "label": "eslint-config-prettier",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L64",
"_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_apioperation",
+ "id": "eslint_config_prettier",
"community": 85,
- "community_name": "PetsController",
- "norm_label": "apioperation"
- },
- {
- "label": "ApiQuery",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_apiquery",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "apiquery"
- },
- {
- "label": "ApiTags",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_apitags",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "apitags"
- },
- {
- "label": "Controller",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_controller",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "controller"
- },
- {
- "label": "Delete",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_delete",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "delete"
- },
- {
- "label": "Get",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_get",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "get"
- },
- {
- "label": "Param",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_param",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "param"
- },
- {
- "label": "Query",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_query",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "query"
- },
- {
- "label": "UseGuards",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_admin_pets_controller_ts_useguards",
- "community": 85,
- "community_name": "PetsController",
- "norm_label": "useguards"
+ "community_name": "eslint-config-prettier",
+ "norm_label": "eslint-config-prettier"
},
{
"label": "payment-gateway.interface.ts",
@@ -43234,6 +43777,28 @@
"community_name": "useSettingsStore",
"norm_label": "cartdrawer"
},
+ {
+ "label": "LoginModal",
+ "file_type": "code",
+ "source_file": "frontend/application/app/ClientLayout.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "id": "frontend_application_app_clientlayout_loginmodal",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "loginmodal"
+ },
+ {
+ "label": "AuthModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/AuthModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_authmodal",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "authmodal.tsx"
+ },
{
"label": "BrandLogo.tsx",
"file_type": "code",
@@ -43246,26 +43811,15 @@
"norm_label": "brandlogo.tsx"
},
{
- "label": "EnamadBadge.tsx",
+ "label": "CartDrawer.tsx",
"file_type": "code",
- "source_file": "frontend/application/components/EnamadBadge.tsx",
+ "source_file": "frontend/application/components/CartDrawer.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_components_enamadbadge",
+ "id": "frontend_application_components_cartdrawer",
"community": 88,
"community_name": "useSettingsStore",
- "norm_label": "enamadbadge.tsx"
- },
- {
- "label": "FAQSection.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/FAQSection.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_faqsection",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "faqsection.tsx"
+ "norm_label": "cartdrawer.tsx"
},
{
"label": "Footer.tsx",
@@ -43322,6 +43876,28 @@
"community_name": "useSettingsStore",
"norm_label": "networkbanner.tsx"
},
+ {
+ "label": "CartDrawer.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "id": "frontend_application_components_tests_cartdrawer_test",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "cartdrawer.test.tsx"
+ },
+ {
+ "label": "mockProduct",
+ "file_type": "code",
+ "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx",
+ "source_location": "L19",
+ "_origin": "ast",
+ "id": "frontend_application_components_tests_cartdrawer_test_mockproduct",
+ "community": 88,
+ "community_name": "useSettingsStore",
+ "norm_label": "mockproduct"
+ },
{
"label": "Footer.test.tsx",
"file_type": "code",
@@ -43355,17 +43931,6 @@
"community_name": "useSettingsStore",
"norm_label": "usenetworkstatus.ts"
},
- {
- "label": "settingsStore.ts",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/settingsStore.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_lib_store_settingsstore",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "settingsstore.ts"
- },
{
"label": "useSettingsStore",
"file_type": "code",
@@ -43377,17 +43942,6 @@
"community_name": "useSettingsStore",
"norm_label": "usesettingsstore"
},
- {
- "label": "settingsStore.test.ts",
- "file_type": "code",
- "source_file": "frontend/application/lib/store/__tests__/settingsStore.test.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_lib_store_tests_settingsstore_test",
- "community": 88,
- "community_name": "useSettingsStore",
- "norm_label": "settingsstore.test.ts"
- },
{
"label": "uiStore.ts",
"file_type": "code",
@@ -43502,7 +44056,7 @@
"label": "devDependencies",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L46",
+ "source_location": "L47",
"_origin": "ast",
"id": "backend_package_devdependencies",
"community": 9,
@@ -43510,246 +44064,92 @@
"norm_label": "devdependencies"
},
{
- "label": "eslint-config-prettier",
+ "label": "eslint",
"file_type": "code",
"source_file": "backend/package.json",
"source_location": "L63",
"_origin": "ast",
- "id": "backend_package_devdependencies_eslint_config_prettier",
+ "id": "backend_package_devdependencies_eslint",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "eslint-config-prettier"
+ "norm_label": "eslint"
},
{
- "label": "@eslint/eslintrc",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L47",
- "_origin": "ast",
- "id": "backend_package_devdependencies_eslint_eslintrc",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@eslint/eslintrc"
- },
- {
- "label": "eslint-plugin-prettier",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L64",
- "_origin": "ast",
- "id": "backend_package_devdependencies_eslint_plugin_prettier",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "eslint-plugin-prettier"
- },
- {
- "label": "@nestjs/schematics",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L50",
- "_origin": "ast",
- "id": "backend_package_devdependencies_nestjs_schematics",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@nestjs/schematics"
- },
- {
- "label": "@nestjs/testing",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L51",
- "_origin": "ast",
- "id": "backend_package_devdependencies_nestjs_testing",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@nestjs/testing"
- },
- {
- "label": "prettier",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L67",
- "_origin": "ast",
- "id": "backend_package_devdependencies_prettier",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "prettier"
- },
- {
- "label": "@types/compression",
+ "label": "@types/bcryptjs",
"file_type": "code",
"source_file": "backend/package.json",
"source_location": "L54",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_compression",
+ "id": "backend_package_devdependencies_types_bcryptjs",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "@types/compression"
+ "norm_label": "@types/bcryptjs"
},
{
- "label": "@types/express",
+ "label": "@types/node",
"file_type": "code",
"source_file": "backend/package.json",
- "source_location": "L55",
+ "source_location": "L60",
"_origin": "ast",
- "id": "backend_package_devdependencies_types_express",
+ "id": "backend_package_devdependencies_types_node",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "@types/express"
+ "norm_label": "@types/node"
},
{
- "label": "@types/jest",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L56",
- "_origin": "ast",
- "id": "backend_package_devdependencies_types_jest",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@types/jest"
- },
- {
- "label": "@types/supertest",
- "file_type": "code",
- "source_file": "backend/package.json",
- "source_location": "L61",
- "_origin": "ast",
- "id": "backend_package_devdependencies_types_supertest",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@types/supertest"
- },
- {
- "label": "typescript-eslint",
+ "label": "typescript",
"file_type": "code",
"source_file": "backend/package.json",
"source_location": "L76",
"_origin": "ast",
- "id": "backend_package_devdependencies_typescript_eslint",
+ "id": "backend_package_devdependencies_typescript",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "typescript-eslint"
+ "norm_label": "typescript"
},
{
- "label": "typescript-eslint",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L76",
- "_origin": "ast",
- "id": "backend_package_json_typescript_eslint",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "typescript-eslint"
- },
- {
- "label": "eslint-config-prettier",
+ "label": "eslint",
"file_type": "concept",
"source_file": "backend/package.json",
"source_location": "L63",
"_origin": "ast",
- "id": "eslint_config_prettier",
+ "id": "backend_package_json_eslint",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "eslint-config-prettier"
+ "norm_label": "eslint"
},
{
- "label": "@eslint/eslintrc",
+ "label": "@types/node",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L47",
+ "source_location": "L60",
"_origin": "ast",
- "id": "eslint_eslintrc",
+ "id": "backend_package_json_types_node",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "@eslint/eslintrc"
+ "norm_label": "@types/node"
},
{
- "label": "eslint-plugin-prettier",
+ "label": "typescript",
"file_type": "concept",
"source_file": "backend/package.json",
- "source_location": "L64",
+ "source_location": "L76",
"_origin": "ast",
- "id": "eslint_plugin_prettier",
+ "id": "backend_package_json_typescript",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "eslint-plugin-prettier"
+ "norm_label": "typescript"
},
{
- "label": "@nestjs/schematics",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L50",
- "_origin": "ast",
- "id": "nestjs_schematics",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@nestjs/schematics"
- },
- {
- "label": "@nestjs/testing",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L51",
- "_origin": "ast",
- "id": "nestjs_testing",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@nestjs/testing"
- },
- {
- "label": "prettier",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L67",
- "_origin": "ast",
- "id": "prettier",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "prettier"
- },
- {
- "label": "@types/compression",
+ "label": "@types/bcryptjs",
"file_type": "concept",
"source_file": "backend/package.json",
"source_location": "L54",
"_origin": "ast",
- "id": "types_compression",
+ "id": "types_bcryptjs",
"community": 9,
"community_name": "devDependencies",
- "norm_label": "@types/compression"
- },
- {
- "label": "@types/express",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L55",
- "_origin": "ast",
- "id": "types_express",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@types/express"
- },
- {
- "label": "@types/jest",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L56",
- "_origin": "ast",
- "id": "types_jest",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@types/jest"
- },
- {
- "label": "@types/supertest",
- "file_type": "concept",
- "source_file": "backend/package.json",
- "source_location": "L61",
- "_origin": "ast",
- "id": "types_supertest",
- "community": 9,
- "community_name": "devDependencies",
- "norm_label": "@types/supertest"
+ "norm_label": "@types/bcryptjs"
},
{
"label": "HomeClient.tsx",
@@ -43763,15 +44163,37 @@
"norm_label": "homeclient.tsx"
},
{
- "label": "app/page.tsx",
+ "label": "ArchivePage.tsx",
"file_type": "code",
- "source_file": "frontend/application/app/page.tsx",
+ "source_file": "frontend/application/components/ArchivePage.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_page",
+ "id": "frontend_application_components_archivepage",
"community": 90,
"community_name": "HomeClient.tsx",
- "norm_label": "app/page.tsx"
+ "norm_label": "archivepage.tsx"
+ },
+ {
+ "label": "CATEGORY_MAP",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ArchivePage.tsx",
+ "source_location": "L43",
+ "_origin": "ast",
+ "id": "frontend_application_components_archivepage_category_map",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "category_map"
+ },
+ {
+ "label": "ICON_MAP",
+ "file_type": "code",
+ "source_file": "frontend/application/components/ArchivePage.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "id": "frontend_application_components_archivepage_icon_map",
+ "community": 90,
+ "community_name": "HomeClient.tsx",
+ "norm_label": "icon_map"
},
{
"label": "BannerPlacement.tsx",
@@ -43993,17 +44415,6 @@
"community_name": "Reconciled Audit Roles & Assignments",
"norm_label": "subagent execution mode"
},
- {
- "label": "create-order.dto.ts",
- "file_type": "code",
- "source_file": "backend/src/orders/dto/create-order.dto.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_orders_dto_create_order_dto",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "create-order.dto.ts"
- },
{
"label": "ApiProperty",
"file_type": "code",
@@ -44092,28 +44503,6 @@
"community_name": "OrdersService",
"norm_label": "type"
},
- {
- "label": "orders.controller.ts",
- "file_type": "code",
- "source_file": "backend/src/orders/orders.controller.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_orders_orders_controller",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "orders.controller.ts"
- },
- {
- "label": "orders.controller.spec.ts",
- "file_type": "code",
- "source_file": "backend/src/orders/orders.controller.spec.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_orders_orders_controller_spec",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "orders.controller.spec.ts"
- },
{
"label": "ApiBadRequestResponse",
"file_type": "code",
@@ -44224,39 +44613,6 @@
"community_name": "OrdersService",
"norm_label": "get"
},
- {
- "label": "IsNotEmpty",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_orders_orders_controller_ts_isnotempty",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "isnotempty"
- },
- {
- "label": "IsNumber",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_orders_orders_controller_ts_isnumber",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "isnumber"
- },
- {
- "label": "IsString",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_orders_orders_controller_ts_isstring",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "isstring"
- },
{
"label": "Param",
"file_type": "code",
@@ -44312,39 +44668,6 @@
"community_name": "OrdersService",
"norm_label": "useguards"
},
- {
- "label": "orders.module.ts",
- "file_type": "code",
- "source_file": "backend/src/orders/orders.module.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_orders_orders_module",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "orders.module.ts"
- },
- {
- "label": "Module",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "_origin": "ast",
- "id": "backend_src_orders_orders_module_ts_module",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "module"
- },
- {
- "label": "orders.service.ts",
- "file_type": "code",
- "source_file": "backend/src/orders/orders.service.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "backend_src_orders_orders_service",
- "community": 92,
- "community_name": "OrdersService",
- "norm_label": "orders.service.ts"
- },
{
"label": "Injectable",
"file_type": "code",
@@ -44368,125 +44691,26 @@
"norm_label": "validatenested"
},
{
- "label": "PodcastInlinePlayer.tsx",
+ "label": "@nestjs/schematics",
"file_type": "code",
- "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
- "source_location": "L1",
+ "source_file": "backend/package.json",
+ "source_location": "L51",
"_origin": "ast",
- "id": "frontend_application_components_podcastinlineplayer",
+ "id": "backend_package_devdependencies_nestjs_schematics",
"community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "podcastinlineplayer.tsx"
+ "community_name": "@nestjs/schematics",
+ "norm_label": "@nestjs/schematics"
},
{
- "label": "PLAYBACK_RATES",
- "file_type": "code",
- "source_file": "frontend/application/components/PodcastInlinePlayer.tsx",
- "source_location": "L30",
+ "label": "@nestjs/schematics",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L51",
"_origin": "ast",
- "id": "frontend_application_components_podcastinlineplayer_playback_rates",
+ "id": "nestjs_schematics",
"community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "playback_rates"
- },
- {
- "label": "ProductPage.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductPage.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_productpage",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "productpage.tsx"
- },
- {
- "label": "ICON_MAP",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductPage.tsx",
- "source_location": "L34",
- "_origin": "ast",
- "id": "frontend_application_components_productpage_icon_map",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "icon_map"
- },
- {
- "label": "ProductReviews",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductPage.tsx",
- "source_location": "L74",
- "_origin": "ast",
- "id": "frontend_application_components_productpage_productreviews",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "productreviews"
- },
- {
- "label": "useCalculatorStore",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductPage.tsx",
- "source_location": "L61",
- "_origin": "ast",
- "id": "frontend_application_components_productpage_usecalculatorstore",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "usecalculatorstore"
- },
- {
- "label": "ProductReviews.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/ProductReviews.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_productreviews",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "productreviews.tsx"
- },
- {
- "label": "Tooltip.test.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/__tests__/Tooltip.test.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_tests_tooltip_test",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "tooltip.test.tsx"
- },
- {
- "label": "Tooltip.tsx",
- "file_type": "code",
- "source_file": "frontend/application/components/Tooltip.tsx",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_components_tooltip",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "tooltip.tsx"
- },
- {
- "label": "data/scientificTerms.ts",
- "file_type": "code",
- "source_file": "frontend/application/lib/data/scientificTerms.ts",
- "source_location": "L1",
- "_origin": "ast",
- "id": "frontend_application_lib_data_scientificterms",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "data/scientificterms.ts"
- },
- {
- "label": "SCIENTIFIC_TERMS",
- "file_type": "code",
- "source_file": "frontend/application/lib/data/scientificTerms.ts",
- "source_location": "L7",
- "_origin": "ast",
- "id": "frontend_application_lib_data_scientificterms_scientific_terms",
- "community": 93,
- "community_name": "ProductPage.tsx",
- "norm_label": "scientific_terms"
+ "community_name": "@nestjs/schematics",
+ "norm_label": "@nestjs/schematics"
},
{
"label": "phase3.1-backlog-review.md",
@@ -44668,7 +44892,7 @@
"label": "revalidate",
"file_type": "code",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L66",
+ "source_location": "L51",
"_origin": "ast",
"id": "frontend_application_app_blog_slug_page_revalidate",
"community": 95,
@@ -44698,15 +44922,15 @@
"norm_label": "revalidate"
},
{
- "label": "wiki/[slug]/page.tsx",
+ "label": "BlogPostClient.tsx",
"file_type": "code",
- "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
"source_location": "L1",
"_origin": "ast",
- "id": "frontend_application_app_wiki_slug_page",
+ "id": "frontend_application_components_blogpostclient",
"community": 95,
"community_name": "blog/[slug]/page.tsx",
- "norm_label": "wiki/[slug]/page.tsx"
+ "norm_label": "blogpostclient.tsx"
},
{
"label": "application/tsconfig.json",
@@ -45072,26 +45296,26 @@
"norm_label": "vitest.setup.ts"
},
{
- "label": "prisma",
+ "label": "prettier",
"file_type": "code",
"source_file": "backend/package.json",
"source_location": "L68",
"_origin": "ast",
- "id": "backend_package_devdependencies_prisma",
+ "id": "backend_package_devdependencies_prettier",
"community": 97,
- "community_name": "prisma",
- "norm_label": "prisma"
+ "community_name": "prettier",
+ "norm_label": "prettier"
},
{
- "label": "prisma",
+ "label": "prettier",
"file_type": "concept",
"source_file": "backend/package.json",
"source_location": "L68",
"_origin": "ast",
- "id": "prisma",
+ "id": "prettier",
"community": 97,
- "community_name": "prisma",
- "norm_label": "prisma"
+ "community_name": "prettier",
+ "norm_label": "prettier"
},
{
"label": "scripts",
@@ -45148,6 +45372,17 @@
"community_name": "scripts",
"norm_label": "lint"
},
+ {
+ "label": "seo:backfill",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "id": "backend_package_scripts_seo_backfill",
+ "community": 98,
+ "community_name": "scripts",
+ "norm_label": "seo:backfill"
+ },
{
"label": "start",
"file_type": "code",
@@ -45500,6 +45735,94 @@
"community_name": "BlogsController",
"norm_label": "injectable"
},
+ {
+ "label": "ApiNotFoundResponse",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_apinotfoundresponse",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "apinotfoundresponse"
+ },
+ {
+ "label": "ApiOkResponse",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_apiokresponse",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "apiokresponse"
+ },
+ {
+ "label": "ApiOperation",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_apioperation",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "apioperation"
+ },
+ {
+ "label": "ApiTags",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_apitags",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "apitags"
+ },
+ {
+ "label": "Controller",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_controller",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "controller"
+ },
+ {
+ "label": "Get",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_get",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "get"
+ },
+ {
+ "label": "Param",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_param",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "param"
+ },
+ {
+ "label": "Query",
+ "file_type": "code",
+ "source_file": "",
+ "source_location": "",
+ "_origin": "ast",
+ "id": "backend_src_wiki_wiki_controller_ts_query",
+ "community": 99,
+ "community_name": "BlogsController",
+ "norm_label": "query"
+ },
{
"label": "Vazirmatn Authors",
"_origin": "semantic",
@@ -46043,6 +46366,18 @@
"target": "backend_prisma_seed_products_getproductimageurl",
"confidence_score": 1.0
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_scripts_seo_backfill_runseobackfill",
+ "target": "backend_scripts_seo_backfill_striphtml",
+ "confidence_score": 1.0
+ },
{
"relation": "calls",
"context": "call",
@@ -47915,6 +48250,42 @@
"target": "frontend_application_app_api_revalidate_route_handlerevalidate",
"confidence_score": 1.0
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page_b2bpage",
+ "target": "frontend_application_lib_schema_generateb2bserviceschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page_b2bpage",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page_generatemetadata",
+ "target": "frontend_application_lib_seo_getpagemetadata"
+ },
{
"relation": "calls",
"context": "call",
@@ -47968,7 +48339,7 @@
"context": "call",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L155",
+ "source_location": "L140",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_blogpostpage",
@@ -47981,7 +48352,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L156",
+ "source_location": "L141",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_blogpostpage",
@@ -47992,7 +48363,7 @@
"context": "call",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L168",
+ "source_location": "L153",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_blogpostpage",
@@ -48004,7 +48375,7 @@
"context": "call",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L174",
+ "source_location": "L159",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_blogpostpage",
@@ -48016,7 +48387,7 @@
"context": "call",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L70",
+ "source_location": "L55",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_generatemetadata",
@@ -48029,7 +48400,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L71",
+ "source_location": "L56",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_generatemetadata",
@@ -48041,7 +48412,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L75",
+ "source_location": "L60",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_generatemetadata",
@@ -48052,7 +48423,7 @@
"context": "call",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L98",
+ "source_location": "L83",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page_generatemetadata",
@@ -48119,6 +48490,30 @@
"source": "frontend_application_app_clientlayout_clientlayout",
"target": "frontend_application_lib_store_settingsstore_usesettingsstore"
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/contact/page.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_contact_page_contactpage",
+ "target": "frontend_application_lib_schema_generatelocalbusinessschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/contact/page.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_contact_page_contactpage",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema"
+ },
{
"relation": "calls",
"context": "call",
@@ -48179,6 +48574,18 @@
"source": "frontend_application_app_layout_generatemetadata",
"target": "frontend_application_lib_seo_getseoconfig"
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/layout.tsx",
+ "source_location": "L105",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_layout_rootlayout",
+ "target": "frontend_application_lib_schema_generateorganizationschema"
+ },
{
"relation": "calls",
"context": "call",
@@ -48293,7 +48700,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/shop/page.tsx",
- "source_location": "L6",
+ "source_location": "L27",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_shop_page_generatemetadata",
@@ -48353,12 +48760,48 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/videos/page.tsx",
- "source_location": "L6",
+ "source_location": "L7",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_videos_page_generatemetadata",
"target": "frontend_application_lib_seo_getpagemetadata"
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page_videos",
+ "target": "frontend_application_app_videos_page_getinitialvideos",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page_videos",
+ "target": "frontend_application_lib_schema_generatevideoobjectschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page_videos",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema"
+ },
{
"relation": "calls",
"context": "call",
@@ -48376,7 +48819,7 @@
"context": "call",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L22",
+ "source_location": "L40",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page_generatemetadata",
@@ -48389,7 +48832,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L23",
+ "source_location": "L41",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page_generatemetadata",
@@ -48401,7 +48844,7 @@
"confidence": "EXTRACTED",
"confidence_score": 1.0,
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L27",
+ "source_location": "L45",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page_generatemetadata",
@@ -48411,14 +48854,50 @@
"relation": "calls",
"context": "call",
"confidence": "EXTRACTED",
+ "confidence_score": 1.0,
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L54",
+ "source_location": "L103",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page_wikitermpage",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L80",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page_wikitermpage",
"target": "frontend_application_app_wiki_slug_page_getwikiterm",
"confidence_score": 1.0
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page_wikitermpage",
+ "target": "frontend_application_app_wiki_slug_page_getrelatedproducts",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page_wikitermpage",
+ "target": "frontend_application_lib_schema_generatemedicalwebpageschema"
+ },
{
"relation": "calls",
"context": "call",
@@ -48539,6 +49018,18 @@
"target": "frontend_application_lib_utils_toenglishdigits",
"confidence_score": 1.0
},
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_b2blandingclient_b2blandingclient",
+ "target": "frontend_application_lib_store_settingsstore_usesettingsstore"
+ },
{
"relation": "calls",
"context": "call",
@@ -69459,7 +69950,7 @@
"relation": "extends",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L89",
+ "source_location": "L90",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69471,7 +69962,7 @@
"relation": "extends",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69483,7 +69974,7 @@
"relation": "extends",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69495,7 +69986,7 @@
"relation": "extends",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69951,7 +70442,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L32",
+ "source_location": "L33",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69963,7 +70454,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L33",
+ "source_location": "L34",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69975,7 +70466,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L34",
+ "source_location": "L35",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69987,7 +70478,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L35",
+ "source_location": "L36",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -69999,7 +70490,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L36",
+ "source_location": "L37",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70011,7 +70502,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L37",
+ "source_location": "L38",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70023,7 +70514,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L38",
+ "source_location": "L39",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70035,7 +70526,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L39",
+ "source_location": "L40",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70047,7 +70538,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L24",
+ "source_location": "L25",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70059,7 +70550,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L25",
+ "source_location": "L26",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70071,7 +70562,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L26",
+ "source_location": "L27",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70083,7 +70574,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L27",
+ "source_location": "L28",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70095,7 +70586,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L28",
+ "source_location": "L29",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70107,7 +70598,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L29",
+ "source_location": "L30",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70119,7 +70610,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L30",
+ "source_location": "L31",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70131,7 +70622,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L40",
+ "source_location": "L41",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70143,7 +70634,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L41",
+ "source_location": "L42",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70155,7 +70646,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L31",
+ "source_location": "L32",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70167,7 +70658,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L42",
+ "source_location": "L43",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70179,7 +70670,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L43",
+ "source_location": "L44",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70191,7 +70682,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L44",
+ "source_location": "L45",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70203,7 +70694,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L62",
+ "source_location": "L63",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70215,7 +70706,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L63",
+ "source_location": "L64",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70227,7 +70718,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L47",
+ "source_location": "L48",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70239,7 +70730,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L48",
+ "source_location": "L49",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70251,7 +70742,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L64",
+ "source_location": "L65",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70263,7 +70754,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L65",
+ "source_location": "L66",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70275,7 +70766,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L66",
+ "source_location": "L67",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70287,7 +70778,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L49",
+ "source_location": "L50",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70299,7 +70790,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L50",
+ "source_location": "L51",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70311,7 +70802,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L51",
+ "source_location": "L52",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70323,7 +70814,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L67",
+ "source_location": "L68",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70335,7 +70826,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L68",
+ "source_location": "L69",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70347,7 +70838,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L69",
+ "source_location": "L70",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70359,7 +70850,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L70",
+ "source_location": "L71",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70371,7 +70862,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L71",
+ "source_location": "L72",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70383,7 +70874,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L72",
+ "source_location": "L73",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70395,7 +70886,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L73",
+ "source_location": "L74",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70407,7 +70898,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L74",
+ "source_location": "L75",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70419,7 +70910,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L52",
+ "source_location": "L53",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70431,7 +70922,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L53",
+ "source_location": "L54",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70443,7 +70934,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L54",
+ "source_location": "L55",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70455,7 +70946,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L55",
+ "source_location": "L56",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70467,7 +70958,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L56",
+ "source_location": "L57",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70479,7 +70970,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L57",
+ "source_location": "L58",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70491,7 +70982,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L58",
+ "source_location": "L59",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70503,7 +70994,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L59",
+ "source_location": "L60",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70515,7 +71006,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L60",
+ "source_location": "L61",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70527,7 +71018,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L61",
+ "source_location": "L62",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70539,7 +71030,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L75",
+ "source_location": "L76",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -70551,7 +71042,7 @@
"relation": "imports",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L76",
+ "source_location": "L77",
"weight": 1.0,
"context": "import",
"_origin": "ast",
@@ -79007,6 +79498,54 @@
"target": "frontend_application_lib_seo_getpagemetadata",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_components_b2blandingclient_b2blandingclient",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_lib_seo_getpagemetadata",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_lib_schema_generateb2bserviceschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -79036,11 +79575,11 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L19",
+ "source_location": "L4",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
- "target": "frontend_application_components_safeimage_safeimage",
+ "target": "frontend_application_components_blogpostclient_blogpostclient",
"confidence_score": 1.0
},
{
@@ -79048,7 +79587,7 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L20",
+ "source_location": "L5",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -79060,7 +79599,7 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L20",
+ "source_location": "L5",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -79271,6 +79810,30 @@
"target": "frontend_application_components_networkbanner_networkbanner",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/contact/page.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_contact_page",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/contact/page.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_contact_page",
+ "target": "frontend_application_lib_schema_generatelocalbusinessschema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -79559,6 +80122,18 @@
"target": "frontend_application_lib_fonts_vazirmatn",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/layout.tsx",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_layout",
+ "target": "frontend_application_lib_schema_generateorganizationschema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -79967,6 +80542,30 @@
"target": "frontend_application_lib_seo_getpagemetadata",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page",
+ "target": "frontend_application_lib_schema_generatevideoobjectschema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -79996,7 +80595,7 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L18",
+ "source_location": "L4",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page",
@@ -80008,13 +80607,49 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L18",
+ "source_location": "L4",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page",
"target": "frontend_application_lib_seo_getseoconfig",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_lib_schema_generatemedicalwebpageschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_components_safeimage_safeimage",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -80267,6 +80902,30 @@
"target": "frontend_application_lib_utils_topersian",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_b2blandingclient",
+ "target": "frontend_application_lib_services_api_api",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_b2blandingclient",
+ "target": "frontend_application_lib_store_settingsstore_usesettingsstore",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -80423,6 +81082,18 @@
"target": "frontend_application_components_safeimage_safeimage",
"confidence_score": 1.0
},
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_blogpostclient",
+ "target": "frontend_application_components_safeimage_safeimage",
+ "confidence_score": 1.0
+ },
{
"relation": "imports",
"context": "import",
@@ -90959,6 +91630,42 @@
"target": "frontend_application_lib_seo",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_components_b2blandingclient",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_lib_seo",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_lib_schema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -90988,11 +91695,11 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L19",
+ "source_location": "L4",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
- "target": "frontend_application_components_safeimage",
+ "target": "frontend_application_components_blogpostclient",
"confidence_score": 1.0
},
{
@@ -91000,7 +91707,7 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L20",
+ "source_location": "L5",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -91199,6 +91906,18 @@
"target": "frontend_application_components_networkbanner",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/contact/page.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_contact_page",
+ "target": "frontend_application_lib_schema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -91439,6 +92158,18 @@
"target": "frontend_application_lib_fonts",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/layout.tsx",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_layout",
+ "target": "frontend_application_lib_schema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -91823,6 +92554,18 @@
"target": "frontend_application_lib_seo",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page",
+ "target": "frontend_application_lib_schema",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -91852,13 +92595,37 @@
"context": "import",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L18",
+ "source_location": "L4",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page",
"target": "frontend_application_lib_seo",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_lib_schema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_components_safeimage",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -92075,6 +92842,30 @@
"target": "frontend_application_lib_utils",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_b2blandingclient",
+ "target": "frontend_application_lib_services_api",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_b2blandingclient",
+ "target": "frontend_application_lib_store_settingsstore",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -92231,6 +93022,18 @@
"target": "frontend_application_components_safeimage",
"confidence_score": 1.0
},
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_blogpostclient",
+ "target": "frontend_application_components_safeimage",
+ "confidence_score": 1.0
+ },
{
"relation": "imports_from",
"context": "import",
@@ -99744,7 +100547,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L23",
+ "source_location": "L24",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package",
@@ -99777,7 +100580,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L46",
+ "source_location": "L47",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package",
@@ -99821,7 +100624,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L78",
+ "source_location": "L79",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package",
@@ -99843,7 +100646,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L95",
+ "source_location": "L96",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package",
@@ -99854,7 +100657,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L24",
+ "source_location": "L25",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99865,7 +100668,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L25",
+ "source_location": "L26",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99876,7 +100679,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L26",
+ "source_location": "L27",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99887,7 +100690,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L27",
+ "source_location": "L28",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99898,7 +100701,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L28",
+ "source_location": "L29",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99909,7 +100712,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L29",
+ "source_location": "L30",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99920,7 +100723,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L30",
+ "source_location": "L31",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99931,7 +100734,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L31",
+ "source_location": "L32",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99942,7 +100745,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L32",
+ "source_location": "L33",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99953,7 +100756,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L33",
+ "source_location": "L34",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99964,7 +100767,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L34",
+ "source_location": "L35",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99975,7 +100778,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L35",
+ "source_location": "L36",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99986,7 +100789,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L36",
+ "source_location": "L37",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -99997,7 +100800,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L37",
+ "source_location": "L38",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100008,7 +100811,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L38",
+ "source_location": "L39",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100019,7 +100822,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L39",
+ "source_location": "L40",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100030,7 +100833,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L40",
+ "source_location": "L41",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100041,7 +100844,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L41",
+ "source_location": "L42",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100052,7 +100855,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L42",
+ "source_location": "L43",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100063,7 +100866,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L43",
+ "source_location": "L44",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100074,7 +100877,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L44",
+ "source_location": "L45",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_dependencies",
@@ -100085,7 +100888,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L47",
+ "source_location": "L48",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100096,7 +100899,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L48",
+ "source_location": "L49",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100107,7 +100910,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L49",
+ "source_location": "L50",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100118,7 +100921,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L50",
+ "source_location": "L51",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100129,7 +100932,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L51",
+ "source_location": "L52",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100140,7 +100943,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L52",
+ "source_location": "L53",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100151,7 +100954,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L53",
+ "source_location": "L54",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100162,7 +100965,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L54",
+ "source_location": "L55",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100173,7 +100976,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L55",
+ "source_location": "L56",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100184,7 +100987,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L56",
+ "source_location": "L57",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100195,7 +100998,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L57",
+ "source_location": "L58",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100206,7 +101009,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L58",
+ "source_location": "L59",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100217,7 +101020,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L59",
+ "source_location": "L60",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100228,7 +101031,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L60",
+ "source_location": "L61",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100239,7 +101042,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L61",
+ "source_location": "L62",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100250,7 +101053,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L62",
+ "source_location": "L63",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100261,7 +101064,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L63",
+ "source_location": "L64",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100272,7 +101075,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L64",
+ "source_location": "L65",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100283,7 +101086,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L65",
+ "source_location": "L66",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100294,7 +101097,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L66",
+ "source_location": "L67",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100305,7 +101108,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L67",
+ "source_location": "L68",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100316,7 +101119,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L68",
+ "source_location": "L69",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100327,7 +101130,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L69",
+ "source_location": "L70",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100338,7 +101141,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L70",
+ "source_location": "L71",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100349,7 +101152,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L71",
+ "source_location": "L72",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100360,7 +101163,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L72",
+ "source_location": "L73",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100371,7 +101174,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L73",
+ "source_location": "L74",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100382,7 +101185,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L74",
+ "source_location": "L75",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100393,7 +101196,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L75",
+ "source_location": "L76",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100404,7 +101207,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L76",
+ "source_location": "L77",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_devdependencies",
@@ -100415,7 +101218,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L79",
+ "source_location": "L80",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100426,7 +101229,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L84",
+ "source_location": "L85",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100437,7 +101240,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L85",
+ "source_location": "L86",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100448,7 +101251,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L86",
+ "source_location": "L87",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100459,7 +101262,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L89",
+ "source_location": "L90",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100470,7 +101273,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L92",
+ "source_location": "L93",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100481,7 +101284,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L93",
+ "source_location": "L94",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest",
@@ -100492,7 +101295,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L87",
+ "source_location": "L88",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_jest_transform",
@@ -100503,7 +101306,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "backend/package.json",
- "source_location": "L96",
+ "source_location": "L97",
"weight": 1.0,
"_origin": "ast",
"source": "backend_package_prisma",
@@ -100642,6 +101445,17 @@
"target": "backend_package_scripts_docs_generate",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_package_scripts",
+ "target": "backend_package_scripts_seo_backfill",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -101445,6 +102259,39 @@
"target": "backend_scripts_generate_openapi_ts_backend_scripts_generate_openapi_generateopenapi",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_scripts_seo_backfill",
+ "target": "backend_scripts_seo_backfill_prisma",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_scripts_seo_backfill",
+ "target": "backend_scripts_seo_backfill_striphtml",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/scripts/seo-backfill.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_scripts_seo_backfill",
+ "target": "backend_scripts_seo_backfill_runseobackfill",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -113974,6 +114821,28 @@
"target": "frontend_application_app_api_revalidate_route_post",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_app_b2b_page_b2bpage",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/b2b/page.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_b2b_page",
+ "target": "frontend_application_app_b2b_page_generatemetadata",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -114066,7 +114935,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L153",
+ "source_location": "L138",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -114077,18 +114946,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "_origin": "ast",
- "source": "frontend_application_app_blog_slug_page",
- "target": "frontend_application_app_blog_slug_page_safeiso",
- "confidence_score": 1.0
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L32",
+ "source_location": "L17",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -114099,7 +114957,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L42",
+ "source_location": "L27",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -114110,7 +114968,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L66",
+ "source_location": "L51",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
@@ -114121,13 +114979,24 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/blog/[slug]/page.tsx",
- "source_location": "L68",
+ "source_location": "L53",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_blog_slug_page",
"target": "frontend_application_app_blog_slug_page_generatemetadata",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/blog/[slug]/page.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_blog_slug_page",
+ "target": "frontend_application_app_blog_slug_page_safeiso",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -114253,7 +115122,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/contact/page.tsx",
- "source_location": "L13",
+ "source_location": "L15",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_contact_page",
@@ -114330,22 +115199,22 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/layout.tsx",
- "source_location": "L7",
+ "source_location": "L100",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_layout",
- "target": "frontend_application_app_layout_generatemetadata",
+ "target": "frontend_application_app_layout_rootlayout",
"confidence_score": 1.0
},
{
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/layout.tsx",
- "source_location": "L98",
+ "source_location": "L7",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_layout",
- "target": "frontend_application_app_layout_rootlayout",
+ "target": "frontend_application_app_layout_generatemetadata",
"confidence_score": 1.0
},
{
@@ -114539,7 +115408,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/shop/page.tsx",
- "source_location": "L13",
+ "source_location": "L34",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_shop_page",
@@ -114726,7 +115595,18 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/videos/page.tsx",
- "source_location": "L13",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_videos_page",
+ "target": "frontend_application_app_videos_page_getinitialvideos",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/videos/page.tsx",
+ "source_location": "L30",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_videos_page",
@@ -114737,7 +115617,7 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/videos/page.tsx",
- "source_location": "L5",
+ "source_location": "L6",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_videos_page",
@@ -114770,7 +115650,29 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L20",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_app_wiki_slug_page_getwikiterm",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_app_wiki_slug_page",
+ "target": "frontend_application_app_wiki_slug_page_getrelatedproducts",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
+ "source_location": "L38",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page",
@@ -114781,24 +115683,13 @@
"relation": "contains",
"confidence": "EXTRACTED",
"source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L52",
+ "source_location": "L78",
"weight": 1.0,
"_origin": "ast",
"source": "frontend_application_app_wiki_slug_page",
"target": "frontend_application_app_wiki_slug_page_wikitermpage",
"confidence_score": 1.0
},
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/application/app/wiki/[slug]/page.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "_origin": "ast",
- "source": "frontend_application_app_wiki_slug_page",
- "target": "frontend_application_app_wiki_slug_page_getwikiterm",
- "confidence_score": 1.0
- },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -114898,6 +115789,17 @@
"target": "frontend_application_components_authmodal_authmodal",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/B2BLandingClient.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_b2blandingclient",
+ "target": "frontend_application_components_b2blandingclient_b2blandingclient",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -114986,6 +115888,28 @@
"target": "frontend_application_components_blogpage_blogpage",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_blogpostclient",
+ "target": "frontend_application_components_blogpostclient_blogpostclientprops",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/components/BlogPostClient.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_components_blogpostclient",
+ "target": "frontend_application_components_blogpostclient_blogpostclient",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -116251,6 +117175,127 @@
"target": "frontend_application_lib_hooks_usenetworkstatus_usenetworkstatus",
"confidence_score": 1.0
},
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L114",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_b2bserviceschemaoptions",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L120",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_generateb2bserviceschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L149",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_medicalwebpageschemaoptions",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L159",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_generatemedicalwebpageschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L185",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_videoobjectschemaoptions",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L195",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_generatevideoobjectschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L217",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_breadcrumbitem",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L222",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_generatebreadcrumbschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_generateorganizationschema",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_organizationschemaoptions",
+ "confidence_score": 1.0
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/application/lib/schema.ts",
+ "source_location": "L72",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_application_lib_schema",
+ "target": "frontend_application_lib_schema_generatelocalbusinessschema",
+ "confidence_score": 1.0
+ },
{
"relation": "contains",
"confidence": "EXTRACTED",
@@ -129851,5 +130896,5 @@
}
],
"hyperedges": [],
- "built_at_commit": "de038dba7c49c34cff9370b62a3359e56636b08f"
+ "built_at_commit": "fa69aa4c494d031168ee24bd478c9588b4c9f2cd"
}
\ No newline at end of file
diff --git a/graphify-out/2026-08-25/manifest.json b/graphify-out/2026-08-25/manifest.json
index 15eab83..fcaf116 100644
--- a/graphify-out/2026-08-25/manifest.json
+++ b/graphify-out/2026-08-25/manifest.json
@@ -1,2167 +1,2167 @@
{
".ai_agency/orchestrate.py": {
"mtime": 1785148022.0726626,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "43b4b40901868f1bdfd470cf58f40760",
"semantic_hash": ""
},
".gitea/scripts/with-vpn.sh": {
"mtime": 1786799852.1263163,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "451f307a9e42d2240949e7bf39de6667",
"semantic_hash": ""
},
"backend/eslint.config.mjs": {
"mtime": 1787073059.1053617,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "54fb00fe78776d07db9dae804aced0d1",
"semantic_hash": ""
},
"backend/nest-cli.json": {
"mtime": 1787072106.3705614,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "718a59f7d90dbf49fdda2843d72172c4",
"semantic_hash": ""
},
"backend/package.json": {
- "mtime": 1787579631.7551758,
- "seen": 1787641066.892556,
- "ast_hash": "8babf5956c5526e08a36f9e3cef1b867",
+ "mtime": 1787641731.9958906,
+ "seen": 1787641877.2319846,
+ "ast_hash": "4f466b887ff858a0d2890c9ca9727285",
"semantic_hash": ""
},
"backend/prisma/migrations/20260526145407_init/migration.sql": {
"mtime": 1783764561.6120076,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "12a9a675c12bc5ff2d2c3164f803f0ad",
"semantic_hash": ""
},
"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql": {
"mtime": 1783764561.6134257,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "50977e705726df3fb0f30bd1d3af101b",
"semantic_hash": ""
},
"backend/prisma/scientificTerms.ts": {
"mtime": 1785325924.6348126,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4c449cfeea573afd27cdfd1cdc72d4f3",
"semantic_hash": ""
},
"backend/prisma/seed-blogs.ts": {
"mtime": 1786885876.777374,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "be491715958e8f9473913bdfe9cf5638",
"semantic_hash": ""
},
"backend/prisma/seed-custom.ts": {
"mtime": 1786799852.144902,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "23cefb1ea3fc60be141520fd50e3f9f9",
"semantic_hash": ""
},
"backend/prisma/seed-home.ts": {
"mtime": 1786885876.779371,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3fd438d66d0b1174b885a9065e43b569",
"semantic_hash": ""
},
"backend/prisma/seed-products.ts": {
"mtime": 1787127978.2192707,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "62ab15adef06163ac0d7c93efa357e66",
"semantic_hash": ""
},
"backend/prisma/seed-ui-texts.ts": {
"mtime": 1787127978.2217898,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7ff151f7d60dd6cd3358909be5a2f90e",
"semantic_hash": ""
},
"backend/prisma/seed-wiki.ts": {
"mtime": 1786961195.297596,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4734726498e97501b3f8c6c8bc022bb8",
"semantic_hash": ""
},
"backend/prisma/seed.ts": {
"mtime": 1787127978.2255876,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7e9527a378a7a25a0a673c80a420739f",
"semantic_hash": ""
},
"backend/prisma/tsconfig.seed.json": {
"mtime": 1786955870.751259,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a12c81b60c5e9fdb3c1aba03ac7ecb27",
"semantic_hash": ""
},
"backend/scripts/generate-openapi.ts": {
"mtime": 1786799852.1563904,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d218cbaae6150ad3a35c162c1a3c02a3",
"semantic_hash": ""
},
"backend/src/admin/admin.controller.spec.ts": {
"mtime": 1786799852.1573997,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "05370741c60e581754191c00baf87596",
"semantic_hash": ""
},
"backend/src/admin/admin.controller.ts": {
"mtime": 1787564362.261174,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a1d3fa0677cabb7c037f49b325286fac",
"semantic_hash": ""
},
"backend/src/admin/admin.module.ts": {
"mtime": 1786877667.0050085,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "2c08f0bdcbeb87979024730e39c7a6ce",
"semantic_hash": ""
},
"backend/src/admin/admin.service.spec.ts": {
"mtime": 1786799852.1629112,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0c0360ca02380ad75b9e551cffe11a96",
"semantic_hash": ""
},
"backend/src/admin/admin.service.ts": {
"mtime": 1787579631.7561755,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b5679ab54a6491009c2fbde8083cf7e5",
"semantic_hash": ""
},
"backend/src/admin/blogs.controller.ts": {
"mtime": 1787579631.7581778,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ddeda17e05fee4b7ce49a44c89c0f1bb",
"semantic_hash": ""
},
"backend/src/admin/blogs.service.ts": {
"mtime": 1787579631.7601776,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cb13d9df89955a1f5145abc300225fb8",
"semantic_hash": ""
},
"backend/src/admin/categories.controller.ts": {
"mtime": 1786799852.1741924,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e6322c19042382028966e6eb8dce7c62",
"semantic_hash": ""
},
"backend/src/admin/categories.service.ts": {
"mtime": 1786799852.1751943,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7c6b626454aa53d5a3458b5ca738a97c",
"semantic_hash": ""
},
"backend/src/admin/dto/admin-query.dto.ts": {
"mtime": 1786799852.1787064,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0a3e421ccf508d1a50ec1cfa8c92a4f9",
"semantic_hash": ""
},
"backend/src/admin/media.controller.ts": {
"mtime": 1786876983.6488664,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "02fa16bdaf1363f117f7200f590b13c4",
"semantic_hash": ""
},
"backend/src/admin/media.service.ts": {
"mtime": 1786876983.6515346,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "96b4035f21c6c0a662585ed950cd6107",
"semantic_hash": ""
},
"backend/src/admin/pets.controller.ts": {
"mtime": 1786799852.1862173,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8734d47651b112f7f1682f629dc4c7b1",
"semantic_hash": ""
},
"backend/src/admin/pets.service.ts": {
"mtime": 1786954681.814243,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "67ef020c49eb8334a2bac643941678ac",
"semantic_hash": ""
},
"backend/src/admin/reports.controller.ts": {
"mtime": 1783764561.642147,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bf74156968541f38f105fa01454b312a",
"semantic_hash": ""
},
"backend/src/admin/reports.service.ts": {
"mtime": 1786799852.189731,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c4dd8ce40cb75cdd9298cc7cdb7402d4",
"semantic_hash": ""
},
"backend/src/admin/wiki.controller.ts": {
"mtime": 1786799852.1917324,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8b7c8559d6ed6bb2c220d9abd4f622b1",
"semantic_hash": ""
},
"backend/src/admin/wiki.service.ts": {
"mtime": 1786799852.193324,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ed627a21f3b767e9855511afefa5273c",
"semantic_hash": ""
},
"backend/src/app.controller.spec.ts": {
"mtime": 1783764561.6448398,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4a1c0e1133dbda6f6e8f3e60d984eddf",
"semantic_hash": ""
},
"backend/src/app.controller.ts": {
"mtime": 1783764561.645849,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3ab0e83b7d93b85ea489ab994ec79ea1",
"semantic_hash": ""
},
"backend/src/app.module.ts": {
"mtime": 1787579631.7646954,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5b326fa2dc121d0b55648e7530304f4f",
"semantic_hash": ""
},
"backend/src/app.service.ts": {
"mtime": 1783764561.6488404,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cd3fb7836f10de08a725ee1fd4ab36fe",
"semantic_hash": ""
},
"backend/src/auth/auth.controller.spec.ts": {
"mtime": 1785327951.179468,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7531d00aaa85a80f27e175071ce21c89",
"semantic_hash": ""
},
"backend/src/auth/auth.controller.ts": {
"mtime": 1787072106.3874893,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "2011eeea42d5b79ff317ff9b283bf00c",
"semantic_hash": ""
},
"backend/src/auth/auth.module.ts": {
"mtime": 1787072106.3885016,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3bd9f559e5d43ee9c8cae151954c8356",
"semantic_hash": ""
},
"backend/src/auth/auth.service.spec.ts": {
"mtime": 1786799852.2018433,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a67a2c622e438a8bbc4014657abc0558",
"semantic_hash": ""
},
"backend/src/auth/auth.service.ts": {
"mtime": 1787127978.2285898,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b38c558251bdbadb7ab1b5f690c5c387",
"semantic_hash": ""
},
"backend/src/auth/dto/admin-login.dto.ts": {
"mtime": 1787127978.2295873,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c1a7d3d5babba82ff11b04ae7dcaabca",
"semantic_hash": ""
},
"backend/src/auth/dto/login.dto.ts": {
"mtime": 1783764561.659109,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "9941767ad430851531a9f049c2b65ed5",
"semantic_hash": ""
},
"backend/src/auth/dto/register.dto.ts": {
"mtime": 1785327951.186477,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6165fdad9219dee4390732a7f6504e4a",
"semantic_hash": ""
},
"backend/src/auth/dto/send-otp.dto.ts": {
"mtime": 1783764561.6611066,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a99015984cd1320cbd36719809f69d3b",
"semantic_hash": ""
},
"backend/src/auth/dto/verify-otp.dto.ts": {
"mtime": 1783764561.662112,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8bc250f7ca73e6cbe4cfa01a99a3c032",
"semantic_hash": ""
},
"backend/src/auth/jwt-auth.guard.ts": {
"mtime": 1786799852.2058628,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f98f32eaf66499355a5e61632ac82aa5",
"semantic_hash": ""
},
"backend/src/auth/jwt.strategy.ts": {
"mtime": 1786883225.7943432,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f815b9f719678a154ebf50090b801c62",
"semantic_hash": ""
},
"backend/src/auth/roles.decorator.ts": {
"mtime": 1786799852.2083795,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0d86f61ddaab0d2f4d5f9b331a5e2541",
"semantic_hash": ""
},
"backend/src/auth/roles.guard.ts": {
"mtime": 1786799852.2090034,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "10b31496903f54383d35b90a55c3e84a",
"semantic_hash": ""
},
"backend/src/b2b/b2b.controller.ts": {
"mtime": 1786799852.2120132,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6f0d65aee6b69a67e8d3d14fb1bf7823",
"semantic_hash": ""
},
"backend/src/b2b/b2b.module.ts": {
"mtime": 1786799852.2120132,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b1777d0004a54e8f89328879a20aa171",
"semantic_hash": ""
},
"backend/src/b2b/b2b.service.ts": {
"mtime": 1786799852.2140093,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d025e172746789d44802755b8bb441bf",
"semantic_hash": ""
},
"backend/src/banners/banners.controller.ts": {
"mtime": 1786799852.2150102,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "30e1fba8ef3e98e127cf400aac0f71e8",
"semantic_hash": ""
},
"backend/src/banners/banners.module.ts": {
"mtime": 1786799852.2160103,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3dca61f7cf64dfb5f827469c7f14c655",
"semantic_hash": ""
},
"backend/src/banners/banners.service.ts": {
"mtime": 1786799852.2160103,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "777061ff84dc642fee69803ce9ac2de9",
"semantic_hash": ""
},
"backend/src/blogs/blogs.controller.ts": {
"mtime": 1787577523.702295,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f4515106e40c643380900741ec2e543e",
"semantic_hash": ""
},
"backend/src/blogs/blogs.module.ts": {
"mtime": 1783764561.665678,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3fc38d55e03319844c6c8cbb3017364b",
"semantic_hash": ""
},
"backend/src/blogs/blogs.service.ts": {
"mtime": 1787640735.44088,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "2674baad6fce81faed55fcbe2b20570a",
"semantic_hash": ""
},
"backend/src/blogs/dto/create-blog.dto.ts": {
"mtime": 1783764561.671557,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a1938b347011dd71bfd99801b7453305",
"semantic_hash": ""
},
"backend/src/blogs/dto/update-blog.dto.ts": {
"mtime": 1783764561.6737125,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "15612098d2a3cac84249518465104370",
"semantic_hash": ""
},
"backend/src/blogs/entities/blog.entity.ts": {
"mtime": 1783764561.675101,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7fadae161e6d38110bdc8ce71f9f1bdd",
"semantic_hash": ""
},
"backend/src/cms/cms.controller.ts": {
"mtime": 1785327951.196913,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "72482ba30a017f8ed1ef26b423eb83d1",
"semantic_hash": ""
},
"backend/src/cms/cms.module.ts": {
"mtime": 1785148022.206298,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "831ca7e3ee288322e05ddeeb1b02229d",
"semantic_hash": ""
},
"backend/src/cms/cms.service.ts": {
"mtime": 1785327951.1979403,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f9da5085411e9fe60ab0c35fb852ef56",
"semantic_hash": ""
},
"backend/src/cms/dto/cms.dto.ts": {
"mtime": 1785327951.1999955,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b91b502820b503e4ca63dd36028608d5",
"semantic_hash": ""
},
"backend/src/common/decorators/roles.decorator.ts": {
"mtime": 1786799852.2205224,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "155f61ea03e3ef7d3d5e2fee554f8428",
"semantic_hash": ""
},
"backend/src/common/dto/pagination.dto.ts": {
"mtime": 1785327951.201989,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6e66fdace411feba9d947fe0f678c900",
"semantic_hash": ""
},
"backend/src/common/filters/http-exception.filter.ts": {
"mtime": 1787072106.3930762,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a52a58a4b2b8439d0de4e7714931a6fc",
"semantic_hash": ""
},
"backend/src/common/filters/prisma-exception.filter.ts": {
"mtime": 1785330913.1437092,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ab7ab9b4007e538b6451777dbca63d23",
"semantic_hash": ""
},
"backend/src/common/guards/roles.guard.spec.ts": {
"mtime": 1786799852.2255569,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0ee2661808205a0bb03a45d4cbca4472",
"semantic_hash": ""
},
"backend/src/common/guards/roles.guard.ts": {
"mtime": 1786799852.2265651,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "72eadcd106153ccaad697234d8c0d281",
"semantic_hash": ""
},
"backend/src/common/interceptors/decimal.interceptor.spec.ts": {
"mtime": 1786799852.2275658,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bbf53de234b9963923c3163a10cd8e17",
"semantic_hash": ""
},
"backend/src/common/interceptors/decimal.interceptor.ts": {
"mtime": 1786799852.2275658,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "71f8f0bfa748a8cbeb5f4627f972261d",
"semantic_hash": ""
},
"backend/src/common/metrics.controller.ts": {
"mtime": 1786799852.229073,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6380f2c18000ac46235e7adde60329dc",
"semantic_hash": ""
},
"backend/src/common/schemas/error-response.schema.ts": {
"mtime": 1785330913.1447015,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e2d4a690aa006a63ad617d2c21c7d11d",
"semantic_hash": ""
},
"backend/src/common/schemas/paginated-response.schema.ts": {
"mtime": 1786799852.2300823,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6ea7e2edc0ab662b3f244e0ffb8e5f19",
"semantic_hash": ""
},
"backend/src/common/services/sms.service.ts": {
"mtime": 1787072106.3960736,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "354ecbb2d60de34e2176c1a8941edac0",
"semantic_hash": ""
},
"backend/src/common/sms.module.ts": {
"mtime": 1785330750.996125,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c2621fbe872597ca7fbc23fc7e261665",
"semantic_hash": ""
},
"backend/src/contact/contact.controller.ts": {
"mtime": 1786799852.2345963,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1fa2ff3dd39a3cd23860f5e2ec4f351f",
"semantic_hash": ""
},
"backend/src/contact/contact.module.ts": {
"mtime": 1786799852.236599,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3522066b9bc0d12c79ee13138ec94a23",
"semantic_hash": ""
},
"backend/src/contact/contact.service.ts": {
"mtime": 1787127978.233104,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "795ecd48e5786280804b554877f43907",
"semantic_hash": ""
},
"backend/src/home/dto/create-home.dto.ts": {
"mtime": 1783764561.6823654,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b20293c0606e764e43e19412e8b94e58",
"semantic_hash": ""
},
"backend/src/home/dto/update-home.dto.ts": {
"mtime": 1783764561.6823654,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "fdbec5105f68e9ef5edca26c91c2a01b",
"semantic_hash": ""
},
"backend/src/home/entities/home.entity.ts": {
"mtime": 1783764561.6848848,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f7e5b57b1dbb4fa28600ebdd5c86a73c",
"semantic_hash": ""
},
"backend/src/home/home.controller.ts": {
"mtime": 1785327951.2120874,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3474997a729a3a47f1872f489c28e70e",
"semantic_hash": ""
},
"backend/src/home/home.module.ts": {
"mtime": 1783764561.687108,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b8671f0d293617cf95cc2e9aef8ab11a",
"semantic_hash": ""
},
"backend/src/home/home.service.ts": {
"mtime": 1785327951.2140872,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "20073496a83b447238b4e8ab793573ec",
"semantic_hash": ""
},
"backend/src/ingredients/ingredients.controller.ts": {
"mtime": 1786799852.2375965,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b591e9eeddc544d5224bbf8dc747f71e",
"semantic_hash": ""
},
"backend/src/ingredients/ingredients.module.ts": {
"mtime": 1786799852.2385964,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "928f762b562c624011ca6c7e72543d0d",
"semantic_hash": ""
},
"backend/src/ingredients/ingredients.service.ts": {
"mtime": 1786799852.2401083,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7d07a0fb1cdebe81d9ecef7604701bed",
"semantic_hash": ""
},
"backend/src/main.ts": {
"mtime": 1787579631.7725842,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "862c478fb398917e9c7bbf9a9245d318",
"semantic_hash": ""
},
"backend/src/orders/dto/create-order.dto.ts": {
"mtime": 1785327951.218626,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "de9e39544ff4cfbbc8233318b2b71c67",
"semantic_hash": ""
},
"backend/src/orders/orders.controller.spec.ts": {
"mtime": 1785327951.2196276,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "03aae30c09648646afbd6f8862d2d12b",
"semantic_hash": ""
},
"backend/src/orders/orders.controller.ts": {
"mtime": 1787072106.3980772,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "58b8b3790952f51c625e31f5eed09d3b",
"semantic_hash": ""
},
"backend/src/orders/orders.module.ts": {
"mtime": 1783764561.6975982,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "10e4c03ae468f0412d882306bdb20401",
"semantic_hash": ""
},
"backend/src/orders/orders.service.spec.ts": {
"mtime": 1786799852.2461178,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "977cf4033204a7b27252a939aa57664f",
"semantic_hash": ""
},
"backend/src/orders/orders.service.ts": {
"mtime": 1787127978.2361033,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "36e0f20d4d60e0aa48540ffe11ca0d1c",
"semantic_hash": ""
},
"backend/src/pets/dto/create-health-log.dto.ts": {
"mtime": 1785327951.2294433,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "da823d24eecce83c17760374fbc99131",
"semantic_hash": ""
},
"backend/src/pets/dto/create-pet.dto.ts": {
"mtime": 1785327951.2309487,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "22e442118c4b4c44d887a9e72bf416e2",
"semantic_hash": ""
},
"backend/src/pets/dto/create-reminder.dto.ts": {
"mtime": 1785327951.2319582,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "61e74b013460e406bd10197b3d3a95df",
"semantic_hash": ""
},
"backend/src/pets/dto/update-pet.dto.ts": {
"mtime": 1783764561.7095575,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a2086bbebe7ca2718d4933b9828b456d",
"semantic_hash": ""
},
"backend/src/pets/pets.controller.spec.ts": {
"mtime": 1786799852.2481189,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ea25cbbc55569e44ea0ceaf8c7af5111",
"semantic_hash": ""
},
"backend/src/pets/pets.controller.ts": {
"mtime": 1787461919.454309,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "20c1ead48262a81ff538fedae048d784",
"semantic_hash": ""
},
"backend/src/pets/pets.module.ts": {
"mtime": 1783764561.71447,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1e30ca9c5823c33d4f3266d5b48fee01",
"semantic_hash": ""
},
"backend/src/pets/pets.service.spec.ts": {
"mtime": 1785327951.238208,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "49e5e2df9d623a5510db8d9c3eefdbd5",
"semantic_hash": ""
},
"backend/src/pets/pets.service.ts": {
"mtime": 1786799852.2501173,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f34775f4106e2ac19efff3a9b140db3f",
"semantic_hash": ""
},
"backend/src/prescriptions/prescriptions.controller.ts": {
"mtime": 1786799852.2537484,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3b657f5cac989600c165b8eac3a6a2af",
"semantic_hash": ""
},
"backend/src/prescriptions/prescriptions.module.ts": {
"mtime": 1786954681.8158092,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0f9ea31fa7fa71f4ec87e461ce7d444f",
"semantic_hash": ""
},
"backend/src/prescriptions/prescriptions.service.ts": {
"mtime": 1787072106.408779,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6b018d33377fdfcba9e4512e50da48a0",
"semantic_hash": ""
},
"backend/src/prisma/prisma.module.ts": {
"mtime": 1783764561.7181997,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3505a1831c78f0a9475e4ce0f0092410",
"semantic_hash": ""
},
"backend/src/prisma/prisma.service.ts": {
"mtime": 1787640806.107781,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1a6d7ac4a114351a0a3deb1835481a59",
"semantic_hash": ""
},
"backend/src/products/dto/get-products.dto.ts": {
"mtime": 1786799852.2602715,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bed3d5bd69f866349bfc408bfea60e78",
"semantic_hash": ""
},
"backend/src/products/products.controller.spec.ts": {
"mtime": 1785327951.243281,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6fde28604e799d5c5c0d2c6c2fcb4372",
"semantic_hash": ""
},
"backend/src/products/products.controller.ts": {
"mtime": 1786799852.2612817,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "db015311d34c7985c1c4ab818070b297",
"semantic_hash": ""
},
"backend/src/products/products.module.ts": {
"mtime": 1783764561.7236724,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a70b434bb1a044adf542a78cd9461264",
"semantic_hash": ""
},
"backend/src/products/products.service.spec.ts": {
"mtime": 1786799852.2632794,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8a76d805cab28967eec85b1cd03d608c",
"semantic_hash": ""
},
"backend/src/products/products.service.ts": {
"mtime": 1787579631.7735837,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "fb99501a3e2e051e47c4a731117b5b32",
"semantic_hash": ""
},
"backend/src/redis/redis.module.ts": {
"mtime": 1783764561.727662,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0856864a521a862369a89de9b2d3c9f0",
"semantic_hash": ""
},
"backend/src/redis/redis.service.spec.ts": {
"mtime": 1783764561.7286723,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f3a16f7f1721be9e6ddb7ddd2949ea6c",
"semantic_hash": ""
},
"backend/src/redis/redis.service.ts": {
"mtime": 1786895436.2118347,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4f5e58ffc36bbaed17ee669e5a7394b7",
"semantic_hash": ""
},
"backend/src/seo/seo.controller.ts": {
"mtime": 1785327951.2472832,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4c11a3beaa94a769acf206bf9ff279b0",
"semantic_hash": ""
},
"backend/src/seo/seo.module.ts": {
"mtime": 1785148022.268581,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4160982445b855a6406e8713e95bf91b",
"semantic_hash": ""
},
"backend/src/seo/seo.service.ts": {
"mtime": 1787127978.249385,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c104390de2fa710428b6d69c6201f4d8",
"semantic_hash": ""
},
"backend/src/settings/settings.controller.spec.ts": {
"mtime": 1787073059.1090057,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4c231fa106a8d505132abd86db2eb393",
"semantic_hash": ""
},
"backend/src/settings/settings.controller.ts": {
"mtime": 1787072106.423348,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d9785a80bc7e90198192a97d4f7cbb7b",
"semantic_hash": ""
},
"backend/src/settings/settings.module.ts": {
"mtime": 1783764561.7355156,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b84a45f92537de41c7c3821847271004",
"semantic_hash": ""
},
"backend/src/settings/settings.service.spec.ts": {
"mtime": 1783764561.7368565,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "06de60c1699a6f72858da21e9c6bf45a",
"semantic_hash": ""
},
"backend/src/settings/settings.service.ts": {
"mtime": 1787461919.45531,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8750d228767aa14db2551f72de954d73",
"semantic_hash": ""
},
"backend/src/smart-advisor/smart-advisor.controller.ts": {
"mtime": 1786799852.2754414,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "eacb4fc2f3d82eb3833f4b04d851d4c3",
"semantic_hash": ""
},
"backend/src/smart-advisor/smart-advisor.module.ts": {
"mtime": 1786799852.2764418,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "40d2882f5f8a0733c940c754631be24b",
"semantic_hash": ""
},
"backend/src/smart-advisor/smart-advisor.service.ts": {
"mtime": 1786799852.2774403,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1824f7151599e310cd2de7435e345afe",
"semantic_hash": ""
},
"backend/src/testimonials/testimonials.controller.ts": {
"mtime": 1787148092.3297865,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "077ac1d08fbec205f030f3cc6b7f357c",
"semantic_hash": ""
},
"backend/src/testimonials/testimonials.module.ts": {
"mtime": 1786799852.2794418,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e2778d19b65d66f61d35f1a98333c873",
"semantic_hash": ""
},
"backend/src/testimonials/testimonials.service.ts": {
"mtime": 1787148092.3325016,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7c108b6bdfc5625fc3c058f1db527bbe",
"semantic_hash": ""
},
"backend/src/users/dto/address.dto.ts": {
"mtime": 1783764561.7398715,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d42a8da106b862f8934b4268e5974025",
"semantic_hash": ""
},
"backend/src/users/dto/update-profile.dto.ts": {
"mtime": 1786885876.8054721,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7c5b2601ea43f7045a5691ed1fde7840",
"semantic_hash": ""
},
"backend/src/users/users.controller.spec.ts": {
"mtime": 1785327951.2537966,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8879233da361926bf496aa33fc24a0a4",
"semantic_hash": ""
},
"backend/src/users/users.controller.ts": {
"mtime": 1786799852.2824814,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0c14b005ce0dddc5c6be9fb33672c659",
"semantic_hash": ""
},
"backend/src/users/users.module.ts": {
"mtime": 1783764561.7481544,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6a22d47a72af32e6726ff5025c1d6f0b",
"semantic_hash": ""
},
"backend/src/users/users.service.spec.ts": {
"mtime": 1786799852.2834806,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f94ef87eb1f8de11ecd622f47181dbb7",
"semantic_hash": ""
},
"backend/src/users/users.service.ts": {
"mtime": 1787127978.2530408,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "30b5b653694deebda2e072a57145b3d6",
"semantic_hash": ""
},
"backend/src/videos/dto/create-video.dto.ts": {
"mtime": 1786971396.042094,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "292c465ed02d974fc16c674ca6f7caf5",
"semantic_hash": ""
},
"backend/src/videos/dto/get-videos-query.dto.ts": {
"mtime": 1786799852.2876434,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "22029a395d4906dec82a0472af9827a2",
"semantic_hash": ""
},
"backend/src/videos/videos.controller.ts": {
"mtime": 1786799852.2911532,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "64de50207aa54dc4d9866fb41a3cf11e",
"semantic_hash": ""
},
"backend/src/videos/videos.module.ts": {
"mtime": 1785148022.3065836,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "79c989585f2c5da29199d914ca54abdf",
"semantic_hash": ""
},
"backend/src/videos/videos.service.ts": {
"mtime": 1786971396.0478723,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dbbcb0abb72bb6eee16d6ca2c7927f9e",
"semantic_hash": ""
},
"backend/src/wholesale/dto/wholesale-apply.dto.ts": {
"mtime": 1785148022.3176222,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dda43ea50daed66d9ddf56ff14c2ac31",
"semantic_hash": ""
},
"backend/src/wholesale/wholesale.controller.ts": {
"mtime": 1786799852.294177,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "85347767e9b0508aa27c8fc2ada57403",
"semantic_hash": ""
},
"backend/src/wholesale/wholesale.module.ts": {
"mtime": 1785148022.3287463,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "431fcacfcaaf5ee3872869c796581db3",
"semantic_hash": ""
},
"backend/src/wholesale/wholesale.service.ts": {
"mtime": 1785330913.1492333,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f17e69107c7ddb8baedfb9fa1177c8a0",
"semantic_hash": ""
},
"backend/src/wiki/dto/create-wiki.dto.ts": {
"mtime": 1783764561.7529333,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bff0bff5978c808b3f6c7c0471ecc09f",
"semantic_hash": ""
},
"backend/src/wiki/dto/update-wiki.dto.ts": {
"mtime": 1783764561.753945,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "aafeafc832089a9d47f2b09c15f5166c",
"semantic_hash": ""
},
"backend/src/wiki/entities/wiki.entity.ts": {
"mtime": 1783764561.7550395,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0babba8c13baba4a2ad2fd70395060f2",
"semantic_hash": ""
},
"backend/src/wiki/wiki.controller.ts": {
"mtime": 1785327951.2728505,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ca3a7279ecce06e6747e4b5d1b83f042",
"semantic_hash": ""
},
"backend/src/wiki/wiki.module.ts": {
"mtime": 1783764561.756925,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "22c999c57982f13d0526d25d7990b745",
"semantic_hash": ""
},
"backend/src/wiki/wiki.service.ts": {
"mtime": 1786799852.295173,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4f9a02a302512579c6eaed6e06da679e",
"semantic_hash": ""
},
"backend/test/app-audit-verification.e2e-spec.ts": {
"mtime": 1786799852.2961748,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5df6593dd9fd1f88f2b1e13f44b7b350",
"semantic_hash": ""
},
"backend/test/app.e2e-spec.ts": {
"mtime": 1786799852.297175,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8373bf2ee758abe47f5681e898cde506",
"semantic_hash": ""
},
"backend/tsconfig.build.json": {
"mtime": 1783764561.763447,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d3d6c627ed113034e4138ae830ca9221",
"semantic_hash": ""
},
"backend/tsconfig.json": {
"mtime": 1787073059.1161675,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bc2ddace3dc933b714ebc21504c43b62",
"semantic_hash": ""
},
"docs/audit/build_manifest.js": {
"mtime": 1786799852.3383932,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5865147d3b17e6ddad0be4f4b9dc00d0",
"semantic_hash": ""
},
"docs/audit/generate_classification.js": {
"mtime": 1786799852.3393898,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "01cdce5da0cdc41b49a7e9560a0b8ae9",
"semantic_hash": ""
},
"docs/audit/generate_evidence.js": {
"mtime": 1786799852.3403902,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f31d1dafad3e771e9602776460c04761",
"semantic_hash": ""
},
"docs/audit/generate_ledger.js": {
"mtime": 1786799852.3418972,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c502805af184c8efe08a66030ff0203b",
"semantic_hash": ""
},
"docs/audit/generate_manifest.js": {
"mtime": 1786799852.3418972,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d9ead302d1023a72718e60261725e429",
"semantic_hash": ""
},
"docs/audit/rebuild_honest_ledger.js": {
"mtime": 1786799852.348953,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5a505fbc55dbabd0557377ce8de0643a",
"semantic_hash": ""
},
"docs/audit/sync_honest_manifest.js": {
"mtime": 1786799852.3499532,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3f2ec3b689e720b6e50fe4666a9b8bb0",
"semantic_hash": ""
},
"docs/audit/sync_manifest.js": {
"mtime": 1786799852.3509533,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7315ba82c162ad4c2a0cec307966c580",
"semantic_hash": ""
},
"docs/audit/validate_evidence_grade.js": {
"mtime": 1786799852.351954,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5f68ed3e8236ececf82e5da4ac47d93b",
"semantic_hash": ""
},
"docs/audit/validate_integrity.js": {
"mtime": 1786799852.3529525,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7bd05a71bd8c0c23db65db5201d3c030",
"semantic_hash": ""
},
"frontend/admin-panel/eslint.config.js": {
"mtime": 1787148092.3345017,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b204828b41a3391dd9ab65a1087e197f",
"semantic_hash": ""
},
"frontend/admin-panel/package.json": {
"mtime": 1785570791.953119,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f9e35fdccbe93fd60b511f72bf414766",
"semantic_hash": ""
},
"frontend/admin-panel/postcss.config.js": {
"mtime": 1783764561.7962818,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c1ee9ce6a4fe04105dbf8e619390df5e",
"semantic_hash": ""
},
"frontend/admin-panel/src/App.tsx": {
"mtime": 1786799852.3654811,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "140226fcd94080d00f56e2f8b65f95e5",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/Layout.tsx": {
"mtime": 1784621786.9585948,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e2192f9b6c86f07ff6c6ec9bf9d1cb71",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ProtectedRoute.tsx": {
"mtime": 1786799852.369164,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bcb0329847fb25e9fe1e990a30609210",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/Sidebar.tsx": {
"mtime": 1787461920.8420844,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0020921da1b729dd663979b02a39e91f",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/Topbar.tsx": {
"mtime": 1787466234.9643857,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ffa50e46783a27f148b41212e5810b46",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/ConfirmModal.tsx": {
"mtime": 1786972191.3590996,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "982712b3d0130cbc66035a9caa4dc173",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/MediaSelector.tsx": {
"mtime": 1787038450.536697,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ed6a6da6e5929bf77a82b5cda0fb3eeb",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Pagination.tsx": {
"mtime": 1786799852.387442,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8ab314264c858bcd6cb53fc4c9985cf0",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Skeleton.tsx": {
"mtime": 1783856792.9775357,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dd6a1fca8a8db341521aa315829143e0",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Spinner.tsx": {
"mtime": 1783856792.9790492,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "32a95c9dc25ac088596fdccd17d7284a",
"semantic_hash": ""
},
"frontend/admin-panel/src/main.tsx": {
"mtime": 1787062325.3950386,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e9195a72ddf4287e9eac6200a579623c",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/B2BManager.tsx": {
"mtime": 1787467799.8731155,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4ba876f493901aedcbf7b664bd5cc83a",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/BannersManager.tsx": {
"mtime": 1787467799.8741717,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d567c9ad3dcbf316b5622aeaa1b8e71d",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Blogs.tsx": {
"mtime": 1787577523.7063534,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "721f91a86759072ccd884208406bca5a",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/CMS.tsx": {
"mtime": 1787467933.66426,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7c60aa58d334f1ffbaba2bf881492999",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Categories.tsx": {
"mtime": 1787469989.1415117,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "db0c156eff28f6adb66eeebf37f0cd0c",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/ContactSubmissions.tsx": {
"mtime": 1787467799.877344,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b636f5f1432d4e2842d4bcea297ad4b8",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Coupons.tsx": {
"mtime": 1787469989.1442049,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1131b4561720966f7ad1693f0d93b1c9",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Dashboard.tsx": {
"mtime": 1786885876.82951,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "025cbf432db0594426593332e01d5924",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx": {
"mtime": 1787467799.8829253,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1051e6ca581035434cfb7f44408e24ab",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/IngredientsManager.tsx": {
"mtime": 1787467933.6699345,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ff90e4e00c59efc1decad824ccd74f2f",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Login.tsx": {
"mtime": 1787127978.262361,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "49f753cc3593cff1360ca981e8f7682e",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Media.tsx": {
"mtime": 1787467799.8859253,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "82bca4823f75ac46b5c99010d90406c0",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Orders.tsx": {
"mtime": 1787471287.5966976,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7e634f3aae144af71332a0e71f19f3ad",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Pets.tsx": {
"mtime": 1787467799.8919382,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d7193caca6127917bb62d9303859c55f",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/PrescriptionsManager.tsx": {
"mtime": 1787467799.8929358,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "da18bacd672ffa7453f1a0dd00a0c1e5",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Products.tsx": {
"mtime": 1787640978.2455652,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "16a53e2753f3f7455d817f33de589fd3",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Reports.tsx": {
"mtime": 1787467799.896935,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b3653c55b42ea883fb94bfdb35e3aa8d",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/SeoSettingsPage.tsx": {
"mtime": 1787467799.8999343,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "07c293b237c544f1c22771ff40dcf432",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Settings.tsx": {
"mtime": 1787468615.4578195,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "48d2a21e7213783f8fded696ef514d40",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx": {
"mtime": 1787467799.9029336,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c7581c0ab40797e55144e588e75741de",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/SystemSettingsPage.tsx": {
"mtime": 1787467799.907448,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "38fb335cb65c244bccddceed7c578a03",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/TestimonialsManager.tsx": {
"mtime": 1787467799.9089553,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4efa3f2d1fe0f23974fa880da26e6768",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/UITexts.tsx": {
"mtime": 1787564362.2671711,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c6981f08494a46ffd28f085b88d15e1a",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Users.tsx": {
"mtime": 1787469989.1562152,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a396144633f5ef2f44217b1e1e1de786",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Videos.tsx": {
"mtime": 1787467799.9145484,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a256966fc9e335d84a7e5e4746d2d055",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/WholesaleApplications.tsx": {
"mtime": 1787467799.9168525,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "706933237e883550fbb7cdb6dd379815",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Wiki.tsx": {
"mtime": 1787469989.158213,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c563794e3da6d723f67834eed032495a",
"semantic_hash": ""
},
"frontend/admin-panel/src/routes/adminRoutes.tsx": {
"mtime": 1787461920.8540971,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "50755a1d58935bf5b70406d2e83564f3",
"semantic_hash": ""
},
"frontend/admin-panel/src/services/api.ts": {
"mtime": 1786896758.433963,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "2bec645a6dc0218587030146034dbea0",
"semantic_hash": ""
},
"frontend/admin-panel/src/store/adminAuthStore.ts": {
"mtime": 1786799852.469037,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a2ca7b287d2c7efe08802b6187d95d67",
"semantic_hash": ""
},
"frontend/admin-panel/src/types/admin.ts": {
"mtime": 1787139270.9574077,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7e167fef2655f090edc24e3575bb84f4",
"semantic_hash": ""
},
"frontend/admin-panel/tailwind.config.js": {
"mtime": 1783764561.8617213,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3346df3fd0a1ea3f84440703bf8fd2cb",
"semantic_hash": ""
},
"frontend/admin-panel/tsconfig.app.json": {
"mtime": 1787055476.7795663,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b885d5f97cf6fc2c1e7997d4b8abfb88",
"semantic_hash": ""
},
"frontend/admin-panel/tsconfig.json": {
"mtime": 1783764561.8633935,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a3d39fa780ebff65444de257f291ce6c",
"semantic_hash": ""
},
"frontend/admin-panel/tsconfig.node.json": {
"mtime": 1783764561.863923,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "70bdd0a673bcfc0e828080b306e7c680",
"semantic_hash": ""
},
"frontend/admin-panel/vite.config.ts": {
"mtime": 1783764561.864455,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "88439104b3c207f17d33ef3160e3b080",
"semantic_hash": ""
},
"frontend/application/app/ClientLayout.tsx": {
"mtime": 1787579631.7780943,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "42306ecdf0e04ae00c1a91dcfad56d5a",
"semantic_hash": ""
},
"frontend/application/app/HomeClient.tsx": {
"mtime": 1787148092.3474615,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "18591b46769b1276ee55bb9f92ed1ca6",
"semantic_hash": ""
},
"frontend/application/app/about/page.tsx": {
"mtime": 1787139270.9594126,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dea769499f3e4d950e310655b5b9b455",
"semantic_hash": ""
},
"frontend/application/app/blog/[slug]/page.tsx": {
- "mtime": 1787640735.4425473,
- "seen": 1787641066.892556,
- "ast_hash": "f647afc4330f8a48fe7adf1cdd5eca1b",
+ "mtime": 1787641161.057694,
+ "seen": 1787641877.2319846,
+ "ast_hash": "1d3634d4395f48acdfe8e322f306ec3d",
"semantic_hash": ""
},
"frontend/application/app/blog/page.tsx": {
"mtime": 1787581191.8700745,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "416294d2e09bc26e025103dda8ddb7fc",
"semantic_hash": ""
},
"frontend/application/app/catalog/CatalogClient.tsx": {
"mtime": 1786872121.5664852,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "32fa6454837b8cc0eabeec1f43f7208e",
"semantic_hash": ""
},
"frontend/application/app/catalog/page.tsx": {
"mtime": 1787139270.9655254,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a3df5895707ba1f0809841320a2b7dff",
"semantic_hash": ""
},
"frontend/application/app/checkout/page.tsx": {
"mtime": 1787139270.9675355,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3f670c85242a956b39b07dbada3e11d0",
"semantic_hash": ""
},
"frontend/application/app/checkout/success/[id]/page.tsx": {
"mtime": 1783764561.8786683,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0e0899f968c15078ee01116c3e34d4a4",
"semantic_hash": ""
},
"frontend/application/app/contact/page.tsx": {
- "mtime": 1787139270.969052,
- "seen": 1787641066.892556,
- "ast_hash": "6f9639fea9a9dc1b79504c6b4a45daac",
+ "mtime": 1787641634.113276,
+ "seen": 1787641877.2319846,
+ "ast_hash": "d2c5d581794a3db28e310d33cdef4ef1",
"semantic_hash": ""
},
"frontend/application/app/dashboard/page.tsx": {
"mtime": 1787394935.3182175,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "82cfc707ac8e663e34c742ee14b11a4e",
"semantic_hash": ""
},
"frontend/application/app/error.tsx": {
"mtime": 1785148022.478709,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "aea86a6d5b21cbff7bb38f382d1dd82d",
"semantic_hash": ""
},
"frontend/application/app/layout.tsx": {
- "mtime": 1787579631.786101,
- "seen": 1787641066.892556,
- "ast_hash": "93f85c3646dba8d5c0f33146435a35b2",
+ "mtime": 1787641625.284745,
+ "seen": 1787641877.2319846,
+ "ast_hash": "ab20541699ab83332ce9fcfe454aacdb",
"semantic_hash": ""
},
"frontend/application/app/loading.tsx": {
"mtime": 1785148022.48765,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "daf62321fecabcbf8379d39f84a07c03",
"semantic_hash": ""
},
"frontend/application/app/not-found.tsx": {
"mtime": 1783764561.8914113,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6cada341f40f65b06a39f2a3020d7b96",
"semantic_hash": ""
},
"frontend/application/app/page.tsx": {
"mtime": 1787139270.9749596,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cf29e953f9b3c0666b71f7d97136e8d3",
"semantic_hash": ""
},
"frontend/application/app/privacy/page.tsx": {
"mtime": 1787139270.9765637,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "54bf1a02ddfd06de2d9ec536a04ba97f",
"semantic_hash": ""
},
"frontend/application/app/profile/page.tsx": {
"mtime": 1787139270.9788032,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1a4283a6fb6b3120519acbd35cb5282e",
"semantic_hash": ""
},
"frontend/application/app/robots.ts": {
"mtime": 1787578481.501464,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c0e38b88b84ac47f4400128cfbc87987",
"semantic_hash": ""
},
"frontend/application/app/search/page.tsx": {
"mtime": 1787139270.9799466,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "27d03ec9568875b47bb7d5bad3632085",
"semantic_hash": ""
},
"frontend/application/app/shop/[slug]/page.tsx": {
"mtime": 1787579631.7871044,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "42d0bbe6ca70f218a49cb016d75bf606",
"semantic_hash": ""
},
"frontend/application/app/shop/page.tsx": {
- "mtime": 1787139270.98315,
- "seen": 1787641066.892556,
- "ast_hash": "65233cde350eba01cf6191f4d5888aff",
+ "mtime": 1787641686.985162,
+ "seen": 1787641877.2319846,
+ "ast_hash": "746a67c82411b1d01b564dc0838cf26c",
"semantic_hash": ""
},
"frontend/application/app/sitemap.ts": {
"mtime": 1787578481.5104632,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5ce17876bf57c30d753801930423e32c",
"semantic_hash": ""
},
"frontend/application/app/track/page.tsx": {
"mtime": 1787139270.9842136,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ead1a36ba8de0ddbc98d68c77fcd0c68",
"semantic_hash": ""
},
"frontend/application/app/trust-seals/page.tsx": {
"mtime": 1787394001.6093068,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8dca9a0847bedf92637fc07ed89e39b3",
"semantic_hash": ""
},
"frontend/application/app/videos/page.tsx": {
- "mtime": 1787139270.9858232,
- "seen": 1787641066.892556,
- "ast_hash": "d6455b2568d71f065e2c8ad06775b97f",
+ "mtime": 1787641664.0212622,
+ "seen": 1787641877.2319846,
+ "ast_hash": "54232e77a222f6de008a9709b2975274",
"semantic_hash": ""
},
"frontend/application/app/wiki/[slug]/page.tsx": {
- "mtime": 1787139270.9868338,
- "seen": 1787641066.892556,
- "ast_hash": "556a1fbbe54b622dff08d2ca1c321da3",
+ "mtime": 1787641766.5593035,
+ "seen": 1787641877.2319846,
+ "ast_hash": "198d84f897be0d678ec7f4c3d9aeb25d",
"semantic_hash": ""
},
"frontend/application/app/wiki/page.tsx": {
"mtime": 1787139270.9878309,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "79fec8952ae04bb5c7c9a1fc753da583",
"semantic_hash": ""
},
"frontend/application/components/AddressModal.tsx": {
"mtime": 1786799852.5711784,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "34e9382058aac3b8ee1d4b3a4dea8be9",
"semantic_hash": ""
},
"frontend/application/components/ArchivePage.tsx": {
- "mtime": 1787579631.7897966,
- "seen": 1787641066.892556,
- "ast_hash": "885ec6ec0efce19c4a2e1d409fcbe96f",
+ "mtime": 1787641699.5748806,
+ "seen": 1787641877.2319846,
+ "ast_hash": "7cf3b059fd6424e703815559ad657071",
"semantic_hash": ""
},
"frontend/application/components/AuthModal.tsx": {
"mtime": 1786891855.357692,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4eb81d742b697c063f6c82d4a3c20a76",
"semantic_hash": ""
},
"frontend/application/components/B2BPortal.tsx": {
"mtime": 1786894580.1568575,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cd073e8a2de7b93496df2310de77f41a",
"semantic_hash": ""
},
"frontend/application/components/BackButton.tsx": {
"mtime": 1786965281.3572779,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "9537791a36d9fc0245ab1edd523bad9e",
"semantic_hash": ""
},
"frontend/application/components/BlogPage.tsx": {
"mtime": 1787640735.4441352,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c2e99bfe8abbb31d0186555c37d5f68a",
"semantic_hash": ""
},
"frontend/application/components/CartDrawer.tsx": {
"mtime": 1787407740.7650876,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "58f79e19a009cb61cc88effa5e007eda",
"semantic_hash": ""
},
"frontend/application/components/CheckoutPage.tsx": {
"mtime": 1787461919.458564,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "64575cc4d350dae49e2f38ca9ea1737c",
"semantic_hash": ""
},
"frontend/application/components/ContactFormClient.tsx": {
"mtime": 1787127978.3109462,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "94d604513c647fd2999603b6af274cb7",
"semantic_hash": ""
},
"frontend/application/components/DeleteConfirmModal.tsx": {
"mtime": 1786799852.6087523,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "831b2bddd3e6d156abdac216577e3c4c",
"semantic_hash": ""
},
"frontend/application/components/EnamadBadge.tsx": {
"mtime": 1786799852.612362,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "37c7d2eaa27905307e5b2b147849519c",
"semantic_hash": ""
},
"frontend/application/components/ErrorBoundary.tsx": {
"mtime": 1786799852.6145496,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "21b1cf87a9176b9f7902e5fc4f8b6482",
"semantic_hash": ""
},
"frontend/application/components/ErrorPages.tsx": {
"mtime": 1786885876.9207263,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d367c117edee2e91bfaa263a9514b93c",
"semantic_hash": ""
},
"frontend/application/components/FeaturedProducts.tsx": {
"mtime": 1787579631.7948093,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "63a9935307879477104301d3c3362c56",
"semantic_hash": ""
},
"frontend/application/components/Footer.tsx": {
- "mtime": 1787564348.6929328,
- "seen": 1787641066.892556,
- "ast_hash": "bc1c6fb457397d07d77cc0bbfe1fae12",
+ "mtime": 1787641615.9961033,
+ "seen": 1787641877.2319846,
+ "ast_hash": "dbf0963193c1d9ac2196d518e03b7eaf",
"semantic_hash": ""
},
"frontend/application/components/Header.tsx": {
- "mtime": 1787468615.4643483,
- "seen": 1787641066.892556,
- "ast_hash": "698820c46a2c07237ca1a519a62fe8ea",
+ "mtime": 1787641607.741118,
+ "seen": 1787641877.2319846,
+ "ast_hash": "d7b2cb276542d7e7f71f598eebecd64e",
"semantic_hash": ""
},
"frontend/application/components/HeaderButton.tsx": {
"mtime": 1786799852.637156,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5e4679ee49ad04e753de83a405255e44",
"semantic_hash": ""
},
"frontend/application/components/Hero.tsx": {
"mtime": 1787577523.5395882,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d145306fb9a034169df4a873138bfd51",
"semantic_hash": ""
},
"frontend/application/components/IngredientWiki.tsx": {
"mtime": 1786965281.3742068,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5a656dd2b9fd9e8f8c83544b706da19a",
"semantic_hash": ""
},
"frontend/application/components/LoginModal.tsx": {
"mtime": 1786885876.9322674,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8e7bdd175df5e72f59814fac75ff6254",
"semantic_hash": ""
},
"frontend/application/components/MaintenancePage.tsx": {
"mtime": 1786946249.984693,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ddff8dfe25db6a3b4667f52a92ffbd12",
"semantic_hash": ""
},
"frontend/application/components/NetworkBanner.tsx": {
"mtime": 1786799852.662139,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "17a159f769af90f446309ca321c86805",
"semantic_hash": ""
},
"frontend/application/components/OrderDetailsModal.tsx": {
"mtime": 1787564348.6949298,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0c74c1847f6de23d78e0069d1c438ea8",
"semantic_hash": ""
},
"frontend/application/components/OrderSuccess.tsx": {
"mtime": 1786799852.6655424,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1af189b677cfa054b76f3a1b518113f8",
"semantic_hash": ""
},
"frontend/application/components/OrderTracking.tsx": {
"mtime": 1786965281.3801894,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "876caa8bc755d8087e403e043a1358a1",
"semantic_hash": ""
},
"frontend/application/components/PetProfile.tsx": {
"mtime": 1787564348.6959305,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "861afaf9b756009c2694d3c922639dc4",
"semantic_hash": ""
},
"frontend/application/components/PrescriptionUploadModal.tsx": {
"mtime": 1786965281.3856564,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f622bde4484b9f8728858fdc5330f8c2",
"semantic_hash": ""
},
"frontend/application/components/ProductPage.tsx": {
"mtime": 1787579631.7998354,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cfc1df273d7bc47f58dd4ebf656ff3a5",
"semantic_hash": ""
},
"frontend/application/components/SafeImage.tsx": {
"mtime": 1787579631.8018367,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "235b36eded315b4311a301e21467a90d",
"semantic_hash": ""
},
"frontend/application/components/SearchResultsPage.tsx": {
"mtime": 1786799852.7015781,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a5418e889a76fa054734277bd9a77a3d",
"semantic_hash": ""
},
"frontend/application/components/SearchableSelect.tsx": {
"mtime": 1785575516.1555548,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "9a5010afe35da7c9584bf60e69e47002",
"semantic_hash": ""
},
"frontend/application/components/Skeleton.tsx": {
"mtime": 1783764561.943997,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3df12c74c99d1d9ac25dfe620cf2b2c5",
"semantic_hash": ""
},
"frontend/application/components/SmartAdvisor.tsx": {
"mtime": 1787461919.461079,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bd8fa36143ed2ea7231a93b7dedb383e",
"semantic_hash": ""
},
"frontend/application/components/TickerBanner.tsx": {
"mtime": 1786885876.9608357,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e00022d0f2300ac98510a6f8c040598b",
"semantic_hash": ""
},
"frontend/application/components/Tooltip.tsx": {
"mtime": 1786885876.9641032,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cd556c004e25bf31fc7955015e1be6c2",
"semantic_hash": ""
},
"frontend/application/components/TopUpModal.tsx": {
"mtime": 1787406597.3033493,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "178766a9fff90dd0b233dc958a2f79b8",
"semantic_hash": ""
},
"frontend/application/components/UserDashboard.tsx": {
"mtime": 1787394935.3203175,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4217d24d0a41643d249cd53267ffdf05",
"semantic_hash": ""
},
"frontend/application/components/VetGallery.tsx": {
"mtime": 1787074301.6929152,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0e687985dddefab3b7fc4592a61cb85a",
"semantic_hash": ""
},
"frontend/application/components/VideosPage.tsx": {
"mtime": 1787048863.6937873,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "00d2e61c0207e03b31a8303370cf4860",
"semantic_hash": ""
},
"frontend/application/components/__tests__/CartDrawer.test.tsx": {
"mtime": 1786799852.7618258,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6840b24eb0f28d8120a320f0fd466154",
"semantic_hash": ""
},
"frontend/application/components/__tests__/FeaturedProducts.test.tsx": {
"mtime": 1786799852.7656322,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4059af6498e993d64024592623b58a2b",
"semantic_hash": ""
},
"frontend/application/components/__tests__/Footer.test.tsx": {
"mtime": 1786885876.9765952,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a258662661bb7865fe657b76abc97003",
"semantic_hash": ""
},
"frontend/application/components/__tests__/Header.test.tsx": {
"mtime": 1786799852.770019,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "40d1ba45b7b0272cfc6d4d6addbaf2af",
"semantic_hash": ""
},
"frontend/application/components/__tests__/Hero.test.tsx": {
"mtime": 1786799852.7760108,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cba126955eaf2edc40fe24ce0c42d850",
"semantic_hash": ""
},
"frontend/application/components/__tests__/Tooltip.test.tsx": {
"mtime": 1786799852.784349,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a43df52896070e694d06a2d1ae89a99a",
"semantic_hash": ""
},
"frontend/application/eslint.config.mjs": {
"mtime": 1787148092.3580558,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "b4917d5d92dcb4fe98715b5625b397e2",
"semantic_hash": ""
},
"frontend/application/lib/data/products.ts": {
"mtime": 1787578481.5139885,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "369af05791a87fe7f4ce5e039b8388d5",
"semantic_hash": ""
},
"frontend/application/lib/data/provinces.ts": {
"mtime": 1785571725.610676,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "cd814c89c40909d1da24ac1e01fd99c0",
"semantic_hash": ""
},
"frontend/application/lib/data/scientificTerms.ts": {
"mtime": 1786958978.7430973,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "b469da9f5c2d6e81279c853211bc197f",
"semantic_hash": ""
},
"frontend/application/lib/hooks/useNetworkStatus.ts": {
"mtime": 1786799852.793488,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d6ece33f5f0149a299c49366f0e314d0",
"semantic_hash": ""
},
"frontend/application/lib/services/api.ts": {
"mtime": 1786954681.8442974,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ae46ef7c44f6cbfe689fb6807c23b26b",
"semantic_hash": ""
},
"frontend/application/lib/services/authService.ts": {
"mtime": 1786885876.9861848,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "497045bd75576ee0cb6f37fc0ad831da",
"semantic_hash": ""
},
"frontend/application/lib/services/orderService.ts": {
"mtime": 1786799852.8107264,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5b8b9c867e3db50a9ed5e6b3f765e3b5",
"semantic_hash": ""
},
"frontend/application/lib/services/productService.ts": {
"mtime": 1787579631.803836,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8f79080d8585c175fce100bd134c96cb",
"semantic_hash": ""
},
"frontend/application/lib/services/videoService.ts": {
"mtime": 1786967385.8719704,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "2f5855cda678f065e6f3b44fcc97f7cf",
"semantic_hash": ""
},
"frontend/application/lib/store/__tests__/cartStore.test.ts": {
"mtime": 1786799852.822037,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "741d154ab7044aa24c39b1694dbd9a32",
"semantic_hash": ""
},
"frontend/application/lib/store/__tests__/settingsStore.test.ts": {
"mtime": 1783856793.0438032,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9ca2a69a162e64abce0658a348454d97",
"semantic_hash": ""
},
"frontend/application/lib/store/__tests__/userStore.test.ts": {
"mtime": 1786799852.8255477,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9133574a4b0a49423dadbdc1d8d373b6",
"semantic_hash": ""
},
"frontend/application/lib/store/cartStore.ts": {
"mtime": 1786895436.2356844,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "bca90351f647e0cbd364a37d7e193d8e",
"semantic_hash": ""
},
"frontend/application/lib/store/settingsStore.ts": {
"mtime": 1786948119.7870967,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ad4252536324b30028b5e4844fbd959b",
"semantic_hash": ""
},
"frontend/application/lib/store/uiStore.ts": {
"mtime": 1786799852.833588,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5b78ec13363f2456a9efa6189473f93b",
"semantic_hash": ""
},
"frontend/application/lib/store/usePetStore.ts": {
"mtime": 1786954681.8453007,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ad7e988e8e7561ed1c39db9964710806",
"semantic_hash": ""
},
"frontend/application/lib/store/userStore.ts": {
"mtime": 1786885876.9946983,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8b78aa320dffed6f73df4e7da060b79d",
"semantic_hash": ""
},
"frontend/application/lib/types.ts": {
"mtime": 1786799852.8401117,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d4375ccb9e1067339601af5cb0f1ae07",
"semantic_hash": ""
},
"frontend/application/lib/utils.ts": {
"mtime": 1786799852.847284,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "13d70256fc31437c6a1d3c3450c0d5c6",
"semantic_hash": ""
},
"frontend/application/next.config.ts": {
"mtime": 1787579631.8053873,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "72dbc54deb8d63c55f916796261d5b5d",
"semantic_hash": ""
},
"frontend/application/package.json": {
"mtime": 1787640978.2471824,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "88157c39dd13eecd904d916a155dd1df",
"semantic_hash": ""
},
"frontend/application/postcss.config.mjs": {
"mtime": 1783764561.9882522,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "239f3ebf717465dc636818a1a619398d",
"semantic_hash": ""
},
"frontend/application/tsconfig.json": {
"mtime": 1786799852.86564,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "09df7544350f3ee3b4fe33841d294a86",
"semantic_hash": ""
},
"frontend/application/vitest.config.ts": {
"mtime": 1786799852.8686528,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ee482d93c3e5c516e021b7a68c5fb60b",
"semantic_hash": ""
},
"frontend/application/vitest.setup.ts": {
"mtime": 1786799852.8706508,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "4dcc5d7d1d80795a12623d48fc61e3e5",
"semantic_hash": ""
},
"package.json": {
"mtime": 1783856793.674106,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "fcb100aa3caf90be6b494c35499e0049",
"semantic_hash": ""
},
"scripts/backup_db.sh": {
"mtime": 1786799852.8767846,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "82cb31279bdfacde5efe978a55256436",
"semantic_hash": ""
},
"scripts/deploy.sh": {
"mtime": 1787136904.5590942,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ad310d4368d2fe68ff5f902c248fcc22",
"semantic_hash": ""
},
"scripts/open-browsers.js": {
"mtime": 1787640978.2482345,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3b052f156a21c22d266ac6c38701c842",
"semantic_hash": ""
},
"scripts/start-dev.js": {
"mtime": 1787072106.514647,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "4c029b34e1d38346196356018a747008",
"semantic_hash": ""
},
"start.sh": {
"mtime": 1784033954.8130803,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "de3176806eab0abd69c6a8ea420b2095",
"semantic_hash": ""
},
"BACKEND_INTEGRATION.md": {
"mtime": 1786885876.7688253,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "e1f23cc23d23159b32a35acc9fadc689",
"semantic_hash": ""
},
"DATABASE_SCHEMA.md": {
"mtime": 1786885876.7713423,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ca5ded565172da98231f6cf54af4843d",
"semantic_hash": ""
},
"README.md": {
"mtime": 1786885876.7753718,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "830c27760b856f621e2498eb762743fa",
"semantic_hash": ""
},
"canina.md": {
"mtime": 1786885876.8094723,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9dd630592bc7905abc25f844ff134305",
"semantic_hash": ""
},
"docker-compose.yml": {
"mtime": 1786883225.8115642,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a78a74898646cdf374c4d83e43cfa854",
"semantic_hash": ""
},
"docs/01-introduction.md": {
"mtime": 1786885876.812475,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "4089d3e4da9e473cd14c984e646abe93",
"semantic_hash": ""
},
"docs/02-user-guide.md": {
"mtime": 1786885876.8139858,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "96bf8f4516994e99012a5b6c710835cd",
"semantic_hash": ""
},
"docs/03-developer-guide.md": {
"mtime": 1783764561.7716606,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "14f25993a3a77357739f6cd082c1e566",
"semantic_hash": ""
},
"docs/audit/05-architectural-audit.md": {
"mtime": 1786799852.3026898,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ab18a41271f0f845054f52f4dfa715eb",
"semantic_hash": ""
},
"docs/audit/10-security-audit.md": {
"mtime": 1786799852.3079526,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "125471bb12e468a0ddcd9a1dccca1001",
"semantic_hash": ""
},
"docs/audit/ADR-AUTH-001.md": {
"mtime": 1786799852.3326428,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "2616cbbcbbc3d461d3b6ca00195902a9",
"semantic_hash": ""
},
"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md": {
"mtime": 1786799852.3326428,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "6d851d9e754115841a5accab7efcf0dc",
"semantic_hash": ""
},
"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md": {
"mtime": 1787127978.2588482,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8210201eae0692d1e76cad23d60c804b",
"semantic_hash": ""
},
"docs/audit/MASTER-TASK-BACKLOG.md": {
"mtime": 1786799852.3354702,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "0efc4759c15a04ca934ec32bb6b6fa6b",
"semantic_hash": ""
},
"docs/audit/frontend-route-map.md": {
"mtime": 1786799852.3393898,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "88fdef86c48b2164cdcced3e502c073f",
"semantic_hash": ""
},
"docs/audit/phase3-execution-plan.md": {
"mtime": 1786799852.3439524,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "15babdd91198793f5b6b791d7a5edd22",
"semantic_hash": ""
},
"docs/backlog.md": {
"mtime": 1786799852.3560216,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "cf6eb1a9c1daef121cfb40f1a7771808",
"semantic_hash": ""
},
"frontend/application/AGENTS.md": {
"mtime": 1787127978.2689438,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "657cc62d228d2fcf56f1c843aad131fd",
"semantic_hash": ""
},
"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md": {
"mtime": 1783856793.2301185,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "eeaf2bb0943a16d43493f706d0867d1f",
"semantic_hash": ""
},
"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md": {
"mtime": 1783856793.2795427,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5f851eefeeb4bffff8c5427a289f934d",
"semantic_hash": ""
},
"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt": {
"mtime": 1783856793.3161557,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a5c1ec085d5dae2319c659151ffce3f0",
"semantic_hash": ""
},
"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md": {
"mtime": 1783856793.3176901,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "e7227ba84ca88111166000065d1bdacb",
"semantic_hash": ""
},
"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt": {
"mtime": 1783856793.319422,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "88985b4355a8a44627dde041f10aba75",
"semantic_hash": ""
},
"frontend/application/public/fonts/vazirmatn-v33.003/README.md": {
"mtime": 1783856793.320489,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "e9d11601fc4c77fe3d8d1961d9c5d420",
"semantic_hash": ""
},
"scripts/compose.prod.yml": {
"mtime": 1787077093.9907773,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "dab885e300a9524d8b4ad4c2e2e2cd3e",
"semantic_hash": ""
},
"scripts/compose.stage.yml": {
"mtime": 1787077093.9917798,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "6c2045ddae8c6cac20ab3a0b87c39388",
"semantic_hash": ""
},
"backend/uploads/1781288429353-508765350.jpg": {
"mtime": 1783764561.766257,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ebf86506731de8ec10f2c4ea0ba14609",
"semantic_hash": "ebf86506731de8ec10f2c4ea0ba14609"
},
"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/sample-variable.gif": {
"mtime": 1783856792.5464964,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9d0c1a4764b2b06807578b33c40838ca",
"semantic_hash": "9d0c1a4764b2b06807578b33c40838ca"
},
"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/sample.png": {
"mtime": 1783856792.6456678,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8bca253cfb55f954622145010756efa9",
"semantic_hash": "8bca253cfb55f954622145010756efa9"
},
"frontend/application/public/assets/images/regenerated_image_1779109861747.png": {
"mtime": 1783764562.0141103,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "47111b66c208d1fa0c74877dfc0ee2a5",
"semantic_hash": "47111b66c208d1fa0c74877dfc0ee2a5"
},
"frontend/application/public/fonts/sahel-font-v3.4.0/sample-variable.gif": {
"mtime": 1783856793.2291198,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9d0c1a4764b2b06807578b33c40838ca",
"semantic_hash": "9d0c1a4764b2b06807578b33c40838ca"
},
"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png": {
"mtime": 1783856793.3151467,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8bca253cfb55f954622145010756efa9",
"semantic_hash": "8bca253cfb55f954622145010756efa9"
},
@@ -2275,655 +2275,655 @@
},
".ai_agency/AGENCY.md": {
"mtime": 1785148021.9796073,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9a615cfac3d434770f0fa036a32b71f9",
"semantic_hash": ""
},
".ai_agency/agents/00_intake.md": {
"mtime": 1785148021.984319,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f1b0d3a7e74c834af83cd068a97bc240",
"semantic_hash": ""
},
".ai_agency/agents/01_auditor.md": {
"mtime": 1785148021.9877827,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a41d382a1269c2d6432522485e1b3301",
"semantic_hash": ""
},
".ai_agency/agents/02_ceo.md": {
"mtime": 1785148021.9983747,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "caf2825294f63004fa58a8b3775f10dc",
"semantic_hash": ""
},
".ai_agency/agents/03_product_manager.md": {
"mtime": 1785148022.0019681,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d5a7823925324506c4c0f91534c713cc",
"semantic_hash": ""
},
".ai_agency/agents/04_architect.md": {
"mtime": 1785148022.004966,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "fa9c501ee0e0f13da21dd138ed9116b3",
"semantic_hash": ""
},
".ai_agency/agents/05_dev_backend.md": {
"mtime": 1785148022.0124812,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9753813406d32d60a4f82b62ffc3f00f",
"semantic_hash": ""
},
".ai_agency/agents/06_dev_frontend.md": {
"mtime": 1785148022.01702,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "061855c65baa90ab44d77285cf1475f2",
"semantic_hash": ""
},
".ai_agency/agents/07_qa_engineer.md": {
"mtime": 1785148022.0200446,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "fe33c91f65cbfa2a4e9e9e007cd03370",
"semantic_hash": ""
},
".ai_agency/agents/08_visual_qa.md": {
"mtime": 1785148022.0300832,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7e8b5e90bb7c668ce961bb1c117d4291",
"semantic_hash": ""
},
".ai_agency/agents/09_devops_security.md": {
"mtime": 1785148022.0340874,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f4ce074e72eade7153ee4785ae9a89c6",
"semantic_hash": ""
},
".ai_agency/agents/10_tech_writer.md": {
"mtime": 1785148022.0370827,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9315ddc6c2960907d7dda7804c1debac",
"semantic_hash": ""
},
".ai_agency/agents/11_deploy.md": {
"mtime": 1785148022.0406027,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "0f644be55161acf799ccc0b89ebfaa03",
"semantic_hash": ""
},
".ai_agency/agents/12_seo_content.md": {
"mtime": 1785148022.048604,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a053bac412fb66749c22ddfc58882766",
"semantic_hash": ""
},
".ai_agency/memory/agent_outputs/README.txt": {
"mtime": 1785148022.0521505,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7b3064fbf48b53032a8d4bfb73ca9ca7",
"semantic_hash": ""
},
".ai_agency/memory/scratchpad.md": {
"mtime": 1785148022.0651145,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "04648e7db23c144f89cdf78d071a32a0",
"semantic_hash": ""
},
".ai_agency/specs/api_contract.md": {
"mtime": 1785148022.0776649,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "2641fc7a31d9fe4761dad3ae7c944cb0",
"semantic_hash": ""
},
".ai_agency/specs/architecture_spec.md": {
"mtime": 1785148022.0822608,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8763e7670f9cd0281273e139b484e701",
"semantic_hash": ""
},
".ai_agency/specs/prd.md": {
"mtime": 1785148022.0872517,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a030931c59700809b29fa5e2dcbaaf18",
"semantic_hash": ""
},
".ai_agency/specs/project_health.md": {
"mtime": 1785148022.0983145,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "063e14c4ad0f62b79e412580319d6e6a",
"semantic_hash": ""
},
".ai_agency/specs/reviews/README.md": {
"mtime": 1785148022.105835,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "e68ba8a85edcd2394cb46d8f03fa09b7",
"semantic_hash": ""
},
".ai_agency/specs/reviews/backend_review.md": {
"mtime": 1785148022.1103623,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "34de73a13f5917bee531b6c2036e6fd6",
"semantic_hash": ""
},
".ai_agency/specs/reviews/code_health_review.md": {
"mtime": 1785148022.1143596,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "6ac531c22e5d025f50e6375323a52ed7",
"semantic_hash": ""
},
".ai_agency/specs/reviews/frontend_review.md": {
"mtime": 1785148022.118487,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "0fd2a25383bafe358068544b4fd5e5f9",
"semantic_hash": ""
},
".ai_agency/specs/reviews/security_review.md": {
"mtime": 1785148022.1214871,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ed5139209a62a8a4a461b8a0eff9ac02",
"semantic_hash": ""
},
".ai_agency/specs/reviews/seo_content_review.md": {
"mtime": 1785148022.1315339,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "4cd7283f78877c1a14ff5b682c762702",
"semantic_hash": ""
},
".ai_agency/specs/reviews/ux_review.md": {
"mtime": 1785148022.1365507,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "4edeb2b914b36277d8381de722df56ef",
"semantic_hash": ""
},
".antigravity/instructions.md": {
"mtime": 1786870552.8334057,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9b31786b637be3c13978bec4c2330752",
"semantic_hash": ""
},
".antigravity/workflows/graphify.md": {
"mtime": 1786870552.8379214,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3953c31b4ef6d89d3b1cb43f0110817d",
"semantic_hash": ""
},
".claude/CLAUDE.md": {
"mtime": 1786870552.83892,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9b31786b637be3c13978bec4c2330752",
"semantic_hash": ""
},
".claude/skills/graphify/SKILL.md": {
"mtime": 1786870552.845041,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3953c31b4ef6d89d3b1cb43f0110817d",
"semantic_hash": ""
},
".claude/skills/graphify/references/add-watch.md": {
"mtime": 1786870552.848102,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d59d027fe449f06aa03905a01184e779",
"semantic_hash": ""
},
".claude/skills/graphify/references/exports.md": {
"mtime": 1786870552.849102,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9da2a2152e60a22f07f05fed5158f287",
"semantic_hash": ""
},
".claude/skills/graphify/references/extraction-spec.md": {
"mtime": 1786870552.850102,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "42fef56a01698118f7fd722acdadea34",
"semantic_hash": ""
},
".claude/skills/graphify/references/github-and-merge.md": {
"mtime": 1786870552.853101,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "cde13df085e4c492aeb7ba298a996d0d",
"semantic_hash": ""
},
".claude/skills/graphify/references/hooks.md": {
"mtime": 1786870552.8550987,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3f545db6ce646650bb9de588f5512a27",
"semantic_hash": ""
},
".claude/skills/graphify/references/query.md": {
"mtime": 1786870552.857703,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3c46f8ad006874260614ed8657d02307",
"semantic_hash": ""
},
".claude/skills/graphify/references/transcribe.md": {
"mtime": 1786870552.8587108,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "67b6a5fa6c0974e18f60db9f8932fbd8",
"semantic_hash": ""
},
".claude/skills/graphify/references/update.md": {
"mtime": 1786870552.86071,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9378bd03d56baaf78bd738ab3848f142",
"semantic_hash": ""
},
".gitea/workflows/deploy.yml": {
"mtime": 1787078454.7624714,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8dba2b15f1a2baf9ad6fa20a0b3dc467",
"semantic_hash": ""
},
"CLAUDE.md": {
"mtime": 1786870552.8637102,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "82efb97a359f5c7290bf2513d14686be",
"semantic_hash": ""
},
"backend/README.md": {
"mtime": 1783764561.6013825,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f9b30a57e215bc0b63868065fc71a1ac",
"semantic_hash": ""
},
"docs/04-setup-and-deployment.md": {
"mtime": 1787127978.2568479,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7def44fff8cdd0d28b700f711e2443ed",
"semantic_hash": ""
},
"docs/05-devops-and-monitoring.md": {
"mtime": 1783764561.774446,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7dade1c1d477d70ced55a7580b812127",
"semantic_hash": ""
},
"docs/06-testing.md": {
"mtime": 1783764561.7749674,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "2ed3cd7f39157774928e65d5cc0588d0",
"semantic_hash": ""
},
"docs/README.md": {
"mtime": 1786885876.8169968,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "64dfe035bc8fdb4b42f7af8336bf4ab3",
"semantic_hash": ""
},
"docs/audit/00-repository-map.md": {
"mtime": 1786799852.2981741,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5343b55148ced4eed7f13aa32b689936",
"semantic_hash": ""
},
"docs/audit/01-system-discovery.md": {
"mtime": 1786799852.2991743,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5fcfb853f894f8697b6badb692dfe249",
"semantic_hash": ""
},
"docs/audit/02-audit-plan.md": {
"mtime": 1786799852.3001754,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d6a5dbf5ddc5fc174e8a041e835481db",
"semantic_hash": ""
},
"docs/audit/03-baseline-command-plan.md": {
"mtime": 1786799852.3001754,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7d40f368e9ed0f27fa2ef5ad01249ad2",
"semantic_hash": ""
},
"docs/audit/04-open-questions.md": {
"mtime": 1786799852.301682,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "773b455bb84b5df87cfbaa76dfa951f0",
"semantic_hash": ""
},
"docs/audit/06-storefront-audit.md": {
"mtime": 1786799852.3036914,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7c3aff371cdb919bb885bf4a6f625780",
"semantic_hash": ""
},
"docs/audit/07-backend-audit.md": {
"mtime": 1786799852.30469,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "53927123ba5acca71e57780ca9bd34f9",
"semantic_hash": ""
},
"docs/audit/08-admin-features-audit.md": {
"mtime": 1786799852.3059514,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d4da7eb2396ad939251ccc541f1fd165",
"semantic_hash": ""
},
"docs/audit/09-database-audit.md": {
"mtime": 1786799852.3069694,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "bdd7e4c3b4723b2006053563ac345819",
"semantic_hash": ""
},
"docs/audit/11-code-quality-audit.md": {
"mtime": 1786799852.308957,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "c48e39113f2334fae743488668ecf618",
"semantic_hash": ""
},
"docs/audit/12-testing-audit.md": {
"mtime": 1786799852.3099525,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "0d1570f5138328d090a43edc1f7bc4f0",
"semantic_hash": ""
},
"docs/audit/13-devops-audit.md": {
"mtime": 1786799852.3109539,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "986acddf4e09ccbe2b8b8f6806bc01d5",
"semantic_hash": ""
},
"docs/audit/14-documentation-audit.md": {
"mtime": 1786799852.311952,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d1f8496a0dae10993495691dc58098ef",
"semantic_hash": ""
},
"docs/audit/16-deep-audit-summary.md": {
"mtime": 1786799852.313067,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f17a01bf7b59276d28c6948fd14eafd2",
"semantic_hash": ""
},
"docs/audit/18-compiler-diagnostic-dispositions.md": {
"mtime": 1786799852.315065,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5b402b064300709c7723a63885894c29",
"semantic_hash": ""
},
"docs/audit/19-finding-verification-report.md": {
"mtime": 1786799852.3160648,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "c3363af4c68792722ebadddc10319f14",
"semantic_hash": ""
},
"docs/audit/21-phase2-quality-gate-summary.md": {
"mtime": 1786799852.318066,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "c336937acd576ee2efc36d67dbaf69e2",
"semantic_hash": ""
},
"docs/audit/22-tracked-first-party-files.txt": {
"mtime": 1786799852.319066,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3f66b26b7f4217a065ed3d3403fe40fd",
"semantic_hash": ""
},
"docs/audit/23-untracked-first-party-files.txt": {
"mtime": 1786799852.319066,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9fe0a15ea45d03f8e4ccd0ad786dd9fb",
"semantic_hash": ""
},
"docs/audit/24-omitted-file-inspection-report.md": {
"mtime": 1786799852.3200657,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "6fb068c98fefc544e9ff687c1b3c0351",
"semantic_hash": ""
},
"docs/audit/26-phase2-integrity-repair-report.md": {
"mtime": 1786799852.3220918,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "aecc17ca01002edfbdf472cf4f4aaa4c",
"semantic_hash": ""
},
"docs/audit/27-all-tracked-repository-files.txt": {
"mtime": 1786799852.3230999,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f35e68d28e4c31002698e68cc18242e3",
"semantic_hash": ""
},
"docs/audit/31-module-audit-closure.md": {
"mtime": 1786799852.3276167,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "b66f589f8c3bd0b53b7d61626eec0985",
"semantic_hash": ""
},
"docs/audit/33-final-phase2-audit-closure.md": {
"mtime": 1786799852.3286169,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ca898e1caffc2764de11b6a10e84d1ea",
"semantic_hash": ""
},
"docs/audit/phase3-traceability-matrix.md": {
"mtime": 1786799852.3449528,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "40cd32ed7fa433342aa547fa5aa21d86",
"semantic_hash": ""
},
"docs/audit/phase3.1-backlog-review.md": {
"mtime": 1786799852.3459527,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "78810767668f7d90e980648ec8c17869",
"semantic_hash": ""
},
"docs/audit/phase3.1-change-log.md": {
"mtime": 1786799852.3469548,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "eed1734c4a6d1d8464dd63f6cbc33e9f",
"semantic_hash": ""
},
"docs/audit/phase3.2-change-log.md": {
"mtime": 1786799852.3479521,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "b13460f1fa8aaecd88bc007a2c5e2ecb",
"semantic_hash": ""
},
"docs/audit/phase3.2-implementation-readiness.md": {
"mtime": 1786799852.3479521,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ffe4bce7401d65f9d44e8740d3c2ccf6",
"semantic_hash": ""
},
"frontend/admin-panel/README.md": {
"mtime": 1783764561.7789528,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f6e3faf55d738cf2affe1b44195f27cf",
"semantic_hash": ""
},
"frontend/admin-panel/index.html": {
"mtime": 1783764561.7805586,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d836c7a6b7be6d5b04a925b7ad32e539",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt": {
"mtime": 1783856792.435855,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "607f9ca43b12868e8880a0d85831a878",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt": {
"mtime": 1783856792.445365,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "607f9ca43b12868e8880a0d85831a878",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md": {
"mtime": 1783856792.4546044,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "eaa55e166ec4a6b2ee875b746ef049a0",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/README.md": {
"mtime": 1783856792.5025032,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "0e4c260ce354bad51a6a184b5e236424",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md": {
"mtime": 1783856792.5480056,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "eeaf2bb0943a16d43493f706d0867d1f",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/README.md": {
"mtime": 1783856792.5951552,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5f851eefeeb4bffff8c5427a289f934d",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt": {
"mtime": 1783856792.646666,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a5c1ec085d5dae2319c659151ffce3f0",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md": {
"mtime": 1783856792.6476717,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "e7227ba84ca88111166000065d1bdacb",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/vazirmatn-v33.003/OFL.txt": {
"mtime": 1783856792.6486697,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "88985b4355a8a44627dde041f10aba75",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md": {
"mtime": 1783856792.6486697,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "e9d11601fc4c77fe3d8d1961d9c5d420",
"semantic_hash": ""
},
"frontend/admin-panel/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt": {
"mtime": 1783856792.971535,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "975634eaf84a797674b29e99c311f54a",
"semantic_hash": ""
},
"frontend/application/CLAUDE.md": {
"mtime": 1783764561.8667445,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "5c27369b226fcf2be8a6cfe52224e767",
"semantic_hash": ""
},
"frontend/application/README.md": {
"mtime": 1783764561.8673544,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f15aaa42d5d299d091b1171097ea56ad",
"semantic_hash": ""
},
"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt": {
"mtime": 1783856793.098052,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "607f9ca43b12868e8880a0d85831a878",
"semantic_hash": ""
},
"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt": {
"mtime": 1783856793.1076603,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "607f9ca43b12868e8880a0d85831a878",
"semantic_hash": ""
},
"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md": {
"mtime": 1783856793.1136606,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "eaa55e166ec4a6b2ee875b746ef049a0",
"semantic_hash": ""
},
"frontend/application/public/fonts/sahel-font-v3.4.0/README.md": {
"mtime": 1783856793.1562517,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "0e4c260ce354bad51a6a184b5e236424",
"semantic_hash": ""
},
"frontend/application/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt": {
"mtime": 1783856793.6680968,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "975634eaf84a797674b29e99c311f54a",
"semantic_hash": ""
},
"prometheus.yml": {
"mtime": 1783764562.0277793,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "45dc28cd8d9656e7141713ece5a7aa2c",
"semantic_hash": ""
},
"swagger.yml": {
"mtime": 1786799852.8920915,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "34b5e7e5e1b19e6e3596ef669f8a0d0d",
"semantic_hash": ""
},
"canina.pdf": {
"mtime": 1785148022.3708115,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "900fb024ec3b91912a512a96c2a0c0a0",
"semantic_hash": ""
},
"frontend/admin-panel/public/favicon.svg": {
"mtime": 1783764561.7978015,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "7e840862161341271697daa99a40d76b",
"semantic_hash": ""
},
"frontend/admin-panel/public/icons.svg": {
"mtime": 1783764561.7993202,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "3b4fcfcf393eca4d264dca4a4663bc37",
"semantic_hash": ""
},
"frontend/admin-panel/src/assets/hero.png": {
"mtime": 1783764561.812863,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "aead493361b27e7510691c5d7072dfc1",
"semantic_hash": ""
},
"frontend/admin-panel/src/assets/react.svg": {
"mtime": 1783764561.8139248,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f0402b67b6ce880f65666bb49e841696",
"semantic_hash": ""
},
"frontend/admin-panel/src/assets/vite.svg": {
"mtime": 1783764561.8149958,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9960a24288958394ac50e57ff638b036",
"semantic_hash": ""
},
"frontend/application/public/assets/images/hero-section-image.png": {
"mtime": 1783856793.0950441,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a9f359cce82a5ab0a24830ed59a33047",
"semantic_hash": ""
},
"frontend/application/public/file.svg": {
"mtime": 1783764562.0162137,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "d09f95206c3fa0bb9bd9fefabfd0ea71",
"semantic_hash": ""
},
"frontend/application/public/globe.svg": {
"mtime": 1783764562.0167208,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "2aaafa6a49b6563925fe440891e32717",
"semantic_hash": ""
},
"frontend/application/public/next.svg": {
"mtime": 1783764562.0182388,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "8e061864f388b47f33a1c3780831193e",
"semantic_hash": ""
},
"frontend/application/public/vercel.svg": {
"mtime": 1783764562.019253,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "c0af2f507b369b085b35ef4bbe3bcf1e",
"semantic_hash": ""
},
"frontend/application/public/window.svg": {
"mtime": 1783764562.019253,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a2760511c65806022ad20adf74370ff3",
"semantic_hash": ""
},
@@ -2935,571 +2935,571 @@
},
".agents/rules/graphify.md": {
"mtime": 1786870552.830271,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "f1e53ecc9194573d3c28fc116c743a2e",
"semantic_hash": ""
},
".agents/workflows/graphify.md": {
"mtime": 1786870552.8323984,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "6d73634a678cf1e1c71930adf80bd1f0",
"semantic_hash": ""
},
"backend/src/payment/dto/initiate-payment.dto.ts": {
"mtime": 1786870552.8742464,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a097fcbb5846e7cd00e7cb2cefc060bb",
"semantic_hash": ""
},
"backend/src/payment/dto/verify-payment.dto.ts": {
"mtime": 1786894580.126858,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f6db4b79ca261e36334ef84f39b8e87c",
"semantic_hash": ""
},
"backend/src/payment/payment.controller.ts": {
"mtime": 1787564362.263176,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a98c3805d67b740857686d128592a734",
"semantic_hash": ""
},
"backend/src/payment/payment.module.ts": {
"mtime": 1787394001.605618,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7ee5887f04915d1bd1471705a8f941ad",
"semantic_hash": ""
},
"backend/src/payment/payment.service.ts": {
"mtime": 1787564362.2641742,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3f65606fa57b8e2c85cfdfc600a02ec8",
"semantic_hash": ""
},
"backend/src/payment/zibal.service.ts": {
"mtime": 1787461919.453309,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0c7c645422cf2a3ba406390802ee365d",
"semantic_hash": ""
},
"frontend/application/app/payment/verify/page.tsx": {
"mtime": 1786891855.3560786,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "68d1923f04a3300b7b6dca6023ab357e",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/SmsSettingsPage.tsx": {
"mtime": 1787467799.904439,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3f2bf95555c155f64faca1439356346f",
"semantic_hash": ""
},
"AGENTS.md": {
"mtime": 1786870552.8627086,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "9b31786b637be3c13978bec4c2330752",
"semantic_hash": ""
},
"backend/src/payment/dto/admin-transaction-filter.dto.ts": {
"mtime": 1787072106.4015906,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "afa18a9b091f326229902f10477bb1c1",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Transactions.tsx": {
"mtime": 1787471434.8721883,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "50d95775caf9b786ee9dba4c5558d49e",
"semantic_hash": ""
},
"backend/src/payment/interfaces/payment-gateway.interface.ts": {
"mtime": 1786870552.8767512,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "930a5f06cdec431d842bf9b12618eed5",
"semantic_hash": ""
},
"frontend/application/components/catalog/CatalogPageSpread.tsx": {
"mtime": 1786885876.9791617,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "ee3ca1b91560e8f0fcf4c3385da4a0e2",
"semantic_hash": ""
},
"frontend/application/components/catalog/FlipbookCatalog.tsx": {
"mtime": 1786885876.982162,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "eb46a7868a6b96139ca06b0ef4174dfb",
"semantic_hash": ""
},
"frontend/application/components/catalog/ProductDetailModal.tsx": {
"mtime": 1786872121.572482,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "c95d3b01c3b379a6b3fce75788e96e21",
"semantic_hash": ""
},
"backend/scripts/generate-openapi.d.ts": {
"mtime": 1786883225.7774837,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e2ebd7ddedcadeeadbf819c35985c768",
"semantic_hash": ""
},
"backend/scripts/generate-openapi.js": {
"mtime": 1786883225.77912,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f7c2607fc067b04e7cb7716490ea1169",
"semantic_hash": ""
},
"backend/src/admin/dto/user.dto.ts": {
"mtime": 1787072106.3819897,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7f8b670a02bb9f6f52123a8e289f866a",
"semantic_hash": ""
},
"backend/src/admin/ssl.controller.ts": {
"mtime": 1787072106.382979,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "460506a236a330ba614aae15a2659b2b",
"semantic_hash": ""
},
"backend/src/admin/ssl.service.ts": {
"mtime": 1787072106.3839788,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dc7ba9e922c1e3d80dae4f1593297fa7",
"semantic_hash": ""
},
"backend/src/auth/auth.constants.ts": {
"mtime": 1787072106.3859801,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "382adefba83246badeae8701ef6335cd",
"semantic_hash": ""
},
"backend/src/common/utils/phone.utils.ts": {
"mtime": 1786883225.801396,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a4c682b767823a624163b9430f1db7d1",
"semantic_hash": ""
},
"backend/src/reviews/dto/create-review.dto.ts": {
"mtime": 1787072106.4143064,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "2ae6e4616eaeeafd56d4c74bbfe79f12",
"semantic_hash": ""
},
"backend/src/reviews/dto/update-review.dto.ts": {
"mtime": 1787072106.4158058,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "1c989ea4d1dd9c3fcf8b442e61a2d2e3",
"semantic_hash": ""
},
"backend/src/reviews/reviews.controller.ts": {
"mtime": 1786944769.516312,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "25538b0ceb81aa984f9da7ae7cc6d404",
"semantic_hash": ""
},
"backend/src/reviews/reviews.module.ts": {
"mtime": 1786944769.5173109,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7f5cb88dda0a902c24c48edb34647428",
"semantic_hash": ""
},
"backend/src/reviews/reviews.service.ts": {
"mtime": 1787579631.7755866,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "fc9f239f7b233fd9549aaaaa226bd9f3",
"semantic_hash": ""
},
"backend/src/settings/default-ui-texts.ts": {
"mtime": 1787564362.2661722,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6b2cb7838c9b17d1856a03da34d299dd",
"semantic_hash": ""
},
"backend/src/settings/dto/sms-log-query.dto.ts": {
"mtime": 1787072106.4213393,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d1b143222dc6ecfcff03180de1a23e9e",
"semantic_hash": ""
},
"backend/src/tickets/dto/create-ticket.dto.ts": {
"mtime": 1787072106.4308748,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "cb6ad48fdfa6c9c24158b32c4882a38f",
"semantic_hash": ""
},
"backend/src/tickets/dto/ticket-query.dto.ts": {
"mtime": 1787072106.4318714,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f7c6a4165ac086ba6de6fb111c75c2e9",
"semantic_hash": ""
},
"backend/src/tickets/tickets.controller.ts": {
"mtime": 1787072106.433878,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6eb0b4d21421f9f5aa1831b0402257e8",
"semantic_hash": ""
},
"backend/src/tickets/tickets.module.ts": {
"mtime": 1786890779.3222969,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0b3e226a18679b4bf37016c27b874ae9",
"semantic_hash": ""
},
"backend/src/tickets/tickets.service.ts": {
"mtime": 1787072106.4348743,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "16b88701d7cc2a14f47e99f55882e67a",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Reviews.tsx": {
"mtime": 1787467799.897935,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a72ceff0caf7c8b09aed6ce67d3066f4",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/SslSettingsPage.tsx": {
"mtime": 1787467799.9054468,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a989703bb87076f3c9c3c4a26012a5cb",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/Tickets.tsx": {
"mtime": 1787467799.909963,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0a9562f28e15b5af8acc8c15fc130729",
"semantic_hash": ""
},
"frontend/application/components/BannerPlacement.tsx": {
"mtime": 1787564348.689902,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "c8d73a358a8708e714e7e6d207aa4956",
"semantic_hash": ""
},
"frontend/application/components/BrandLogo.tsx": {
"mtime": 1787564348.6908622,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "2a31c72d7a8773622e7c898ce6d366ca",
"semantic_hash": ""
},
"frontend/application/components/ProductReviews.tsx": {
"mtime": 1787048863.6917748,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "814a762e9710ce872a7467ea0dd8e716",
"semantic_hash": ""
},
"frontend/application/lib/services/ticketService.ts": {
"mtime": 1786890779.3409019,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "6fcf9ed78ca9194e01333602a1989947",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/PriceInput.tsx": {
"mtime": 1786948119.7711625,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "09a84a9f29f735448d05e4327c0304b3",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Badge.tsx": {
"mtime": 1787461920.844094,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3b93789328a250499e58378552881527",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/FormField.tsx": {
"mtime": 1786954681.823527,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "265c887af876e10153f2ac32844194c2",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx": {
"mtime": 1786954681.824535,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "ada78d41f18a3dcce5e806a2ab252d30",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Input.tsx": {
"mtime": 1786954681.825536,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b3c0b6ae3bec10c6ac070ae60e804e28",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Select.tsx": {
"mtime": 1786954681.8285375,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a06e97672e210fdff460252966d2ab09",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Textarea.tsx": {
"mtime": 1786954681.8285375,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bbbdbaa3a2aeb68e7e406d555129fb79",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx": {
"mtime": 1786954681.830045,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "f212eaa6017ac07b37356612883b2884",
"semantic_hash": ""
},
"backend/prisma/tsconfig.json": {
"mtime": 1786961195.3002362,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a12c81b60c5e9fdb3c1aba03ac7ecb27",
"semantic_hash": ""
},
"backend/src/admin/dto/product.dto.ts": {
"mtime": 1787579631.7621782,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8fb28b8f62bc610bdc1196d54cafb672",
"semantic_hash": ""
},
"backend/src/doctors/doctors.controller.ts": {
"mtime": 1787148092.311693,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "a552f2b9fa5f186871234fa7ffc0c849",
"semantic_hash": ""
},
"backend/src/doctors/doctors.module.ts": {
"mtime": 1786971396.0355752,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "6850f9203296ff749b5d7de975d3c6f7",
"semantic_hash": ""
},
"backend/src/doctors/doctors.service.ts": {
"mtime": 1787148092.312693,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b7473f48fc2a077328d9d054c075bf46",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/DoctorsManager.tsx": {
"mtime": 1787467799.8799238,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "5671cef0d264dc92d9540058a929633e",
"semantic_hash": ""
},
"frontend/application/components/TestimonialsSection.tsx": {
"mtime": 1787148092.3530457,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "59c30aa178ac6736fe743d3434fb38ec",
"semantic_hash": ""
},
"frontend/application/components/VideoModalPlayer.tsx": {
"mtime": 1787061337.6364226,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dad37eb462b526cd5a70cdd07e3a55ac",
"semantic_hash": ""
},
"frontend/application/components/PodcastPlayerModal.tsx": {
"mtime": 1787564348.6979315,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "515b0ad877f8eca6c860906c805f88cb",
"semantic_hash": ""
},
"frontend/application/components/PodcastInlinePlayer.tsx": {
"mtime": 1787579631.796809,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "dabe043685366225a2852033f3483ecb",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/RouteErrorBoundary.tsx": {
"mtime": 1787062174.623011,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "bede52b77e6efe56c4f710279fdbcfbd",
"semantic_hash": ""
},
"frontend/admin-panel/src/utils/lazyWithRetry.ts": {
"mtime": 1787062174.6262279,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8fd1116250eef64a64411d9dd8322c18",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/IconPickerModal.tsx": {
"mtime": 1787071159.9599283,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d4676fe2b24132bbfeb1b53f2b314ed7",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/RichTextEditor.tsx": {
"mtime": 1787577523.7043533,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "11848112ef3b44fce5cabcb7abfefc91",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx": {
"mtime": 1787467799.8899395,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3f56b1c5ba2b01fae9ed51faf870cb8d",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx": {
"mtime": 1787467799.9019353,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "329ce7c2b153a8d4f0ca26374759938e",
"semantic_hash": ""
},
"backend/test/app-audit-verification.e2e-spec.d.ts": {
"mtime": 1787073059.1090057,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e2ebd7ddedcadeeadbf819c35985c768",
"semantic_hash": ""
},
"backend/test/app-audit-verification.e2e-spec.js": {
"mtime": 1787073059.1105163,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3906e1e6a6fe48f74cd15f9b81b8775a",
"semantic_hash": ""
},
"backend/test/app.e2e-spec.d.ts": {
"mtime": 1787073059.1125634,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e2ebd7ddedcadeeadbf819c35985c768",
"semantic_hash": ""
},
"backend/test/app.e2e-spec.js": {
"mtime": 1787073059.1135726,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4ff6e84fd1b500597f4cc40d5877ad1b",
"semantic_hash": ""
},
"frontend/application/lib/seo.ts": {
"mtime": 1787139270.9888349,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "63561ef7b8bd149b0e211fc4c9d0fab3",
"semantic_hash": ""
},
"backend/src/doctors/dto/doctor-query.dto.ts": {
"mtime": 1787148092.3146994,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "9c9b8e83bb5b207eb88d5da473562843",
"semantic_hash": ""
},
"backend/src/faq/faq.controller.ts": {
"mtime": 1787148092.3166947,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "09e34477f9322954d856b496009ba0d5",
"semantic_hash": ""
},
"backend/src/faq/faq.module.ts": {
"mtime": 1787148092.3166947,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "eb0d0be8c8742a787d205ef121b50ee7",
"semantic_hash": ""
},
"backend/src/faq/faq.service.ts": {
"mtime": 1787148092.3199117,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "76c44314a43aa61ca7ba02e6cce871be",
"semantic_hash": ""
},
"backend/src/menu/menu.controller.ts": {
"mtime": 1787564348.681949,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "091e15205d159cebb946d545a9cec92a",
"semantic_hash": ""
},
"backend/src/menu/menu.module.ts": {
"mtime": 1787148092.3238695,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "57340cf9c9a8c0562995738bac8efc7b",
"semantic_hash": ""
},
"backend/src/menu/menu.service.ts": {
"mtime": 1787564362.2621727,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "50a88c362e71338570fa3aee831bb0ba",
"semantic_hash": ""
},
"backend/src/payment/dto/ebank-checkout.dto.ts": {
"mtime": 1787394001.6034613,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "420fb2e706c51e65cac8615d130993fe",
"semantic_hash": ""
},
"backend/src/payment/zibal-ebank.service.ts": {
"mtime": 1787461919.4523065,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7075a9caf96d6f38e0a8b0208dbd0ab5",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/FAQManager.tsx": {
"mtime": 1787467799.8819249,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "3024a02175a185553d0fe7bef61ba293",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/MenuManager.tsx": {
"mtime": 1787469989.146215,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "22996483f9cfdd91ac8b003e0c88bf02",
"semantic_hash": ""
},
"frontend/application/components/BlogPreviewSection.tsx": {
"mtime": 1787640735.445201,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "09e21e5c107f06f9402e0ab1b820b575",
"semantic_hash": ""
},
"frontend/application/components/FAQSection.tsx": {
"mtime": 1787148092.3510475,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "4fd26d468cc8e143a5e67b7aebc1e44c",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/ZibalPortalPage.tsx": {
"mtime": 1787570438.155805,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "7411a269c9220ed427aced022e858504",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/TransactionReceiptModal.tsx": {
"mtime": 1787405554.8046184,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8931b7ade86ad779579db166eb148469",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Button.tsx": {
"mtime": 1787467799.871536,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "8d920444901883ddb6e7b4745d28c0a7",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/MaskableField.tsx": {
"mtime": 1787405554.805712,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "b97dc137463327fd294e929cfa65545c",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/Modal.tsx": {
"mtime": 1787461920.8450942,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e11f7ea28068c2a268db4d032c3fc9f5",
"semantic_hash": ""
},
"frontend/admin-panel/src/components/ui/ThSort.tsx": {
"mtime": 1787461920.8450942,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "421faa21b7189758f65616964f288b0c",
"semantic_hash": ""
},
"frontend/admin-panel/src/pages/MonitoringPage.tsx": {
"mtime": 1787466234.9659803,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0b2ef8e74d5b5c1cc7f1587445080cc1",
"semantic_hash": ""
},
"frontend/admin-panel/src/utils/useTableParams.ts": {
"mtime": 1787461920.855096,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "beda95a77f5cf930e48d9d5dc365aa12",
"semantic_hash": ""
},
"frontend/application/public/assets/images/canina-product-placeholder.png": {
"mtime": 1787461919.5050244,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a9f359cce82a5ab0a24830ed59a33047",
"semantic_hash": ""
},
"frontend/application/public/images/vets/vet1.webp": {
"mtime": 1787461919.5417616,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "a9f359cce82a5ab0a24830ed59a33047",
"semantic_hash": ""
},
@@ -3511,50 +3511,80 @@
},
"frontend/application/app/blog/rss.xml/route.ts": {
"mtime": 1787577523.7103512,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "0f825c41a5e5c9ce9193e7ac98246f2d",
"semantic_hash": ""
},
"backend/src/common/revalidation/revalidation.module.ts": {
"mtime": 1787579631.7695823,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "9902f11ce5669722083f76ba239749ca",
"semantic_hash": ""
},
"backend/src/common/revalidation/revalidation.service.ts": {
"mtime": 1787579631.7705874,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "d1d36ecad18a71db13e14330c70aa137",
"semantic_hash": ""
},
"frontend/application/app/api/revalidate/route.ts": {
"mtime": 1787579631.7801068,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "23184adf61db300179c0776b6a61ab0a",
"semantic_hash": ""
},
"frontend/application/app/shop/feed.xml/route.ts": {
"mtime": 1787578481.5064635,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "fb1f529191ecb6caf1e3e25853c7587c",
"semantic_hash": ""
},
"frontend/application/app/sitemap-categories.xml/route.ts": {
"mtime": 1787578481.507462,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "906c6270f0c13612729f42c1e7630cc2",
"semantic_hash": ""
},
"frontend/application/app/sitemap-products.xml/route.ts": {
"mtime": 1787578481.5084643,
- "seen": 1787641066.892556,
+ "seen": 1787641877.2319846,
"ast_hash": "e07cfe74793cf294eace564bf881bf6f",
"semantic_hash": ""
},
"frontend/application/lib/fonts.ts": {
"mtime": 1787579631.802835,
- "seen": 1787641066.893547,
+ "seen": 1787641877.2319846,
"ast_hash": "c6109c18c63f9d0160a23e1a4e0ce20a",
"semantic_hash": ""
+ },
+ "frontend/application/components/BlogPostClient.tsx": {
+ "mtime": 1787641161.0593314,
+ "seen": 1787641877.2319846,
+ "ast_hash": "52565ee92b2805b9e43d941a1ab27429",
+ "semantic_hash": ""
+ },
+ "backend/scripts/seo-backfill.ts": {
+ "mtime": 1787641715.5888166,
+ "seen": 1787641877.2319846,
+ "ast_hash": "33585cc261b11efa511dc6d8e37c804f",
+ "semantic_hash": ""
+ },
+ "frontend/application/app/b2b/page.tsx": {
+ "mtime": 1787641596.3582804,
+ "seen": 1787641877.2319846,
+ "ast_hash": "06efdc27aa409ef9001b99f03603c645",
+ "semantic_hash": ""
+ },
+ "frontend/application/components/B2BLandingClient.tsx": {
+ "mtime": 1787641590.421629,
+ "seen": 1787641877.2319846,
+ "ast_hash": "3e762bdd5b352b7a205514f590afb710",
+ "semantic_hash": ""
+ },
+ "frontend/application/lib/schema.ts": {
+ "mtime": 1787641568.2196434,
+ "seen": 1787641877.2319846,
+ "ast_hash": "78f0ccf9385189aa65639774e6feb3ad",
+ "semantic_hash": ""
}
}
\ No newline at end of file
diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md
index 435a92e..764fb64 100644
--- a/graphify-out/GRAPH_REPORT.md
+++ b/graphify-out/GRAPH_REPORT.md
@@ -1,16 +1,16 @@
# Graph Report - canina (2026-08-25)
## Corpus Check
-- 553 files · ~1,314,301 words
+- 557 files · ~1,318,566 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
-- 4010 nodes · 7232 edges · 291 communities (201 shown, 90 thin omitted)
+- 4034 nodes · 7290 edges · 318 communities (201 shown, 117 thin omitted)
- Extraction: 96% EXTRACTED · 4% INFERRED · 0% AMBIGUOUS · INFERRED: 281 edges (avg confidence: 0.79)
- Token cost: 0 input · 0 output
## Graph Freshness
-- Built from commit: `b854298a`
+- Built from commit: `fa69aa4c`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -23,20 +23,20 @@
- CmsController
- tickets.controller.ts
- pets/pets.controller.ts
-- ReportsController
+- admin.module.ts
- devDependencies
- ReviewsService
-- MediaSelector.tsx
-- FeaturedProducts.tsx
+- Spinner.tsx
+- PetProfile.tsx
- app-audit-verification.e2e-spec.js
- lib/services/api.ts
- src/services/api.ts
- DoctorQueryDto
-- RedisService
+- schema.ts
- JwtAuthGuard
-- ProductsService
+- ProductsController
- CreateVideoDto
-- Button.tsx
+- ProductPage.tsx
- UserDashboard.tsx
- MenuService
- BE-001
@@ -48,41 +48,41 @@
- DEVOPS-001
- DOC-001
- adminRoutes.tsx
-- wholesale.controller.ts
+- WholesaleApplyDto
- B2BService
- AuthController
- FaqService
- راهنمای تست سیستم (Software Testing)
-- Button
+- Button.tsx
- CategoriesController
- MediaController
- What You Must Do When Invoked
- SslController
- BannersService
-- TestimonialsService
+- TestimonialsController
- What You Must Do When Invoked
-- ApiOperation
+- api
- IngredientsService
-- Media.tsx
+- cartStore.ts
- devDependencies
- devDependencies
- BlogsController
-- PrescriptionsService
-- SmartAdvisorService
+- PrescriptionsController
+- SmartAdvisorController
- UsersService
- UITexts.tsx
- Orders.tsx
- Role & Core Objective
- ContactService
- compilerOptions
-- CreateUserDto
-- CreateEBankCheckoutDto
-- GetProductsDto
+- Blogs.tsx
+- payment.controller.ts
+- ProductsService
- dependencies
- compilerOptions
- app.e2e-spec.js
- AdminQueryDto
-- admin.module.ts
+- PetsController
- 20260526145407_init/migration.sql
- Required Review Group Closures
- compilerOptions
@@ -91,7 +91,7 @@
- Operational Rules & Boundaries
- WikiController
- PetsController
-- PaymentService
+- shop/page.tsx
- seo.module.ts
- route.ts
- 🏢 AI Software Agency — Master Orchestration Protocol v3
@@ -121,14 +121,14 @@
- Comprehensive Change Log
- Coupons.tsx
- Operational Rules & Boundaries
-- AdminLoginDto
+- Reports.tsx
- @types/supertest
- PrismaService
- 1. Summary of Integrity Repairs Performed
- Operational Rules & Boundaries
- Operational Rules & Boundaries
- Operational Rules & Boundaries
-- reviews.service.ts
+- reviews.controller.ts
- AppService
- @types/react-dom
- Vazirmatn Changelog
@@ -137,22 +137,24 @@
- compilerOptions
- compilerOptions
- backend/README.md
-- auth.module.ts
+- AuthService
- BlogsService
- Repository Map
- validate_integrity.js
- admin-panel/package.json
- Sahel-Font
- AdminService
+- RouteErrorBoundary
- Sahel-Font
- Role & Core Objective
- orchestrate.py
- backend/package.json
-- CreateReviewDto
+- blog/page.tsx
- graphify reference: extra exports and benchmark
- Phase 2 Final Quality Gate Summary Report
- Task Modifications Log
- Install
+- layout.tsx
- ErrorBoundary
- application/package.json
- start-dev.js
@@ -161,13 +163,17 @@
- admin.service.ts
- System Discovery
- RevalidationService
-- AdminController
+- wiki/[slug]/page.tsx
- SmsSettingsPage.tsx
- Product Requirement Document (PRD)
-- AuthService
+- auth.service.ts
+- trust-seals/page.tsx
- exclude
- Baseline Command Plan & Reconciled Command History
+- seo-backfill.ts
+- @nestjs/swagger
- ErrorPages.tsx
+- class-transformer
- with-vpn.sh
- Architecture Specification
- Project Health Audit Report
@@ -185,15 +191,16 @@
- Phase 3 Audit Traceability Matrix
- rebuild_honest_ledger.js
- validate_evidence_grade.js
-- @types/node
-- typescript
+- helmet
+- js-yaml
+- @nestjs/core
- PaginationDto
- API Contract Specification
- ⚙️ Backend Technical Review (05_dev_backend)
- 🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)
- 🚀 SEO & Content Strategy Review (12_seo_content)
- MetricsController
-- WikiController
+- @nestjs/jwt
- seed-ui-texts.ts
- seed-wiki.ts
- update-blog.dto.ts
@@ -205,12 +212,14 @@
- Raw Finding Verification & Disposition Report
- React + TypeScript + Vite
- Select.tsx
-- users.service.ts
-- auth.service.ts
+- @nestjs/throttler
+- passport
+- auth.controller.ts
- application/README.md
- deploy.sh
- 🔒 Security & Performance Review (09_devops_security)
- 👁️ UX & Persona Interface Review (08_visual_qa)
+- reflect-metadata
- prisma/scientificTerms.ts
- seed-blogs.ts
- seed-custom.ts
@@ -229,6 +238,7 @@
- Input.tsx
- Textarea.tsx
- admin-panel/tsconfig.json
+- swagger-ui-express
- jest
- next.config.ts
- Shabnam Font README
@@ -236,9 +246,16 @@
- rules/graphify.md
- .agents/workflows/graphify.md
- instructions.md
+- @eslint/eslintrc
+- @eslint/js
+- eslint-plugin-prettier
- 20260526160916_add_ui_texts_and_scientific_terms/migration.sql
-- ts-jest
-- RegisterDto
+- @nestjs/cli
+- @nestjs/testing
+- eslint
+- prisma
+- source-map-support
+- supertest
- blog.entity.ts
- home.entity.ts
- wiki.entity.ts
@@ -258,8 +275,11 @@
- start.sh
- User Login API
- User Logout API
-- InitiatePaymentDto
+- ts-loader
- @testing-library/jest-dom
+- ts-node
+- tsconfig-paths
+- @types/bcrypt
- eslint-plugin-react-hooks
- Canina Pharma GmbH
- Pets Table
@@ -281,11 +301,18 @@
- .initiateOrderPayment
- @tailwindcss/postcss
- typescript
+- @types/compression
- typescript-eslint
+- @types/express
+- @types/jest
- @types/react
- globals
+- @types/js-yaml
- vitest
-- Modal.tsx
+- @types/multer
+- @types/passport-jwt
+- MenuManager.tsx
+- typescript-eslint
- typescript
- revalidate/route.ts
- MaskableField.tsx
@@ -293,7 +320,7 @@
## God Nodes (most connected - your core abstractions)
1. `Roles()` - 106 edges
2. `PrismaService` - 87 edges
-3. `useSettingsStore` - 53 edges
+3. `useSettingsStore` - 55 edges
4. `api` - 44 edges
5. `SmsService` - 42 edges
6. `PaginationDto` - 41 edges
@@ -307,39 +334,39 @@
docs/02-user-guide.md → backend/uploads/1781288429353-508765350.jpg
- `AuthController` --references--> `ApiResponse` [EXTRACTED]
backend/src/auth/auth.controller.ts → frontend/admin-panel/src/types/admin.ts
-- `BlogsController` --references--> `ApiResponse` [EXTRACTED]
- backend/src/blogs/blogs.controller.ts → frontend/admin-panel/src/types/admin.ts
-- `HomeController` --references--> `ApiResponse` [EXTRACTED]
- backend/src/home/home.controller.ts → frontend/admin-panel/src/types/admin.ts
- `OrdersController` --references--> `ApiResponse` [EXTRACTED]
backend/src/orders/orders.controller.ts → frontend/admin-panel/src/types/admin.ts
+- `PetsController` --references--> `ApiResponse` [EXTRACTED]
+ backend/src/pets/pets.controller.ts → frontend/admin-panel/src/types/admin.ts
+- `ProductsController` --references--> `ApiResponse` [EXTRACTED]
+ backend/src/products/products.controller.ts → frontend/admin-panel/src/types/admin.ts
## Import Cycles
- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/services/authService.ts -> frontend/application/lib/services/api.ts`
- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/api.ts`
- 4-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/orderService.ts -> frontend/application/lib/services/api.ts`
-## Communities (291 total, 90 thin omitted)
+## Communities (318 total, 117 thin omitted)
### Community 0 - "Roles"
Cohesion: 0.24
Nodes (13): Roles(), PaymentController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get (+5 more)
### Community 1 - "app.module.ts"
-Cohesion: 0.06
-Nodes (40): AppModule, Module, B2BModule, Module, BannersModule, Module, CmsModule, Module (+32 more)
+Cohesion: 0.07
+Nodes (34): BannersModule, Module, CmsModule, Module, SmsModule, Global, Module, ContactModule (+26 more)
### Community 2 - "SmsService"
Cohesion: 0.06
-Nodes (26): SmsService, Injectable, SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString (+18 more)
+Nodes (27): SmsLogQuery, SmsService, Injectable, SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional (+19 more)
### Community 3 - "ProductService"
Cohesion: 0.06
-Nodes (36): CatalogClient(), generateMetadata(), CartDrawer, dynamic, revalidate, DEFAULT_CATEGORIES, dynamic, revalidate (+28 more)
+Nodes (34): generateMetadata(), dynamic, revalidate, DEFAULT_CATEGORIES, dynamic, revalidate, dynamic, revalidate (+26 more)
### Community 4 - "SafeImage.tsx"
-Cohesion: 0.06
-Nodes (26): BlogPostClientProps, BlogPost, BlogPreviewSection(), OrderDetailsModal(), OrderDetailsModalProps, PLAYBACK_RATES, PodcastInlinePlayer(), PodcastInlinePlayerProps (+18 more)
+Cohesion: 0.09
+Nodes (21): BlogCategory, BlogPostItem, ProductDetailModalProps, OrderDetailsModalProps, PLAYBACK_RATES, PodcastInlinePlayerProps, PLAYBACK_RATES, PodcastPlayerModal() (+13 more)
### Community 5 - "CmsController"
Cohesion: 0.09
@@ -347,71 +374,71 @@ Nodes (24): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controlle
### Community 6 - "tickets.controller.ts"
Cohesion: 0.09
-Nodes (29): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString (+21 more)
+Nodes (31): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString (+23 more)
### Community 7 - "pets/pets.controller.ts"
Cohesion: 0.11
Nodes (15): CreatePetDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional, IsString (+7 more)
-### Community 8 - "ReportsController"
-Cohesion: 0.17
-Nodes (9): ReportsController, ApiBearerAuth, ApiOperation, ApiTags, Controller, Get, UseGuards, ReportsService (+1 more)
+### Community 8 - "admin.module.ts"
+Cohesion: 0.07
+Nodes (19): AdminModule, Module, MediaService, Injectable, ReportsController, ApiBearerAuth, ApiOperation, ApiTags (+11 more)
### Community 9 - "devDependencies"
-Cohesion: 0.05
-Nodes (43): devDependencies, eslint, @eslint/eslintrc, @eslint/js, eslint-plugin-prettier, @nestjs/cli, @nestjs/testing, prisma (+35 more)
+Cohesion: 0.22
+Nodes (9): devDependencies, ts-jest, @types/bcryptjs, @types/node, typescript, @types/node, typescript, ts-jest (+1 more)
### Community 10 - "ReviewsService"
-Cohesion: 0.15
-Nodes (13): ReviewsController, ApiBearerAuth, ApiOperation, ApiTags, Controller, Delete, Get, Param (+5 more)
+Cohesion: 0.13
+Nodes (16): ReviewsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more)
-### Community 11 - "MediaSelector.tsx"
-Cohesion: 0.07
-Nodes (33): ConfirmModal(), ConfirmModalProps, getFileType(), Media, MediaSelector(), MediaSelectorProps, Pagination(), PaginationProps (+25 more)
+### Community 11 - "Spinner.tsx"
+Cohesion: 0.09
+Nodes (30): ConfirmModal(), ConfirmModalProps, getFileType(), Media, MediaSelector(), MediaSelectorProps, maxWidthClasses, Modal() (+22 more)
-### Community 12 - "FeaturedProducts.tsx"
-Cohesion: 0.19
-Nodes (8): FeaturedProducts(), ProductCard(), OrderRowSkeleton(), PetProfileSkeleton(), ProductCardSkeleton(), Skeleton(), SkeletonProps, mockProducts
+### Community 12 - "PetProfile.tsx"
+Cohesion: 0.13
+Nodes (13): FeaturedProducts(), OrderDetailsModal(), OrderRowSkeleton(), PetProfileSkeleton(), ProductCardSkeleton(), Skeleton(), SkeletonProps, mockProducts (+5 more)
### Community 13 - "app-audit-verification.e2e-spec.js"
-Cohesion: 0.05
-Nodes (30): CustomHttpExceptionFilter, Catch, PrismaExceptionFilter, Catch, DecimalInterceptor, Injectable, ApiErrorResponse, ErrorDetailField (+22 more)
+Cohesion: 0.07
+Nodes (22): AppModule, Module, CustomHttpExceptionFilter, Catch, PrismaExceptionFilter, Catch, DecimalInterceptor, Injectable (+14 more)
### Community 14 - "lib/services/api.ts"
-Cohesion: 0.06
-Nodes (22): ProductReviews, ProductReviews(), ProductReviewsProps, ReviewItem, api, ApiErrorPayload, baseURL, ApiErr (+14 more)
+Cohesion: 0.09
+Nodes (21): BlogPost, ContactInfoItem, FAQItem, Testimonial, api, ApiErrorPayload, BASE_DOMAIN, baseURL (+13 more)
### Community 15 - "src/services/api.ts"
-Cohesion: 0.08
-Nodes (32): Layout(), ProtectedRoute(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES (+24 more)
+Cohesion: 0.09
+Nodes (25): ProtectedRoute(), Login(), B2BManager, SeoSettingsPage, SmartAdvisorManager, SystemSettingsPage, ApiErrorPayload, failedQueue (+17 more)
### Community 16 - "DoctorQueryDto"
Cohesion: 0.09
Nodes (24): DoctorsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+16 more)
-### Community 17 - "RedisService"
-Cohesion: 0.15
-Nodes (5): RedisModule, Global, Module, RedisService, Injectable
+### Community 17 - "schema.ts"
+Cohesion: 0.14
+Nodes (18): B2BPage(), generateMetadata(), ContactPage(), generateMetadata(), generateMetadata(), getInitialVideos(), Videos(), ContactFormClient() (+10 more)
### Community 18 - "JwtAuthGuard"
-Cohesion: 0.17
-Nodes (8): JwtAuthGuard, Injectable, B2BWholesaleOrderItem, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload
+Cohesion: 0.19
+Nodes (7): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload
-### Community 19 - "ProductsService"
-Cohesion: 0.13
-Nodes (13): ProductsController, ApiOperation, ApiTags, Body, Controller, Get, Param, Patch (+5 more)
+### Community 19 - "ProductsController"
+Cohesion: 0.15
+Nodes (9): ProductsController, ApiOperation, ApiTags, Body, Controller, Get, Param, Patch (+1 more)
### Community 20 - "CreateVideoDto"
Cohesion: 0.09
Nodes (24): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+16 more)
-### Community 21 - "Button.tsx"
-Cohesion: 0.11
-Nodes (14): ButtonProps, ButtonSize, ButtonVariant, Spinner(), Doctor, FAQ, ProductReview, Reviews() (+6 more)
+### Community 21 - "ProductPage.tsx"
+Cohesion: 0.14
+Nodes (14): PodcastInlinePlayer(), CalculatorState, ICON_MAP, ProductPage(), ProductReviews, useCalculatorStore, ProductReviews(), ProductReviewsProps (+6 more)
### Community 22 - "UserDashboard.tsx"
-Cohesion: 0.07
-Nodes (54): AuthModal, LoginModal, VerifyContent(), AddressModal(), AddressModalProps, ArchiveProductCard(), AuthModal(), AuthModalProps (+46 more)
+Cohesion: 0.10
+Nodes (38): VerifyContent(), AddressModal(), AddressModalProps, ArchiveProductCard(), B2BPortal(), BackButton(), BackButtonProps, CheckoutPage() (+30 more)
### Community 23 - "MenuService"
Cohesion: 0.12
@@ -450,36 +477,36 @@ Cohesion: 0.06
Nodes (31): Acceptance Criteria, Affected Application, Affected Files, Alternative Direction, Category, Completion Statement, Confidence, Dependencies (+23 more)
### Community 32 - "adminRoutes.tsx"
-Cohesion: 0.06
-Nodes (23): App(), Props, RouteErrorBoundary, State, HeroBanner, VetTestimonial, CategoryDist, DashboardData (+15 more)
+Cohesion: 0.07
+Nodes (21): App(), CategoryDist, DashboardData, WholesaleRequest, AdminRouteConfig, BannersManager, Categories, Dashboard (+13 more)
-### Community 33 - "wholesale.controller.ts"
+### Community 33 - "WholesaleApplyDto"
Cohesion: 0.10
-Nodes (22): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+14 more)
+Nodes (20): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+12 more)
### Community 34 - "B2BService"
-Cohesion: 0.14
-Nodes (14): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more)
+Cohesion: 0.12
+Nodes (17): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+9 more)
### Community 35 - "AuthController"
Cohesion: 0.27
Nodes (12): AuthController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+4 more)
### Community 36 - "FaqService"
-Cohesion: 0.14
-Nodes (14): FaqController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
+Cohesion: 0.12
+Nodes (16): FaqController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more)
### Community 37 - "راهنمای تست سیستم (Software Testing)"
Cohesion: 0.07
Nodes (25): اجرای بکاند, اجرای فرانتاند, اجرای پروژه در سرور با PM2, برای راهاندازی بکاند:, برای راهاندازی فرانتاند Next.js:, بیلد کردن پروژه (Building), ذخیره پروسهها تا پس از ریاستارت سرور قطع نشوند:, راهاندازی و انتشار سیستم (Setup & Deployment) (+17 more)
-### Community 38 - "Button"
-Cohesion: 0.16
-Nodes (13): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Button(), ThSort(), ThSortProps, GatewayHealth, Stats (+5 more)
+### Community 38 - "Button.tsx"
+Cohesion: 0.07
+Nodes (26): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Button(), ButtonProps, ButtonSize, ButtonVariant, ThSort() (+18 more)
### Community 39 - "CategoriesController"
-Cohesion: 0.10
-Nodes (16): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more)
+Cohesion: 0.09
+Nodes (17): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+9 more)
### Community 40 - "MediaController"
Cohesion: 0.11
@@ -497,21 +524,25 @@ Nodes (14): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controlle
Cohesion: 0.13
Nodes (15): BannersController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+7 more)
-### Community 44 - "TestimonialsService"
+### Community 44 - "TestimonialsController"
Cohesion: 0.13
-Nodes (14): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
+Nodes (12): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+4 more)
### Community 45 - "What You Must Do When Invoked"
Cohesion: 0.07
Nodes (26): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+18 more)
+### Community 46 - "api"
+Cohesion: 0.13
+Nodes (13): Layout(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES, Topbar() (+5 more)
+
### Community 47 - "IngredientsService"
Cohesion: 0.13
Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
-### Community 48 - "Media.tsx"
-Cohesion: 0.19
-Nodes (9): ImagePreviewModal(), ImagePreviewModalProps, getFileType(), Media, MediaManager(), ProductItem, Media, PrescriptionsManager (+1 more)
+### Community 48 - "cartStore.ts"
+Cohesion: 0.13
+Nodes (6): OrderSuccess(), OrderTracking(), OrderService, CartItem, CartStore, Order
### Community 49 - "devDependencies"
Cohesion: 0.11
@@ -525,21 +556,21 @@ Nodes (15): eslint-config-next, devDependencies, eslint, eslint-config-next, jsd
Cohesion: 0.14
Nodes (16): BlogsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more)
-### Community 52 - "PrescriptionsService"
-Cohesion: 0.14
-Nodes (14): PrescriptionsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more)
+### Community 52 - "PrescriptionsController"
+Cohesion: 0.15
+Nodes (12): PrescriptionsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+4 more)
-### Community 53 - "SmartAdvisorService"
-Cohesion: 0.13
-Nodes (14): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
+### Community 53 - "SmartAdvisorController"
+Cohesion: 0.14
+Nodes (12): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+4 more)
### Community 54 - "UsersService"
-Cohesion: 0.08
-Nodes (31): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+23 more)
+Cohesion: 0.06
+Nodes (42): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable (+34 more)
### Community 55 - "UITexts.tsx"
Cohesion: 0.09
-Nodes (20): ICON_REGISTRY, IconPickerModal(), IconPickerModalProps, ActiveStates, PRESET_BG_COLORS, PRESET_COLORS, RichTextEditor(), RichTextEditorProps (+12 more)
+Nodes (19): ICON_REGISTRY, IconPickerModal(), IconPickerModalProps, ImagePreviewModal(), ImagePreviewModalProps, ToggleSwitch(), ToggleSwitchProps, ProductItem (+11 more)
### Community 56 - "Orders.tsx"
Cohesion: 0.09
@@ -557,21 +588,21 @@ Nodes (11): ContactController, Body, Controller, Get, Param, Post, Put, Query (+
Cohesion: 0.06
Nodes (30): compilerOptions, allowSyntheticDefaultImports, baseUrl, declaration, emitDecoratorMetadata, esModuleInterop, experimentalDecorators, forceConsistentCasingInFileNames (+22 more)
-### Community 60 - "CreateUserDto"
-Cohesion: 0.24
-Nodes (10): CreateUserDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsNumber, IsOptional, IsString (+2 more)
+### Community 60 - "Blogs.tsx"
+Cohesion: 0.15
+Nodes (11): ActiveStates, PRESET_BG_COLORS, PRESET_COLORS, RichTextEditor(), RichTextEditorProps, AuthorUser, BlogCategory, BlogPost (+3 more)
-### Community 61 - "CreateEBankCheckoutDto"
-Cohesion: 0.22
-Nodes (8): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsNumber, IsOptional, IsString, Min
+### Community 61 - "payment.controller.ts"
+Cohesion: 0.10
+Nodes (22): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type, CreateEBankCheckoutDto (+14 more)
-### Community 62 - "GetProductsDto"
-Cohesion: 0.29
-Nodes (6): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, Query
+### Community 62 - "ProductsService"
+Cohesion: 0.18
+Nodes (10): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, Query, ProductsModule, Module (+2 more)
### Community 63 - "dependencies"
-Cohesion: 0.05
-Nodes (43): dependencies, bcrypt, bcryptjs, class-transformer, class-validator, compression, helmet, ioredis (+35 more)
+Cohesion: 0.09
+Nodes (23): dependencies, bcrypt, bcryptjs, class-validator, compression, ioredis, @nestjs/common, @nestjs/passport (+15 more)
### Community 64 - "compilerOptions"
Cohesion: 0.10
@@ -582,12 +613,12 @@ Cohesion: 0.50
Nodes (3): app_module_1, supertest_1, testing_1
### Community 66 - "AdminQueryDto"
-Cohesion: 0.21
-Nodes (6): ApiQuery, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString
+Cohesion: 0.18
+Nodes (7): ApiQuery, Get, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString
-### Community 67 - "admin.module.ts"
-Cohesion: 0.06
-Nodes (22): AdminModule, Module, MediaService, Injectable, PetsController, ApiBearerAuth, ApiOperation, ApiQuery (+14 more)
+### Community 67 - "PetsController"
+Cohesion: 0.11
+Nodes (13): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+5 more)
### Community 68 - "20260526145407_init/migration.sql"
Cohesion: 0.27
@@ -602,8 +633,8 @@ Cohesion: 0.08
Nodes (23): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, jsx, lib, module, moduleDetection, moduleResolution (+15 more)
### Community 71 - "getPageMetadata"
-Cohesion: 0.05
-Nodes (30): generateMetadata(), Blog(), generateMetadata(), getBlogs(), getCategories(), revalidate, generateMetadata(), generateMetadata() (+22 more)
+Cohesion: 0.09
+Nodes (16): generateMetadata(), CatalogClient(), generateMetadata(), generateMetadata(), generateMetadata(), generateMetadata(), getHomeData(), Home() (+8 more)
### Community 72 - "Operational Rules & Boundaries"
Cohesion: 0.11
@@ -621,10 +652,6 @@ Nodes (14): ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, De
Cohesion: 0.08
Nodes (32): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, CreateReminderDto, ApiProperty (+24 more)
-### Community 76 - "PaymentService"
-Cohesion: 0.11
-Nodes (9): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type, PaymentService (+1 more)
-
### Community 77 - "seo.module.ts"
Cohesion: 0.16
Nodes (10): SeoController, ApiOperation, ApiTags, Controller, Get, Param, SeoModule, Module (+2 more)
@@ -666,16 +693,16 @@ Cohesion: 0.12
Nodes (17): dependencies, axios, lucide-react, motion, next, react, react-dom, sonner (+9 more)
### Community 88 - "useSettingsStore"
-Cohesion: 0.09
-Nodes (26): B2BPortal, ClientLayout(), BrandLogo(), BrandLogoProps, EnamadBadge(), FAQItem, FAQSection(), Footer() (+18 more)
+Cohesion: 0.11
+Nodes (24): AuthModal, B2BPortal, CartDrawer, ClientLayout(), LoginModal, AuthModal(), AuthModalProps, extractOtpFromText() (+16 more)
### Community 89 - "seed-products.ts"
Cohesion: 0.17
Nodes (12): prisma, main(), prisma, determineSuitableFor(), findOrCreateCategory(), getProductImageUrl(), main(), parseSize() (+4 more)
### Community 90 - "HomeClient.tsx"
-Cohesion: 0.12
-Nodes (20): HomeClient(), HomeClientProps, generateMetadata(), getHomeData(), Home(), CATEGORY_MAP, ICON_MAP, BannerPlacement() (+12 more)
+Cohesion: 0.10
+Nodes (20): HomeClient(), HomeClientProps, CATEGORY_MAP, ICON_MAP, BannerPlacement(), BannerPlacementProps, BlogPreviewSection(), FAQSection() (+12 more)
### Community 91 - "Reconciled Audit Roles & Assignments"
Cohesion: 0.12
@@ -690,20 +717,20 @@ Cohesion: 0.13
Nodes (14): 10. Dependency & Wave Adjustments, 11. Acceptance Criteria Refinements, 12. Business and Product Decision Classification, 13. Final Recommended Backlog Summary, 1. Executive Assessment, 2. Findings That Require No Change, 3. Findings Requiring Task Refinements, 4. Tasks Requiring Splitting (+6 more)
### Community 95 - "blog/[slug]/page.tsx"
-Cohesion: 0.15
-Nodes (17): BlogPostPage(), generateMetadata(), getBlog(), revalidate, safeIso(), safeLocalDate(), generateMetadata(), generateMetadata() (+9 more)
+Cohesion: 0.23
+Nodes (12): BlogPostPage(), generateMetadata(), getBlog(), revalidate, safeIso(), safeLocalDate(), generateMetadata(), revalidate (+4 more)
### Community 96 - "compilerOptions"
Cohesion: 0.06
Nodes (32): compilerOptions, allowJs, esModuleInterop, incremental, isolatedModules, jsx, lib, module (+24 more)
### Community 98 - "scripts"
-Cohesion: 0.14
-Nodes (14): scripts, build, build:nest, docs:generate, lint, start, start:debug, start:dev (+6 more)
+Cohesion: 0.13
+Nodes (15): scripts, build, build:nest, docs:generate, lint, seo:backfill, start, start:debug (+7 more)
### Community 99 - "BlogsController"
-Cohesion: 0.16
-Nodes (14): BlogsController, ApiBearerAuth, ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+6 more)
+Cohesion: 0.06
+Nodes (34): BlogsController, ApiBearerAuth, ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+26 more)
### Community 100 - "Deep Audit Summary Report"
Cohesion: 0.14
@@ -722,20 +749,20 @@ Cohesion: 0.15
Nodes (12): 10. `TASK-VERIFY-001`, 1. `TASK-SEC-001`, 2. `TASK-SEC-002`, 3. `TASK-SEC-003`, 4. `TASK-FIN-001`, 5. `TASK-BUILD-001`, 6. `TASK-AUTH-001`, 7. `TASK-FE-001` (+4 more)
### Community 104 - "Coupons.tsx"
-Cohesion: 0.15
-Nodes (11): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData, CouponModalProps, CouponTarget (+3 more)
+Cohesion: 0.13
+Nodes (12): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData, CouponModalProps, CouponTarget (+4 more)
### Community 105 - "Operational Rules & Boundaries"
Cohesion: 0.17
Nodes (11): 1. Detect Test Runner from Tech Stack, 2. Execution Output Capture (Mandatory), 3. Acceptance Criteria Verification, 4. Failure Routing Protocol, 5. Success Routing Protocol, 6. Forbidden Actions, Expected JSON Output Schema, Operational Rules & Boundaries (+3 more)
-### Community 106 - "AdminLoginDto"
-Cohesion: 0.29
-Nodes (6): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength
+### Community 106 - "Reports.tsx"
+Cohesion: 0.20
+Nodes (7): BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps, ReportData, TopCouponItem, Reports
### Community 108 - "PrismaService"
-Cohesion: 0.07
-Nodes (19): CategoryQuery, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions, SmsConfig, SmsLogQuery, CreateContactSubmissionDto, UpdateContactInfoItemDto (+11 more)
+Cohesion: 0.06
+Nodes (26): PetQuery, WikiQuery, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions, SmsConfig, CreateContactSubmissionDto, UpdateContactInfoItemDto (+18 more)
### Community 109 - "1. Summary of Integrity Repairs Performed"
Cohesion: 0.17
@@ -753,9 +780,9 @@ Nodes (10): 1. Mark Active Task as Complete, 2. Documentation Updates, 3. Dynami
Cohesion: 0.18
Nodes (10): 1. Pre-Deployment Checklist, 2. Build Verification, 3. Deployment Strategy (Based on Target), 4. Post-Deployment Health Check, 5. Forbidden Actions, Expected JSON Output Schema, Operational Rules & Boundaries, Required Output Artifacts (What files to write/update) (+2 more)
-### Community 113 - "reviews.service.ts"
-Cohesion: 0.29
-Nodes (5): ApiProperty, IsIn, IsOptional, IsString, UpdateReviewDto
+### Community 113 - "reviews.controller.ts"
+Cohesion: 0.15
+Nodes (13): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+5 more)
### Community 114 - "AppService"
Cohesion: 0.29
@@ -785,10 +812,6 @@ Nodes (9): compilerOptions, esModuleInterop, module, moduleResolution, skipLibCh
Cohesion: 0.20
Nodes (9): Compile and run the project, Deployment, Description, License, Project setup, Resources, Run tests, Stay in touch (+1 more)
-### Community 122 - "auth.module.ts"
-Cohesion: 0.18
-Nodes (10): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable (+2 more)
-
### Community 124 - "Repository Map"
Cohesion: 0.20
Nodes (9): 1. Active Customer Storefront: React 19 + Vite Application, 2. Active Backend Service: NestJS Application, 3. Excluded Placeholder / Non-Auditable Directories, Active Applications & Non-Auditable Scopes, Documentation Governance, Important Configuration & Infrastructure Files, Mandatory Global Audit Exclusions, Repository Map (+1 more)
@@ -806,8 +829,12 @@ Cohesion: 0.20
Nodes (9): Arch Linux, Contributors, Install, Known problems for variable version, License, Sahel-Font, To Do (variable), طریقه استفاده از نسخه متغیر variable (+1 more)
### Community 128 - "AdminService"
-Cohesion: 0.13
-Nodes (5): Delete, Param, Put, AdminService, Injectable
+Cohesion: 0.09
+Nodes (13): AdminController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Param (+5 more)
+
+### Community 129 - "RouteErrorBoundary"
+Cohesion: 0.22
+Nodes (3): Props, RouteErrorBoundary, State
### Community 130 - "Sahel-Font"
Cohesion: 0.20
@@ -825,9 +852,9 @@ Nodes (8): cmd_next_task(), cmd_progress(), cmd_reset(), cmd_status(), cmd_unblo
Cohesion: 0.22
Nodes (8): author, description, license, name, prisma, seed, private, version
-### Community 134 - "CreateReviewDto"
-Cohesion: 0.17
-Nodes (11): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, Body (+3 more)
+### Community 134 - "blog/page.tsx"
+Cohesion: 0.38
+Nodes (6): Blog(), generateMetadata(), getBlogs(), getCategories(), revalidate, BlogPage()
### Community 135 - "graphify reference: extra exports and benchmark"
Cohesion: 0.22
@@ -845,6 +872,10 @@ Nodes (8): 1. `TASK-AUTH-001`, 2. `TASK-FIN-001`, 3. `DECISION-002`, 4. `TASK-VE
Cohesion: 0.22
Nodes (8): Arch Linux, bower, Install, npm, Shabnam Font, yarn, طریقه استفاده در صفحات وب:, نمونه متن Sample:
+### Community 139 - "layout.tsx"
+Cohesion: 0.43
+Nodes (5): generateMetadata(), RootLayout(), lalezar, vazirmatn, generateOrganizationSchema()
+
### Community 140 - "ErrorBoundary"
Cohesion: 0.22
Nodes (3): ErrorBoundary, Props, State
@@ -862,20 +893,20 @@ Cohesion: 0.25
Nodes (6): app_module_1, core_1, fs, path, swagger_1, yaml
### Community 145 - "admin.service.ts"
-Cohesion: 0.16
-Nodes (11): CouponInput, CouponTargetInput, PaginationQuery, ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber (+3 more)
+Cohesion: 0.13
+Nodes (20): CouponInput, CouponTargetInput, PaginationQuery, ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber (+12 more)
### Community 146 - "System Discovery"
Cohesion: 0.25
Nodes (7): Active Core Applications, Current Architecture, Evidence-Based Status Matrix, Excluded / Non-Auditable Artifacts, Major Business Domains Discovered, System Discovery, Technical Architecture Summary
### Community 147 - "RevalidationService"
-Cohesion: 0.14
+Cohesion: 0.17
Nodes (5): RevalidationModule, Global, Module, RevalidationService, Injectable
-### Community 148 - "AdminController"
-Cohesion: 0.16
-Nodes (7): AdminController, ApiBearerAuth, ApiTags, Body, Controller, Post, UseGuards
+### Community 148 - "wiki/[slug]/page.tsx"
+Cohesion: 0.60
+Nodes (5): generateMetadata(), getRelatedProducts(), getWikiTerm(), WikiTermPage(), generateMedicalWebPageSchema()
### Community 149 - "SmsSettingsPage.tsx"
Cohesion: 0.29
@@ -885,9 +916,9 @@ Nodes (7): PatternItem, SmsConfigState, SmsLogItem, SmsLogStats, SmsSettingsPage
Cohesion: 0.29
Nodes (6): 1. Executive Vision, 2. Target Audience, 3. Functional Requirements, 4. Non-Functional Requirements (Performance, Security), 5. Epic / Feature Breakdown, Product Requirement Document (PRD)
-### Community 151 - "AuthService"
-Cohesion: 0.21
-Nodes (3): AuthService, Injectable, normalizeMobile()
+### Community 151 - "auth.service.ts"
+Cohesion: 0.08
+Nodes (13): AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, SendOtpDto, ApiProperty, IsNotEmpty (+5 more)
### Community 153 - "exclude"
Cohesion: 0.22
@@ -897,6 +928,10 @@ Nodes (8): exclude, extends, dist, node_modules, prisma, **/*spec.ts, test, ./ts
Cohesion: 0.29
Nodes (6): Attempted Command Execution Log, Backend `backend/package.json` Scripts, Baseline Command Plan & Reconciled Command History, Package Scripts Safety Analysis, Permitted Safe Checks for Phase 2, Root `package.json` Scripts
+### Community 155 - "seo-backfill.ts"
+Cohesion: 0.67
+Nodes (3): prisma, runSeoBackfill(), stripHtml()
+
### Community 159 - "with-vpn.sh"
Cohesion: 0.62
Nodes (6): cleanup(), log(), with-vpn.sh script, start_vpn(), stop_vpn(), vpn_is_up()
@@ -966,8 +1001,8 @@ Cohesion: 0.40
Nodes (4): activeFiles, errors, validationOutput, warnings
### Community 179 - "PaginationDto"
-Cohesion: 0.06
-Nodes (25): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional (+17 more)
+Cohesion: 0.05
+Nodes (29): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional (+21 more)
### Community 180 - "API Contract Specification"
Cohesion: 0.50
@@ -989,10 +1024,6 @@ Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO &
Cohesion: 0.29
Nodes (5): ApiExcludeController, MetricsController, Controller, Get, Res
-### Community 185 - "WikiController"
-Cohesion: 0.13
-Nodes (13): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+5 more)
-
### Community 191 - "graphify reference: add a URL and watch a folder"
Cohesion: 0.50
Nodes (3): For /graphify add, For --watch, graphify reference: add a URL and watch a folder
@@ -1017,9 +1048,9 @@ Nodes (3): Expanding the ESLint configuration, React Compiler, React + TypeScrip
Cohesion: 0.50
Nodes (3): Select, SelectOption, SelectProps
-### Community 199 - "auth.service.ts"
-Cohesion: 0.11
-Nodes (19): AdminLoginInput, LoginInput, RegisterInput, LoginDto, ApiProperty, IsNotEmpty, IsString, MinLength (+11 more)
+### Community 199 - "auth.controller.ts"
+Cohesion: 0.08
+Nodes (25): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+17 more)
### Community 200 - "application/README.md"
Cohesion: 0.50
@@ -1037,45 +1068,41 @@ Nodes (3): ADR-AUTH-001: Admin Panel Authentication Architecture & Token Managem
Cohesion: 0.67
Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font
-### Community 239 - "RegisterDto"
-Cohesion: 0.22
-Nodes (8): RegisterDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsOptional, IsString, MinLength
-
-### Community 264 - "InitiatePaymentDto"
-Cohesion: 0.43
-Nodes (7): InitiatePaymentDto, InitiateWalletTopupDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString
+### Community 294 - "ZibalService"
+Cohesion: 0.09
+Nodes (4): PaymentService, Injectable, Injectable, ZibalService
### Community 298 - ".initiateOrderPayment"
Cohesion: 0.20
Nodes (10): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto, ApiBadRequestResponse, ApiOkResponse, Req, Res (+2 more)
-### Community 313 - "Modal.tsx"
-Cohesion: 0.08
-Nodes (17): maxWidthClasses, Modal(), ModalProps, ContactInfoItem, ContactSubmission, MENU_TABS, MenuItem, MenuType (+9 more)
+### Community 313 - "MenuManager.tsx"
+Cohesion: 0.33
+Nodes (4): MENU_TABS, MenuItem, MenuType, MenuManager
### Community 317 - "revalidate/route.ts"
Cohesion: 0.83
Nodes (3): GET(), handleRevalidate(), POST()
## Knowledge Gaps
-- **1300 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1295 more)
+- **1307 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1302 more)
These have ≤1 connection - possible missing edges or undocumented components.
-- **90 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
+- **117 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
-- **Why does `ApiResponse` connect `src/services/api.ts` to `BlogsController`, `AuthController`, `PetsController`, `app-audit-verification.e2e-spec.js`, `ProductsService`, `UsersService`, `WikiController`, `OrdersService`?**
- _High betweenness centrality (0.070) - this node is a cross-community bridge._
-- **Why does `Roles()` connect `Roles` to `wholesale.controller.ts`, `B2BService`, `SmsService`, `FaqService`, `CmsController`, `tickets.controller.ts`, `SslController`, `BannersService`, `ReviewsService`, `TestimonialsService`, `IngredientsService`, `JwtAuthGuard`, `ProductsService`, `PrescriptionsService`, `SmartAdvisorService`, `MenuService`, `ContactService`?**
- _High betweenness centrality (0.063) - this node is a cross-community bridge._
-- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `wholesale.controller.ts`, `admin.module.ts`, `CmsController`, `tickets.controller.ts`, `auth.service.ts`, `pets/pets.controller.ts`, `users.service.ts`, `DoctorQueryDto`, `admin.service.ts`, `PaginationDto`?**
- _High betweenness centrality (0.033) - this node is a cross-community bridge._
+- **Why does `ApiResponse` connect `BlogsController` to `AuthController`, `PetsController`, `src/services/api.ts`, `ProductsController`, `UsersService`, `OrdersService`?**
+ _High betweenness centrality (0.069) - this node is a cross-community bridge._
+- **Why does `Roles()` connect `Roles` to `SmsService`, `CmsController`, `tickets.controller.ts`, `ReviewsService`, `JwtAuthGuard`, `ProductsController`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `FaqService`, `SslController`, `BannersService`, `TestimonialsController`, `IngredientsService`, `PrescriptionsController`, `SmartAdvisorController`, `ContactService`, `payment.controller.ts`, `ProductsService`, `reviews.controller.ts`?**
+ _High betweenness centrality (0.059) - this node is a cross-community bridge._
+- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `B2BService`, `PetsController`, `FaqService`, `CmsController`, `tickets.controller.ts`, `CategoriesController`, `admin.module.ts`, `auth.controller.ts`, `pets/pets.controller.ts`, `DoctorQueryDto`, `admin.service.ts`, `reviews.controller.ts`, `PaginationDto`, `UsersService`, `payment.controller.ts`, `ProductsService`?**
+ _High betweenness centrality (0.030) - this node is a cross-community bridge._
- **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?**
- _1300 weakly-connected nodes found - possible documentation gaps or missing edges._
+ _1307 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `app.module.ts` be split into smaller, more focused modules?**
- _Cohesion score 0.05632360471070148 - nodes in this community are weakly interconnected._
+ _Cohesion score 0.07215686274509804 - nodes in this community are weakly interconnected._
- **Should `SmsService` be split into smaller, more focused modules?**
- _Cohesion score 0.055964653902798235 - nodes in this community are weakly interconnected._
+ _Cohesion score 0.055040197897340756 - nodes in this community are weakly interconnected._
- **Should `ProductService` be split into smaller, more focused modules?**
- _Cohesion score 0.057342657342657345 - nodes in this community are weakly interconnected._
\ No newline at end of file
+ _Cohesion score 0.060814383923849816 - nodes in this community are weakly interconnected._
\ No newline at end of file
diff --git a/graphify-out/cache/ast/v0.9.44/164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5.json b/graphify-out/cache/ast/v0.9.44/164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5.json
new file mode 100644
index 0000000..02a72b7
--- /dev/null
+++ b/graphify-out/cache/ast/v0.9.44/164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5.json
@@ -0,0 +1 @@
+{"nodes": [{"id": "$graphify-root$_backend_package_json", "label": "package.json", "file_type": "code", "source_file": "backend/package.json", "source_location": "L1"}, {"id": "$graphify-root$_backend_package_name", "label": "name", "file_type": "code", "source_file": "backend/package.json", "source_location": "L2"}, {"id": "$graphify-root$_backend_package_version", "label": "version", "file_type": "code", "source_file": "backend/package.json", "source_location": "L3"}, {"id": "$graphify-root$_backend_package_description", "label": "description", "file_type": "code", "source_file": "backend/package.json", "source_location": "L4"}, {"id": "$graphify-root$_backend_package_author", "label": "author", "file_type": "code", "source_file": "backend/package.json", "source_location": "L5"}, {"id": "$graphify-root$_backend_package_private", "label": "private", "file_type": "code", "source_file": "backend/package.json", "source_location": "L6"}, {"id": "$graphify-root$_backend_package_license", "label": "license", "file_type": "code", "source_file": "backend/package.json", "source_location": "L7"}, {"id": "$graphify-root$_backend_package_scripts", "label": "scripts", "file_type": "code", "source_file": "backend/package.json", "source_location": "L8"}, {"id": "$graphify-root$_backend_package_scripts_build", "label": "build", "file_type": "code", "source_file": "backend/package.json", "source_location": "L9"}, {"id": "$graphify-root$_backend_package_scripts_build_nest", "label": "build:nest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L10"}, {"id": "$graphify-root$_backend_package_scripts_start", "label": "start", "file_type": "code", "source_file": "backend/package.json", "source_location": "L11"}, {"id": "$graphify-root$_backend_package_scripts_start_dev", "label": "start:dev", "file_type": "code", "source_file": "backend/package.json", "source_location": "L12"}, {"id": "$graphify-root$_backend_package_scripts_start_debug", "label": "start:debug", "file_type": "code", "source_file": "backend/package.json", "source_location": "L13"}, {"id": "$graphify-root$_backend_package_scripts_start_prod", "label": "start:prod", "file_type": "code", "source_file": "backend/package.json", "source_location": "L14"}, {"id": "$graphify-root$_backend_package_scripts_lint", "label": "lint", "file_type": "code", "source_file": "backend/package.json", "source_location": "L15"}, {"id": "$graphify-root$_backend_package_scripts_test", "label": "test", "file_type": "code", "source_file": "backend/package.json", "source_location": "L16"}, {"id": "$graphify-root$_backend_package_scripts_test_watch", "label": "test:watch", "file_type": "code", "source_file": "backend/package.json", "source_location": "L17"}, {"id": "$graphify-root$_backend_package_scripts_test_cov", "label": "test:cov", "file_type": "code", "source_file": "backend/package.json", "source_location": "L18"}, {"id": "$graphify-root$_backend_package_scripts_test_debug", "label": "test:debug", "file_type": "code", "source_file": "backend/package.json", "source_location": "L19"}, {"id": "$graphify-root$_backend_package_scripts_test_e2e", "label": "test:e2e", "file_type": "code", "source_file": "backend/package.json", "source_location": "L20"}, {"id": "$graphify-root$_backend_package_scripts_docs_generate", "label": "docs:generate", "file_type": "code", "source_file": "backend/package.json", "source_location": "L21"}, {"id": "$graphify-root$_backend_package_scripts_seo_backfill", "label": "seo:backfill", "file_type": "code", "source_file": "backend/package.json", "source_location": "L22"}, {"id": "$graphify-root$_backend_package_dependencies", "label": "dependencies", "file_type": "code", "source_file": "backend/package.json", "source_location": "L24"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_common", "label": "@nestjs/common", "file_type": "code", "source_file": "backend/package.json", "source_location": "L25"}, {"id": "nestjs_common", "label": "@nestjs/common", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L25"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_core", "label": "@nestjs/core", "file_type": "code", "source_file": "backend/package.json", "source_location": "L26"}, {"id": "nestjs_core", "label": "@nestjs/core", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L26"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_jwt", "label": "@nestjs/jwt", "file_type": "code", "source_file": "backend/package.json", "source_location": "L27"}, {"id": "nestjs_jwt", "label": "@nestjs/jwt", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L27"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_passport", "label": "@nestjs/passport", "file_type": "code", "source_file": "backend/package.json", "source_location": "L28"}, {"id": "nestjs_passport", "label": "@nestjs/passport", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L28"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_platform_express", "label": "@nestjs/platform-express", "file_type": "code", "source_file": "backend/package.json", "source_location": "L29"}, {"id": "nestjs_platform_express", "label": "@nestjs/platform-express", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L29"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_swagger", "label": "@nestjs/swagger", "file_type": "code", "source_file": "backend/package.json", "source_location": "L30"}, {"id": "nestjs_swagger", "label": "@nestjs/swagger", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L30"}, {"id": "$graphify-root$_backend_package_dependencies_nestjs_throttler", "label": "@nestjs/throttler", "file_type": "code", "source_file": "backend/package.json", "source_location": "L31"}, {"id": "nestjs_throttler", "label": "@nestjs/throttler", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L31"}, {"id": "$graphify-root$_backend_package_dependencies_prisma_client", "label": "@prisma/client", "file_type": "code", "source_file": "backend/package.json", "source_location": "L32"}, {"id": "prisma_client", "label": "@prisma/client", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L32"}, {"id": "$graphify-root$_backend_package_dependencies_bcrypt", "label": "bcrypt", "file_type": "code", "source_file": "backend/package.json", "source_location": "L33"}, {"id": "bcrypt", "label": "bcrypt", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L33"}, {"id": "$graphify-root$_backend_package_dependencies_bcryptjs", "label": "bcryptjs", "file_type": "code", "source_file": "backend/package.json", "source_location": "L34"}, {"id": "bcryptjs", "label": "bcryptjs", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L34"}, {"id": "$graphify-root$_backend_package_dependencies_class_transformer", "label": "class-transformer", "file_type": "code", "source_file": "backend/package.json", "source_location": "L35"}, {"id": "class_transformer", "label": "class-transformer", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L35"}, {"id": "$graphify-root$_backend_package_dependencies_class_validator", "label": "class-validator", "file_type": "code", "source_file": "backend/package.json", "source_location": "L36"}, {"id": "class_validator", "label": "class-validator", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L36"}, {"id": "$graphify-root$_backend_package_dependencies_compression", "label": "compression", "file_type": "code", "source_file": "backend/package.json", "source_location": "L37"}, {"id": "compression", "label": "compression", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L37"}, {"id": "$graphify-root$_backend_package_dependencies_helmet", "label": "helmet", "file_type": "code", "source_file": "backend/package.json", "source_location": "L38"}, {"id": "helmet", "label": "helmet", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L38"}, {"id": "$graphify-root$_backend_package_dependencies_ioredis", "label": "ioredis", "file_type": "code", "source_file": "backend/package.json", "source_location": "L39"}, {"id": "ioredis", "label": "ioredis", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L39"}, {"id": "$graphify-root$_backend_package_dependencies_js_yaml", "label": "js-yaml", "file_type": "code", "source_file": "backend/package.json", "source_location": "L40"}, {"id": "js_yaml", "label": "js-yaml", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L40"}, {"id": "$graphify-root$_backend_package_dependencies_passport", "label": "passport", "file_type": "code", "source_file": "backend/package.json", "source_location": "L41"}, {"id": "passport", "label": "passport", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L41"}, {"id": "$graphify-root$_backend_package_dependencies_passport_jwt", "label": "passport-jwt", "file_type": "code", "source_file": "backend/package.json", "source_location": "L42"}, {"id": "passport_jwt", "label": "passport-jwt", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L42"}, {"id": "$graphify-root$_backend_package_dependencies_reflect_metadata", "label": "reflect-metadata", "file_type": "code", "source_file": "backend/package.json", "source_location": "L43"}, {"id": "reflect_metadata", "label": "reflect-metadata", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L43"}, {"id": "$graphify-root$_backend_package_dependencies_rxjs", "label": "rxjs", "file_type": "code", "source_file": "backend/package.json", "source_location": "L44"}, {"id": "rxjs", "label": "rxjs", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L44"}, {"id": "$graphify-root$_backend_package_dependencies_swagger_ui_express", "label": "swagger-ui-express", "file_type": "code", "source_file": "backend/package.json", "source_location": "L45"}, {"id": "swagger_ui_express", "label": "swagger-ui-express", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L45"}, {"id": "$graphify-root$_backend_package_devdependencies", "label": "devDependencies", "file_type": "code", "source_file": "backend/package.json", "source_location": "L47"}, {"id": "$graphify-root$_backend_package_devdependencies_eslint_eslintrc", "label": "@eslint/eslintrc", "file_type": "code", "source_file": "backend/package.json", "source_location": "L48"}, {"id": "eslint_eslintrc", "label": "@eslint/eslintrc", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L48"}, {"id": "$graphify-root$_backend_package_devdependencies_eslint_js", "label": "@eslint/js", "file_type": "code", "source_file": "backend/package.json", "source_location": "L49"}, {"id": "eslint_js", "label": "@eslint/js", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L49"}, {"id": "$graphify-root$_backend_package_devdependencies_nestjs_cli", "label": "@nestjs/cli", "file_type": "code", "source_file": "backend/package.json", "source_location": "L50"}, {"id": "nestjs_cli", "label": "@nestjs/cli", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L50"}, {"id": "$graphify-root$_backend_package_devdependencies_nestjs_schematics", "label": "@nestjs/schematics", "file_type": "code", "source_file": "backend/package.json", "source_location": "L51"}, {"id": "nestjs_schematics", "label": "@nestjs/schematics", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L51"}, {"id": "$graphify-root$_backend_package_devdependencies_nestjs_testing", "label": "@nestjs/testing", "file_type": "code", "source_file": "backend/package.json", "source_location": "L52"}, {"id": "nestjs_testing", "label": "@nestjs/testing", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L52"}, {"id": "$graphify-root$_backend_package_devdependencies_types_bcrypt", "label": "@types/bcrypt", "file_type": "code", "source_file": "backend/package.json", "source_location": "L53"}, {"id": "types_bcrypt", "label": "@types/bcrypt", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L53"}, {"id": "$graphify-root$_backend_package_devdependencies_types_bcryptjs", "label": "@types/bcryptjs", "file_type": "code", "source_file": "backend/package.json", "source_location": "L54"}, {"id": "types_bcryptjs", "label": "@types/bcryptjs", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L54"}, {"id": "$graphify-root$_backend_package_devdependencies_types_compression", "label": "@types/compression", "file_type": "code", "source_file": "backend/package.json", "source_location": "L55"}, {"id": "types_compression", "label": "@types/compression", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L55"}, {"id": "$graphify-root$_backend_package_devdependencies_types_express", "label": "@types/express", "file_type": "code", "source_file": "backend/package.json", "source_location": "L56"}, {"id": "types_express", "label": "@types/express", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L56"}, {"id": "$graphify-root$_backend_package_devdependencies_types_jest", "label": "@types/jest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L57"}, {"id": "types_jest", "label": "@types/jest", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L57"}, {"id": "$graphify-root$_backend_package_devdependencies_types_js_yaml", "label": "@types/js-yaml", "file_type": "code", "source_file": "backend/package.json", "source_location": "L58"}, {"id": "types_js_yaml", "label": "@types/js-yaml", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L58"}, {"id": "$graphify-root$_backend_package_devdependencies_types_multer", "label": "@types/multer", "file_type": "code", "source_file": "backend/package.json", "source_location": "L59"}, {"id": "types_multer", "label": "@types/multer", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L59"}, {"id": "$graphify-root$_backend_package_devdependencies_types_node", "label": "@types/node", "file_type": "code", "source_file": "backend/package.json", "source_location": "L60"}, {"id": "types_node", "label": "@types/node", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L60"}, {"id": "$graphify-root$_backend_package_devdependencies_types_passport_jwt", "label": "@types/passport-jwt", "file_type": "code", "source_file": "backend/package.json", "source_location": "L61"}, {"id": "types_passport_jwt", "label": "@types/passport-jwt", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L61"}, {"id": "$graphify-root$_backend_package_devdependencies_types_supertest", "label": "@types/supertest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L62"}, {"id": "types_supertest", "label": "@types/supertest", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L62"}, {"id": "$graphify-root$_backend_package_devdependencies_eslint", "label": "eslint", "file_type": "code", "source_file": "backend/package.json", "source_location": "L63"}, {"id": "eslint", "label": "eslint", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L63"}, {"id": "$graphify-root$_backend_package_devdependencies_eslint_config_prettier", "label": "eslint-config-prettier", "file_type": "code", "source_file": "backend/package.json", "source_location": "L64"}, {"id": "eslint_config_prettier", "label": "eslint-config-prettier", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L64"}, {"id": "$graphify-root$_backend_package_devdependencies_eslint_plugin_prettier", "label": "eslint-plugin-prettier", "file_type": "code", "source_file": "backend/package.json", "source_location": "L65"}, {"id": "eslint_plugin_prettier", "label": "eslint-plugin-prettier", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L65"}, {"id": "$graphify-root$_backend_package_devdependencies_globals", "label": "globals", "file_type": "code", "source_file": "backend/package.json", "source_location": "L66"}, {"id": "globals", "label": "globals", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L66"}, {"id": "$graphify-root$_backend_package_devdependencies_jest", "label": "jest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L67"}, {"id": "jest", "label": "jest", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L67"}, {"id": "$graphify-root$_backend_package_devdependencies_prettier", "label": "prettier", "file_type": "code", "source_file": "backend/package.json", "source_location": "L68"}, {"id": "prettier", "label": "prettier", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L68"}, {"id": "$graphify-root$_backend_package_devdependencies_prisma", "label": "prisma", "file_type": "code", "source_file": "backend/package.json", "source_location": "L69"}, {"id": "prisma", "label": "prisma", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L69"}, {"id": "$graphify-root$_backend_package_devdependencies_source_map_support", "label": "source-map-support", "file_type": "code", "source_file": "backend/package.json", "source_location": "L70"}, {"id": "source_map_support", "label": "source-map-support", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L70"}, {"id": "$graphify-root$_backend_package_devdependencies_supertest", "label": "supertest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L71"}, {"id": "supertest", "label": "supertest", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L71"}, {"id": "$graphify-root$_backend_package_devdependencies_ts_jest", "label": "ts-jest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L72"}, {"id": "ts_jest", "label": "ts-jest", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L72"}, {"id": "$graphify-root$_backend_package_devdependencies_ts_loader", "label": "ts-loader", "file_type": "code", "source_file": "backend/package.json", "source_location": "L73"}, {"id": "ts_loader", "label": "ts-loader", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L73"}, {"id": "$graphify-root$_backend_package_devdependencies_ts_node", "label": "ts-node", "file_type": "code", "source_file": "backend/package.json", "source_location": "L74"}, {"id": "ts_node", "label": "ts-node", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L74"}, {"id": "$graphify-root$_backend_package_devdependencies_tsconfig_paths", "label": "tsconfig-paths", "file_type": "code", "source_file": "backend/package.json", "source_location": "L75"}, {"id": "tsconfig_paths", "label": "tsconfig-paths", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L75"}, {"id": "$graphify-root$_backend_package_devdependencies_typescript", "label": "typescript", "file_type": "code", "source_file": "backend/package.json", "source_location": "L76"}, {"id": "typescript", "label": "typescript", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L76"}, {"id": "$graphify-root$_backend_package_devdependencies_typescript_eslint", "label": "typescript-eslint", "file_type": "code", "source_file": "backend/package.json", "source_location": "L77"}, {"id": "typescript_eslint", "label": "typescript-eslint", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L77"}, {"id": "$graphify-root$_backend_package_jest", "label": "jest", "file_type": "code", "source_file": "backend/package.json", "source_location": "L79"}, {"id": "$graphify-root$_backend_package_jest_modulefileextensions", "label": "moduleFileExtensions", "file_type": "code", "source_file": "backend/package.json", "source_location": "L80"}, {"id": "ref_js", "label": "js", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L80"}, {"id": "ref_json", "label": "json", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L80"}, {"id": "ref_ts", "label": "ts", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L80"}, {"id": "$graphify-root$_backend_package_jest_rootdir", "label": "rootDir", "file_type": "code", "source_file": "backend/package.json", "source_location": "L85"}, {"id": "$graphify-root$_backend_package_jest_testregex", "label": "testRegex", "file_type": "code", "source_file": "backend/package.json", "source_location": "L86"}, {"id": "$graphify-root$_backend_package_jest_transform", "label": "transform", "file_type": "code", "source_file": "backend/package.json", "source_location": "L87"}, {"id": "$graphify-root$_backend_package_transform_t_j_s", "label": "^.+\\\\.(t|j)s$", "file_type": "code", "source_file": "backend/package.json", "source_location": "L88"}, {"id": "$graphify-root$_backend_package_jest_collectcoveragefrom", "label": "collectCoverageFrom", "file_type": "code", "source_file": "backend/package.json", "source_location": "L90"}, {"id": "ref_t_j_s", "label": "**/*.(t|j)s", "file_type": "concept", "source_file": "backend/package.json", "source_location": "L90"}, {"id": "$graphify-root$_backend_package_jest_coveragedirectory", "label": "coverageDirectory", "file_type": "code", "source_file": "backend/package.json", "source_location": "L93"}, {"id": "$graphify-root$_backend_package_jest_testenvironment", "label": "testEnvironment", "file_type": "code", "source_file": "backend/package.json", "source_location": "L94"}, {"id": "$graphify-root$_backend_package_prisma", "label": "prisma", "file_type": "code", "source_file": "backend/package.json", "source_location": "L96"}, {"id": "$graphify-root$_backend_package_prisma_seed", "label": "seed", "file_type": "code", "source_file": "backend/package.json", "source_location": "L97"}], "edges": [{"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L2", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_version", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L3", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_description", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L4", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_author", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L5", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_private", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L6", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_license", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L7", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_scripts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L8", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_build", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L9", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_build_nest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L10", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_start", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L11", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_start_dev", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L12", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_start_debug", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_start_prod", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L14", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_lint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L15", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_test", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L16", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_test_watch", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L17", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_test_cov", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L18", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_test_debug", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L19", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_test_e2e", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L20", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_docs_generate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L21", "weight": 1.0}, {"source": "$graphify-root$_backend_package_scripts", "target": "$graphify-root$_backend_package_scripts_seo_backfill", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L22", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_dependencies", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L24", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_common", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L25", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_common", "target": "nestjs_common", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L25", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_core", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L26", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_core", "target": "nestjs_core", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L26", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_jwt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L27", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_jwt", "target": "nestjs_jwt", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L27", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_passport", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L28", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_passport", "target": "nestjs_passport", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L28", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_platform_express", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L29", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_platform_express", "target": "nestjs_platform_express", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L29", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_swagger", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L30", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_swagger", "target": "nestjs_swagger", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L30", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_nestjs_throttler", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L31", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_nestjs_throttler", "target": "nestjs_throttler", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L31", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_prisma_client", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L32", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_prisma_client", "target": "prisma_client", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L32", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_bcrypt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L33", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_bcrypt", "target": "bcrypt", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L33", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_bcryptjs", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L34", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_bcryptjs", "target": "bcryptjs", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L34", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_class_transformer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L35", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_class_transformer", "target": "class_transformer", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L35", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_class_validator", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L36", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_class_validator", "target": "class_validator", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L36", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_compression", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L37", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_compression", "target": "compression", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L37", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_helmet", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L38", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_helmet", "target": "helmet", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L38", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_ioredis", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L39", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_ioredis", "target": "ioredis", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L39", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_js_yaml", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L40", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_js_yaml", "target": "js_yaml", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L40", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_passport", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L41", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_passport", "target": "passport", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L41", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_passport_jwt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L42", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_passport_jwt", "target": "passport_jwt", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L42", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_reflect_metadata", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L43", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_reflect_metadata", "target": "reflect_metadata", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L43", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_rxjs", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L44", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_rxjs", "target": "rxjs", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L44", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_dependencies", "target": "$graphify-root$_backend_package_dependencies_swagger_ui_express", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L45", "weight": 1.0}, {"source": "$graphify-root$_backend_package_dependencies_swagger_ui_express", "target": "swagger_ui_express", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L45", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_devdependencies", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L47", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_eslint_eslintrc", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L48", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_eslint_eslintrc", "target": "eslint_eslintrc", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L48", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_eslint_js", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L49", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_eslint_js", "target": "eslint_js", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L49", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_nestjs_cli", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L50", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_nestjs_cli", "target": "nestjs_cli", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L50", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_nestjs_schematics", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L51", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_nestjs_schematics", "target": "nestjs_schematics", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L51", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_nestjs_testing", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L52", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_nestjs_testing", "target": "nestjs_testing", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L52", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_bcrypt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L53", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_bcrypt", "target": "types_bcrypt", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L53", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_bcryptjs", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L54", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_bcryptjs", "target": "types_bcryptjs", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L54", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_compression", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L55", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_compression", "target": "types_compression", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L55", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_express", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L56", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_express", "target": "types_express", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L56", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_jest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L57", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_jest", "target": "types_jest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L57", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_js_yaml", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L58", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_js_yaml", "target": "types_js_yaml", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L58", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_multer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L59", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_multer", "target": "types_multer", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L59", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_node", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L60", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_node", "target": "types_node", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L60", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_passport_jwt", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L61", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_passport_jwt", "target": "types_passport_jwt", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L61", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_types_supertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L62", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_types_supertest", "target": "types_supertest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L62", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_eslint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L63", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_eslint", "target": "eslint", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L63", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_eslint_config_prettier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L64", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_eslint_config_prettier", "target": "eslint_config_prettier", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L64", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_eslint_plugin_prettier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L65", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_eslint_plugin_prettier", "target": "eslint_plugin_prettier", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L65", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_globals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L66", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_globals", "target": "globals", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L66", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_jest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L67", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_jest", "target": "jest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L67", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_prettier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L68", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_prettier", "target": "prettier", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L68", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_prisma", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L69", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_prisma", "target": "prisma", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L69", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_source_map_support", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L70", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_source_map_support", "target": "source_map_support", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L70", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_supertest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L71", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_supertest", "target": "supertest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L71", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_ts_jest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L72", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_ts_jest", "target": "ts_jest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L72", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_ts_loader", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L73", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_ts_loader", "target": "ts_loader", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L73", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_ts_node", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L74", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_ts_node", "target": "ts_node", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L74", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_tsconfig_paths", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L75", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_tsconfig_paths", "target": "tsconfig_paths", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L75", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_typescript", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L76", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_typescript", "target": "typescript", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L76", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_devdependencies", "target": "$graphify-root$_backend_package_devdependencies_typescript_eslint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L77", "weight": 1.0}, {"source": "$graphify-root$_backend_package_devdependencies_typescript_eslint", "target": "typescript_eslint", "relation": "imports", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L77", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_jest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L79", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_modulefileextensions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L80", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest_modulefileextensions", "target": "ref_js", "relation": "extends", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L80", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_jest_modulefileextensions", "target": "ref_json", "relation": "extends", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L80", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_jest_modulefileextensions", "target": "ref_ts", "relation": "extends", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L80", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_rootdir", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L85", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_testregex", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L86", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_transform", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L87", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest_transform", "target": "$graphify-root$_backend_package_transform_t_j_s", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L88", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_collectcoveragefrom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L90", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest_collectcoveragefrom", "target": "ref_t_j_s", "relation": "extends", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L90", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_coveragedirectory", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L93", "weight": 1.0}, {"source": "$graphify-root$_backend_package_jest", "target": "$graphify-root$_backend_package_jest_testenvironment", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L94", "weight": 1.0}, {"source": "$graphify-root$_backend_package_json", "target": "$graphify-root$_backend_package_prisma", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L96", "weight": 1.0}, {"source": "$graphify-root$_backend_package_prisma", "target": "$graphify-root$_backend_package_prisma_seed", "relation": "contains", "confidence": "EXTRACTED", "source_file": "backend/package.json", "source_location": "L97", "weight": 1.0}]}
\ No newline at end of file
diff --git a/graphify-out/cache/stat-index.json b/graphify-out/cache/stat-index.json
index 7af04e9..8392a5a 100644
--- a/graphify-out/cache/stat-index.json
+++ b/graphify-out/cache/stat-index.json
@@ -1 +1 @@
-{".ai_agency/AGENCY.md":{"size":8757,"mtime_ns":1785148021979607300,"indexed_at_ns":1787564288771920700,"word_count":1161,"hashes":{".ai_agency/agency.md":"88c7c13583a91fc7e41ce055fede9dce20f181e8d264557808989965e83a9030"}},".ai_agency/agents/00_intake.md":{"size":3819,"mtime_ns":1785148021984319000,"indexed_at_ns":1787564288773935500,"word_count":500,"hashes":{".ai_agency/agents/00_intake.md":"9dc8d7eeda0655717dc5b9d2f8572c47567b88ca88de7e4e5bf59869077ff407"}},".ai_agency/agents/01_auditor.md":{"size":3643,"mtime_ns":1785148021987782800,"indexed_at_ns":1787564288777552100,"word_count":467,"hashes":{".ai_agency/agents/01_auditor.md":"37ae09614034d9b5c855e0132b59a5e3cfd2fc38c54d1a5386fa43ba488c4d4d"}},".ai_agency/agents/02_ceo.md":{"size":2341,"mtime_ns":1785148021998374800,"indexed_at_ns":1787564288781978300,"word_count":294,"hashes":{".ai_agency/agents/02_ceo.md":"b4a76df6483fd52e1b9f1e70765b3f7b6d134dc003ef2ad0cb86b952c869c4a5"}},".ai_agency/agents/03_product_manager.md":{"size":8422,"mtime_ns":1785148022001968200,"indexed_at_ns":1787564288783979700,"word_count":1076,"hashes":{".ai_agency/agents/03_product_manager.md":"1927827474b1dd6fd4976af45b51f1ad3128fe3305c3af22639ab2584e8f0b55"}},".ai_agency/agents/04_architect.md":{"size":3603,"mtime_ns":1785148022004966000,"indexed_at_ns":1787564288786081200,"word_count":448,"hashes":{".ai_agency/agents/04_architect.md":"c96b04d5af093f455fa3c64ae177a69421e8150eb38c70bb8587b5a14e7d3ca8"}},".ai_agency/agents/05_dev_backend.md":{"size":7142,"mtime_ns":1785148022012481200,"indexed_at_ns":1787564288789077900,"word_count":953,"hashes":{".ai_agency/agents/05_dev_backend.md":"143a7c8a6fbedcd837d647efddb9f6b49074583502bd77f24c955bd86a6f3df8"}},".ai_agency/agents/06_dev_frontend.md":{"size":7518,"mtime_ns":1785148022017020100,"indexed_at_ns":1787564288792076800,"word_count":1011,"hashes":{".ai_agency/agents/06_dev_frontend.md":"e69679636d42dd626c7c76ddc96e1ddb656ab5b9ee912b89adcc7a9338f34a0b"}},".ai_agency/agents/07_qa_engineer.md":{"size":3764,"mtime_ns":1785148022020044600,"indexed_at_ns":1787564288794079600,"word_count":507,"hashes":{".ai_agency/agents/07_qa_engineer.md":"2616ef2b3ac39ded45fc669d5b5b140e72953fe61a819966fb040382e9b47d45"}},".ai_agency/agents/08_visual_qa.md":{"size":7910,"mtime_ns":1785148022030083200,"indexed_at_ns":1787564288796078400,"word_count":1121,"hashes":{".ai_agency/agents/08_visual_qa.md":"17a5a74039e8a9d7cb40c5bc3c616c7c92d53401efd92d0675d4bbe5e90572a8"}},".ai_agency/agents/09_devops_security.md":{"size":6825,"mtime_ns":1785148022034087400,"indexed_at_ns":1787564288797075100,"word_count":908,"hashes":{".ai_agency/agents/09_devops_security.md":"315bd3cee954ac3496da8db1b1718b75ab3822ec3a90f99bc77767ca99482edf"}},".ai_agency/agents/10_tech_writer.md":{"size":3119,"mtime_ns":1785148022037082600,"indexed_at_ns":1787564288799076400,"word_count":408,"hashes":{".ai_agency/agents/10_tech_writer.md":"3527b44265fec2472cc20ca4641667e1fa3d38cbc9b2fbf9a946ee1e531e9e37"}},".ai_agency/agents/11_deploy.md":{"size":3956,"mtime_ns":1785148022040602600,"indexed_at_ns":1787564288800075300,"word_count":537,"hashes":{".ai_agency/agents/11_deploy.md":"8169bc98b249cd83ba21551dea082f69dfa6deca5f5e4a7f2739a28746c143f9"}},".ai_agency/agents/12_seo_content.md":{"size":10963,"mtime_ns":1785148022048603900,"indexed_at_ns":1787564288802078700,"word_count":1539,"hashes":{".ai_agency/agents/12_seo_content.md":"2f50eb9db8bf1ad7bc23c7d8c3a4f167a2daafb73f095db9237c5bdb20e7a5f4"}},".ai_agency/memory/agent_outputs/README.txt":{"size":290,"mtime_ns":1785148022052150400,"indexed_at_ns":1787564275303455000,"word_count":34},".ai_agency/memory/backlog.json":{"size":10711,"mtime_ns":1785330750958890900,"indexed_at_ns":1787564288680806500,"word_count":981,"hashes":{".ai_agency/memory/backlog.json":"6bf3150a1877d03d03b368df21b84071381b1bb8cd03e3721fa9f8e6c38355be"}},".ai_agency/memory/scratchpad.md":{"size":1879,"mtime_ns":1785148022065114400,"indexed_at_ns":1787564288803074500,"word_count":249,"hashes":{".ai_agency/memory/scratchpad.md":"9d0f687cf8e95c6335f1efb070da8029878417c28117e3b89aa8536ad70a5b95"}},".ai_agency/memory/state.json":{"size":3654,"mtime_ns":1785330750963913800,"indexed_at_ns":1787564288714437900,"word_count":254,"hashes":{".ai_agency/memory/state.json":"1204676f8f295d89733888bb87936061b7a700df0cc936fbf08fd5269b534e8d"}},".ai_agency/orchestrate.py":{"size":6800,"mtime_ns":1785148022072662500,"indexed_at_ns":1787564288715447900,"word_count":644,"hashes":{".ai_agency/orchestrate.py":"90ec787fdd4c71f5203c56b6899aadcc26e6e0bad0cc576d2f982aa42eed42e1"}},".ai_agency/specs/api_contract.md":{"size":1515,"mtime_ns":1785148022077664900,"indexed_at_ns":1787564288804075000,"word_count":139,"hashes":{".ai_agency/specs/api_contract.md":"ea0911b6a5ad6a908ab707f7553f5f24712c1e198fd79255fa85e3249150e8b4"}},".ai_agency/specs/architecture_spec.md":{"size":790,"mtime_ns":1785148022082260900,"indexed_at_ns":1787564288807086100,"word_count":99,"hashes":{".ai_agency/specs/architecture_spec.md":"6269043f6a144e8ac86ff1db7e014075185e5675a4a0ee23e99e70d88253b8af"}},".ai_agency/specs/prd.md":{"size":724,"mtime_ns":1785148022087251600,"indexed_at_ns":1787564288809084200,"word_count":96,"hashes":{".ai_agency/specs/prd.md":"1c6d5a0ec8a709a2b3aed28225f5fe148ad2d75851d45699187678d055947b11"}},".ai_agency/specs/project_health.md":{"size":444,"mtime_ns":1785148022098314600,"indexed_at_ns":1787564288810085300,"word_count":65,"hashes":{".ai_agency/specs/project_health.md":"677c2f1d35c31d75d935766f154683e0483b08c696117ee612bee1528705c598"}},".ai_agency/specs/reviews/README.md":{"size":1029,"mtime_ns":1785148022105834900,"indexed_at_ns":1787564288812087300,"word_count":117,"hashes":{".ai_agency/specs/reviews/readme.md":"8ceb4cae1ad4c0f660557d827ced970cda8f7d020f8124b624b228174b1b65ab"}},".ai_agency/specs/reviews/backend_review.md":{"size":1430,"mtime_ns":1785148022110362400,"indexed_at_ns":1787564288814085300,"word_count":172,"hashes":{".ai_agency/specs/reviews/backend_review.md":"fca1f8d59c2eab255f7aba246b26731fe53f208e737ccf46035389591900a150"}},".ai_agency/specs/reviews/code_health_review.md":{"size":2193,"mtime_ns":1785148022114359700,"indexed_at_ns":1787564288816082900,"word_count":279,"hashes":{".ai_agency/specs/reviews/code_health_review.md":"532e04465e125183d6dd8f8af61bfc8735a514b3fbbc49069f5f0884155ed93f"}},".ai_agency/specs/reviews/frontend_review.md":{"size":1452,"mtime_ns":1785148022118486900,"indexed_at_ns":1787564288818081700,"word_count":183,"hashes":{".ai_agency/specs/reviews/frontend_review.md":"9f826c0267cad8bd5d342b1f908c927976d9be7da3f75b175331381ef8c8b680"}},".ai_agency/specs/reviews/security_review.md":{"size":874,"mtime_ns":1785148022121487200,"indexed_at_ns":1787564288819083000,"word_count":110,"hashes":{".ai_agency/specs/reviews/security_review.md":"51363e62e919d6772c2b3b9a1a3f3870a5892dae6d408217ed3fb475f72d3f0b"}},".ai_agency/specs/reviews/seo_content_review.md":{"size":1238,"mtime_ns":1785148022131533800,"indexed_at_ns":1787564288820588000,"word_count":156,"hashes":{".ai_agency/specs/reviews/seo_content_review.md":"bc8401649a86585b4061b3ec0f584910c54aad25bc9943392179bc070c07a434"}},".ai_agency/specs/reviews/ux_review.md":{"size":1131,"mtime_ns":1785148022136550700,"indexed_at_ns":1787564288822730600,"word_count":150,"hashes":{".ai_agency/specs/reviews/ux_review.md":"b8a52f324e36fcc2d046cc903a05903057098a67a397ae6442d6c825091f4513"}},".claude/CLAUDE.md":{"size":226,"mtime_ns":1786870552838920200,"indexed_at_ns":1787564288827732800,"word_count":29,"hashes":{".claude/claude.md":"c6f7fc2f062904d246b700d446ba3ad03e77f41809b12eccfb5e090a11f4fad2"}},".claude/settings.json":{"size":479,"mtime_ns":1786870552841922800,"indexed_at_ns":1787564288716434600,"word_count":38,"hashes":{".claude/settings.json":"0aaafba2cbd7dd67f7d69fa2f01b747c9a72f56ee421a40825521f937caec82b"}},".claude/skills/graphify/SKILL.md":{"size":43292,"mtime_ns":1786870552845041000,"indexed_at_ns":1787564288828758900,"word_count":5442,"hashes":{".claude/skills/graphify/skill.md":"5b24d39cbbb662ea1cd672839f64b50823e1b7de9b113f542248eac38c70cdf1"}},".claude/skills/graphify/references/add-watch.md":{"size":2486,"mtime_ns":1786870552848102000,"indexed_at_ns":1787564288830729500,"word_count":366,"hashes":{".claude/skills/graphify/references/add-watch.md":"cb5e2f3284265c08c88c08f445b96958b13a9115c0afc0a33206c293d1b1c187"}},".claude/skills/graphify/references/exports.md":{"size":3362,"mtime_ns":1786870552849102100,"indexed_at_ns":1787564288831765600,"word_count":470,"hashes":{".claude/skills/graphify/references/exports.md":"7aa8b606e5c19334b6c9fe62a12fc30eb46c0320d1dbb5726cfda0becdd04a5a"}},".claude/skills/graphify/references/extraction-spec.md":{"size":7960,"mtime_ns":1786870552850101900,"indexed_at_ns":1787564288832759300,"word_count":1038,"hashes":{".claude/skills/graphify/references/extraction-spec.md":"9cf5d515d0d8584aeef36708df34f560078772a568ed599cac5ba20b089e563d"}},".claude/skills/graphify/references/github-and-merge.md":{"size":2177,"mtime_ns":1786870552853101000,"indexed_at_ns":1787564288833759500,"word_count":271,"hashes":{".claude/skills/graphify/references/github-and-merge.md":"609de4b1331ddb2f8c80e97aac0a5de782a373d6f5af858e10a731c20b35c0e2"}},".claude/skills/graphify/references/hooks.md":{"size":1267,"mtime_ns":1786870552855098700,"indexed_at_ns":1787564288834759400,"word_count":193,"hashes":{".claude/skills/graphify/references/hooks.md":"7c7827f2f29d6e2cb6cc6902558dac08380f60c414b4968f83e1bc4e61b3e268"}},".claude/skills/graphify/references/query.md":{"size":13456,"mtime_ns":1786870552857702900,"indexed_at_ns":1787564288835760800,"word_count":1763,"hashes":{".claude/skills/graphify/references/query.md":"54526cc3e2392922d344f14767f09037ef85fb7ec5cc7911b749b35bcb004fbf"}},".claude/skills/graphify/references/transcribe.md":{"size":3173,"mtime_ns":1786870552858710700,"indexed_at_ns":1787564288837730200,"word_count":418,"hashes":{".claude/skills/graphify/references/transcribe.md":"1d5afbaccf36e952e71082591edfc9e4fbd9946eb85b01855a1d0bd810b7623d"}},".claude/skills/graphify/references/update.md":{"size":10425,"mtime_ns":1786870552860709800,"indexed_at_ns":1787564288841729200,"word_count":1196,"hashes":{".claude/skills/graphify/references/update.md":"0249cd6ceae6effdfc7371b51d00c462f51d95700101dcedd36255bab1b4ce7a"}},".gitea/scripts/with-vpn.sh":{"size":1794,"mtime_ns":1786799852126316200,"indexed_at_ns":1787564288718437600,"word_count":208,"hashes":{".gitea/scripts/with-vpn.sh":"9ec013d142e3cf5d7e5f09778fcb06b4b8ea7b394688f9f40b5e74298c76bcf0"}},".gitea/workflows/deploy.yml":{"size":993,"mtime_ns":1787078454762471500,"indexed_at_ns":1787564275730375200,"word_count":84},"BACKEND_INTEGRATION.md":{"size":15568,"mtime_ns":1786885876768825200,"indexed_at_ns":1787564275758381600,"word_count":1521},"CLAUDE.md":{"size":772,"mtime_ns":1786870552863710100,"indexed_at_ns":1787564288843728900,"word_count":106,"hashes":{"claude.md":"3612256e7473a2e5f67ef4778d4edeefb44794ef22bac5529bee9c87dc5d8f3d"}},"DATABASE_SCHEMA.md":{"size":15399,"mtime_ns":1786885876771342200,"indexed_at_ns":1787564275786120800,"word_count":1566},"README.md":{"size":13117,"mtime_ns":1786885876775371800,"indexed_at_ns":1787564275808070300,"word_count":1310},"backend/README.md":{"size":5028,"mtime_ns":1783764561601382400,"indexed_at_ns":1787564288845729800,"word_count":472,"hashes":{"backend/readme.md":"c3edfd26252566ef2ddee12c91a874b59e03a1656894d3db25209a0e4031010a"}},"backend/eslint.config.mjs":{"size":1649,"mtime_ns":1787073059105361700,"indexed_at_ns":1787564275863637800,"word_count":104},"backend/nest-cli.json":{"size":172,"mtime_ns":1787072106370561300,"indexed_at_ns":1787564288720437400,"word_count":13,"hashes":{"backend/nest-cli.json":"64fe2904203985aa0acb9b67d7ade489f2362ac8730283fb11d6a764d1cb3878"}},"backend/package.json":{"size":2821,"mtime_ns":1787579631755175800,"indexed_at_ns":1787581125495593700,"word_count":209,"hashes":{"backend/package.json":"c05865bc3bcdf5575a5889c564941913018360de5596b9e6eff52d191522adfe"}},"backend/prisma/migrations/20260526145407_init/migration.sql":{"size":8963,"mtime_ns":1783764561612007600,"indexed_at_ns":1787564288722959400,"word_count":936,"hashes":{"backend/prisma/migrations/20260526145407_init/migration.sql":"d6cc5e861e43bf82dcffe1ad7121fcbe9f74db7901cf204b5058da3132d3c1d2"}},"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql":{"size":404,"mtime_ns":1783764561613425800,"indexed_at_ns":1787564288724958300,"word_count":48,"hashes":{"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql":"c564f4aba35d32a733a5837c33664c68c8912277ad9645310f7e8116fbcba741"}},"backend/prisma/scientificTerms.ts":{"size":24298,"mtime_ns":1785325924634812500,"indexed_at_ns":1787564275926052300,"word_count":2294},"backend/prisma/seed-blogs.ts":{"size":6950,"mtime_ns":1786885876777374000,"indexed_at_ns":1787564275937063000,"word_count":620},"backend/prisma/seed-custom.ts":{"size":3836,"mtime_ns":1786799852144902000,"indexed_at_ns":1787564275950074700,"word_count":371},"backend/prisma/seed-home.ts":{"size":3870,"mtime_ns":1786885876779371100,"indexed_at_ns":1787564275958948500,"word_count":374},"backend/prisma/seed-products-data.json":{"size":59220,"mtime_ns":1786885876782371300,"indexed_at_ns":1787564288725952800,"word_count":5730,"hashes":{"backend/prisma/seed-products-data.json":"9d1262f8264478eb43ec48f073f817d46fc193d666cd9364f3bb95c1629f25c7"}},"backend/prisma/seed-products.ts":{"size":28268,"mtime_ns":1787127978219270600,"indexed_at_ns":1787564275977093900,"word_count":2063},"backend/prisma/seed-ui-texts.ts":{"size":9191,"mtime_ns":1787127978221789800,"indexed_at_ns":1787564275987088700,"word_count":755},"backend/prisma/seed-wiki.ts":{"size":24019,"mtime_ns":1786961195297596000,"indexed_at_ns":1787564275996093200,"word_count":2292},"backend/prisma/seed.ts":{"size":30480,"mtime_ns":1787127978225587600,"indexed_at_ns":1787564276006629100,"word_count":2636},"backend/prisma/tsconfig.seed.json":{"size":194,"mtime_ns":1786955870751259200,"indexed_at_ns":1787564288728956800,"word_count":17,"hashes":{"backend/prisma/tsconfig.seed.json":"e178d23a09563a7a9b348d905bc70322115514c78a7afcc5a53db7d18e511583"}},"backend/scripts/generate-openapi.ts":{"size":1385,"mtime_ns":1786799852156390500,"indexed_at_ns":1787564276074193700,"word_count":128},"backend/src/admin/admin.controller.spec.ts":{"size":593,"mtime_ns":1786799852157399700,"indexed_at_ns":1787564276093650900,"word_count":59},"backend/src/admin/admin.controller.ts":{"size":9712,"mtime_ns":1787564362261174000,"indexed_at_ns":1787566181824510600,"word_count":966},"backend/src/admin/admin.module.ts":{"size":1420,"mtime_ns":1786877667005008400,"indexed_at_ns":1787564276115916800,"word_count":145},"backend/src/admin/admin.service.spec.ts":{"size":682,"mtime_ns":1786799852162911100,"indexed_at_ns":1787564276123634100,"word_count":72},"backend/src/admin/admin.service.ts":{"size":30386,"mtime_ns":1787579631756175500,"indexed_at_ns":1787581116034272000,"word_count":3056},"backend/src/admin/blogs.controller.ts":{"size":5204,"mtime_ns":1787579631758177800,"indexed_at_ns":1787581116039273600,"word_count":532},"backend/src/admin/blogs.service.ts":{"size":9542,"mtime_ns":1787579631760177700,"indexed_at_ns":1787581116044539900,"word_count":1070},"backend/src/admin/categories.controller.ts":{"size":2187,"mtime_ns":1786799852174192500,"indexed_at_ns":1787564276153137800,"word_count":204},"backend/src/admin/categories.service.ts":{"size":2005,"mtime_ns":1786799852175194300,"indexed_at_ns":1787564276159148700,"word_count":223},"backend/src/admin/dto/admin-query.dto.ts":{"size":634,"mtime_ns":1786799852178706400,"indexed_at_ns":1787564276167147700,"word_count":60},"backend/src/admin/media.controller.ts":{"size":2339,"mtime_ns":1786876983648866300,"indexed_at_ns":1787564276189260700,"word_count":226},"backend/src/admin/media.service.ts":{"size":2713,"mtime_ns":1786876983651534500,"indexed_at_ns":1787564276196836900,"word_count":283},"backend/src/admin/pets.controller.ts":{"size":1195,"mtime_ns":1786799852186217200,"indexed_at_ns":1787564276202830800,"word_count":117},"backend/src/admin/pets.service.ts":{"size":1731,"mtime_ns":1786954681814243000,"indexed_at_ns":1787564276208834300,"word_count":193},"backend/src/admin/reports.controller.ts":{"size":664,"mtime_ns":1783764561642147000,"indexed_at_ns":1787564276215853300,"word_count":66},"backend/src/admin/reports.service.ts":{"size":3399,"mtime_ns":1786799852189730800,"indexed_at_ns":1787564276221355300,"word_count":388},"backend/src/admin/wiki.controller.ts":{"size":1814,"mtime_ns":1786799852191732300,"indexed_at_ns":1787564276250199800,"word_count":179},"backend/src/admin/wiki.service.ts":{"size":1767,"mtime_ns":1786799852193324200,"indexed_at_ns":1787564276256731700,"word_count":195},"backend/src/app.controller.spec.ts":{"size":617,"mtime_ns":1783764561644839700,"indexed_at_ns":1787564276264735700,"word_count":61},"backend/src/app.controller.ts":{"size":274,"mtime_ns":1783764561645849100,"indexed_at_ns":1787564276272242900,"word_count":31},"backend/src/app.module.ts":{"size":4052,"mtime_ns":1787579631764695400,"indexed_at_ns":1787581116136057500,"word_count":382},"backend/src/app.service.ts":{"size":142,"mtime_ns":1783764561648840500,"indexed_at_ns":1787564276287977200,"word_count":19},"backend/src/auth/auth.controller.spec.ts":{"size":1528,"mtime_ns":1785327951179468000,"indexed_at_ns":1787564276300975100,"word_count":149},"backend/src/auth/auth.controller.ts":{"size":4155,"mtime_ns":1787072106387489300,"indexed_at_ns":1787564276307981600,"word_count":386},"backend/src/auth/auth.module.ts":{"size":724,"mtime_ns":1787072106388501600,"indexed_at_ns":1787564276315983300,"word_count":80},"backend/src/auth/auth.service.spec.ts":{"size":4264,"mtime_ns":1786799852201843300,"indexed_at_ns":1787564276322493800,"word_count":379},"backend/src/auth/auth.service.ts":{"size":9713,"mtime_ns":1787127978228589700,"indexed_at_ns":1787564276331184100,"word_count":933},"backend/src/auth/dto/admin-login.dto.ts":{"size":766,"mtime_ns":1787127978229587400,"indexed_at_ns":1787564276337915700,"word_count":82},"backend/src/auth/dto/login.dto.ts":{"size":587,"mtime_ns":1783764561659109000,"indexed_at_ns":1787564276347369800,"word_count":63},"backend/src/auth/dto/register.dto.ts":{"size":1197,"mtime_ns":1785327951186476900,"indexed_at_ns":1787564276353384300,"word_count":115},"backend/src/auth/dto/send-otp.dto.ts":{"size":374,"mtime_ns":1783764561661106500,"indexed_at_ns":1787564276360400400,"word_count":39},"backend/src/auth/dto/verify-otp.dto.ts":{"size":594,"mtime_ns":1783764561662112100,"indexed_at_ns":1787564276369220500,"word_count":64},"backend/src/auth/jwt-auth.guard.ts":{"size":494,"mtime_ns":1786799852205862700,"indexed_at_ns":1787564276374735700,"word_count":58},"backend/src/auth/jwt.strategy.ts":{"size":1122,"mtime_ns":1786883225794343300,"indexed_at_ns":1787564276381800800,"word_count":116},"backend/src/auth/roles.decorator.ts":{"size":54,"mtime_ns":1786799852208379600,"indexed_at_ns":1787564276387701200,"word_count":4},"backend/src/auth/roles.guard.ts":{"size":46,"mtime_ns":1786799852209003400,"indexed_at_ns":1787564276393799100,"word_count":4},"backend/src/b2b/b2b.controller.ts":{"size":2684,"mtime_ns":1786799852212013200,"indexed_at_ns":1787564276400649700,"word_count":246},"backend/src/b2b/b2b.module.ts":{"size":342,"mtime_ns":1786799852212013200,"indexed_at_ns":1787564276407478800,"word_count":38},"backend/src/b2b/b2b.service.ts":{"size":2379,"mtime_ns":1786799852214009300,"indexed_at_ns":1787564276414014600,"word_count":243},"backend/src/banners/banners.controller.ts":{"size":1923,"mtime_ns":1786799852215010200,"indexed_at_ns":1787564276421565300,"word_count":169},"backend/src/banners/banners.module.ts":{"size":374,"mtime_ns":1786799852216010300,"indexed_at_ns":1787564276428314800,"word_count":38},"backend/src/banners/banners.service.ts":{"size":1394,"mtime_ns":1786799852216010300,"indexed_at_ns":1787564276434309000,"word_count":160},"backend/src/blogs/blogs.controller.ts":{"size":2570,"mtime_ns":1787577523702295100,"indexed_at_ns":1787579582349673900,"word_count":223},"backend/src/blogs/blogs.module.ts":{"size":248,"mtime_ns":1783764561665678100,"indexed_at_ns":1787564276447999400,"word_count":28},"backend/src/blogs/blogs.service.ts":{"size":9721,"mtime_ns":1787640735440880100,"indexed_at_ns":1787641010286904500,"word_count":1081},"backend/src/blogs/dto/create-blog.dto.ts":{"size":30,"mtime_ns":1783764561671557000,"indexed_at_ns":1787564276460529000,"word_count":4},"backend/src/blogs/dto/update-blog.dto.ts":{"size":164,"mtime_ns":1783764561673712400,"indexed_at_ns":1787564276468520100,"word_count":18},"backend/src/blogs/entities/blog.entity.ts":{"size":21,"mtime_ns":1783764561675101100,"indexed_at_ns":1787564276474037900,"word_count":4},"backend/src/cms/cms.controller.ts":{"size":3521,"mtime_ns":1785327951196913100,"indexed_at_ns":1787564276480546400,"word_count":280},"backend/src/cms/cms.module.ts":{"size":342,"mtime_ns":1785148022206298000,"indexed_at_ns":1787564276488179500,"word_count":38},"backend/src/cms/cms.service.ts":{"size":2501,"mtime_ns":1785327951197940400,"indexed_at_ns":1787564276495183900,"word_count":256},"backend/src/cms/dto/cms.dto.ts":{"size":2357,"mtime_ns":1785327951199995500,"indexed_at_ns":1787564276502187200,"word_count":203},"backend/src/common/decorators/roles.decorator.ts":{"size":157,"mtime_ns":1786799852220522400,"indexed_at_ns":1787564276508185100,"word_count":20},"backend/src/common/dto/pagination.dto.ts":{"size":1188,"mtime_ns":1785327951201988900,"indexed_at_ns":1787564276515186500,"word_count":121},"backend/src/common/filters/http-exception.filter.ts":{"size":4942,"mtime_ns":1787072106393076100,"indexed_at_ns":1787564276522694700,"word_count":492},"backend/src/common/filters/prisma-exception.filter.ts":{"size":2412,"mtime_ns":1785330913143709100,"indexed_at_ns":1787564276530707900,"word_count":228},"backend/src/common/guards/roles.guard.spec.ts":{"size":2426,"mtime_ns":1786799852225556800,"indexed_at_ns":1787564276537320000,"word_count":223},"backend/src/common/guards/roles.guard.ts":{"size":1285,"mtime_ns":1786799852226565200,"indexed_at_ns":1787564276546330000,"word_count":120},"backend/src/common/interceptors/decimal.interceptor.spec.ts":{"size":1677,"mtime_ns":1786799852227565700,"indexed_at_ns":1787564276553992900,"word_count":164},"backend/src/common/interceptors/decimal.interceptor.ts":{"size":1094,"mtime_ns":1786799852227565700,"indexed_at_ns":1787564276561015100,"word_count":118},"backend/src/common/metrics.controller.ts":{"size":2093,"mtime_ns":1786799852229073100,"indexed_at_ns":1787564276569004100,"word_count":206},"backend/src/common/schemas/error-response.schema.ts":{"size":1680,"mtime_ns":1785330913144701500,"indexed_at_ns":1787564276575514200,"word_count":162},"backend/src/common/schemas/paginated-response.schema.ts":{"size":1108,"mtime_ns":1786799852230082200,"indexed_at_ns":1787564276585213900,"word_count":110},"backend/src/common/services/sms.service.ts":{"size":31964,"mtime_ns":1787072106396073600,"indexed_at_ns":1787564276592210800,"word_count":3028},"backend/src/common/sms.module.ts":{"size":204,"mtime_ns":1785330750996125100,"indexed_at_ns":1787564276602635500,"word_count":24},"backend/src/contact/contact.controller.ts":{"size":1990,"mtime_ns":1786799852234596200,"indexed_at_ns":1787564276618454500,"word_count":177},"backend/src/contact/contact.module.ts":{"size":365,"mtime_ns":1786799852236599000,"indexed_at_ns":1787564276627602400,"word_count":38},"backend/src/contact/contact.service.ts":{"size":4690,"mtime_ns":1787127978233104000,"indexed_at_ns":1787564276635593400,"word_count":451},"backend/src/home/dto/create-home.dto.ts":{"size":30,"mtime_ns":1783764561682365300,"indexed_at_ns":1787564276696981600,"word_count":4},"backend/src/home/dto/update-home.dto.ts":{"size":164,"mtime_ns":1783764561682365300,"indexed_at_ns":1787564276705987400,"word_count":18},"backend/src/home/entities/home.entity.ts":{"size":21,"mtime_ns":1783764561684884800,"indexed_at_ns":1787564276713990000,"word_count":4},"backend/src/home/home.controller.ts":{"size":757,"mtime_ns":1785327951212087300,"indexed_at_ns":1787564276718987900,"word_count":69},"backend/src/home/home.module.ts":{"size":241,"mtime_ns":1783764561687108000,"indexed_at_ns":1787564276726261800,"word_count":28},"backend/src/home/home.service.ts":{"size":1372,"mtime_ns":1785327951214087300,"indexed_at_ns":1787564276733259300,"word_count":144},"backend/src/ingredients/ingredients.controller.ts":{"size":1952,"mtime_ns":1786799852237596500,"indexed_at_ns":1787564276739266000,"word_count":165},"backend/src/ingredients/ingredients.module.ts":{"size":406,"mtime_ns":1786799852238596500,"indexed_at_ns":1787564276747270100,"word_count":38},"backend/src/ingredients/ingredients.service.ts":{"size":1526,"mtime_ns":1786799852240108300,"indexed_at_ns":1787564276753767100,"word_count":162},"backend/src/main.ts":{"size":4005,"mtime_ns":1787579631772584100,"indexed_at_ns":1787581116487205400,"word_count":355},"backend/src/orders/dto/create-order.dto.ts":{"size":1899,"mtime_ns":1785327951218626100,"indexed_at_ns":1787564276788369500,"word_count":162},"backend/src/orders/orders.controller.spec.ts":{"size":1910,"mtime_ns":1785327951219627700,"indexed_at_ns":1787564276795379800,"word_count":194},"backend/src/orders/orders.controller.ts":{"size":5930,"mtime_ns":1787072106398077200,"indexed_at_ns":1787564276801371500,"word_count":517},"backend/src/orders/orders.module.ts":{"size":255,"mtime_ns":1783764561697598200,"indexed_at_ns":1787564276807375300,"word_count":28},"backend/src/orders/orders.service.spec.ts":{"size":4974,"mtime_ns":1786799852246117900,"indexed_at_ns":1787564276815378200,"word_count":483},"backend/src/orders/orders.service.ts":{"size":17203,"mtime_ns":1787127978236103400,"indexed_at_ns":1787564276821883600,"word_count":1611},"backend/src/pets/dto/create-health-log.dto.ts":{"size":761,"mtime_ns":1785327951229443300,"indexed_at_ns":1787564276922999900,"word_count":69},"backend/src/pets/dto/create-pet.dto.ts":{"size":1143,"mtime_ns":1785327951230948800,"indexed_at_ns":1787564276933013800,"word_count":104},"backend/src/pets/dto/create-reminder.dto.ts":{"size":810,"mtime_ns":1785327951231958200,"indexed_at_ns":1787564276941013700,"word_count":71},"backend/src/pets/dto/update-pet.dto.ts":{"size":160,"mtime_ns":1783764561709557500,"indexed_at_ns":1787564276950013700,"word_count":18},"backend/src/pets/pets.controller.spec.ts":{"size":2544,"mtime_ns":1786799852248118800,"indexed_at_ns":1787564276959542000,"word_count":269},"backend/src/pets/pets.controller.ts":{"size":8427,"mtime_ns":1787461919454308900,"indexed_at_ns":1787564276966542800,"word_count":781},"backend/src/pets/pets.module.ts":{"size":241,"mtime_ns":1783764561714469800,"indexed_at_ns":1787564276974069300,"word_count":28},"backend/src/pets/pets.service.spec.ts":{"size":2961,"mtime_ns":1785327951238208000,"indexed_at_ns":1787564276982062100,"word_count":272},"backend/src/pets/pets.service.ts":{"size":6978,"mtime_ns":1786799852250117400,"indexed_at_ns":1787564276990466100,"word_count":710},"backend/src/prescriptions/prescriptions.controller.ts":{"size":2356,"mtime_ns":1786799852253748300,"indexed_at_ns":1787564276998477100,"word_count":232},"backend/src/prescriptions/prescriptions.module.ts":{"size":495,"mtime_ns":1786954681815809200,"indexed_at_ns":1787564277005474200,"word_count":45},"backend/src/prescriptions/prescriptions.service.ts":{"size":4666,"mtime_ns":1787072106408779000,"indexed_at_ns":1787564277012493300,"word_count":498},"backend/src/prisma/prisma.module.ts":{"size":210,"mtime_ns":1783764561718199800,"indexed_at_ns":1787564277019481000,"word_count":24},"backend/src/prisma/prisma.service.ts":{"size":4250,"mtime_ns":1787640806107781000,"indexed_at_ns":1787641010688666100,"word_count":425},"backend/src/products/dto/get-products.dto.ts":{"size":1320,"mtime_ns":1786799852260271600,"indexed_at_ns":1787564277034656600,"word_count":115},"backend/src/products/products.controller.spec.ts":{"size":1863,"mtime_ns":1785327951243280800,"indexed_at_ns":1787564277040660300,"word_count":166},"backend/src/products/products.controller.ts":{"size":2445,"mtime_ns":1786799852261281700,"indexed_at_ns":1787564277048667700,"word_count":209},"backend/src/products/products.module.ts":{"size":269,"mtime_ns":1783764561723672400,"indexed_at_ns":1787564277055711500,"word_count":28},"backend/src/products/products.service.spec.ts":{"size":1597,"mtime_ns":1786799852263279400,"indexed_at_ns":1787564277063360200,"word_count":154},"backend/src/products/products.service.ts":{"size":7493,"mtime_ns":1787579631773583700,"indexed_at_ns":1787581116688224800,"word_count":762},"backend/src/redis/redis.module.ts":{"size":205,"mtime_ns":1783764561727662100,"indexed_at_ns":1787564277075918100,"word_count":24},"backend/src/redis/redis.service.spec.ts":{"size":1525,"mtime_ns":1783764561728672300,"indexed_at_ns":1787564277083545300,"word_count":145},"backend/src/redis/redis.service.ts":{"size":1202,"mtime_ns":1786895436211834600,"indexed_at_ns":1787564277089544600,"word_count":132},"backend/src/seo/seo.controller.ts":{"size":904,"mtime_ns":1785327951247283200,"indexed_at_ns":1787564277135769800,"word_count":85},"backend/src/seo/seo.module.ts":{"size":342,"mtime_ns":1785148022268580900,"indexed_at_ns":1787564277141781000,"word_count":38},"backend/src/seo/seo.service.ts":{"size":2023,"mtime_ns":1787127978249385200,"indexed_at_ns":1787564277148780900,"word_count":182},"backend/src/settings/settings.controller.spec.ts":{"size":2973,"mtime_ns":1787073059109005600,"indexed_at_ns":1787564277169296900,"word_count":247},"backend/src/settings/settings.controller.ts":{"size":8977,"mtime_ns":1787072106423347900,"indexed_at_ns":1787564277176441800,"word_count":708},"backend/src/settings/settings.module.ts":{"size":382,"mtime_ns":1783764561735515700,"indexed_at_ns":1787564277183443300,"word_count":38},"backend/src/settings/settings.service.spec.ts":{"size":2728,"mtime_ns":1783764561736856500,"indexed_at_ns":1787564277189440000,"word_count":251},"backend/src/settings/settings.service.ts":{"size":20225,"mtime_ns":1787461919455310100,"indexed_at_ns":1787564277198444200,"word_count":1589},"backend/src/smart-advisor/smart-advisor.controller.ts":{"size":1821,"mtime_ns":1786799852275441500,"indexed_at_ns":1787564277208894800,"word_count":152},"backend/src/smart-advisor/smart-advisor.module.ts":{"size":416,"mtime_ns":1786799852276441700,"indexed_at_ns":1787564277218151300,"word_count":38},"backend/src/smart-advisor/smart-advisor.service.ts":{"size":1241,"mtime_ns":1786799852277440400,"indexed_at_ns":1787564277223662600,"word_count":131},"backend/src/testimonials/testimonials.controller.ts":{"size":1905,"mtime_ns":1787148092329786500,"indexed_at_ns":1787564277230662500,"word_count":160},"backend/src/testimonials/testimonials.module.ts":{"size":414,"mtime_ns":1786799852279441800,"indexed_at_ns":1787564277238718900,"word_count":38},"backend/src/testimonials/testimonials.service.ts":{"size":1268,"mtime_ns":1787148092332501600,"indexed_at_ns":1787564277245727900,"word_count":140},"backend/src/users/dto/address.dto.ts":{"size":1098,"mtime_ns":1783764561739871500,"indexed_at_ns":1787564277287362600,"word_count":99},"backend/src/users/dto/update-profile.dto.ts":{"size":1068,"mtime_ns":1786885876805472100,"indexed_at_ns":1787564277294368900,"word_count":98},"backend/src/users/users.controller.spec.ts":{"size":3333,"mtime_ns":1785327951253796500,"indexed_at_ns":1787564277301365600,"word_count":322},"backend/src/users/users.controller.ts":{"size":6854,"mtime_ns":1786799852282481500,"indexed_at_ns":1787564277308371100,"word_count":590},"backend/src/users/users.module.ts":{"size":275,"mtime_ns":1783764561748154400,"indexed_at_ns":1787564277316992000,"word_count":30},"backend/src/users/users.service.spec.ts":{"size":3817,"mtime_ns":1786799852283480600,"indexed_at_ns":1787564277322908200,"word_count":316},"backend/src/users/users.service.ts":{"size":8207,"mtime_ns":1787127978253040800,"indexed_at_ns":1787564277332918700,"word_count":782},"backend/src/videos/dto/create-video.dto.ts":{"size":1573,"mtime_ns":1786971396042093900,"indexed_at_ns":1787564277340921000,"word_count":127},"backend/src/videos/dto/get-videos-query.dto.ts":{"size":643,"mtime_ns":1786799852287643500,"indexed_at_ns":1787564277349920000,"word_count":77},"backend/src/videos/videos.controller.ts":{"size":1924,"mtime_ns":1786799852291153100,"indexed_at_ns":1787564277356396100,"word_count":173},"backend/src/videos/videos.module.ts":{"size":283,"mtime_ns":1785148022306583700,"indexed_at_ns":1787564277364407600,"word_count":30},"backend/src/videos/videos.service.ts":{"size":2732,"mtime_ns":1786971396047872400,"indexed_at_ns":1787564277370909800,"word_count":290},"backend/src/wholesale/dto/wholesale-apply.dto.ts":{"size":739,"mtime_ns":1785148022317622300,"indexed_at_ns":1787564277377631400,"word_count":66},"backend/src/wholesale/wholesale.controller.ts":{"size":2037,"mtime_ns":1786799852294177000,"indexed_at_ns":1787564277387639700,"word_count":160},"backend/src/wholesale/wholesale.module.ts":{"size":390,"mtime_ns":1785148022328746300,"indexed_at_ns":1787564277397640300,"word_count":38},"backend/src/wholesale/wholesale.service.ts":{"size":2627,"mtime_ns":1785330913149233300,"indexed_at_ns":1787564277403647000,"word_count":266},"backend/src/wiki/dto/create-wiki.dto.ts":{"size":30,"mtime_ns":1783764561752933200,"indexed_at_ns":1787564277414647600,"word_count":4},"backend/src/wiki/dto/update-wiki.dto.ts":{"size":164,"mtime_ns":1783764561753945200,"indexed_at_ns":1787564277424415000,"word_count":18},"backend/src/wiki/entities/wiki.entity.ts":{"size":21,"mtime_ns":1783764561755039400,"indexed_at_ns":1787564277437254800,"word_count":4},"backend/src/wiki/wiki.controller.ts":{"size":1219,"mtime_ns":1785327951272850400,"indexed_at_ns":1787564277449347700,"word_count":110},"backend/src/wiki/wiki.module.ts":{"size":241,"mtime_ns":1783764561756925000,"indexed_at_ns":1787564277459897200,"word_count":28},"backend/src/wiki/wiki.service.ts":{"size":1562,"mtime_ns":1786799852295173000,"indexed_at_ns":1787564277468898700,"word_count":174},"backend/test/app-audit-verification.e2e-spec.ts":{"size":6464,"mtime_ns":1786799852296174700,"indexed_at_ns":1787564277497995700,"word_count":569},"backend/test/app.e2e-spec.ts":{"size":981,"mtime_ns":1786799852297175000,"indexed_at_ns":1787564277532519000,"word_count":83},"backend/test/jest-e2e.json":{"size":183,"mtime_ns":1783764561762911800,"indexed_at_ns":1787564288730610100,"word_count":17,"hashes":{"backend/test/jest-e2e.json":"94091f560937212ad7027afcb77e62e6ac79e3e4cb401c3a16a56e7be4cac721"}},"backend/tsconfig.build.json":{"size":107,"mtime_ns":1783764561763447000,"indexed_at_ns":1787564288731610300,"word_count":10,"hashes":{"backend/tsconfig.build.json":"1f47c7dc3c8b5a15558654f45f21e0f553acc1680046f09dc24428e8538c4f9d"}},"backend/tsconfig.json":{"size":785,"mtime_ns":1787073059116167600,"indexed_at_ns":1787564288732606500,"word_count":56,"hashes":{"backend/tsconfig.json":"9b20fbca537d1e55f3a113fcee6683f0eb1f06752d3c8c52edf26eef8e2053f2"}},"backend/uploads/1781288429353-508765350.jpg":{"size":110246,"mtime_ns":1783764561766257000,"indexed_at_ns":1787564277575076900,"word_count":3882},"canina.md":{"size":21919,"mtime_ns":1786885876809472400,"indexed_at_ns":1787564277591949900,"word_count":1983},"canina.pdf":{"size":2858373,"mtime_ns":1785148022370811500,"indexed_at_ns":1787564277600945100,"word_count":0},"docker-compose.yml":{"size":2193,"mtime_ns":1786883225811564200,"indexed_at_ns":1787564277607955900,"word_count":127},"docs/01-introduction.md":{"size":5537,"mtime_ns":1786885876812474900,"indexed_at_ns":1787564277619131500,"word_count":523},"docs/02-user-guide.md":{"size":4303,"mtime_ns":1786885876813985900,"indexed_at_ns":1787564277628985200,"word_count":422},"docs/03-developer-guide.md":{"size":6717,"mtime_ns":1783764561771660500,"indexed_at_ns":1787564277636971100,"word_count":678},"docs/04-setup-and-deployment.md":{"size":4005,"mtime_ns":1787127978256847800,"indexed_at_ns":1787564288846728900,"word_count":425,"hashes":{"docs/04-setup-and-deployment.md":"aee712cb19a8475be75f8073f7e39870e704923a561ffb9f4ce4b31b1d4bd830"}},"docs/05-devops-and-monitoring.md":{"size":3590,"mtime_ns":1783764561774446100,"indexed_at_ns":1787564288847729600,"word_count":374,"hashes":{"docs/05-devops-and-monitoring.md":"53f1f45bbbdd3cf81cb4bc082ef4e49f506627f10f581d3c4b835028d02b5421"}},"docs/06-testing.md":{"size":4214,"mtime_ns":1783764561774967500,"indexed_at_ns":1787564288849733900,"word_count":457,"hashes":{"docs/06-testing.md":"69d50bd5e233f030d8076b55b69599cee201e1c393b7ee1beeb495c304fd4bd3"}},"docs/README.md":{"size":2740,"mtime_ns":1786885876816996700,"indexed_at_ns":1787564288850734700,"word_count":253,"hashes":{"docs/readme.md":"1b7ffde4b290e742802fc554f2dd2f7a2316fe25bd1cd328421ffa823b36f40f"}},"docs/audit/00-repository-map.md":{"size":3171,"mtime_ns":1786799852298174200,"indexed_at_ns":1787564288851734500,"word_count":351,"hashes":{"docs/audit/00-repository-map.md":"dde4a63c991d0f469086a147df03b97d8370cd75fa19cc83af1199f267d7bc55"}},"docs/audit/01-system-discovery.md":{"size":3790,"mtime_ns":1786799852299174400,"indexed_at_ns":1787564288852734700,"word_count":467,"hashes":{"docs/audit/01-system-discovery.md":"6c91253cac025506db71adea33a054f88f4c367ba81fc3cb1b85c2bdcfec5c70"}},"docs/audit/02-audit-plan.md":{"size":5058,"mtime_ns":1786799852300175400,"indexed_at_ns":1787564288855115500,"word_count":530,"hashes":{"docs/audit/02-audit-plan.md":"b623d8f8c2b8a14c1ddca1ad956cd8afc9203f7a94eda8e63fd608bc8e9164d1"}},"docs/audit/03-baseline-command-plan.md":{"size":4904,"mtime_ns":1786799852300175400,"indexed_at_ns":1787564288858635700,"word_count":735,"hashes":{"docs/audit/03-baseline-command-plan.md":"fcf49beae52c69d7e9cf85967f028052fa1a78eaae5a2bb9b18072b0273e80e1"}},"docs/audit/04-open-questions.md":{"size":1690,"mtime_ns":1786799852301682100,"indexed_at_ns":1787564288860657700,"word_count":224,"hashes":{"docs/audit/04-open-questions.md":"02fbd51a9131da0b12122a5280cc6f842c299b436a72b117e2263f011b9ebf9c"}},"docs/audit/05-architectural-audit.md":{"size":4884,"mtime_ns":1786799852302689800,"indexed_at_ns":1787564277732940700,"word_count":560},"docs/audit/06-storefront-audit.md":{"size":4191,"mtime_ns":1786799852303691400,"indexed_at_ns":1787564288863722100,"word_count":520,"hashes":{"docs/audit/06-storefront-audit.md":"1e2f2d9d867dc553f503ef91b3bd60310202225da12bc7d324e192f4e15d8c38"}},"docs/audit/07-backend-audit.md":{"size":5037,"mtime_ns":1786799852304689900,"indexed_at_ns":1787564288864741300,"word_count":581,"hashes":{"docs/audit/07-backend-audit.md":"0436a967b82026334bf45c9ca677d1e79ce688681bea4dc06a7fd19e2d5a2129"}},"docs/audit/08-admin-features-audit.md":{"size":4222,"mtime_ns":1786799852305951400,"indexed_at_ns":1787564288865737000,"word_count":479,"hashes":{"docs/audit/08-admin-features-audit.md":"dda5b0bae4f843a51274269dcb91d8b65db2f2917d336d511790da4718b05b8d"}},"docs/audit/09-database-audit.md":{"size":4126,"mtime_ns":1786799852306969500,"indexed_at_ns":1787564288867760400,"word_count":521,"hashes":{"docs/audit/09-database-audit.md":"d4f82b84ae6c1899ab4da1310414d993d9c23dcd2759120fbe551f5b8da95a08"}},"docs/audit/10-security-audit.md":{"size":5560,"mtime_ns":1786799852307952600,"indexed_at_ns":1787564277780982700,"word_count":678},"docs/audit/11-code-quality-audit.md":{"size":3379,"mtime_ns":1786799852308957000,"indexed_at_ns":1787564288868731400,"word_count":419,"hashes":{"docs/audit/11-code-quality-audit.md":"b6b9a4845e0bd5674d897c08f5451f8cab4df22722826f7c9d55ca19b94d88da"}},"docs/audit/12-testing-audit.md":{"size":4106,"mtime_ns":1786799852309952600,"indexed_at_ns":1787564288871236000,"word_count":486,"hashes":{"docs/audit/12-testing-audit.md":"8bdf2058520a88de4d08c0635999de8f79fdab83055ef560ca3a865026b6450a"}},"docs/audit/13-devops-audit.md":{"size":3435,"mtime_ns":1786799852310953800,"indexed_at_ns":1787564288873315700,"word_count":440,"hashes":{"docs/audit/13-devops-audit.md":"d21daac201fcfc3a0e27c27348806f3f5d2790071578dcb98e7869cd6e9ec8a9"}},"docs/audit/14-documentation-audit.md":{"size":3311,"mtime_ns":1786799852311952200,"indexed_at_ns":1787564288875315000,"word_count":379,"hashes":{"docs/audit/14-documentation-audit.md":"e64be175bd632a05e37be823621eb8a8f13bdb74887d10f5f20887d41cef5c62"}},"docs/audit/15-raw-findings-index.json":{"size":9909,"mtime_ns":1786799852313066900,"indexed_at_ns":1787564288733610300,"word_count":817,"hashes":{"docs/audit/15-raw-findings-index.json":"3c1e582431f5f25edd2c38285c9d59f83c83d5348eaf0ced91d6e7c94a9afb6d"}},"docs/audit/16-deep-audit-summary.md":{"size":3111,"mtime_ns":1786799852313066900,"indexed_at_ns":1787564288876315300,"word_count":393,"hashes":{"docs/audit/16-deep-audit-summary.md":"8ea08de6ac54dddd9da6de934bc850bb31ab7e3c5470059d02d7f84dd120a0e4"}},"docs/audit/17-source-coverage-manifest.json":{"size":128714,"mtime_ns":1786799852315065000,"indexed_at_ns":1787564288735610100,"word_count":7827,"hashes":{"docs/audit/17-source-coverage-manifest.json":"834e6c341db760439d2e7a9c17531b03c17151ab0f2f16b92aac8a350bcae51d"}},"docs/audit/18-compiler-diagnostic-dispositions.md":{"size":1961,"mtime_ns":1786799852315065000,"indexed_at_ns":1787564288878314400,"word_count":285,"hashes":{"docs/audit/18-compiler-diagnostic-dispositions.md":"246b9164725e89c67c76f2305cd128f0c0f9bfdba46e45e0e958fe92ccdcda53"}},"docs/audit/19-finding-verification-report.md":{"size":5464,"mtime_ns":1786799852316064800,"indexed_at_ns":1787564288879317600,"word_count":753,"hashes":{"docs/audit/19-finding-verification-report.md":"1cd1bc37f9e76ba7e4d4ef82b8565def786abfeb159bc4d822e364e3f2ea694f"}},"docs/audit/20-verified-findings-index.json":{"size":21797,"mtime_ns":1786799852317071400,"indexed_at_ns":1787564288736609800,"word_count":1903,"hashes":{"docs/audit/20-verified-findings-index.json":"b20d0b140bd727faefde9f29aa4d787199dd386464030eecdf58e5a8ab629442"}},"docs/audit/21-phase2-quality-gate-summary.md":{"size":1706,"mtime_ns":1786799852318066000,"indexed_at_ns":1787564288881326400,"word_count":211,"hashes":{"docs/audit/21-phase2-quality-gate-summary.md":"1b117f866e73cd17c43e3a4e856584f03997a3c897d1de9afbd128ff8a86d09e"}},"docs/audit/22-tracked-first-party-files.txt":{"size":4452,"mtime_ns":1786799852319066000,"indexed_at_ns":1787564277900128800,"word_count":139},"docs/audit/23-untracked-first-party-files.txt":{"size":59,"mtime_ns":1786799852319066000,"indexed_at_ns":1787564277907140400,"word_count":7},"docs/audit/24-omitted-file-inspection-report.md":{"size":2462,"mtime_ns":1786799852320065700,"indexed_at_ns":1787564288885329100,"word_count":227,"hashes":{"docs/audit/24-omitted-file-inspection-report.md":"d4484eea65f1861b9b6a30813d2c233d947c2965a13ed5b399462b80ca9c1513"}},"docs/audit/25-reference-integrity-validation.json":{"size":1002,"mtime_ns":1786799852321571600,"indexed_at_ns":1787564288737609900,"word_count":82,"hashes":{"docs/audit/25-reference-integrity-validation.json":"31b900ed297325cabee3e0804809ecd4229f4427283e449f5d82951bb5ed7fde"}},"docs/audit/26-phase2-integrity-repair-report.md":{"size":3191,"mtime_ns":1786799852322091800,"indexed_at_ns":1787564288887354600,"word_count":385,"hashes":{"docs/audit/26-phase2-integrity-repair-report.md":"2b2f385705db6729fccedc63db0f5709afa23e08a80fc859fe0138b416356cd9"}},"docs/audit/27-all-tracked-repository-files.txt":{"size":4631,"mtime_ns":1786799852323099900,"indexed_at_ns":1787564277943299300,"word_count":148},"docs/audit/28-full-repository-classification.json":{"size":27913,"mtime_ns":1786799852324099500,"indexed_at_ns":1787564288739617000,"word_count":1782,"hashes":{"docs/audit/28-full-repository-classification.json":"bcb50229ceddb267c8839ee69c05f5e5c8c4460485c92849532bcf163c37faa8"}},"docs/audit/29-file-content-evidence.json":{"size":109095,"mtime_ns":1786799852325608100,"indexed_at_ns":1787564288741610500,"word_count":9098,"hashes":{"docs/audit/29-file-content-evidence.json":"c4696525e8ab3c252ff9b6b38d5882225e0a9016698111df28064edbe7bf5124"}},"docs/audit/30-compiler-diagnostics-index.json":{"size":3707,"mtime_ns":1786799852326617100,"indexed_at_ns":1787564288742610000,"word_count":324,"hashes":{"docs/audit/30-compiler-diagnostics-index.json":"85bd1a964e41cc5e615c7260be2beb54b49dd444da40d96ae31e2a33c1c6bc24"}},"docs/audit/31-module-audit-closure.md":{"size":7587,"mtime_ns":1786799852327616800,"indexed_at_ns":1787564288889327500,"word_count":709,"hashes":{"docs/audit/31-module-audit-closure.md":"a1c9d7902131d71cf87a072876cc309ac8dfc7cd6e1f33e9619ac12d99f685ba"}},"docs/audit/32-evidence-grade-validation.json":{"size":1613,"mtime_ns":1786799852328616800,"indexed_at_ns":1787564288744610600,"word_count":123,"hashes":{"docs/audit/32-evidence-grade-validation.json":"12ddcc21ff65a2aa76845935ebc0d8313c39991335356fbe3ae7cdd201251af5"}},"docs/audit/33-final-phase2-audit-closure.md":{"size":2535,"mtime_ns":1786799852328616800,"indexed_at_ns":1787564288890336600,"word_count":271,"hashes":{"docs/audit/33-final-phase2-audit-closure.md":"217cadb664c7f7d27f8f849ea1249dfd88d5398fd2af154fd385c80e4d559bb1"}},"docs/audit/34-repository-observations.json":{"size":594,"mtime_ns":1786799852329618700,"indexed_at_ns":1787564288746676000,"word_count":49,"hashes":{"docs/audit/34-repository-observations.json":"28ce67ed3f5bcc3e5c3c80d73a16a34d8053d570be0af62be8afaffbc9318a27"}},"docs/audit/35-semantic-review-ledger.json":{"size":99353,"mtime_ns":1786799852330616000,"indexed_at_ns":1787564288748300100,"word_count":6011,"hashes":{"docs/audit/35-semantic-review-ledger.json":"ac0529050e87efc9e2b5a6c5b3a2ce6379186b4b07f23d8ec9cebf214ff885ef"}},"docs/audit/36-mandatory-semantic-scope.json":{"size":7960,"mtime_ns":1786799852331617100,"indexed_at_ns":1787564288750337500,"word_count":638,"hashes":{"docs/audit/36-mandatory-semantic-scope.json":"af62db825dd527009b8d79a6edab6ab627fe55303d3f7fd1c2d8e5fab9a8760b"}},"docs/audit/ADR-AUTH-001.md":{"size":3274,"mtime_ns":1786799852332642700,"indexed_at_ns":1787564278031426500,"word_count":398},"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md":{"size":2146,"mtime_ns":1786799852332642700,"indexed_at_ns":1787564278039442000,"word_count":239},"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md":{"size":15307,"mtime_ns":1787127978258848200,"indexed_at_ns":1787564278050949000,"word_count":1579},"docs/audit/MASTER-TASK-BACKLOG.md":{"size":30107,"mtime_ns":1786799852335470200,"indexed_at_ns":1787564278059475500,"word_count":3510},"docs/audit/audit-state.json":{"size":4135,"mtime_ns":1786799852337382200,"indexed_at_ns":1787564288751336000,"word_count":267,"hashes":{"docs/audit/audit-state.json":"4b804494570a2812170cb8dab35d15da659f57d6e637652328725e956f7d98aa"}},"docs/audit/build_manifest.js":{"size":4060,"mtime_ns":1786799852338393200,"indexed_at_ns":1787564278073659600,"word_count":348},"docs/audit/frontend-route-map.md":{"size":2558,"mtime_ns":1786799852339389800,"indexed_at_ns":1787564278086621200,"word_count":329},"docs/audit/generate_classification.js":{"size":2186,"mtime_ns":1786799852339389800,"indexed_at_ns":1787564278092628600,"word_count":204},"docs/audit/generate_evidence.js":{"size":3098,"mtime_ns":1786799852340390100,"indexed_at_ns":1787564278102632400,"word_count":253},"docs/audit/generate_ledger.js":{"size":7648,"mtime_ns":1786799852341897300,"indexed_at_ns":1787564278111642200,"word_count":620},"docs/audit/generate_manifest.js":{"size":6357,"mtime_ns":1786799852341897300,"indexed_at_ns":1787564278121158800,"word_count":489},"docs/audit/master-task-backlog.json":{"size":22336,"mtime_ns":1786799852342906700,"indexed_at_ns":1787564288753306100,"word_count":2071,"hashes":{"docs/audit/master-task-backlog.json":"f1c994d971b4e58165ab9f74f8b69b97c07fe74005f64dc11badf5e287b5fd28"}},"docs/audit/phase3-execution-plan.md":{"size":6007,"mtime_ns":1786799852343952400,"indexed_at_ns":1787564278151443000,"word_count":736},"docs/audit/phase3-traceability-matrix.md":{"size":5237,"mtime_ns":1786799852344952800,"indexed_at_ns":1787564288892324500,"word_count":692,"hashes":{"docs/audit/phase3-traceability-matrix.md":"c46b1b09c5f6be7f54ba888652e69698b26d955a8e7c8e4fa19cda8729ee2f7b"}},"docs/audit/phase3.1-backlog-review.md":{"size":9737,"mtime_ns":1786799852345952800,"indexed_at_ns":1787564288893326100,"word_count":1202,"hashes":{"docs/audit/phase3.1-backlog-review.md":"021895bb0b90dd75935ebe0317d3198a2c448ccdd6861b1302cc29735f48da82"}},"docs/audit/phase3.1-change-log.md":{"size":3756,"mtime_ns":1786799852346954800,"indexed_at_ns":1787564288895833800,"word_count":451,"hashes":{"docs/audit/phase3.1-change-log.md":"093d244c2788ead47c69e3068ccf66930ba52e04430bdba87020cb4a4edcb817"}},"docs/audit/phase3.2-change-log.md":{"size":8272,"mtime_ns":1786799852347952200,"indexed_at_ns":1787564288898839900,"word_count":930,"hashes":{"docs/audit/phase3.2-change-log.md":"00bff98e2ae2ef50c4daf265d5f34469f21c244b6dca88b70e1f9ffa17a71d83"}},"docs/audit/phase3.2-implementation-readiness.md":{"size":4694,"mtime_ns":1786799852347952200,"indexed_at_ns":1787564288900841600,"word_count":517,"hashes":{"docs/audit/phase3.2-implementation-readiness.md":"9f1e0335fdc0fa2db0fd5ceaa97e50be85d04bc1ad5d3db1ef74e85de97f71a6"}},"docs/audit/rebuild_honest_ledger.js":{"size":6113,"mtime_ns":1786799852348952900,"indexed_at_ns":1787564278235921000,"word_count":559},"docs/audit/sync_honest_manifest.js":{"size":1213,"mtime_ns":1786799852349953100,"indexed_at_ns":1787564278251885100,"word_count":75},"docs/audit/sync_manifest.js":{"size":997,"mtime_ns":1786799852350953300,"indexed_at_ns":1787564278278221400,"word_count":62},"docs/audit/validate_evidence_grade.js":{"size":6141,"mtime_ns":1786799852351954100,"indexed_at_ns":1787564278293927700,"word_count":526},"docs/audit/validate_integrity.js":{"size":3408,"mtime_ns":1786799852352952400,"indexed_at_ns":1787564278307680200,"word_count":284},"docs/backlog.md":{"size":26175,"mtime_ns":1786799852356021600,"indexed_at_ns":1787564278321184000,"word_count":2834},"frontend/admin-panel/README.md":{"size":2425,"mtime_ns":1783764561778952800,"indexed_at_ns":1787564288901841700,"word_count":212,"hashes":{"frontend/admin-panel/readme.md":"3945c052249ebd020b013303d5921815b52d847bd36c748a03bfdc8eb2a390b8"}},"frontend/admin-panel/eslint.config.js":{"size":906,"mtime_ns":1787148092334501700,"indexed_at_ns":1787564278341898900,"word_count":69},"frontend/admin-panel/index.html":{"size":363,"mtime_ns":1783764561780558500,"indexed_at_ns":1787564278349908400,"word_count":28},"frontend/admin-panel/package.json":{"size":1072,"mtime_ns":1785570791953119000,"indexed_at_ns":1787564288755305400,"word_count":84,"hashes":{"frontend/admin-panel/package.json":"6d61fb108392e86320c75b42e69ba7138bdc47bba4883fafbeb6e661cc5f51e4"}},"frontend/admin-panel/postcss.config.js":{"size":91,"mtime_ns":1783764561796281900,"indexed_at_ns":1787564278365426300,"word_count":11},"frontend/admin-panel/public/favicon.svg":{"size":9522,"mtime_ns":1783764561797801500,"indexed_at_ns":1787564278373940900,"word_count":491},"frontend/admin-panel/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856792435855000,"indexed_at_ns":1787564278406053200,"word_count":15},"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856792445365000,"indexed_at_ns":1787564278442987400,"word_count":15},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856792454604400,"indexed_at_ns":1787564288903840500,"word_count":1077,"hashes":{"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/changelog.md":"4003fe6a71221e735897cfe03ac11bd59ef9951572007763151bf95663256a3d"}},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/README.md":{"size":4136,"mtime_ns":1783856792502503100,"indexed_at_ns":1787564288904839800,"word_count":366,"hashes":{"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/readme.md":"880beb9c92fd527a098de27bc779b6891a36af98ae994f506a64be199ed50392"}},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/sample-variable.gif":{"size":236102,"mtime_ns":1783856792546496500,"indexed_at_ns":1787564279088340500,"word_count":10881},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856792548005600,"indexed_at_ns":1787564288906849300,"word_count":951,"hashes":{"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/changelog.md":"a735e1b29ad9d3361a0d1ecfd5c1f2f78c200a272918606decc377c469944321"}},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856792595155200,"indexed_at_ns":1787564288908847200,"word_count":283,"hashes":{"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/readme.md":"3b6e2d78372a72b67e339bfd7331d408f43245840749d2f46df5c356a208fbfd"}},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856792645667900,"indexed_at_ns":1787564279779307800,"word_count":2615},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856792646666000,"indexed_at_ns":1787564279790989600,"word_count":55},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856792647671700,"indexed_at_ns":1787564288909850900,"word_count":5086,"hashes":{"frontend/admin-panel/public/fonts/vazirmatn-v33.003/changelog.md":"5207a2a148ccfd0338342325a39d9b5b2d39514429c93e0aedf68b21f23fd71e"}},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856792648669800,"indexed_at_ns":1787564279809995800,"word_count":671},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856792648669800,"indexed_at_ns":1787564288911852600,"word_count":270,"hashes":{"frontend/admin-panel/public/fonts/vazirmatn-v33.003/readme.md":"0d736c7dd11e89622e7105e6a5958fc3d83ec827b8a00debc0943bc8e3a3d201"}},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt":{"size":211,"mtime_ns":1783856792971535000,"indexed_at_ns":1787564282419642600,"word_count":14},"frontend/admin-panel/public/icons.svg":{"size":5031,"mtime_ns":1783764561799320300,"indexed_at_ns":1787564282425161000,"word_count":382},"frontend/admin-panel/src/App.tsx":{"size":1088,"mtime_ns":1786799852365481100,"indexed_at_ns":1787564282435769900,"word_count":99},"frontend/admin-panel/src/assets/hero.png":{"size":13057,"mtime_ns":1783764561812863000,"indexed_at_ns":1787564282442291600,"word_count":437},"frontend/admin-panel/src/assets/react.svg":{"size":4126,"mtime_ns":1783764561813924700,"indexed_at_ns":1787564282449535600,"word_count":366},"frontend/admin-panel/src/assets/vite.svg":{"size":8709,"mtime_ns":1783764561814995700,"indexed_at_ns":1787564282456535800,"word_count":439},"frontend/admin-panel/src/components/Layout.tsx":{"size":726,"mtime_ns":1784621786958594800,"indexed_at_ns":1787564282463054300,"word_count":69},"frontend/admin-panel/src/components/ProtectedRoute.tsx":{"size":2336,"mtime_ns":1786799852369164100,"indexed_at_ns":1787564282469060600,"word_count":210},"frontend/admin-panel/src/components/Sidebar.tsx":{"size":13111,"mtime_ns":1787461920842084500,"indexed_at_ns":1787564282482815100,"word_count":1198},"frontend/admin-panel/src/components/Topbar.tsx":{"size":19016,"mtime_ns":1787466234964385700,"indexed_at_ns":1787564282492845100,"word_count":1586},"frontend/admin-panel/src/components/ui/ConfirmModal.tsx":{"size":2294,"mtime_ns":1786972191359099700,"indexed_at_ns":1787564282523977100,"word_count":192},"frontend/admin-panel/src/components/ui/MediaSelector.tsx":{"size":21604,"mtime_ns":1787038450536696800,"indexed_at_ns":1787564282572801500,"word_count":1686},"frontend/admin-panel/src/components/ui/Pagination.tsx":{"size":5510,"mtime_ns":1786799852387442100,"indexed_at_ns":1787564282589430000,"word_count":447},"frontend/admin-panel/src/components/ui/Skeleton.tsx":{"size":178,"mtime_ns":1783856792977535800,"indexed_at_ns":1787564282620468100,"word_count":22},"frontend/admin-panel/src/components/ui/Spinner.tsx":{"size":650,"mtime_ns":1783856792979049200,"indexed_at_ns":1787564282628668900,"word_count":67},"frontend/admin-panel/src/main.tsx":{"size":1055,"mtime_ns":1787062325395038600,"indexed_at_ns":1787564282663403700,"word_count":106},"frontend/admin-panel/src/pages/B2BManager.tsx":{"size":24602,"mtime_ns":1787467799873115600,"indexed_at_ns":1787564282671195100,"word_count":1680},"frontend/admin-panel/src/pages/BannersManager.tsx":{"size":19583,"mtime_ns":1787467799874171700,"indexed_at_ns":1787564282678884300,"word_count":1396},"frontend/admin-panel/src/pages/Blogs.tsx":{"size":82028,"mtime_ns":1787577523706353400,"indexed_at_ns":1787579587008407600,"word_count":5639},"frontend/admin-panel/src/pages/CMS.tsx":{"size":10114,"mtime_ns":1787467933664259800,"indexed_at_ns":1787564282696254600,"word_count":791},"frontend/admin-panel/src/pages/Categories.tsx":{"size":16242,"mtime_ns":1787469989141511600,"indexed_at_ns":1787564282703986300,"word_count":1174},"frontend/admin-panel/src/pages/ContactSubmissions.tsx":{"size":12346,"mtime_ns":1787467799877343800,"indexed_at_ns":1787564282712027500,"word_count":842},"frontend/admin-panel/src/pages/Coupons.tsx":{"size":27812,"mtime_ns":1787469989144204800,"indexed_at_ns":1787564282718995800,"word_count":2147},"frontend/admin-panel/src/pages/Dashboard.tsx":{"size":6006,"mtime_ns":1786885876829510000,"indexed_at_ns":1787564282725688400,"word_count":534},"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx":{"size":13303,"mtime_ns":1787467799882925200,"indexed_at_ns":1787564282747725400,"word_count":928},"frontend/admin-panel/src/pages/IngredientsManager.tsx":{"size":17943,"mtime_ns":1787467933669934500,"indexed_at_ns":1787564282754694400,"word_count":1254},"frontend/admin-panel/src/pages/Login.tsx":{"size":11545,"mtime_ns":1787127978262361000,"indexed_at_ns":1787564282761202600,"word_count":838},"frontend/admin-panel/src/pages/Media.tsx":{"size":29374,"mtime_ns":1787467799885925200,"indexed_at_ns":1787564282769203900,"word_count":2304},"frontend/admin-panel/src/pages/Orders.tsx":{"size":55804,"mtime_ns":1787471287596697600,"indexed_at_ns":1787564282793781900,"word_count":4168},"frontend/admin-panel/src/pages/Pets.tsx":{"size":16631,"mtime_ns":1787467799891938300,"indexed_at_ns":1787564282810794100,"word_count":1209},"frontend/admin-panel/src/pages/PrescriptionsManager.tsx":{"size":19424,"mtime_ns":1787467799892935800,"indexed_at_ns":1787564282818800700,"word_count":1419},"frontend/admin-panel/src/pages/Products.tsx":{"size":119422,"mtime_ns":1787640978245565100,"indexed_at_ns":1787641015212043500,"word_count":7835},"frontend/admin-panel/src/pages/Reports.tsx":{"size":12984,"mtime_ns":1787467799896935100,"indexed_at_ns":1787564282842425400,"word_count":961},"frontend/admin-panel/src/pages/SeoSettingsPage.tsx":{"size":15089,"mtime_ns":1787467799899934200,"indexed_at_ns":1787564282855431900,"word_count":1137},"frontend/admin-panel/src/pages/Settings.tsx":{"size":24256,"mtime_ns":1787468615457819400,"indexed_at_ns":1787564282862937700,"word_count":1701},"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx":{"size":13745,"mtime_ns":1787467799902933600,"indexed_at_ns":1787564282879642700,"word_count":1014},"frontend/admin-panel/src/pages/SystemSettingsPage.tsx":{"size":16821,"mtime_ns":1787467799907448000,"indexed_at_ns":1787564282908140500,"word_count":1133},"frontend/admin-panel/src/pages/TestimonialsManager.tsx":{"size":18547,"mtime_ns":1787467799908955400,"indexed_at_ns":1787564282916133400,"word_count":1297},"frontend/admin-panel/src/pages/UITexts.tsx":{"size":70758,"mtime_ns":1787564362267171200,"indexed_at_ns":1787566186978368500,"word_count":5750},"frontend/admin-panel/src/pages/Users.tsx":{"size":39503,"mtime_ns":1787469989156215200,"indexed_at_ns":1787564282953753800,"word_count":2663},"frontend/admin-panel/src/pages/Videos.tsx":{"size":22648,"mtime_ns":1787467799914548300,"indexed_at_ns":1787564282960255700,"word_count":1604},"frontend/admin-panel/src/pages/WholesaleApplications.tsx":{"size":6713,"mtime_ns":1787467799916852500,"indexed_at_ns":1787564282969260200,"word_count":505},"frontend/admin-panel/src/pages/Wiki.tsx":{"size":15651,"mtime_ns":1787469989158212800,"indexed_at_ns":1787564282977272000,"word_count":1221},"frontend/admin-panel/src/routes/adminRoutes.tsx":{"size":6245,"mtime_ns":1787461920854097100,"indexed_at_ns":1787564282994994500,"word_count":603},"frontend/admin-panel/src/services/api.ts":{"size":5190,"mtime_ns":1786896758433963000,"indexed_at_ns":1787564283007711200,"word_count":479},"frontend/admin-panel/src/store/adminAuthStore.ts":{"size":666,"mtime_ns":1786799852469037000,"indexed_at_ns":1787564283020715100,"word_count":65},"frontend/admin-panel/src/types/admin.ts":{"size":4146,"mtime_ns":1787139270957407700,"indexed_at_ns":1787564283031426400,"word_count":454},"frontend/admin-panel/tailwind.config.js":{"size":182,"mtime_ns":1783764561861721300,"indexed_at_ns":1787564283058560500,"word_count":20},"frontend/admin-panel/tsconfig.app.json":{"size":633,"mtime_ns":1787055476779566300,"indexed_at_ns":1787564288756306900,"word_count":48,"hashes":{"frontend/admin-panel/tsconfig.app.json":"2d9838ee1119342fd03bf7644781b8b6aced2cbdc908ff186cdd6ab7ab9ba1c4"}},"frontend/admin-panel/tsconfig.json":{"size":119,"mtime_ns":1783764561863393600,"indexed_at_ns":1787564288757340300,"word_count":15,"hashes":{"frontend/admin-panel/tsconfig.json":"7a6c2e21b6eaa2355b4e2ed29db2a767499a88498bde745cdccf3ba8c7f64f2b"}},"frontend/admin-panel/tsconfig.node.json":{"size":591,"mtime_ns":1783764561863923100,"indexed_at_ns":1787564288759335600,"word_count":44,"hashes":{"frontend/admin-panel/tsconfig.node.json":"035a8143cff9651dbb67885756a07cc3f8ed1c5dcbf04a6e2042600b7989d525"}},"frontend/admin-panel/vite.config.ts":{"size":161,"mtime_ns":1783764561864454900,"indexed_at_ns":1787564283096362600,"word_count":18},"frontend/application/AGENTS.md":{"size":717,"mtime_ns":1787127978268943700,"indexed_at_ns":1787564283110936900,"word_count":88},"frontend/application/CLAUDE.md":{"size":11,"mtime_ns":1783764561866744500,"indexed_at_ns":1787564288914865500,"word_count":1,"hashes":{"frontend/application/claude.md":"0776fbbe8c29c6dc861efa70683090a370ab56dc77c22cb9de74895b4c783320"}},"frontend/application/README.md":{"size":1450,"mtime_ns":1783764561867354300,"indexed_at_ns":1787564288916850100,"word_count":155,"hashes":{"frontend/application/readme.md":"dd829cdf325092d859080ac1db3cbf2cca3198e72834f0f228495ef3c49a2240"}},"frontend/application/app/ClientLayout.tsx":{"size":6751,"mtime_ns":1787579631778094200,"indexed_at_ns":1787581121143430600,"word_count":604},"frontend/application/app/HomeClient.tsx":{"size":13267,"mtime_ns":1787148092347461500,"indexed_at_ns":1787564283139843200,"word_count":851},"frontend/application/app/about/page.tsx":{"size":5706,"mtime_ns":1787139270959412500,"indexed_at_ns":1787564283144842100,"word_count":474},"frontend/application/app/blog/[slug]/page.tsx":{"size":8201,"mtime_ns":1787641161057694000,"indexed_at_ns":1787641302192094100,"word_count":767},"frontend/application/app/blog/page.tsx":{"size":3318,"mtime_ns":1787581191870074600,"indexed_at_ns":1787640613324583400,"word_count":340},"frontend/application/app/catalog/CatalogClient.tsx":{"size":1389,"mtime_ns":1786872121566485100,"indexed_at_ns":1787564283164359500,"word_count":129},"frontend/application/app/catalog/page.tsx":{"size":671,"mtime_ns":1787139270965525300,"indexed_at_ns":1787564283171905500,"word_count":66},"frontend/application/app/checkout/page.tsx":{"size":604,"mtime_ns":1787139270967535500,"indexed_at_ns":1787564283176904300,"word_count":60},"frontend/application/app/checkout/success/[id]/page.tsx":{"size":231,"mtime_ns":1783764561878668300,"indexed_at_ns":1787564283184494700,"word_count":31},"frontend/application/app/contact/page.tsx":{"size":1610,"mtime_ns":1787139270969052100,"indexed_at_ns":1787564283190487600,"word_count":137},"frontend/application/app/dashboard/page.tsx":{"size":903,"mtime_ns":1787394935318217400,"indexed_at_ns":1787564283196487100,"word_count":83},"frontend/application/app/error.tsx":{"size":383,"mtime_ns":1785148022478709000,"indexed_at_ns":1787564283202931100,"word_count":50},"frontend/application/app/layout.tsx":{"size":3599,"mtime_ns":1787579631786101100,"indexed_at_ns":1787581121228068200,"word_count":311},"frontend/application/app/loading.tsx":{"size":1373,"mtime_ns":1785148022487650000,"indexed_at_ns":1787564283226559000,"word_count":122},"frontend/application/app/not-found.tsx":{"size":124,"mtime_ns":1783764561891411400,"indexed_at_ns":1787564283232174600,"word_count":15},"frontend/application/app/page.tsx":{"size":1003,"mtime_ns":1787139270974959500,"indexed_at_ns":1787564283238177400,"word_count":114},"frontend/application/app/privacy/page.tsx":{"size":4098,"mtime_ns":1787139270976563700,"indexed_at_ns":1787564283252184100,"word_count":336},"frontend/application/app/profile/page.tsx":{"size":623,"mtime_ns":1787139270978803200,"indexed_at_ns":1787564283258179600,"word_count":63},"frontend/application/app/robots.ts":{"size":825,"mtime_ns":1787578481501464000,"indexed_at_ns":1787579587410789500,"word_count":72},"frontend/application/app/search/page.tsx":{"size":786,"mtime_ns":1787139270979946700,"indexed_at_ns":1787564283271658500,"word_count":82},"frontend/application/app/shop/[slug]/page.tsx":{"size":8722,"mtime_ns":1787579631787104400,"indexed_at_ns":1787581121275563300,"word_count":786},"frontend/application/app/shop/page.tsx":{"size":1625,"mtime_ns":1787139270983150100,"indexed_at_ns":1787564283286262000,"word_count":177},"frontend/application/app/sitemap.ts":{"size":3510,"mtime_ns":1787578481510463300,"indexed_at_ns":1787579587449901700,"word_count":350},"frontend/application/app/track/page.tsx":{"size":612,"mtime_ns":1787139270984213600,"indexed_at_ns":1787564283299102300,"word_count":60},"frontend/application/app/trust-seals/page.tsx":{"size":7155,"mtime_ns":1787394001609306700,"indexed_at_ns":1787564283307853000,"word_count":566},"frontend/application/app/videos/page.tsx":{"size":642,"mtime_ns":1787139270985823100,"indexed_at_ns":1787564283314746400,"word_count":60},"frontend/application/app/wiki/[slug]/page.tsx":{"size":3050,"mtime_ns":1787139270986833800,"indexed_at_ns":1787564283326554700,"word_count":291},"frontend/application/app/wiki/page.tsx":{"size":910,"mtime_ns":1787139270987830800,"indexed_at_ns":1787564283336548200,"word_count":85},"frontend/application/components/AddressModal.tsx":{"size":16148,"mtime_ns":1786799852571178400,"indexed_at_ns":1787564283343300100,"word_count":1109},"frontend/application/components/ArchivePage.tsx":{"size":35616,"mtime_ns":1787579631789796600,"indexed_at_ns":1787581121339161400,"word_count":2784},"frontend/application/components/AuthModal.tsx":{"size":44845,"mtime_ns":1786891855357691900,"indexed_at_ns":1787564283356301300,"word_count":2978},"frontend/application/components/B2BPortal.tsx":{"size":14014,"mtime_ns":1786894580156857600,"indexed_at_ns":1787564283362810800,"word_count":1094},"frontend/application/components/BackButton.tsx":{"size":1120,"mtime_ns":1786965281357277800,"indexed_at_ns":1787564283369816100,"word_count":117},"frontend/application/components/BlogPage.tsx":{"size":20956,"mtime_ns":1787640735444135300,"indexed_at_ns":1787641015692885800,"word_count":1521},"frontend/application/components/CartDrawer.tsx":{"size":20691,"mtime_ns":1787407740765087600,"indexed_at_ns":1787564283403630000,"word_count":1365},"frontend/application/components/CheckoutPage.tsx":{"size":40322,"mtime_ns":1787461919458564100,"indexed_at_ns":1787564283409627600,"word_count":2732},"frontend/application/components/ContactFormClient.tsx":{"size":10535,"mtime_ns":1787127978310946300,"indexed_at_ns":1787564283415627200,"word_count":775},"frontend/application/components/DeleteConfirmModal.tsx":{"size":2328,"mtime_ns":1786799852608752300,"indexed_at_ns":1787564283424164700,"word_count":195},"frontend/application/components/EnamadBadge.tsx":{"size":1516,"mtime_ns":1786799852612361900,"indexed_at_ns":1787564283429683300,"word_count":114},"frontend/application/components/ErrorBoundary.tsx":{"size":2617,"mtime_ns":1786799852614549600,"indexed_at_ns":1787564283436684600,"word_count":235},"frontend/application/components/ErrorPages.tsx":{"size":2809,"mtime_ns":1786885876920726400,"indexed_at_ns":1787564283442678500,"word_count":243},"frontend/application/components/FeaturedProducts.tsx":{"size":10480,"mtime_ns":1787579631794809300,"indexed_at_ns":1787581121420455200,"word_count":904},"frontend/application/components/Footer.tsx":{"size":13662,"mtime_ns":1787564348692932800,"indexed_at_ns":1787566187355265600,"word_count":901},"frontend/application/components/Header.tsx":{"size":30937,"mtime_ns":1787468615464348400,"indexed_at_ns":1787564283466199300,"word_count":2246},"frontend/application/components/HeaderButton.tsx":{"size":2242,"mtime_ns":1786799852637156100,"indexed_at_ns":1787564283472732500,"word_count":208},"frontend/application/components/Hero.tsx":{"size":19216,"mtime_ns":1787577523539588200,"indexed_at_ns":1787579587587091800,"word_count":1616},"frontend/application/components/IngredientWiki.tsx":{"size":20337,"mtime_ns":1786965281374206800,"indexed_at_ns":1787564283484315500,"word_count":1496},"frontend/application/components/LoginModal.tsx":{"size":13846,"mtime_ns":1786885876932267500,"indexed_at_ns":1787564283491310500,"word_count":1121},"frontend/application/components/MaintenancePage.tsx":{"size":3686,"mtime_ns":1786946249984693000,"indexed_at_ns":1787564283497309400,"word_count":313},"frontend/application/components/NetworkBanner.tsx":{"size":2350,"mtime_ns":1786799852662138900,"indexed_at_ns":1787564283504310000,"word_count":214},"frontend/application/components/OrderDetailsModal.tsx":{"size":36149,"mtime_ns":1787564348694929900,"indexed_at_ns":1787566187397322400,"word_count":2477},"frontend/application/components/OrderSuccess.tsx":{"size":6396,"mtime_ns":1786799852665542300,"indexed_at_ns":1787564283517318800,"word_count":521},"frontend/application/components/OrderTracking.tsx":{"size":9106,"mtime_ns":1786965281380189400,"indexed_at_ns":1787564283526450300,"word_count":663},"frontend/application/components/PetProfile.tsx":{"size":83314,"mtime_ns":1787564348695930500,"indexed_at_ns":1787566187413918800,"word_count":5882},"frontend/application/components/PrescriptionUploadModal.tsx":{"size":18907,"mtime_ns":1786965281385656300,"indexed_at_ns":1787564283554264900,"word_count":1331},"frontend/application/components/ProductPage.tsx":{"size":69953,"mtime_ns":1787579631799835500,"indexed_at_ns":1787581121498381000,"word_count":4986},"frontend/application/components/SafeImage.tsx":{"size":3431,"mtime_ns":1787579631801836700,"indexed_at_ns":1787581121509317800,"word_count":318},"frontend/application/components/SearchResultsPage.tsx":{"size":8335,"mtime_ns":1786799852701578200,"indexed_at_ns":1787564283582695900,"word_count":594},"frontend/application/components/SearchableSelect.tsx":{"size":4375,"mtime_ns":1785575516155554800,"indexed_at_ns":1787564283590696700,"word_count":336},"frontend/application/components/Skeleton.tsx":{"size":3084,"mtime_ns":1783764561943996900,"indexed_at_ns":1787564283596695600,"word_count":291},"frontend/application/components/SmartAdvisor.tsx":{"size":35049,"mtime_ns":1787461919461079000,"indexed_at_ns":1787564283604697000,"word_count":2686},"frontend/application/components/TickerBanner.tsx":{"size":1605,"mtime_ns":1786885876960835800,"indexed_at_ns":1787564283617707000,"word_count":140},"frontend/application/components/Tooltip.tsx":{"size":2771,"mtime_ns":1786885876964103200,"indexed_at_ns":1787564283624218300,"word_count":227},"frontend/application/components/TopUpModal.tsx":{"size":9381,"mtime_ns":1787406597303349300,"indexed_at_ns":1787564283631217800,"word_count":741},"frontend/application/components/UserDashboard.tsx":{"size":92697,"mtime_ns":1787394935320317600,"indexed_at_ns":1787564283638867700,"word_count":5939},"frontend/application/components/VetGallery.tsx":{"size":8292,"mtime_ns":1787074301692915100,"indexed_at_ns":1787564283646099700,"word_count":643},"frontend/application/components/VideosPage.tsx":{"size":7000,"mtime_ns":1787048863693787300,"indexed_at_ns":1787564283659099700,"word_count":531},"frontend/application/components/__tests__/CartDrawer.test.tsx":{"size":3197,"mtime_ns":1786799852761825800,"indexed_at_ns":1787564283664612000,"word_count":285},"frontend/application/components/__tests__/FeaturedProducts.test.tsx":{"size":3115,"mtime_ns":1786799852765632100,"indexed_at_ns":1787564283674102900,"word_count":242},"frontend/application/components/__tests__/Footer.test.tsx":{"size":1649,"mtime_ns":1786885876976595100,"indexed_at_ns":1787564283680103500,"word_count":139},"frontend/application/components/__tests__/Header.test.tsx":{"size":3277,"mtime_ns":1786799852770019100,"indexed_at_ns":1787564283687680800,"word_count":261},"frontend/application/components/__tests__/Hero.test.tsx":{"size":1980,"mtime_ns":1786799852776010800,"indexed_at_ns":1787564283694680800,"word_count":192},"frontend/application/components/__tests__/Tooltip.test.tsx":{"size":1508,"mtime_ns":1786799852784348900,"indexed_at_ns":1787564283702458200,"word_count":137},"frontend/application/eslint.config.mjs":{"size":747,"mtime_ns":1787148092358055900,"indexed_at_ns":1787564283732316100,"word_count":61},"frontend/application/lib/data/products.ts":{"size":104224,"mtime_ns":1787578481513988500,"indexed_at_ns":1787579587785035200,"word_count":9748},"frontend/application/lib/data/provinces.ts":{"size":2993,"mtime_ns":1785571725610676000,"indexed_at_ns":1787564283749267800,"word_count":203},"frontend/application/lib/data/scientificTerms.ts":{"size":18042,"mtime_ns":1786958978743097300,"indexed_at_ns":1787564283758834500,"word_count":1756},"frontend/application/lib/hooks/useNetworkStatus.ts":{"size":610,"mtime_ns":1786799852793488000,"indexed_at_ns":1787564283765348100,"word_count":59},"frontend/application/lib/services/api.ts":{"size":3694,"mtime_ns":1786954681844297300,"indexed_at_ns":1787564283779578000,"word_count":391},"frontend/application/lib/services/authService.ts":{"size":4524,"mtime_ns":1786885876986184800,"indexed_at_ns":1787564283786586900,"word_count":509},"frontend/application/lib/services/orderService.ts":{"size":2428,"mtime_ns":1786799852810726500,"indexed_at_ns":1787564283798142900,"word_count":279},"frontend/application/lib/services/productService.ts":{"size":15840,"mtime_ns":1787579631803836100,"indexed_at_ns":1787581121674594200,"word_count":1409},"frontend/application/lib/services/videoService.ts":{"size":1234,"mtime_ns":1786967385871970500,"indexed_at_ns":1787564283823224300,"word_count":144},"frontend/application/lib/store/__tests__/cartStore.test.ts":{"size":4430,"mtime_ns":1786799852822036900,"indexed_at_ns":1787564283831962200,"word_count":386},"frontend/application/lib/store/__tests__/settingsStore.test.ts":{"size":1949,"mtime_ns":1783856793043803200,"indexed_at_ns":1787564283841962300,"word_count":194},"frontend/application/lib/store/__tests__/userStore.test.ts":{"size":3639,"mtime_ns":1786799852825547700,"indexed_at_ns":1787564283848968400,"word_count":289},"frontend/application/lib/store/cartStore.ts":{"size":6972,"mtime_ns":1786895436235684300,"indexed_at_ns":1787564283855969000,"word_count":697},"frontend/application/lib/store/settingsStore.ts":{"size":3630,"mtime_ns":1786948119787096800,"indexed_at_ns":1787564283862787900,"word_count":371},"frontend/application/lib/store/uiStore.ts":{"size":872,"mtime_ns":1786799852833588000,"indexed_at_ns":1787564283868789300,"word_count":100},"frontend/application/lib/store/usePetStore.ts":{"size":8680,"mtime_ns":1786954681845300600,"indexed_at_ns":1787564283875961800,"word_count":850},"frontend/application/lib/store/userStore.ts":{"size":10236,"mtime_ns":1786885876994698300,"indexed_at_ns":1787564283881961000,"word_count":883},"frontend/application/lib/types.ts":{"size":2194,"mtime_ns":1786799852840111800,"indexed_at_ns":1787564283891446100,"word_count":237},"frontend/application/lib/utils.ts":{"size":478,"mtime_ns":1786799852847284000,"indexed_at_ns":1787564283899432000,"word_count":61},"frontend/application/next.config.ts":{"size":2274,"mtime_ns":1787579631805387200,"indexed_at_ns":1787581121748067000,"word_count":208},"frontend/application/package.json":{"size":844,"mtime_ns":1787640978247182300,"indexed_at_ns":1787641020904995300,"word_count":72,"hashes":{"frontend/application/package.json":"6f60e7e1648827d0553bb5db6faa06d1a77f6809f0a6370f9b9517c91dd19db7"}},"frontend/application/postcss.config.mjs":{"size":94,"mtime_ns":1783764561988252100,"indexed_at_ns":1787564283923981900,"word_count":13},"frontend/application/public/assets/images/hero-section-image.png":{"size":6990105,"mtime_ns":1783856793095044200,"indexed_at_ns":1787564284102873200,"word_count":267685},"frontend/application/public/assets/images/regenerated_image_1779109861747.png":{"size":2269101,"mtime_ns":1783764562014110300,"indexed_at_ns":1787564284275644800,"word_count":84979},"frontend/application/public/file.svg":{"size":391,"mtime_ns":1783764562016213600,"indexed_at_ns":1787564284329558800,"word_count":50},"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856793098052000,"indexed_at_ns":1787564284359579800,"word_count":15},"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856793107660400,"indexed_at_ns":1787564284385265800,"word_count":15},"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856793113660500,"indexed_at_ns":1787564288917846400,"word_count":1077,"hashes":{"frontend/application/public/fonts/sahel-font-v3.4.0/changelog.md":"be9b046e69dc5442c30d61cca51a69e4238f861da265d1ce8cd0192bafce40a9"}},"frontend/application/public/fonts/sahel-font-v3.4.0/README.md":{"size":4136,"mtime_ns":1783856793156251700,"indexed_at_ns":1787564288918846000,"word_count":366,"hashes":{"frontend/application/public/fonts/sahel-font-v3.4.0/readme.md":"9b0e689f6474b487d70db0ecb05321072f15df92266522497b60aaa47579aac5"}},"frontend/application/public/fonts/sahel-font-v3.4.0/sample-variable.gif":{"size":236102,"mtime_ns":1783856793229119700,"indexed_at_ns":1787564285013040800,"word_count":10881},"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856793230118600,"indexed_at_ns":1787564285027163500,"word_count":951},"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856793279542700,"indexed_at_ns":1787564285290463900,"word_count":283},"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856793315146800,"indexed_at_ns":1787564285533666700,"word_count":2615},"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856793316155600,"indexed_at_ns":1787564285543697700,"word_count":55},"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856793317690100,"indexed_at_ns":1787564285550703100,"word_count":5086},"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856793319422000,"indexed_at_ns":1787564285557705000,"word_count":671},"frontend/application/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856793320489000,"indexed_at_ns":1787564285564280600,"word_count":270},"frontend/application/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt":{"size":211,"mtime_ns":1783856793668096800,"indexed_at_ns":1787564287947611200,"word_count":14},"frontend/application/public/globe.svg":{"size":1035,"mtime_ns":1783764562016720700,"indexed_at_ns":1787564287953617800,"word_count":154},"frontend/application/public/next.svg":{"size":1375,"mtime_ns":1783764562018238900,"indexed_at_ns":1787564288119164700,"word_count":183},"frontend/application/public/vercel.svg":{"size":128,"mtime_ns":1783764562019253000,"indexed_at_ns":1787564288125339900,"word_count":12},"frontend/application/public/window.svg":{"size":385,"mtime_ns":1783764562019253000,"indexed_at_ns":1787564288135344400,"word_count":63},"frontend/application/tsconfig.json":{"size":750,"mtime_ns":1786799852865640000,"indexed_at_ns":1787564288761338000,"word_count":61,"hashes":{"frontend/application/tsconfig.json":"adcade0f962ec5888be99b4b1402d98812cfd570b0c5669bda73142b2cb9210d"}},"frontend/application/vitest.config.ts":{"size":244,"mtime_ns":1786799852868652900,"indexed_at_ns":1787564288154346600,"word_count":25},"frontend/application/vitest.setup.ts":{"size":532,"mtime_ns":1786799852870650700,"indexed_at_ns":1787564288160348600,"word_count":58},"metadata.json":{"size":334,"mtime_ns":1783856793672137200,"indexed_at_ns":1787564288762305500,"word_count":35,"hashes":{"metadata.json":"c44b4c4ba60752554ceae65e2f22bddb756cbeb25a4a31ee79160b6eb182255a"}},"package.json":{"size":992,"mtime_ns":1783856793674105800,"indexed_at_ns":1787564288763810700,"word_count":118,"hashes":{"package.json":"0157b70b08d4db87730d29b1da6749d719cc3f815c2c01d0c5cd29042f4d0bcf"}},"prometheus.yml":{"size":164,"mtime_ns":1783764562027779300,"indexed_at_ns":1787564288183410300,"word_count":13},"scripts/backup_db.sh":{"size":1362,"mtime_ns":1786799852876784600,"indexed_at_ns":1787564288765816600,"word_count":134,"hashes":{"scripts/backup_db.sh":"f90cf2d0c954f3eaca83566ccb365bff62fd97a2af0225816c19902ee4dfdd6c"}},"scripts/compose.prod.yml":{"size":2166,"mtime_ns":1787077093990777200,"indexed_at_ns":1787564288200012000,"word_count":120},"scripts/compose.stage.yml":{"size":2557,"mtime_ns":1787077093991779700,"indexed_at_ns":1787564288207734600,"word_count":137},"scripts/deploy.sh":{"size":3346,"mtime_ns":1787136904559094200,"indexed_at_ns":1787564288766816200,"word_count":351,"hashes":{"scripts/deploy.sh":"64d276bb6eb6cfb83690c529b9d1c0c71fa46aa912a458f684dfcf842fab2aea"}},"scripts/open-browsers.js":{"size":1551,"mtime_ns":1787640978248234500,"indexed_at_ns":1787641020319836400,"word_count":202},"scripts/start-dev.js":{"size":1689,"mtime_ns":1787072106514646900,"indexed_at_ns":1787564288229733900,"word_count":186},"start.sh":{"size":26,"mtime_ns":1784033954813080300,"indexed_at_ns":1787564288767817400,"word_count":4,"hashes":{"start.sh":"694c258b963c309734a3316c770f5fef29703bc6f24754b04155fd8db94cf862"}},"swagger.yml":{"size":95785,"mtime_ns":1786799852892091600,"indexed_at_ns":1787564288244352200,"word_count":7031},".antigravity/instructions.md":{"size":226,"mtime_ns":1786870552833405800,"indexed_at_ns":1787564288824755500,"word_count":29,"hashes":{".antigravity/instructions.md":"8d8f5c1bbdbb7b8045e02b06a50e68d3fcfabfb2d65f8ac1cd86168dc8a8cc96"}},".antigravity/workflows/graphify.md":{"size":43292,"mtime_ns":1786870552837921500,"indexed_at_ns":1787564288825731900,"word_count":5442,"hashes":{".antigravity/workflows/graphify.md":"0c16b701a50d64f741f6de107c49584012a8dd7f5e922af9f79754540629e2fe"}},".agents/rules/graphify.md":{"size":933,"mtime_ns":1786870552830271100,"indexed_at_ns":1787564288768819100,"word_count":127,"hashes":{".agents/rules/graphify.md":"26f2577a68d808f7f33ec3e418b95b635aec180d93b22b975e9ae67c47e361c8"}},".agents/workflows/graphify.md":{"size":229,"mtime_ns":1786870552832398300,"indexed_at_ns":1787564288770915200,"word_count":37,"hashes":{".agents/workflows/graphify.md":"a81e2d017e0669c71099362b20854e4d9ed68753f1c240d0682120bdb9aa3c72"}},"backend/src/payment/dto/initiate-payment.dto.ts":{"size":775,"mtime_ns":1786870552874246400,"indexed_at_ns":1787564276845597900,"word_count":69},"backend/src/payment/dto/verify-payment.dto.ts":{"size":1421,"mtime_ns":1786894580126857900,"indexed_at_ns":1787564276853583000,"word_count":126},"backend/src/payment/payment.controller.ts":{"size":19167,"mtime_ns":1787564362263176000,"indexed_at_ns":1787566182392995700,"word_count":1574},"backend/src/payment/payment.module.ts":{"size":608,"mtime_ns":1787394001605617900,"indexed_at_ns":1787564276879203400,"word_count":61},"backend/src/payment/payment.service.ts":{"size":30818,"mtime_ns":1787564362264174300,"indexed_at_ns":1787566182403784800,"word_count":2752},"backend/src/payment/zibal.service.ts":{"size":25781,"mtime_ns":1787461919453309100,"indexed_at_ns":1787564276907816300,"word_count":2490},"frontend/application/app/payment/verify/page.tsx":{"size":14338,"mtime_ns":1786891855356078600,"indexed_at_ns":1787564283245175000,"word_count":1094},"AGENTS.md":{"size":226,"mtime_ns":1786870552862708600,"indexed_at_ns":1787564288842730300,"word_count":29,"hashes":{"agents.md":"b664c2bb6d85e009d7495bcd9c3d52c419176473cd4e19362fd4256616076151"}},"frontend/admin-panel/src/pages/SmsSettingsPage.tsx":{"size":78907,"mtime_ns":1787467799904439000,"indexed_at_ns":1787564282888807700,"word_count":5444},"backend/src/payment/dto/admin-transaction-filter.dto.ts":{"size":2060,"mtime_ns":1787072106401590500,"indexed_at_ns":1787564276830584100,"word_count":191},"frontend/admin-panel/src/pages/Transactions.tsx":{"size":45136,"mtime_ns":1787471434872188300,"indexed_at_ns":1787564282932768300,"word_count":3213},"backend/src/payment/interfaces/payment-gateway.interface.ts":{"size":1330,"mtime_ns":1786870552876751100,"indexed_at_ns":1787564276862891800,"word_count":128},"frontend/application/components/catalog/CatalogPageSpread.tsx":{"size":24099,"mtime_ns":1786885876979161800,"indexed_at_ns":1787564283710218400,"word_count":1912},"frontend/application/components/catalog/FlipbookCatalog.tsx":{"size":32968,"mtime_ns":1786885876982161900,"indexed_at_ns":1787564283718217500,"word_count":2807},"frontend/application/components/catalog/ProductDetailModal.tsx":{"size":7763,"mtime_ns":1786872121572482100,"indexed_at_ns":1787564283726726900,"word_count":557},"backend/scripts/generate-openapi.d.ts":{"size":11,"mtime_ns":1786883225777483700,"indexed_at_ns":1787564276039943800,"word_count":2},"backend/scripts/generate-openapi.js":{"size":2965,"mtime_ns":1786883225779120000,"indexed_at_ns":1787564276052136500,"word_count":309},"backend/src/admin/dto/user.dto.ts":{"size":2839,"mtime_ns":1787072106381989700,"indexed_at_ns":1787564276183263900,"word_count":259},"backend/src/admin/ssl.controller.ts":{"size":3371,"mtime_ns":1787072106382979000,"indexed_at_ns":1787564276232184000,"word_count":296},"backend/src/admin/ssl.service.ts":{"size":6502,"mtime_ns":1787072106383978900,"indexed_at_ns":1787564276239202600,"word_count":612},"backend/src/auth/auth.constants.ts":{"size":456,"mtime_ns":1787072106385980100,"indexed_at_ns":1787564276294978100,"word_count":32},"backend/src/common/utils/phone.utils.ts":{"size":1089,"mtime_ns":1786883225801396000,"indexed_at_ns":1787564276609454700,"word_count":149},"backend/src/reviews/dto/create-review.dto.ts":{"size":949,"mtime_ns":1787072106414306300,"indexed_at_ns":1787564277100235900,"word_count":92},"backend/src/reviews/dto/update-review.dto.ts":{"size":534,"mtime_ns":1787072106415805700,"indexed_at_ns":1787564277108594200,"word_count":53},"backend/src/reviews/reviews.controller.ts":{"size":3221,"mtime_ns":1786944769516312000,"indexed_at_ns":1787564277114590800,"word_count":314},"backend/src/reviews/reviews.module.ts":{"size":374,"mtime_ns":1786944769517310800,"indexed_at_ns":1787564277121093400,"word_count":38},"backend/src/reviews/reviews.service.ts":{"size":7013,"mtime_ns":1787579631775586600,"indexed_at_ns":1787581116730198900,"word_count":742},"backend/src/settings/default-ui-texts.ts":{"size":19291,"mtime_ns":1787564362266172200,"indexed_at_ns":1787566182581953200,"word_count":1538},"backend/src/settings/dto/sms-log-query.dto.ts":{"size":1343,"mtime_ns":1787072106421339300,"indexed_at_ns":1787564277163303300,"word_count":125},"backend/src/tickets/dto/create-ticket.dto.ts":{"size":2374,"mtime_ns":1787072106430874900,"indexed_at_ns":1787564277252724900,"word_count":201},"backend/src/tickets/dto/ticket-query.dto.ts":{"size":1103,"mtime_ns":1787072106431871400,"indexed_at_ns":1787564277259243800,"word_count":106},"backend/src/tickets/tickets.controller.ts":{"size":3114,"mtime_ns":1787072106433878000,"indexed_at_ns":1787564277267243500,"word_count":293},"backend/src/tickets/tickets.module.ts":{"size":374,"mtime_ns":1786890779322296800,"indexed_at_ns":1787564277272754600,"word_count":38},"backend/src/tickets/tickets.service.ts":{"size":7310,"mtime_ns":1787072106434874300,"indexed_at_ns":1787564277279759700,"word_count":781},"frontend/admin-panel/src/pages/Reviews.tsx":{"size":20769,"mtime_ns":1787467799897934900,"indexed_at_ns":1787564282848431600,"word_count":1479},"frontend/admin-panel/src/pages/SslSettingsPage.tsx":{"size":25502,"mtime_ns":1787467799905446700,"indexed_at_ns":1787564282900134300,"word_count":1847},"frontend/admin-panel/src/pages/Tickets.tsx":{"size":20254,"mtime_ns":1787467799909962900,"indexed_at_ns":1787564282926172900,"word_count":1455},"frontend/application/components/BannerPlacement.tsx":{"size":7703,"mtime_ns":1787564348689902000,"indexed_at_ns":1787566187279919800,"word_count":527},"frontend/application/components/BrandLogo.tsx":{"size":3307,"mtime_ns":1787564348690862200,"indexed_at_ns":1787566187296891000,"word_count":287},"frontend/application/components/ProductReviews.tsx":{"size":16108,"mtime_ns":1787048863691774800,"indexed_at_ns":1787564283568575400,"word_count":1194},"frontend/application/lib/services/ticketService.ts":{"size":1569,"mtime_ns":1786890779340901800,"indexed_at_ns":1787564283813667100,"word_count":170},"frontend/admin-panel/src/components/ui/PriceInput.tsx":{"size":2633,"mtime_ns":1786948119771162400,"indexed_at_ns":1787564282596400400,"word_count":267},"frontend/admin-panel/src/components/ui/Badge.tsx":{"size":1554,"mtime_ns":1787461920844094000,"indexed_at_ns":1787564282507850700,"word_count":158},"frontend/admin-panel/src/components/ui/FormField.tsx":{"size":1683,"mtime_ns":1786954681823527000,"indexed_at_ns":1787564282530979500,"word_count":148},"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx":{"size":3351,"mtime_ns":1786954681824534900,"indexed_at_ns":1787564282548015500,"word_count":270},"frontend/admin-panel/src/components/ui/Input.tsx":{"size":1747,"mtime_ns":1786954681825535900,"indexed_at_ns":1787564282557685700,"word_count":147},"frontend/admin-panel/src/components/ui/Select.tsx":{"size":1881,"mtime_ns":1786954681828537500,"indexed_at_ns":1787564282612467900,"word_count":160},"frontend/admin-panel/src/components/ui/Textarea.tsx":{"size":1287,"mtime_ns":1786954681828537500,"indexed_at_ns":1787564282635345800,"word_count":110},"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx":{"size":1623,"mtime_ns":1786954681830044900,"indexed_at_ns":1787564282651611000,"word_count":143},"backend/prisma/tsconfig.json":{"size":194,"mtime_ns":1786961195300236300,"indexed_at_ns":1787564288727957200,"word_count":17,"hashes":{"backend/prisma/tsconfig.json":"0308b15b67bad714ff5f1b6b73f64ae46f98d5190cd6092abb1fb67885d67be1"}},"backend/src/admin/dto/product.dto.ts":{"size":6434,"mtime_ns":1787579631762178300,"indexed_at_ns":1787581116066315300,"word_count":521},"backend/src/doctors/doctors.controller.ts":{"size":1583,"mtime_ns":1787148092311692900,"indexed_at_ns":1787564276643036300,"word_count":148},"backend/src/doctors/doctors.module.ts":{"size":374,"mtime_ns":1786971396035575100,"indexed_at_ns":1787564276651046400,"word_count":38},"backend/src/doctors/doctors.service.ts":{"size":2336,"mtime_ns":1787148092312693100,"indexed_at_ns":1787564276657561500,"word_count":266},"frontend/admin-panel/src/pages/DoctorsManager.tsx":{"size":23282,"mtime_ns":1787467799879923800,"indexed_at_ns":1787564282731656300,"word_count":1666},"frontend/application/components/TestimonialsSection.tsx":{"size":6473,"mtime_ns":1787148092353045800,"indexed_at_ns":1787564283610703800,"word_count":494},"frontend/application/components/VideoModalPlayer.tsx":{"size":23237,"mtime_ns":1787061337636422600,"indexed_at_ns":1787564283653106900,"word_count":1737},"frontend/application/components/PodcastPlayerModal.tsx":{"size":18090,"mtime_ns":1787564348697931500,"indexed_at_ns":1787566187429556300,"word_count":1485},"frontend/application/components/PodcastInlinePlayer.tsx":{"size":17030,"mtime_ns":1787579631796809000,"indexed_at_ns":1787581121483583600,"word_count":1382},"frontend/admin-panel/src/components/RouteErrorBoundary.tsx":{"size":4042,"mtime_ns":1787062174623011100,"indexed_at_ns":1787564282476819000,"word_count":350},"frontend/admin-panel/src/utils/lazyWithRetry.ts":{"size":1129,"mtime_ns":1787062174626227900,"indexed_at_ns":1787564283041437300,"word_count":114},"frontend/admin-panel/src/components/ui/IconPickerModal.tsx":{"size":4853,"mtime_ns":1787071159959928200,"indexed_at_ns":1787564282540947700,"word_count":397},"frontend/admin-panel/src/components/ui/RichTextEditor.tsx":{"size":35899,"mtime_ns":1787577523704353400,"indexed_at_ns":1787579586948875400,"word_count":2719},"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx":{"size":37893,"mtime_ns":1787467799889939500,"indexed_at_ns":1787564282801816300,"word_count":2521},"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx":{"size":7615,"mtime_ns":1787467799901935300,"indexed_at_ns":1787564282872645500,"word_count":585},"backend/test/app-audit-verification.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059109005600,"indexed_at_ns":1787564277474988100,"word_count":2},"backend/test/app-audit-verification.e2e-spec.js":{"size":8429,"mtime_ns":1787073059110516300,"indexed_at_ns":1787564277482992300,"word_count":714},"backend/test/app.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059112563300,"indexed_at_ns":1787564277507000600,"word_count":2},"backend/test/app.e2e-spec.js":{"size":1228,"mtime_ns":1787073059113572500,"indexed_at_ns":1787564277516999300,"word_count":97},"frontend/application/lib/seo.ts":{"size":8046,"mtime_ns":1787139270988834800,"indexed_at_ns":1787564283771867700,"word_count":737},"backend/src/doctors/dto/doctor-query.dto.ts":{"size":1009,"mtime_ns":1787148092314699500,"indexed_at_ns":1787564276666878400,"word_count":116},"backend/src/faq/faq.controller.ts":{"size":2210,"mtime_ns":1787148092316694700,"indexed_at_ns":1787564276673980400,"word_count":199},"backend/src/faq/faq.module.ts":{"size":234,"mtime_ns":1787148092316694700,"indexed_at_ns":1787564276680982300,"word_count":28},"backend/src/faq/faq.service.ts":{"size":1541,"mtime_ns":1787148092319911700,"indexed_at_ns":1787564276686982700,"word_count":184},"backend/src/menu/menu.controller.ts":{"size":2920,"mtime_ns":1787564348681948800,"indexed_at_ns":1787566182315979000,"word_count":265},"backend/src/menu/menu.module.ts":{"size":267,"mtime_ns":1787148092323869500,"indexed_at_ns":1787564276773370000,"word_count":30},"backend/src/menu/menu.service.ts":{"size":7799,"mtime_ns":1787564362262172600,"indexed_at_ns":1787566182327994000,"word_count":799},"backend/src/payment/dto/ebank-checkout.dto.ts":{"size":1378,"mtime_ns":1787394001603461200,"indexed_at_ns":1787564276837578000,"word_count":118},"backend/src/payment/zibal-ebank.service.ts":{"size":10087,"mtime_ns":1787461919452306600,"indexed_at_ns":1787564276900819500,"word_count":1006},"frontend/admin-panel/src/pages/FAQManager.tsx":{"size":12625,"mtime_ns":1787467799881924800,"indexed_at_ns":1787564282739660500,"word_count":937},"frontend/admin-panel/src/pages/MenuManager.tsx":{"size":19625,"mtime_ns":1787469989146215000,"indexed_at_ns":1787564282776784700,"word_count":1512},"frontend/application/components/BlogPreviewSection.tsx":{"size":7535,"mtime_ns":1787640735445200900,"indexed_at_ns":1787641015698860600,"word_count":544},"frontend/application/components/FAQSection.tsx":{"size":4790,"mtime_ns":1787148092351047600,"indexed_at_ns":1787564283447682800,"word_count":394},"frontend/admin-panel/src/pages/ZibalPortalPage.tsx":{"size":55699,"mtime_ns":1787570438155805200,"indexed_at_ns":1787576611067857200,"word_count":3753},"frontend/admin-panel/src/components/TransactionReceiptModal.tsx":{"size":9674,"mtime_ns":1787405554804618300,"indexed_at_ns":1787564282501818200,"word_count":738},"frontend/admin-panel/src/components/ui/Button.tsx":{"size":3591,"mtime_ns":1787467799871536000,"indexed_at_ns":1787564282514820400,"word_count":338},"frontend/admin-panel/src/components/ui/MaskableField.tsx":{"size":3246,"mtime_ns":1787405554805712000,"indexed_at_ns":1787564282565200500,"word_count":310},".vscode/extensions.json":{"size":74,"mtime_ns":1787461919449307400,"indexed_at_ns":1787564288719437300,"word_count":6,"hashes":{".vscode/extensions.json":"57518c36999b5176c9e8617cf937f6e35b54ddd015305005d4611729d1d69177"}},"frontend/admin-panel/src/components/ui/Modal.tsx":{"size":3381,"mtime_ns":1787461920845094300,"indexed_at_ns":1787564282580803500,"word_count":324},"frontend/admin-panel/src/components/ui/ThSort.tsx":{"size":1478,"mtime_ns":1787461920845094300,"indexed_at_ns":1787564282643340000,"word_count":148},"frontend/admin-panel/src/pages/MonitoringPage.tsx":{"size":16455,"mtime_ns":1787466234965980200,"indexed_at_ns":1787564282783791800,"word_count":1289},"frontend/admin-panel/src/utils/useTableParams.ts":{"size":4060,"mtime_ns":1787461920855096000,"indexed_at_ns":1787564283050948100,"word_count":441},"frontend/application/public/assets/images/canina-product-placeholder.png":{"size":6990105,"mtime_ns":1787461919505024400,"indexed_at_ns":1787564283930981500,"word_count":267685},"frontend/application/public/images/vets/vet1.webp":{"size":6990105,"mtime_ns":1787461919541761600,"indexed_at_ns":1787564287960615800,"word_count":267685},"frontend/application/app/blog/rss.xml/route.ts":{"size":3076,"mtime_ns":1787577523710351300,"indexed_at_ns":1787579587319573400,"word_count":280},"backend/src/common/revalidation/revalidation.module.ts":{"size":240,"mtime_ns":1787579631769582300,"indexed_at_ns":1787581116353646400,"word_count":24},"backend/src/common/revalidation/revalidation.service.ts":{"size":3410,"mtime_ns":1787579631770587500,"indexed_at_ns":1787581116358646500,"word_count":272},"frontend/application/app/api/revalidate/route.ts":{"size":1889,"mtime_ns":1787579631780106700,"indexed_at_ns":1787581121159687800,"word_count":220},"frontend/application/app/shop/feed.xml/route.ts":{"size":3391,"mtime_ns":1787578481506463600,"indexed_at_ns":1787579587427563500,"word_count":301},"frontend/application/app/sitemap-categories.xml/route.ts":{"size":1797,"mtime_ns":1787578481507462100,"indexed_at_ns":1787579587438898000,"word_count":179},"frontend/application/app/sitemap-products.xml/route.ts":{"size":1980,"mtime_ns":1787578481508464300,"indexed_at_ns":1787579587444898000,"word_count":186},"frontend/application/lib/fonts.ts":{"size":683,"mtime_ns":1787579631802834900,"indexed_at_ns":1787581121643100200,"word_count":59},"frontend/application/components/BlogPostClient.tsx":{"size":18802,"mtime_ns":1787641161059331400,"indexed_at_ns":1787641302398480800,"word_count":1239}}
\ No newline at end of file
+{".ai_agency/AGENCY.md":{"size":8757,"mtime_ns":1785148021979607300,"indexed_at_ns":1787564288771920700,"word_count":1161,"hashes":{".ai_agency/agency.md":"88c7c13583a91fc7e41ce055fede9dce20f181e8d264557808989965e83a9030"}},".ai_agency/agents/00_intake.md":{"size":3819,"mtime_ns":1785148021984319000,"indexed_at_ns":1787564288773935500,"word_count":500,"hashes":{".ai_agency/agents/00_intake.md":"9dc8d7eeda0655717dc5b9d2f8572c47567b88ca88de7e4e5bf59869077ff407"}},".ai_agency/agents/01_auditor.md":{"size":3643,"mtime_ns":1785148021987782800,"indexed_at_ns":1787564288777552100,"word_count":467,"hashes":{".ai_agency/agents/01_auditor.md":"37ae09614034d9b5c855e0132b59a5e3cfd2fc38c54d1a5386fa43ba488c4d4d"}},".ai_agency/agents/02_ceo.md":{"size":2341,"mtime_ns":1785148021998374800,"indexed_at_ns":1787564288781978300,"word_count":294,"hashes":{".ai_agency/agents/02_ceo.md":"b4a76df6483fd52e1b9f1e70765b3f7b6d134dc003ef2ad0cb86b952c869c4a5"}},".ai_agency/agents/03_product_manager.md":{"size":8422,"mtime_ns":1785148022001968200,"indexed_at_ns":1787564288783979700,"word_count":1076,"hashes":{".ai_agency/agents/03_product_manager.md":"1927827474b1dd6fd4976af45b51f1ad3128fe3305c3af22639ab2584e8f0b55"}},".ai_agency/agents/04_architect.md":{"size":3603,"mtime_ns":1785148022004966000,"indexed_at_ns":1787564288786081200,"word_count":448,"hashes":{".ai_agency/agents/04_architect.md":"c96b04d5af093f455fa3c64ae177a69421e8150eb38c70bb8587b5a14e7d3ca8"}},".ai_agency/agents/05_dev_backend.md":{"size":7142,"mtime_ns":1785148022012481200,"indexed_at_ns":1787564288789077900,"word_count":953,"hashes":{".ai_agency/agents/05_dev_backend.md":"143a7c8a6fbedcd837d647efddb9f6b49074583502bd77f24c955bd86a6f3df8"}},".ai_agency/agents/06_dev_frontend.md":{"size":7518,"mtime_ns":1785148022017020100,"indexed_at_ns":1787564288792076800,"word_count":1011,"hashes":{".ai_agency/agents/06_dev_frontend.md":"e69679636d42dd626c7c76ddc96e1ddb656ab5b9ee912b89adcc7a9338f34a0b"}},".ai_agency/agents/07_qa_engineer.md":{"size":3764,"mtime_ns":1785148022020044600,"indexed_at_ns":1787564288794079600,"word_count":507,"hashes":{".ai_agency/agents/07_qa_engineer.md":"2616ef2b3ac39ded45fc669d5b5b140e72953fe61a819966fb040382e9b47d45"}},".ai_agency/agents/08_visual_qa.md":{"size":7910,"mtime_ns":1785148022030083200,"indexed_at_ns":1787564288796078400,"word_count":1121,"hashes":{".ai_agency/agents/08_visual_qa.md":"17a5a74039e8a9d7cb40c5bc3c616c7c92d53401efd92d0675d4bbe5e90572a8"}},".ai_agency/agents/09_devops_security.md":{"size":6825,"mtime_ns":1785148022034087400,"indexed_at_ns":1787564288797075100,"word_count":908,"hashes":{".ai_agency/agents/09_devops_security.md":"315bd3cee954ac3496da8db1b1718b75ab3822ec3a90f99bc77767ca99482edf"}},".ai_agency/agents/10_tech_writer.md":{"size":3119,"mtime_ns":1785148022037082600,"indexed_at_ns":1787564288799076400,"word_count":408,"hashes":{".ai_agency/agents/10_tech_writer.md":"3527b44265fec2472cc20ca4641667e1fa3d38cbc9b2fbf9a946ee1e531e9e37"}},".ai_agency/agents/11_deploy.md":{"size":3956,"mtime_ns":1785148022040602600,"indexed_at_ns":1787564288800075300,"word_count":537,"hashes":{".ai_agency/agents/11_deploy.md":"8169bc98b249cd83ba21551dea082f69dfa6deca5f5e4a7f2739a28746c143f9"}},".ai_agency/agents/12_seo_content.md":{"size":10963,"mtime_ns":1785148022048603900,"indexed_at_ns":1787564288802078700,"word_count":1539,"hashes":{".ai_agency/agents/12_seo_content.md":"2f50eb9db8bf1ad7bc23c7d8c3a4f167a2daafb73f095db9237c5bdb20e7a5f4"}},".ai_agency/memory/agent_outputs/README.txt":{"size":290,"mtime_ns":1785148022052150400,"indexed_at_ns":1787564275303455000,"word_count":34},".ai_agency/memory/backlog.json":{"size":10711,"mtime_ns":1785330750958890900,"indexed_at_ns":1787564288680806500,"word_count":981,"hashes":{".ai_agency/memory/backlog.json":"6bf3150a1877d03d03b368df21b84071381b1bb8cd03e3721fa9f8e6c38355be"}},".ai_agency/memory/scratchpad.md":{"size":1879,"mtime_ns":1785148022065114400,"indexed_at_ns":1787564288803074500,"word_count":249,"hashes":{".ai_agency/memory/scratchpad.md":"9d0f687cf8e95c6335f1efb070da8029878417c28117e3b89aa8536ad70a5b95"}},".ai_agency/memory/state.json":{"size":3654,"mtime_ns":1785330750963913800,"indexed_at_ns":1787564288714437900,"word_count":254,"hashes":{".ai_agency/memory/state.json":"1204676f8f295d89733888bb87936061b7a700df0cc936fbf08fd5269b534e8d"}},".ai_agency/orchestrate.py":{"size":6800,"mtime_ns":1785148022072662500,"indexed_at_ns":1787564288715447900,"word_count":644,"hashes":{".ai_agency/orchestrate.py":"90ec787fdd4c71f5203c56b6899aadcc26e6e0bad0cc576d2f982aa42eed42e1"}},".ai_agency/specs/api_contract.md":{"size":1515,"mtime_ns":1785148022077664900,"indexed_at_ns":1787564288804075000,"word_count":139,"hashes":{".ai_agency/specs/api_contract.md":"ea0911b6a5ad6a908ab707f7553f5f24712c1e198fd79255fa85e3249150e8b4"}},".ai_agency/specs/architecture_spec.md":{"size":790,"mtime_ns":1785148022082260900,"indexed_at_ns":1787564288807086100,"word_count":99,"hashes":{".ai_agency/specs/architecture_spec.md":"6269043f6a144e8ac86ff1db7e014075185e5675a4a0ee23e99e70d88253b8af"}},".ai_agency/specs/prd.md":{"size":724,"mtime_ns":1785148022087251600,"indexed_at_ns":1787564288809084200,"word_count":96,"hashes":{".ai_agency/specs/prd.md":"1c6d5a0ec8a709a2b3aed28225f5fe148ad2d75851d45699187678d055947b11"}},".ai_agency/specs/project_health.md":{"size":444,"mtime_ns":1785148022098314600,"indexed_at_ns":1787564288810085300,"word_count":65,"hashes":{".ai_agency/specs/project_health.md":"677c2f1d35c31d75d935766f154683e0483b08c696117ee612bee1528705c598"}},".ai_agency/specs/reviews/README.md":{"size":1029,"mtime_ns":1785148022105834900,"indexed_at_ns":1787564288812087300,"word_count":117,"hashes":{".ai_agency/specs/reviews/readme.md":"8ceb4cae1ad4c0f660557d827ced970cda8f7d020f8124b624b228174b1b65ab"}},".ai_agency/specs/reviews/backend_review.md":{"size":1430,"mtime_ns":1785148022110362400,"indexed_at_ns":1787564288814085300,"word_count":172,"hashes":{".ai_agency/specs/reviews/backend_review.md":"fca1f8d59c2eab255f7aba246b26731fe53f208e737ccf46035389591900a150"}},".ai_agency/specs/reviews/code_health_review.md":{"size":2193,"mtime_ns":1785148022114359700,"indexed_at_ns":1787564288816082900,"word_count":279,"hashes":{".ai_agency/specs/reviews/code_health_review.md":"532e04465e125183d6dd8f8af61bfc8735a514b3fbbc49069f5f0884155ed93f"}},".ai_agency/specs/reviews/frontend_review.md":{"size":1452,"mtime_ns":1785148022118486900,"indexed_at_ns":1787564288818081700,"word_count":183,"hashes":{".ai_agency/specs/reviews/frontend_review.md":"9f826c0267cad8bd5d342b1f908c927976d9be7da3f75b175331381ef8c8b680"}},".ai_agency/specs/reviews/security_review.md":{"size":874,"mtime_ns":1785148022121487200,"indexed_at_ns":1787564288819083000,"word_count":110,"hashes":{".ai_agency/specs/reviews/security_review.md":"51363e62e919d6772c2b3b9a1a3f3870a5892dae6d408217ed3fb475f72d3f0b"}},".ai_agency/specs/reviews/seo_content_review.md":{"size":1238,"mtime_ns":1785148022131533800,"indexed_at_ns":1787564288820588000,"word_count":156,"hashes":{".ai_agency/specs/reviews/seo_content_review.md":"bc8401649a86585b4061b3ec0f584910c54aad25bc9943392179bc070c07a434"}},".ai_agency/specs/reviews/ux_review.md":{"size":1131,"mtime_ns":1785148022136550700,"indexed_at_ns":1787564288822730600,"word_count":150,"hashes":{".ai_agency/specs/reviews/ux_review.md":"b8a52f324e36fcc2d046cc903a05903057098a67a397ae6442d6c825091f4513"}},".claude/CLAUDE.md":{"size":226,"mtime_ns":1786870552838920200,"indexed_at_ns":1787564288827732800,"word_count":29,"hashes":{".claude/claude.md":"c6f7fc2f062904d246b700d446ba3ad03e77f41809b12eccfb5e090a11f4fad2"}},".claude/settings.json":{"size":479,"mtime_ns":1786870552841922800,"indexed_at_ns":1787564288716434600,"word_count":38,"hashes":{".claude/settings.json":"0aaafba2cbd7dd67f7d69fa2f01b747c9a72f56ee421a40825521f937caec82b"}},".claude/skills/graphify/SKILL.md":{"size":43292,"mtime_ns":1786870552845041000,"indexed_at_ns":1787564288828758900,"word_count":5442,"hashes":{".claude/skills/graphify/skill.md":"5b24d39cbbb662ea1cd672839f64b50823e1b7de9b113f542248eac38c70cdf1"}},".claude/skills/graphify/references/add-watch.md":{"size":2486,"mtime_ns":1786870552848102000,"indexed_at_ns":1787564288830729500,"word_count":366,"hashes":{".claude/skills/graphify/references/add-watch.md":"cb5e2f3284265c08c88c08f445b96958b13a9115c0afc0a33206c293d1b1c187"}},".claude/skills/graphify/references/exports.md":{"size":3362,"mtime_ns":1786870552849102100,"indexed_at_ns":1787564288831765600,"word_count":470,"hashes":{".claude/skills/graphify/references/exports.md":"7aa8b606e5c19334b6c9fe62a12fc30eb46c0320d1dbb5726cfda0becdd04a5a"}},".claude/skills/graphify/references/extraction-spec.md":{"size":7960,"mtime_ns":1786870552850101900,"indexed_at_ns":1787564288832759300,"word_count":1038,"hashes":{".claude/skills/graphify/references/extraction-spec.md":"9cf5d515d0d8584aeef36708df34f560078772a568ed599cac5ba20b089e563d"}},".claude/skills/graphify/references/github-and-merge.md":{"size":2177,"mtime_ns":1786870552853101000,"indexed_at_ns":1787564288833759500,"word_count":271,"hashes":{".claude/skills/graphify/references/github-and-merge.md":"609de4b1331ddb2f8c80e97aac0a5de782a373d6f5af858e10a731c20b35c0e2"}},".claude/skills/graphify/references/hooks.md":{"size":1267,"mtime_ns":1786870552855098700,"indexed_at_ns":1787564288834759400,"word_count":193,"hashes":{".claude/skills/graphify/references/hooks.md":"7c7827f2f29d6e2cb6cc6902558dac08380f60c414b4968f83e1bc4e61b3e268"}},".claude/skills/graphify/references/query.md":{"size":13456,"mtime_ns":1786870552857702900,"indexed_at_ns":1787564288835760800,"word_count":1763,"hashes":{".claude/skills/graphify/references/query.md":"54526cc3e2392922d344f14767f09037ef85fb7ec5cc7911b749b35bcb004fbf"}},".claude/skills/graphify/references/transcribe.md":{"size":3173,"mtime_ns":1786870552858710700,"indexed_at_ns":1787564288837730200,"word_count":418,"hashes":{".claude/skills/graphify/references/transcribe.md":"1d5afbaccf36e952e71082591edfc9e4fbd9946eb85b01855a1d0bd810b7623d"}},".claude/skills/graphify/references/update.md":{"size":10425,"mtime_ns":1786870552860709800,"indexed_at_ns":1787564288841729200,"word_count":1196,"hashes":{".claude/skills/graphify/references/update.md":"0249cd6ceae6effdfc7371b51d00c462f51d95700101dcedd36255bab1b4ce7a"}},".gitea/scripts/with-vpn.sh":{"size":1794,"mtime_ns":1786799852126316200,"indexed_at_ns":1787564288718437600,"word_count":208,"hashes":{".gitea/scripts/with-vpn.sh":"9ec013d142e3cf5d7e5f09778fcb06b4b8ea7b394688f9f40b5e74298c76bcf0"}},".gitea/workflows/deploy.yml":{"size":993,"mtime_ns":1787078454762471500,"indexed_at_ns":1787564275730375200,"word_count":84},"BACKEND_INTEGRATION.md":{"size":15568,"mtime_ns":1786885876768825200,"indexed_at_ns":1787564275758381600,"word_count":1521},"CLAUDE.md":{"size":772,"mtime_ns":1786870552863710100,"indexed_at_ns":1787564288843728900,"word_count":106,"hashes":{"claude.md":"3612256e7473a2e5f67ef4778d4edeefb44794ef22bac5529bee9c87dc5d8f3d"}},"DATABASE_SCHEMA.md":{"size":15399,"mtime_ns":1786885876771342200,"indexed_at_ns":1787564275786120800,"word_count":1566},"README.md":{"size":13117,"mtime_ns":1786885876775371800,"indexed_at_ns":1787564275808070300,"word_count":1310},"backend/README.md":{"size":5028,"mtime_ns":1783764561601382400,"indexed_at_ns":1787564288845729800,"word_count":472,"hashes":{"backend/readme.md":"c3edfd26252566ef2ddee12c91a874b59e03a1656894d3db25209a0e4031010a"}},"backend/eslint.config.mjs":{"size":1649,"mtime_ns":1787073059105361700,"indexed_at_ns":1787564275863637800,"word_count":104},"backend/nest-cli.json":{"size":172,"mtime_ns":1787072106370561300,"indexed_at_ns":1787564288720437400,"word_count":13,"hashes":{"backend/nest-cli.json":"64fe2904203985aa0acb9b67d7ade489f2362ac8730283fb11d6a764d1cb3878"}},"backend/package.json":{"size":2903,"mtime_ns":1787641731995890500,"indexed_at_ns":1787641852594950600,"word_count":214,"hashes":{"backend/package.json":"164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5"}},"backend/prisma/migrations/20260526145407_init/migration.sql":{"size":8963,"mtime_ns":1783764561612007600,"indexed_at_ns":1787564288722959400,"word_count":936,"hashes":{"backend/prisma/migrations/20260526145407_init/migration.sql":"d6cc5e861e43bf82dcffe1ad7121fcbe9f74db7901cf204b5058da3132d3c1d2"}},"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql":{"size":404,"mtime_ns":1783764561613425800,"indexed_at_ns":1787564288724958300,"word_count":48,"hashes":{"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql":"c564f4aba35d32a733a5837c33664c68c8912277ad9645310f7e8116fbcba741"}},"backend/prisma/scientificTerms.ts":{"size":24298,"mtime_ns":1785325924634812500,"indexed_at_ns":1787564275926052300,"word_count":2294},"backend/prisma/seed-blogs.ts":{"size":6950,"mtime_ns":1786885876777374000,"indexed_at_ns":1787564275937063000,"word_count":620},"backend/prisma/seed-custom.ts":{"size":3836,"mtime_ns":1786799852144902000,"indexed_at_ns":1787564275950074700,"word_count":371},"backend/prisma/seed-home.ts":{"size":3870,"mtime_ns":1786885876779371100,"indexed_at_ns":1787564275958948500,"word_count":374},"backend/prisma/seed-products-data.json":{"size":59220,"mtime_ns":1786885876782371300,"indexed_at_ns":1787564288725952800,"word_count":5730,"hashes":{"backend/prisma/seed-products-data.json":"9d1262f8264478eb43ec48f073f817d46fc193d666cd9364f3bb95c1629f25c7"}},"backend/prisma/seed-products.ts":{"size":28268,"mtime_ns":1787127978219270600,"indexed_at_ns":1787564275977093900,"word_count":2063},"backend/prisma/seed-ui-texts.ts":{"size":9191,"mtime_ns":1787127978221789800,"indexed_at_ns":1787564275987088700,"word_count":755},"backend/prisma/seed-wiki.ts":{"size":24019,"mtime_ns":1786961195297596000,"indexed_at_ns":1787564275996093200,"word_count":2292},"backend/prisma/seed.ts":{"size":30480,"mtime_ns":1787127978225587600,"indexed_at_ns":1787564276006629100,"word_count":2636},"backend/prisma/tsconfig.seed.json":{"size":194,"mtime_ns":1786955870751259200,"indexed_at_ns":1787564288728956800,"word_count":17,"hashes":{"backend/prisma/tsconfig.seed.json":"e178d23a09563a7a9b348d905bc70322115514c78a7afcc5a53db7d18e511583"}},"backend/scripts/generate-openapi.ts":{"size":1385,"mtime_ns":1786799852156390500,"indexed_at_ns":1787564276074193700,"word_count":128},"backend/src/admin/admin.controller.spec.ts":{"size":593,"mtime_ns":1786799852157399700,"indexed_at_ns":1787564276093650900,"word_count":59},"backend/src/admin/admin.controller.ts":{"size":9712,"mtime_ns":1787564362261174000,"indexed_at_ns":1787566181824510600,"word_count":966},"backend/src/admin/admin.module.ts":{"size":1420,"mtime_ns":1786877667005008400,"indexed_at_ns":1787564276115916800,"word_count":145},"backend/src/admin/admin.service.spec.ts":{"size":682,"mtime_ns":1786799852162911100,"indexed_at_ns":1787564276123634100,"word_count":72},"backend/src/admin/admin.service.ts":{"size":30386,"mtime_ns":1787579631756175500,"indexed_at_ns":1787581116034272000,"word_count":3056},"backend/src/admin/blogs.controller.ts":{"size":5204,"mtime_ns":1787579631758177800,"indexed_at_ns":1787581116039273600,"word_count":532},"backend/src/admin/blogs.service.ts":{"size":9542,"mtime_ns":1787579631760177700,"indexed_at_ns":1787581116044539900,"word_count":1070},"backend/src/admin/categories.controller.ts":{"size":2187,"mtime_ns":1786799852174192500,"indexed_at_ns":1787564276153137800,"word_count":204},"backend/src/admin/categories.service.ts":{"size":2005,"mtime_ns":1786799852175194300,"indexed_at_ns":1787564276159148700,"word_count":223},"backend/src/admin/dto/admin-query.dto.ts":{"size":634,"mtime_ns":1786799852178706400,"indexed_at_ns":1787564276167147700,"word_count":60},"backend/src/admin/media.controller.ts":{"size":2339,"mtime_ns":1786876983648866300,"indexed_at_ns":1787564276189260700,"word_count":226},"backend/src/admin/media.service.ts":{"size":2713,"mtime_ns":1786876983651534500,"indexed_at_ns":1787564276196836900,"word_count":283},"backend/src/admin/pets.controller.ts":{"size":1195,"mtime_ns":1786799852186217200,"indexed_at_ns":1787564276202830800,"word_count":117},"backend/src/admin/pets.service.ts":{"size":1731,"mtime_ns":1786954681814243000,"indexed_at_ns":1787564276208834300,"word_count":193},"backend/src/admin/reports.controller.ts":{"size":664,"mtime_ns":1783764561642147000,"indexed_at_ns":1787564276215853300,"word_count":66},"backend/src/admin/reports.service.ts":{"size":3399,"mtime_ns":1786799852189730800,"indexed_at_ns":1787564276221355300,"word_count":388},"backend/src/admin/wiki.controller.ts":{"size":1814,"mtime_ns":1786799852191732300,"indexed_at_ns":1787564276250199800,"word_count":179},"backend/src/admin/wiki.service.ts":{"size":1767,"mtime_ns":1786799852193324200,"indexed_at_ns":1787564276256731700,"word_count":195},"backend/src/app.controller.spec.ts":{"size":617,"mtime_ns":1783764561644839700,"indexed_at_ns":1787564276264735700,"word_count":61},"backend/src/app.controller.ts":{"size":274,"mtime_ns":1783764561645849100,"indexed_at_ns":1787564276272242900,"word_count":31},"backend/src/app.module.ts":{"size":4052,"mtime_ns":1787579631764695400,"indexed_at_ns":1787581116136057500,"word_count":382},"backend/src/app.service.ts":{"size":142,"mtime_ns":1783764561648840500,"indexed_at_ns":1787564276287977200,"word_count":19},"backend/src/auth/auth.controller.spec.ts":{"size":1528,"mtime_ns":1785327951179468000,"indexed_at_ns":1787564276300975100,"word_count":149},"backend/src/auth/auth.controller.ts":{"size":4155,"mtime_ns":1787072106387489300,"indexed_at_ns":1787564276307981600,"word_count":386},"backend/src/auth/auth.module.ts":{"size":724,"mtime_ns":1787072106388501600,"indexed_at_ns":1787564276315983300,"word_count":80},"backend/src/auth/auth.service.spec.ts":{"size":4264,"mtime_ns":1786799852201843300,"indexed_at_ns":1787564276322493800,"word_count":379},"backend/src/auth/auth.service.ts":{"size":9713,"mtime_ns":1787127978228589700,"indexed_at_ns":1787564276331184100,"word_count":933},"backend/src/auth/dto/admin-login.dto.ts":{"size":766,"mtime_ns":1787127978229587400,"indexed_at_ns":1787564276337915700,"word_count":82},"backend/src/auth/dto/login.dto.ts":{"size":587,"mtime_ns":1783764561659109000,"indexed_at_ns":1787564276347369800,"word_count":63},"backend/src/auth/dto/register.dto.ts":{"size":1197,"mtime_ns":1785327951186476900,"indexed_at_ns":1787564276353384300,"word_count":115},"backend/src/auth/dto/send-otp.dto.ts":{"size":374,"mtime_ns":1783764561661106500,"indexed_at_ns":1787564276360400400,"word_count":39},"backend/src/auth/dto/verify-otp.dto.ts":{"size":594,"mtime_ns":1783764561662112100,"indexed_at_ns":1787564276369220500,"word_count":64},"backend/src/auth/jwt-auth.guard.ts":{"size":494,"mtime_ns":1786799852205862700,"indexed_at_ns":1787564276374735700,"word_count":58},"backend/src/auth/jwt.strategy.ts":{"size":1122,"mtime_ns":1786883225794343300,"indexed_at_ns":1787564276381800800,"word_count":116},"backend/src/auth/roles.decorator.ts":{"size":54,"mtime_ns":1786799852208379600,"indexed_at_ns":1787564276387701200,"word_count":4},"backend/src/auth/roles.guard.ts":{"size":46,"mtime_ns":1786799852209003400,"indexed_at_ns":1787564276393799100,"word_count":4},"backend/src/b2b/b2b.controller.ts":{"size":2684,"mtime_ns":1786799852212013200,"indexed_at_ns":1787564276400649700,"word_count":246},"backend/src/b2b/b2b.module.ts":{"size":342,"mtime_ns":1786799852212013200,"indexed_at_ns":1787564276407478800,"word_count":38},"backend/src/b2b/b2b.service.ts":{"size":2379,"mtime_ns":1786799852214009300,"indexed_at_ns":1787564276414014600,"word_count":243},"backend/src/banners/banners.controller.ts":{"size":1923,"mtime_ns":1786799852215010200,"indexed_at_ns":1787564276421565300,"word_count":169},"backend/src/banners/banners.module.ts":{"size":374,"mtime_ns":1786799852216010300,"indexed_at_ns":1787564276428314800,"word_count":38},"backend/src/banners/banners.service.ts":{"size":1394,"mtime_ns":1786799852216010300,"indexed_at_ns":1787564276434309000,"word_count":160},"backend/src/blogs/blogs.controller.ts":{"size":2570,"mtime_ns":1787577523702295100,"indexed_at_ns":1787579582349673900,"word_count":223},"backend/src/blogs/blogs.module.ts":{"size":248,"mtime_ns":1783764561665678100,"indexed_at_ns":1787564276447999400,"word_count":28},"backend/src/blogs/blogs.service.ts":{"size":9915,"mtime_ns":1787644023327276100,"indexed_at_ns":1787644121597569300,"word_count":1093},"backend/src/blogs/dto/create-blog.dto.ts":{"size":30,"mtime_ns":1783764561671557000,"indexed_at_ns":1787564276460529000,"word_count":4},"backend/src/blogs/dto/update-blog.dto.ts":{"size":164,"mtime_ns":1783764561673712400,"indexed_at_ns":1787564276468520100,"word_count":18},"backend/src/blogs/entities/blog.entity.ts":{"size":21,"mtime_ns":1783764561675101100,"indexed_at_ns":1787564276474037900,"word_count":4},"backend/src/cms/cms.controller.ts":{"size":3521,"mtime_ns":1785327951196913100,"indexed_at_ns":1787564276480546400,"word_count":280},"backend/src/cms/cms.module.ts":{"size":342,"mtime_ns":1785148022206298000,"indexed_at_ns":1787564276488179500,"word_count":38},"backend/src/cms/cms.service.ts":{"size":2501,"mtime_ns":1785327951197940400,"indexed_at_ns":1787564276495183900,"word_count":256},"backend/src/cms/dto/cms.dto.ts":{"size":2357,"mtime_ns":1785327951199995500,"indexed_at_ns":1787564276502187200,"word_count":203},"backend/src/common/decorators/roles.decorator.ts":{"size":157,"mtime_ns":1786799852220522400,"indexed_at_ns":1787564276508185100,"word_count":20},"backend/src/common/dto/pagination.dto.ts":{"size":1188,"mtime_ns":1785327951201988900,"indexed_at_ns":1787564276515186500,"word_count":121},"backend/src/common/filters/http-exception.filter.ts":{"size":4942,"mtime_ns":1787072106393076100,"indexed_at_ns":1787564276522694700,"word_count":492},"backend/src/common/filters/prisma-exception.filter.ts":{"size":2412,"mtime_ns":1785330913143709100,"indexed_at_ns":1787564276530707900,"word_count":228},"backend/src/common/guards/roles.guard.spec.ts":{"size":2426,"mtime_ns":1786799852225556800,"indexed_at_ns":1787564276537320000,"word_count":223},"backend/src/common/guards/roles.guard.ts":{"size":1285,"mtime_ns":1786799852226565200,"indexed_at_ns":1787564276546330000,"word_count":120},"backend/src/common/interceptors/decimal.interceptor.spec.ts":{"size":1677,"mtime_ns":1786799852227565700,"indexed_at_ns":1787564276553992900,"word_count":164},"backend/src/common/interceptors/decimal.interceptor.ts":{"size":1094,"mtime_ns":1786799852227565700,"indexed_at_ns":1787564276561015100,"word_count":118},"backend/src/common/metrics.controller.ts":{"size":2093,"mtime_ns":1786799852229073100,"indexed_at_ns":1787564276569004100,"word_count":206},"backend/src/common/schemas/error-response.schema.ts":{"size":1680,"mtime_ns":1785330913144701500,"indexed_at_ns":1787564276575514200,"word_count":162},"backend/src/common/schemas/paginated-response.schema.ts":{"size":1108,"mtime_ns":1786799852230082200,"indexed_at_ns":1787564276585213900,"word_count":110},"backend/src/common/services/sms.service.ts":{"size":31964,"mtime_ns":1787072106396073600,"indexed_at_ns":1787564276592210800,"word_count":3028},"backend/src/common/sms.module.ts":{"size":204,"mtime_ns":1785330750996125100,"indexed_at_ns":1787564276602635500,"word_count":24},"backend/src/contact/contact.controller.ts":{"size":1990,"mtime_ns":1786799852234596200,"indexed_at_ns":1787564276618454500,"word_count":177},"backend/src/contact/contact.module.ts":{"size":365,"mtime_ns":1786799852236599000,"indexed_at_ns":1787564276627602400,"word_count":38},"backend/src/contact/contact.service.ts":{"size":4690,"mtime_ns":1787127978233104000,"indexed_at_ns":1787564276635593400,"word_count":451},"backend/src/home/dto/create-home.dto.ts":{"size":30,"mtime_ns":1783764561682365300,"indexed_at_ns":1787564276696981600,"word_count":4},"backend/src/home/dto/update-home.dto.ts":{"size":164,"mtime_ns":1783764561682365300,"indexed_at_ns":1787564276705987400,"word_count":18},"backend/src/home/entities/home.entity.ts":{"size":21,"mtime_ns":1783764561684884800,"indexed_at_ns":1787564276713990000,"word_count":4},"backend/src/home/home.controller.ts":{"size":757,"mtime_ns":1785327951212087300,"indexed_at_ns":1787564276718987900,"word_count":69},"backend/src/home/home.module.ts":{"size":241,"mtime_ns":1783764561687108000,"indexed_at_ns":1787564276726261800,"word_count":28},"backend/src/home/home.service.ts":{"size":1372,"mtime_ns":1785327951214087300,"indexed_at_ns":1787564276733259300,"word_count":144},"backend/src/ingredients/ingredients.controller.ts":{"size":1952,"mtime_ns":1786799852237596500,"indexed_at_ns":1787564276739266000,"word_count":165},"backend/src/ingredients/ingredients.module.ts":{"size":406,"mtime_ns":1786799852238596500,"indexed_at_ns":1787564276747270100,"word_count":38},"backend/src/ingredients/ingredients.service.ts":{"size":1526,"mtime_ns":1786799852240108300,"indexed_at_ns":1787564276753767100,"word_count":162},"backend/src/main.ts":{"size":4005,"mtime_ns":1787579631772584100,"indexed_at_ns":1787581116487205400,"word_count":355},"backend/src/orders/dto/create-order.dto.ts":{"size":1899,"mtime_ns":1785327951218626100,"indexed_at_ns":1787564276788369500,"word_count":162},"backend/src/orders/orders.controller.spec.ts":{"size":1910,"mtime_ns":1785327951219627700,"indexed_at_ns":1787564276795379800,"word_count":194},"backend/src/orders/orders.controller.ts":{"size":5930,"mtime_ns":1787072106398077200,"indexed_at_ns":1787564276801371500,"word_count":517},"backend/src/orders/orders.module.ts":{"size":255,"mtime_ns":1783764561697598200,"indexed_at_ns":1787564276807375300,"word_count":28},"backend/src/orders/orders.service.spec.ts":{"size":4974,"mtime_ns":1786799852246117900,"indexed_at_ns":1787564276815378200,"word_count":483},"backend/src/orders/orders.service.ts":{"size":17203,"mtime_ns":1787127978236103400,"indexed_at_ns":1787564276821883600,"word_count":1611},"backend/src/pets/dto/create-health-log.dto.ts":{"size":761,"mtime_ns":1785327951229443300,"indexed_at_ns":1787564276922999900,"word_count":69},"backend/src/pets/dto/create-pet.dto.ts":{"size":1143,"mtime_ns":1785327951230948800,"indexed_at_ns":1787564276933013800,"word_count":104},"backend/src/pets/dto/create-reminder.dto.ts":{"size":810,"mtime_ns":1785327951231958200,"indexed_at_ns":1787564276941013700,"word_count":71},"backend/src/pets/dto/update-pet.dto.ts":{"size":160,"mtime_ns":1783764561709557500,"indexed_at_ns":1787564276950013700,"word_count":18},"backend/src/pets/pets.controller.spec.ts":{"size":2544,"mtime_ns":1786799852248118800,"indexed_at_ns":1787564276959542000,"word_count":269},"backend/src/pets/pets.controller.ts":{"size":8427,"mtime_ns":1787461919454308900,"indexed_at_ns":1787564276966542800,"word_count":781},"backend/src/pets/pets.module.ts":{"size":241,"mtime_ns":1783764561714469800,"indexed_at_ns":1787564276974069300,"word_count":28},"backend/src/pets/pets.service.spec.ts":{"size":2961,"mtime_ns":1785327951238208000,"indexed_at_ns":1787564276982062100,"word_count":272},"backend/src/pets/pets.service.ts":{"size":6978,"mtime_ns":1786799852250117400,"indexed_at_ns":1787564276990466100,"word_count":710},"backend/src/prescriptions/prescriptions.controller.ts":{"size":2356,"mtime_ns":1786799852253748300,"indexed_at_ns":1787564276998477100,"word_count":232},"backend/src/prescriptions/prescriptions.module.ts":{"size":495,"mtime_ns":1786954681815809200,"indexed_at_ns":1787564277005474200,"word_count":45},"backend/src/prescriptions/prescriptions.service.ts":{"size":4666,"mtime_ns":1787072106408779000,"indexed_at_ns":1787564277012493300,"word_count":498},"backend/src/prisma/prisma.module.ts":{"size":210,"mtime_ns":1783764561718199800,"indexed_at_ns":1787564277019481000,"word_count":24},"backend/src/prisma/prisma.service.ts":{"size":4250,"mtime_ns":1787640806107781000,"indexed_at_ns":1787641010688666100,"word_count":425},"backend/src/products/dto/get-products.dto.ts":{"size":1320,"mtime_ns":1786799852260271600,"indexed_at_ns":1787564277034656600,"word_count":115},"backend/src/products/products.controller.spec.ts":{"size":1863,"mtime_ns":1785327951243280800,"indexed_at_ns":1787564277040660300,"word_count":166},"backend/src/products/products.controller.ts":{"size":2445,"mtime_ns":1786799852261281700,"indexed_at_ns":1787564277048667700,"word_count":209},"backend/src/products/products.module.ts":{"size":269,"mtime_ns":1783764561723672400,"indexed_at_ns":1787564277055711500,"word_count":28},"backend/src/products/products.service.spec.ts":{"size":1597,"mtime_ns":1786799852263279400,"indexed_at_ns":1787564277063360200,"word_count":154},"backend/src/products/products.service.ts":{"size":7493,"mtime_ns":1787579631773583700,"indexed_at_ns":1787581116688224800,"word_count":762},"backend/src/redis/redis.module.ts":{"size":205,"mtime_ns":1783764561727662100,"indexed_at_ns":1787564277075918100,"word_count":24},"backend/src/redis/redis.service.spec.ts":{"size":1525,"mtime_ns":1783764561728672300,"indexed_at_ns":1787564277083545300,"word_count":145},"backend/src/redis/redis.service.ts":{"size":1202,"mtime_ns":1786895436211834600,"indexed_at_ns":1787564277089544600,"word_count":132},"backend/src/seo/seo.controller.ts":{"size":904,"mtime_ns":1785327951247283200,"indexed_at_ns":1787564277135769800,"word_count":85},"backend/src/seo/seo.module.ts":{"size":342,"mtime_ns":1785148022268580900,"indexed_at_ns":1787564277141781000,"word_count":38},"backend/src/seo/seo.service.ts":{"size":2023,"mtime_ns":1787127978249385200,"indexed_at_ns":1787564277148780900,"word_count":182},"backend/src/settings/settings.controller.spec.ts":{"size":2973,"mtime_ns":1787073059109005600,"indexed_at_ns":1787564277169296900,"word_count":247},"backend/src/settings/settings.controller.ts":{"size":8977,"mtime_ns":1787072106423347900,"indexed_at_ns":1787564277176441800,"word_count":708},"backend/src/settings/settings.module.ts":{"size":382,"mtime_ns":1783764561735515700,"indexed_at_ns":1787564277183443300,"word_count":38},"backend/src/settings/settings.service.spec.ts":{"size":2728,"mtime_ns":1783764561736856500,"indexed_at_ns":1787564277189440000,"word_count":251},"backend/src/settings/settings.service.ts":{"size":20225,"mtime_ns":1787461919455310100,"indexed_at_ns":1787564277198444200,"word_count":1589},"backend/src/smart-advisor/smart-advisor.controller.ts":{"size":1821,"mtime_ns":1786799852275441500,"indexed_at_ns":1787564277208894800,"word_count":152},"backend/src/smart-advisor/smart-advisor.module.ts":{"size":416,"mtime_ns":1786799852276441700,"indexed_at_ns":1787564277218151300,"word_count":38},"backend/src/smart-advisor/smart-advisor.service.ts":{"size":1241,"mtime_ns":1786799852277440400,"indexed_at_ns":1787564277223662600,"word_count":131},"backend/src/testimonials/testimonials.controller.ts":{"size":1905,"mtime_ns":1787148092329786500,"indexed_at_ns":1787564277230662500,"word_count":160},"backend/src/testimonials/testimonials.module.ts":{"size":414,"mtime_ns":1786799852279441800,"indexed_at_ns":1787564277238718900,"word_count":38},"backend/src/testimonials/testimonials.service.ts":{"size":1268,"mtime_ns":1787148092332501600,"indexed_at_ns":1787564277245727900,"word_count":140},"backend/src/users/dto/address.dto.ts":{"size":1098,"mtime_ns":1783764561739871500,"indexed_at_ns":1787564277287362600,"word_count":99},"backend/src/users/dto/update-profile.dto.ts":{"size":1068,"mtime_ns":1786885876805472100,"indexed_at_ns":1787564277294368900,"word_count":98},"backend/src/users/users.controller.spec.ts":{"size":3333,"mtime_ns":1785327951253796500,"indexed_at_ns":1787564277301365600,"word_count":322},"backend/src/users/users.controller.ts":{"size":6854,"mtime_ns":1786799852282481500,"indexed_at_ns":1787564277308371100,"word_count":590},"backend/src/users/users.module.ts":{"size":275,"mtime_ns":1783764561748154400,"indexed_at_ns":1787564277316992000,"word_count":30},"backend/src/users/users.service.spec.ts":{"size":3817,"mtime_ns":1786799852283480600,"indexed_at_ns":1787564277322908200,"word_count":316},"backend/src/users/users.service.ts":{"size":8207,"mtime_ns":1787127978253040800,"indexed_at_ns":1787564277332918700,"word_count":782},"backend/src/videos/dto/create-video.dto.ts":{"size":1573,"mtime_ns":1786971396042093900,"indexed_at_ns":1787564277340921000,"word_count":127},"backend/src/videos/dto/get-videos-query.dto.ts":{"size":643,"mtime_ns":1786799852287643500,"indexed_at_ns":1787564277349920000,"word_count":77},"backend/src/videos/videos.controller.ts":{"size":1924,"mtime_ns":1786799852291153100,"indexed_at_ns":1787564277356396100,"word_count":173},"backend/src/videos/videos.module.ts":{"size":283,"mtime_ns":1785148022306583700,"indexed_at_ns":1787564277364407600,"word_count":30},"backend/src/videos/videos.service.ts":{"size":2732,"mtime_ns":1786971396047872400,"indexed_at_ns":1787564277370909800,"word_count":290},"backend/src/wholesale/dto/wholesale-apply.dto.ts":{"size":739,"mtime_ns":1785148022317622300,"indexed_at_ns":1787564277377631400,"word_count":66},"backend/src/wholesale/wholesale.controller.ts":{"size":2037,"mtime_ns":1786799852294177000,"indexed_at_ns":1787564277387639700,"word_count":160},"backend/src/wholesale/wholesale.module.ts":{"size":390,"mtime_ns":1785148022328746300,"indexed_at_ns":1787564277397640300,"word_count":38},"backend/src/wholesale/wholesale.service.ts":{"size":2627,"mtime_ns":1785330913149233300,"indexed_at_ns":1787564277403647000,"word_count":266},"backend/src/wiki/dto/create-wiki.dto.ts":{"size":30,"mtime_ns":1783764561752933200,"indexed_at_ns":1787564277414647600,"word_count":4},"backend/src/wiki/dto/update-wiki.dto.ts":{"size":164,"mtime_ns":1783764561753945200,"indexed_at_ns":1787564277424415000,"word_count":18},"backend/src/wiki/entities/wiki.entity.ts":{"size":21,"mtime_ns":1783764561755039400,"indexed_at_ns":1787564277437254800,"word_count":4},"backend/src/wiki/wiki.controller.ts":{"size":1219,"mtime_ns":1785327951272850400,"indexed_at_ns":1787564277449347700,"word_count":110},"backend/src/wiki/wiki.module.ts":{"size":241,"mtime_ns":1783764561756925000,"indexed_at_ns":1787564277459897200,"word_count":28},"backend/src/wiki/wiki.service.ts":{"size":1562,"mtime_ns":1786799852295173000,"indexed_at_ns":1787564277468898700,"word_count":174},"backend/test/app-audit-verification.e2e-spec.ts":{"size":6464,"mtime_ns":1786799852296174700,"indexed_at_ns":1787564277497995700,"word_count":569},"backend/test/app.e2e-spec.ts":{"size":981,"mtime_ns":1786799852297175000,"indexed_at_ns":1787564277532519000,"word_count":83},"backend/test/jest-e2e.json":{"size":183,"mtime_ns":1783764561762911800,"indexed_at_ns":1787564288730610100,"word_count":17,"hashes":{"backend/test/jest-e2e.json":"94091f560937212ad7027afcb77e62e6ac79e3e4cb401c3a16a56e7be4cac721"}},"backend/tsconfig.build.json":{"size":107,"mtime_ns":1783764561763447000,"indexed_at_ns":1787564288731610300,"word_count":10,"hashes":{"backend/tsconfig.build.json":"1f47c7dc3c8b5a15558654f45f21e0f553acc1680046f09dc24428e8538c4f9d"}},"backend/tsconfig.json":{"size":785,"mtime_ns":1787073059116167600,"indexed_at_ns":1787564288732606500,"word_count":56,"hashes":{"backend/tsconfig.json":"9b20fbca537d1e55f3a113fcee6683f0eb1f06752d3c8c52edf26eef8e2053f2"}},"backend/uploads/1781288429353-508765350.jpg":{"size":110246,"mtime_ns":1783764561766257000,"indexed_at_ns":1787564277575076900,"word_count":3882},"canina.md":{"size":21919,"mtime_ns":1786885876809472400,"indexed_at_ns":1787564277591949900,"word_count":1983},"canina.pdf":{"size":2858373,"mtime_ns":1785148022370811500,"indexed_at_ns":1787564277600945100,"word_count":0},"docker-compose.yml":{"size":2193,"mtime_ns":1786883225811564200,"indexed_at_ns":1787564277607955900,"word_count":127},"docs/01-introduction.md":{"size":5537,"mtime_ns":1786885876812474900,"indexed_at_ns":1787564277619131500,"word_count":523},"docs/02-user-guide.md":{"size":4303,"mtime_ns":1786885876813985900,"indexed_at_ns":1787564277628985200,"word_count":422},"docs/03-developer-guide.md":{"size":6717,"mtime_ns":1783764561771660500,"indexed_at_ns":1787564277636971100,"word_count":678},"docs/04-setup-and-deployment.md":{"size":4005,"mtime_ns":1787127978256847800,"indexed_at_ns":1787564288846728900,"word_count":425,"hashes":{"docs/04-setup-and-deployment.md":"aee712cb19a8475be75f8073f7e39870e704923a561ffb9f4ce4b31b1d4bd830"}},"docs/05-devops-and-monitoring.md":{"size":3590,"mtime_ns":1783764561774446100,"indexed_at_ns":1787564288847729600,"word_count":374,"hashes":{"docs/05-devops-and-monitoring.md":"53f1f45bbbdd3cf81cb4bc082ef4e49f506627f10f581d3c4b835028d02b5421"}},"docs/06-testing.md":{"size":4214,"mtime_ns":1783764561774967500,"indexed_at_ns":1787564288849733900,"word_count":457,"hashes":{"docs/06-testing.md":"69d50bd5e233f030d8076b55b69599cee201e1c393b7ee1beeb495c304fd4bd3"}},"docs/README.md":{"size":2740,"mtime_ns":1786885876816996700,"indexed_at_ns":1787564288850734700,"word_count":253,"hashes":{"docs/readme.md":"1b7ffde4b290e742802fc554f2dd2f7a2316fe25bd1cd328421ffa823b36f40f"}},"docs/audit/00-repository-map.md":{"size":3171,"mtime_ns":1786799852298174200,"indexed_at_ns":1787564288851734500,"word_count":351,"hashes":{"docs/audit/00-repository-map.md":"dde4a63c991d0f469086a147df03b97d8370cd75fa19cc83af1199f267d7bc55"}},"docs/audit/01-system-discovery.md":{"size":3790,"mtime_ns":1786799852299174400,"indexed_at_ns":1787564288852734700,"word_count":467,"hashes":{"docs/audit/01-system-discovery.md":"6c91253cac025506db71adea33a054f88f4c367ba81fc3cb1b85c2bdcfec5c70"}},"docs/audit/02-audit-plan.md":{"size":5058,"mtime_ns":1786799852300175400,"indexed_at_ns":1787564288855115500,"word_count":530,"hashes":{"docs/audit/02-audit-plan.md":"b623d8f8c2b8a14c1ddca1ad956cd8afc9203f7a94eda8e63fd608bc8e9164d1"}},"docs/audit/03-baseline-command-plan.md":{"size":4904,"mtime_ns":1786799852300175400,"indexed_at_ns":1787564288858635700,"word_count":735,"hashes":{"docs/audit/03-baseline-command-plan.md":"fcf49beae52c69d7e9cf85967f028052fa1a78eaae5a2bb9b18072b0273e80e1"}},"docs/audit/04-open-questions.md":{"size":1690,"mtime_ns":1786799852301682100,"indexed_at_ns":1787564288860657700,"word_count":224,"hashes":{"docs/audit/04-open-questions.md":"02fbd51a9131da0b12122a5280cc6f842c299b436a72b117e2263f011b9ebf9c"}},"docs/audit/05-architectural-audit.md":{"size":4884,"mtime_ns":1786799852302689800,"indexed_at_ns":1787564277732940700,"word_count":560},"docs/audit/06-storefront-audit.md":{"size":4191,"mtime_ns":1786799852303691400,"indexed_at_ns":1787564288863722100,"word_count":520,"hashes":{"docs/audit/06-storefront-audit.md":"1e2f2d9d867dc553f503ef91b3bd60310202225da12bc7d324e192f4e15d8c38"}},"docs/audit/07-backend-audit.md":{"size":5037,"mtime_ns":1786799852304689900,"indexed_at_ns":1787564288864741300,"word_count":581,"hashes":{"docs/audit/07-backend-audit.md":"0436a967b82026334bf45c9ca677d1e79ce688681bea4dc06a7fd19e2d5a2129"}},"docs/audit/08-admin-features-audit.md":{"size":4222,"mtime_ns":1786799852305951400,"indexed_at_ns":1787564288865737000,"word_count":479,"hashes":{"docs/audit/08-admin-features-audit.md":"dda5b0bae4f843a51274269dcb91d8b65db2f2917d336d511790da4718b05b8d"}},"docs/audit/09-database-audit.md":{"size":4126,"mtime_ns":1786799852306969500,"indexed_at_ns":1787564288867760400,"word_count":521,"hashes":{"docs/audit/09-database-audit.md":"d4f82b84ae6c1899ab4da1310414d993d9c23dcd2759120fbe551f5b8da95a08"}},"docs/audit/10-security-audit.md":{"size":5560,"mtime_ns":1786799852307952600,"indexed_at_ns":1787564277780982700,"word_count":678},"docs/audit/11-code-quality-audit.md":{"size":3379,"mtime_ns":1786799852308957000,"indexed_at_ns":1787564288868731400,"word_count":419,"hashes":{"docs/audit/11-code-quality-audit.md":"b6b9a4845e0bd5674d897c08f5451f8cab4df22722826f7c9d55ca19b94d88da"}},"docs/audit/12-testing-audit.md":{"size":4106,"mtime_ns":1786799852309952600,"indexed_at_ns":1787564288871236000,"word_count":486,"hashes":{"docs/audit/12-testing-audit.md":"8bdf2058520a88de4d08c0635999de8f79fdab83055ef560ca3a865026b6450a"}},"docs/audit/13-devops-audit.md":{"size":3435,"mtime_ns":1786799852310953800,"indexed_at_ns":1787564288873315700,"word_count":440,"hashes":{"docs/audit/13-devops-audit.md":"d21daac201fcfc3a0e27c27348806f3f5d2790071578dcb98e7869cd6e9ec8a9"}},"docs/audit/14-documentation-audit.md":{"size":3311,"mtime_ns":1786799852311952200,"indexed_at_ns":1787564288875315000,"word_count":379,"hashes":{"docs/audit/14-documentation-audit.md":"e64be175bd632a05e37be823621eb8a8f13bdb74887d10f5f20887d41cef5c62"}},"docs/audit/15-raw-findings-index.json":{"size":9909,"mtime_ns":1786799852313066900,"indexed_at_ns":1787564288733610300,"word_count":817,"hashes":{"docs/audit/15-raw-findings-index.json":"3c1e582431f5f25edd2c38285c9d59f83c83d5348eaf0ced91d6e7c94a9afb6d"}},"docs/audit/16-deep-audit-summary.md":{"size":3111,"mtime_ns":1786799852313066900,"indexed_at_ns":1787564288876315300,"word_count":393,"hashes":{"docs/audit/16-deep-audit-summary.md":"8ea08de6ac54dddd9da6de934bc850bb31ab7e3c5470059d02d7f84dd120a0e4"}},"docs/audit/17-source-coverage-manifest.json":{"size":128714,"mtime_ns":1786799852315065000,"indexed_at_ns":1787564288735610100,"word_count":7827,"hashes":{"docs/audit/17-source-coverage-manifest.json":"834e6c341db760439d2e7a9c17531b03c17151ab0f2f16b92aac8a350bcae51d"}},"docs/audit/18-compiler-diagnostic-dispositions.md":{"size":1961,"mtime_ns":1786799852315065000,"indexed_at_ns":1787564288878314400,"word_count":285,"hashes":{"docs/audit/18-compiler-diagnostic-dispositions.md":"246b9164725e89c67c76f2305cd128f0c0f9bfdba46e45e0e958fe92ccdcda53"}},"docs/audit/19-finding-verification-report.md":{"size":5464,"mtime_ns":1786799852316064800,"indexed_at_ns":1787564288879317600,"word_count":753,"hashes":{"docs/audit/19-finding-verification-report.md":"1cd1bc37f9e76ba7e4d4ef82b8565def786abfeb159bc4d822e364e3f2ea694f"}},"docs/audit/20-verified-findings-index.json":{"size":21797,"mtime_ns":1786799852317071400,"indexed_at_ns":1787564288736609800,"word_count":1903,"hashes":{"docs/audit/20-verified-findings-index.json":"b20d0b140bd727faefde9f29aa4d787199dd386464030eecdf58e5a8ab629442"}},"docs/audit/21-phase2-quality-gate-summary.md":{"size":1706,"mtime_ns":1786799852318066000,"indexed_at_ns":1787564288881326400,"word_count":211,"hashes":{"docs/audit/21-phase2-quality-gate-summary.md":"1b117f866e73cd17c43e3a4e856584f03997a3c897d1de9afbd128ff8a86d09e"}},"docs/audit/22-tracked-first-party-files.txt":{"size":4452,"mtime_ns":1786799852319066000,"indexed_at_ns":1787564277900128800,"word_count":139},"docs/audit/23-untracked-first-party-files.txt":{"size":59,"mtime_ns":1786799852319066000,"indexed_at_ns":1787564277907140400,"word_count":7},"docs/audit/24-omitted-file-inspection-report.md":{"size":2462,"mtime_ns":1786799852320065700,"indexed_at_ns":1787564288885329100,"word_count":227,"hashes":{"docs/audit/24-omitted-file-inspection-report.md":"d4484eea65f1861b9b6a30813d2c233d947c2965a13ed5b399462b80ca9c1513"}},"docs/audit/25-reference-integrity-validation.json":{"size":1002,"mtime_ns":1786799852321571600,"indexed_at_ns":1787564288737609900,"word_count":82,"hashes":{"docs/audit/25-reference-integrity-validation.json":"31b900ed297325cabee3e0804809ecd4229f4427283e449f5d82951bb5ed7fde"}},"docs/audit/26-phase2-integrity-repair-report.md":{"size":3191,"mtime_ns":1786799852322091800,"indexed_at_ns":1787564288887354600,"word_count":385,"hashes":{"docs/audit/26-phase2-integrity-repair-report.md":"2b2f385705db6729fccedc63db0f5709afa23e08a80fc859fe0138b416356cd9"}},"docs/audit/27-all-tracked-repository-files.txt":{"size":4631,"mtime_ns":1786799852323099900,"indexed_at_ns":1787564277943299300,"word_count":148},"docs/audit/28-full-repository-classification.json":{"size":27913,"mtime_ns":1786799852324099500,"indexed_at_ns":1787564288739617000,"word_count":1782,"hashes":{"docs/audit/28-full-repository-classification.json":"bcb50229ceddb267c8839ee69c05f5e5c8c4460485c92849532bcf163c37faa8"}},"docs/audit/29-file-content-evidence.json":{"size":109095,"mtime_ns":1786799852325608100,"indexed_at_ns":1787564288741610500,"word_count":9098,"hashes":{"docs/audit/29-file-content-evidence.json":"c4696525e8ab3c252ff9b6b38d5882225e0a9016698111df28064edbe7bf5124"}},"docs/audit/30-compiler-diagnostics-index.json":{"size":3707,"mtime_ns":1786799852326617100,"indexed_at_ns":1787564288742610000,"word_count":324,"hashes":{"docs/audit/30-compiler-diagnostics-index.json":"85bd1a964e41cc5e615c7260be2beb54b49dd444da40d96ae31e2a33c1c6bc24"}},"docs/audit/31-module-audit-closure.md":{"size":7587,"mtime_ns":1786799852327616800,"indexed_at_ns":1787564288889327500,"word_count":709,"hashes":{"docs/audit/31-module-audit-closure.md":"a1c9d7902131d71cf87a072876cc309ac8dfc7cd6e1f33e9619ac12d99f685ba"}},"docs/audit/32-evidence-grade-validation.json":{"size":1613,"mtime_ns":1786799852328616800,"indexed_at_ns":1787564288744610600,"word_count":123,"hashes":{"docs/audit/32-evidence-grade-validation.json":"12ddcc21ff65a2aa76845935ebc0d8313c39991335356fbe3ae7cdd201251af5"}},"docs/audit/33-final-phase2-audit-closure.md":{"size":2535,"mtime_ns":1786799852328616800,"indexed_at_ns":1787564288890336600,"word_count":271,"hashes":{"docs/audit/33-final-phase2-audit-closure.md":"217cadb664c7f7d27f8f849ea1249dfd88d5398fd2af154fd385c80e4d559bb1"}},"docs/audit/34-repository-observations.json":{"size":594,"mtime_ns":1786799852329618700,"indexed_at_ns":1787564288746676000,"word_count":49,"hashes":{"docs/audit/34-repository-observations.json":"28ce67ed3f5bcc3e5c3c80d73a16a34d8053d570be0af62be8afaffbc9318a27"}},"docs/audit/35-semantic-review-ledger.json":{"size":99353,"mtime_ns":1786799852330616000,"indexed_at_ns":1787564288748300100,"word_count":6011,"hashes":{"docs/audit/35-semantic-review-ledger.json":"ac0529050e87efc9e2b5a6c5b3a2ce6379186b4b07f23d8ec9cebf214ff885ef"}},"docs/audit/36-mandatory-semantic-scope.json":{"size":7960,"mtime_ns":1786799852331617100,"indexed_at_ns":1787564288750337500,"word_count":638,"hashes":{"docs/audit/36-mandatory-semantic-scope.json":"af62db825dd527009b8d79a6edab6ab627fe55303d3f7fd1c2d8e5fab9a8760b"}},"docs/audit/ADR-AUTH-001.md":{"size":3274,"mtime_ns":1786799852332642700,"indexed_at_ns":1787564278031426500,"word_count":398},"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md":{"size":2146,"mtime_ns":1786799852332642700,"indexed_at_ns":1787564278039442000,"word_count":239},"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md":{"size":15307,"mtime_ns":1787127978258848200,"indexed_at_ns":1787564278050949000,"word_count":1579},"docs/audit/MASTER-TASK-BACKLOG.md":{"size":30107,"mtime_ns":1786799852335470200,"indexed_at_ns":1787564278059475500,"word_count":3510},"docs/audit/audit-state.json":{"size":4135,"mtime_ns":1786799852337382200,"indexed_at_ns":1787564288751336000,"word_count":267,"hashes":{"docs/audit/audit-state.json":"4b804494570a2812170cb8dab35d15da659f57d6e637652328725e956f7d98aa"}},"docs/audit/build_manifest.js":{"size":4060,"mtime_ns":1786799852338393200,"indexed_at_ns":1787564278073659600,"word_count":348},"docs/audit/frontend-route-map.md":{"size":2558,"mtime_ns":1786799852339389800,"indexed_at_ns":1787564278086621200,"word_count":329},"docs/audit/generate_classification.js":{"size":2186,"mtime_ns":1786799852339389800,"indexed_at_ns":1787564278092628600,"word_count":204},"docs/audit/generate_evidence.js":{"size":3098,"mtime_ns":1786799852340390100,"indexed_at_ns":1787564278102632400,"word_count":253},"docs/audit/generate_ledger.js":{"size":7648,"mtime_ns":1786799852341897300,"indexed_at_ns":1787564278111642200,"word_count":620},"docs/audit/generate_manifest.js":{"size":6357,"mtime_ns":1786799852341897300,"indexed_at_ns":1787564278121158800,"word_count":489},"docs/audit/master-task-backlog.json":{"size":22336,"mtime_ns":1786799852342906700,"indexed_at_ns":1787564288753306100,"word_count":2071,"hashes":{"docs/audit/master-task-backlog.json":"f1c994d971b4e58165ab9f74f8b69b97c07fe74005f64dc11badf5e287b5fd28"}},"docs/audit/phase3-execution-plan.md":{"size":6007,"mtime_ns":1786799852343952400,"indexed_at_ns":1787564278151443000,"word_count":736},"docs/audit/phase3-traceability-matrix.md":{"size":5237,"mtime_ns":1786799852344952800,"indexed_at_ns":1787564288892324500,"word_count":692,"hashes":{"docs/audit/phase3-traceability-matrix.md":"c46b1b09c5f6be7f54ba888652e69698b26d955a8e7c8e4fa19cda8729ee2f7b"}},"docs/audit/phase3.1-backlog-review.md":{"size":9737,"mtime_ns":1786799852345952800,"indexed_at_ns":1787564288893326100,"word_count":1202,"hashes":{"docs/audit/phase3.1-backlog-review.md":"021895bb0b90dd75935ebe0317d3198a2c448ccdd6861b1302cc29735f48da82"}},"docs/audit/phase3.1-change-log.md":{"size":3756,"mtime_ns":1786799852346954800,"indexed_at_ns":1787564288895833800,"word_count":451,"hashes":{"docs/audit/phase3.1-change-log.md":"093d244c2788ead47c69e3068ccf66930ba52e04430bdba87020cb4a4edcb817"}},"docs/audit/phase3.2-change-log.md":{"size":8272,"mtime_ns":1786799852347952200,"indexed_at_ns":1787564288898839900,"word_count":930,"hashes":{"docs/audit/phase3.2-change-log.md":"00bff98e2ae2ef50c4daf265d5f34469f21c244b6dca88b70e1f9ffa17a71d83"}},"docs/audit/phase3.2-implementation-readiness.md":{"size":4694,"mtime_ns":1786799852347952200,"indexed_at_ns":1787564288900841600,"word_count":517,"hashes":{"docs/audit/phase3.2-implementation-readiness.md":"9f1e0335fdc0fa2db0fd5ceaa97e50be85d04bc1ad5d3db1ef74e85de97f71a6"}},"docs/audit/rebuild_honest_ledger.js":{"size":6113,"mtime_ns":1786799852348952900,"indexed_at_ns":1787564278235921000,"word_count":559},"docs/audit/sync_honest_manifest.js":{"size":1213,"mtime_ns":1786799852349953100,"indexed_at_ns":1787564278251885100,"word_count":75},"docs/audit/sync_manifest.js":{"size":997,"mtime_ns":1786799852350953300,"indexed_at_ns":1787564278278221400,"word_count":62},"docs/audit/validate_evidence_grade.js":{"size":6141,"mtime_ns":1786799852351954100,"indexed_at_ns":1787564278293927700,"word_count":526},"docs/audit/validate_integrity.js":{"size":3408,"mtime_ns":1786799852352952400,"indexed_at_ns":1787564278307680200,"word_count":284},"docs/backlog.md":{"size":26175,"mtime_ns":1786799852356021600,"indexed_at_ns":1787564278321184000,"word_count":2834},"frontend/admin-panel/README.md":{"size":2425,"mtime_ns":1783764561778952800,"indexed_at_ns":1787564288901841700,"word_count":212,"hashes":{"frontend/admin-panel/readme.md":"3945c052249ebd020b013303d5921815b52d847bd36c748a03bfdc8eb2a390b8"}},"frontend/admin-panel/eslint.config.js":{"size":906,"mtime_ns":1787148092334501700,"indexed_at_ns":1787564278341898900,"word_count":69},"frontend/admin-panel/index.html":{"size":363,"mtime_ns":1783764561780558500,"indexed_at_ns":1787564278349908400,"word_count":28},"frontend/admin-panel/package.json":{"size":1072,"mtime_ns":1785570791953119000,"indexed_at_ns":1787564288755305400,"word_count":84,"hashes":{"frontend/admin-panel/package.json":"6d61fb108392e86320c75b42e69ba7138bdc47bba4883fafbeb6e661cc5f51e4"}},"frontend/admin-panel/postcss.config.js":{"size":91,"mtime_ns":1783764561796281900,"indexed_at_ns":1787564278365426300,"word_count":11},"frontend/admin-panel/public/favicon.svg":{"size":9522,"mtime_ns":1783764561797801500,"indexed_at_ns":1787564278373940900,"word_count":491},"frontend/admin-panel/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856792435855000,"indexed_at_ns":1787564278406053200,"word_count":15},"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856792445365000,"indexed_at_ns":1787564278442987400,"word_count":15},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856792454604400,"indexed_at_ns":1787564288903840500,"word_count":1077,"hashes":{"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/changelog.md":"4003fe6a71221e735897cfe03ac11bd59ef9951572007763151bf95663256a3d"}},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/README.md":{"size":4136,"mtime_ns":1783856792502503100,"indexed_at_ns":1787564288904839800,"word_count":366,"hashes":{"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/readme.md":"880beb9c92fd527a098de27bc779b6891a36af98ae994f506a64be199ed50392"}},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/sample-variable.gif":{"size":236102,"mtime_ns":1783856792546496500,"indexed_at_ns":1787564279088340500,"word_count":10881},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856792548005600,"indexed_at_ns":1787564288906849300,"word_count":951,"hashes":{"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/changelog.md":"a735e1b29ad9d3361a0d1ecfd5c1f2f78c200a272918606decc377c469944321"}},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856792595155200,"indexed_at_ns":1787564288908847200,"word_count":283,"hashes":{"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/readme.md":"3b6e2d78372a72b67e339bfd7331d408f43245840749d2f46df5c356a208fbfd"}},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856792645667900,"indexed_at_ns":1787564279779307800,"word_count":2615},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856792646666000,"indexed_at_ns":1787564279790989600,"word_count":55},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856792647671700,"indexed_at_ns":1787564288909850900,"word_count":5086,"hashes":{"frontend/admin-panel/public/fonts/vazirmatn-v33.003/changelog.md":"5207a2a148ccfd0338342325a39d9b5b2d39514429c93e0aedf68b21f23fd71e"}},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856792648669800,"indexed_at_ns":1787564279809995800,"word_count":671},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856792648669800,"indexed_at_ns":1787564288911852600,"word_count":270,"hashes":{"frontend/admin-panel/public/fonts/vazirmatn-v33.003/readme.md":"0d736c7dd11e89622e7105e6a5958fc3d83ec827b8a00debc0943bc8e3a3d201"}},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt":{"size":211,"mtime_ns":1783856792971535000,"indexed_at_ns":1787564282419642600,"word_count":14},"frontend/admin-panel/public/icons.svg":{"size":5031,"mtime_ns":1783764561799320300,"indexed_at_ns":1787564282425161000,"word_count":382},"frontend/admin-panel/src/App.tsx":{"size":1088,"mtime_ns":1786799852365481100,"indexed_at_ns":1787564282435769900,"word_count":99},"frontend/admin-panel/src/assets/hero.png":{"size":13057,"mtime_ns":1783764561812863000,"indexed_at_ns":1787564282442291600,"word_count":437},"frontend/admin-panel/src/assets/react.svg":{"size":4126,"mtime_ns":1783764561813924700,"indexed_at_ns":1787564282449535600,"word_count":366},"frontend/admin-panel/src/assets/vite.svg":{"size":8709,"mtime_ns":1783764561814995700,"indexed_at_ns":1787564282456535800,"word_count":439},"frontend/admin-panel/src/components/Layout.tsx":{"size":726,"mtime_ns":1784621786958594800,"indexed_at_ns":1787564282463054300,"word_count":69},"frontend/admin-panel/src/components/ProtectedRoute.tsx":{"size":2336,"mtime_ns":1786799852369164100,"indexed_at_ns":1787564282469060600,"word_count":210},"frontend/admin-panel/src/components/Sidebar.tsx":{"size":13111,"mtime_ns":1787461920842084500,"indexed_at_ns":1787564282482815100,"word_count":1198},"frontend/admin-panel/src/components/Topbar.tsx":{"size":19016,"mtime_ns":1787466234964385700,"indexed_at_ns":1787564282492845100,"word_count":1586},"frontend/admin-panel/src/components/ui/ConfirmModal.tsx":{"size":2294,"mtime_ns":1786972191359099700,"indexed_at_ns":1787564282523977100,"word_count":192},"frontend/admin-panel/src/components/ui/MediaSelector.tsx":{"size":21604,"mtime_ns":1787038450536696800,"indexed_at_ns":1787564282572801500,"word_count":1686},"frontend/admin-panel/src/components/ui/Pagination.tsx":{"size":5510,"mtime_ns":1786799852387442100,"indexed_at_ns":1787564282589430000,"word_count":447},"frontend/admin-panel/src/components/ui/Skeleton.tsx":{"size":178,"mtime_ns":1783856792977535800,"indexed_at_ns":1787564282620468100,"word_count":22},"frontend/admin-panel/src/components/ui/Spinner.tsx":{"size":650,"mtime_ns":1783856792979049200,"indexed_at_ns":1787564282628668900,"word_count":67},"frontend/admin-panel/src/main.tsx":{"size":1055,"mtime_ns":1787062325395038600,"indexed_at_ns":1787564282663403700,"word_count":106},"frontend/admin-panel/src/pages/B2BManager.tsx":{"size":24602,"mtime_ns":1787467799873115600,"indexed_at_ns":1787564282671195100,"word_count":1680},"frontend/admin-panel/src/pages/BannersManager.tsx":{"size":19583,"mtime_ns":1787467799874171700,"indexed_at_ns":1787564282678884300,"word_count":1396},"frontend/admin-panel/src/pages/Blogs.tsx":{"size":82028,"mtime_ns":1787577523706353400,"indexed_at_ns":1787579587008407600,"word_count":5639},"frontend/admin-panel/src/pages/CMS.tsx":{"size":10114,"mtime_ns":1787467933664259800,"indexed_at_ns":1787564282696254600,"word_count":791},"frontend/admin-panel/src/pages/Categories.tsx":{"size":16242,"mtime_ns":1787469989141511600,"indexed_at_ns":1787564282703986300,"word_count":1174},"frontend/admin-panel/src/pages/ContactSubmissions.tsx":{"size":12346,"mtime_ns":1787467799877343800,"indexed_at_ns":1787564282712027500,"word_count":842},"frontend/admin-panel/src/pages/Coupons.tsx":{"size":27812,"mtime_ns":1787469989144204800,"indexed_at_ns":1787564282718995800,"word_count":2147},"frontend/admin-panel/src/pages/Dashboard.tsx":{"size":6006,"mtime_ns":1786885876829510000,"indexed_at_ns":1787564282725688400,"word_count":534},"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx":{"size":13303,"mtime_ns":1787467799882925200,"indexed_at_ns":1787564282747725400,"word_count":928},"frontend/admin-panel/src/pages/IngredientsManager.tsx":{"size":17943,"mtime_ns":1787467933669934500,"indexed_at_ns":1787564282754694400,"word_count":1254},"frontend/admin-panel/src/pages/Login.tsx":{"size":11545,"mtime_ns":1787127978262361000,"indexed_at_ns":1787564282761202600,"word_count":838},"frontend/admin-panel/src/pages/Media.tsx":{"size":29374,"mtime_ns":1787467799885925200,"indexed_at_ns":1787564282769203900,"word_count":2304},"frontend/admin-panel/src/pages/Orders.tsx":{"size":55804,"mtime_ns":1787471287596697600,"indexed_at_ns":1787564282793781900,"word_count":4168},"frontend/admin-panel/src/pages/Pets.tsx":{"size":16631,"mtime_ns":1787467799891938300,"indexed_at_ns":1787564282810794100,"word_count":1209},"frontend/admin-panel/src/pages/PrescriptionsManager.tsx":{"size":19424,"mtime_ns":1787467799892935800,"indexed_at_ns":1787564282818800700,"word_count":1419},"frontend/admin-panel/src/pages/Products.tsx":{"size":119422,"mtime_ns":1787640978245565100,"indexed_at_ns":1787641015212043500,"word_count":7835},"frontend/admin-panel/src/pages/Reports.tsx":{"size":12984,"mtime_ns":1787467799896935100,"indexed_at_ns":1787564282842425400,"word_count":961},"frontend/admin-panel/src/pages/SeoSettingsPage.tsx":{"size":15089,"mtime_ns":1787467799899934200,"indexed_at_ns":1787564282855431900,"word_count":1137},"frontend/admin-panel/src/pages/Settings.tsx":{"size":24256,"mtime_ns":1787468615457819400,"indexed_at_ns":1787564282862937700,"word_count":1701},"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx":{"size":13745,"mtime_ns":1787467799902933600,"indexed_at_ns":1787564282879642700,"word_count":1014},"frontend/admin-panel/src/pages/SystemSettingsPage.tsx":{"size":16821,"mtime_ns":1787467799907448000,"indexed_at_ns":1787564282908140500,"word_count":1133},"frontend/admin-panel/src/pages/TestimonialsManager.tsx":{"size":18547,"mtime_ns":1787467799908955400,"indexed_at_ns":1787564282916133400,"word_count":1297},"frontend/admin-panel/src/pages/UITexts.tsx":{"size":70758,"mtime_ns":1787564362267171200,"indexed_at_ns":1787566186978368500,"word_count":5750},"frontend/admin-panel/src/pages/Users.tsx":{"size":39503,"mtime_ns":1787469989156215200,"indexed_at_ns":1787564282953753800,"word_count":2663},"frontend/admin-panel/src/pages/Videos.tsx":{"size":22648,"mtime_ns":1787467799914548300,"indexed_at_ns":1787564282960255700,"word_count":1604},"frontend/admin-panel/src/pages/WholesaleApplications.tsx":{"size":6713,"mtime_ns":1787467799916852500,"indexed_at_ns":1787564282969260200,"word_count":505},"frontend/admin-panel/src/pages/Wiki.tsx":{"size":15651,"mtime_ns":1787469989158212800,"indexed_at_ns":1787564282977272000,"word_count":1221},"frontend/admin-panel/src/routes/adminRoutes.tsx":{"size":6245,"mtime_ns":1787461920854097100,"indexed_at_ns":1787564282994994500,"word_count":603},"frontend/admin-panel/src/services/api.ts":{"size":5190,"mtime_ns":1786896758433963000,"indexed_at_ns":1787564283007711200,"word_count":479},"frontend/admin-panel/src/store/adminAuthStore.ts":{"size":666,"mtime_ns":1786799852469037000,"indexed_at_ns":1787564283020715100,"word_count":65},"frontend/admin-panel/src/types/admin.ts":{"size":4146,"mtime_ns":1787139270957407700,"indexed_at_ns":1787564283031426400,"word_count":454},"frontend/admin-panel/tailwind.config.js":{"size":182,"mtime_ns":1783764561861721300,"indexed_at_ns":1787564283058560500,"word_count":20},"frontend/admin-panel/tsconfig.app.json":{"size":633,"mtime_ns":1787055476779566300,"indexed_at_ns":1787564288756306900,"word_count":48,"hashes":{"frontend/admin-panel/tsconfig.app.json":"2d9838ee1119342fd03bf7644781b8b6aced2cbdc908ff186cdd6ab7ab9ba1c4"}},"frontend/admin-panel/tsconfig.json":{"size":119,"mtime_ns":1783764561863393600,"indexed_at_ns":1787564288757340300,"word_count":15,"hashes":{"frontend/admin-panel/tsconfig.json":"7a6c2e21b6eaa2355b4e2ed29db2a767499a88498bde745cdccf3ba8c7f64f2b"}},"frontend/admin-panel/tsconfig.node.json":{"size":591,"mtime_ns":1783764561863923100,"indexed_at_ns":1787564288759335600,"word_count":44,"hashes":{"frontend/admin-panel/tsconfig.node.json":"035a8143cff9651dbb67885756a07cc3f8ed1c5dcbf04a6e2042600b7989d525"}},"frontend/admin-panel/vite.config.ts":{"size":161,"mtime_ns":1783764561864454900,"indexed_at_ns":1787564283096362600,"word_count":18},"frontend/application/AGENTS.md":{"size":717,"mtime_ns":1787127978268943700,"indexed_at_ns":1787564283110936900,"word_count":88},"frontend/application/CLAUDE.md":{"size":11,"mtime_ns":1783764561866744500,"indexed_at_ns":1787564288914865500,"word_count":1,"hashes":{"frontend/application/claude.md":"0776fbbe8c29c6dc861efa70683090a370ab56dc77c22cb9de74895b4c783320"}},"frontend/application/README.md":{"size":1450,"mtime_ns":1783764561867354300,"indexed_at_ns":1787564288916850100,"word_count":155,"hashes":{"frontend/application/readme.md":"dd829cdf325092d859080ac1db3cbf2cca3198e72834f0f228495ef3c49a2240"}},"frontend/application/app/ClientLayout.tsx":{"size":6751,"mtime_ns":1787579631778094200,"indexed_at_ns":1787581121143430600,"word_count":604},"frontend/application/app/HomeClient.tsx":{"size":13267,"mtime_ns":1787148092347461500,"indexed_at_ns":1787564283139843200,"word_count":851},"frontend/application/app/about/page.tsx":{"size":5706,"mtime_ns":1787139270959412500,"indexed_at_ns":1787564283144842100,"word_count":474},"frontend/application/app/blog/[slug]/page.tsx":{"size":8201,"mtime_ns":1787641161057694000,"indexed_at_ns":1787641302192094100,"word_count":767},"frontend/application/app/blog/page.tsx":{"size":3318,"mtime_ns":1787581191870074600,"indexed_at_ns":1787640613324583400,"word_count":340},"frontend/application/app/catalog/CatalogClient.tsx":{"size":1389,"mtime_ns":1786872121566485100,"indexed_at_ns":1787564283164359500,"word_count":129},"frontend/application/app/catalog/page.tsx":{"size":671,"mtime_ns":1787139270965525300,"indexed_at_ns":1787564283171905500,"word_count":66},"frontend/application/app/checkout/page.tsx":{"size":604,"mtime_ns":1787139270967535500,"indexed_at_ns":1787564283176904300,"word_count":60},"frontend/application/app/checkout/success/[id]/page.tsx":{"size":231,"mtime_ns":1783764561878668300,"indexed_at_ns":1787564283184494700,"word_count":31},"frontend/application/app/contact/page.tsx":{"size":2655,"mtime_ns":1787641634113275900,"indexed_at_ns":1787641848262519500,"word_count":214},"frontend/application/app/dashboard/page.tsx":{"size":903,"mtime_ns":1787394935318217400,"indexed_at_ns":1787564283196487100,"word_count":83},"frontend/application/app/error.tsx":{"size":383,"mtime_ns":1785148022478709000,"indexed_at_ns":1787564283202931100,"word_count":50},"frontend/application/app/layout.tsx":{"size":4776,"mtime_ns":1787641625284744900,"indexed_at_ns":1787641848287125700,"word_count":400},"frontend/application/app/loading.tsx":{"size":1373,"mtime_ns":1785148022487650000,"indexed_at_ns":1787564283226559000,"word_count":122},"frontend/application/app/not-found.tsx":{"size":124,"mtime_ns":1783764561891411400,"indexed_at_ns":1787564283232174600,"word_count":15},"frontend/application/app/page.tsx":{"size":1003,"mtime_ns":1787139270974959500,"indexed_at_ns":1787564283238177400,"word_count":114},"frontend/application/app/privacy/page.tsx":{"size":4098,"mtime_ns":1787139270976563700,"indexed_at_ns":1787564283252184100,"word_count":336},"frontend/application/app/profile/page.tsx":{"size":623,"mtime_ns":1787139270978803200,"indexed_at_ns":1787564283258179600,"word_count":63},"frontend/application/app/robots.ts":{"size":825,"mtime_ns":1787578481501464000,"indexed_at_ns":1787579587410789500,"word_count":72},"frontend/application/app/search/page.tsx":{"size":786,"mtime_ns":1787139270979946700,"indexed_at_ns":1787564283271658500,"word_count":82},"frontend/application/app/shop/[slug]/page.tsx":{"size":8722,"mtime_ns":1787579631787104400,"indexed_at_ns":1787581121275563300,"word_count":786},"frontend/application/app/shop/page.tsx":{"size":2715,"mtime_ns":1787641686985162000,"indexed_at_ns":1787641848345826500,"word_count":295},"frontend/application/app/sitemap.ts":{"size":3510,"mtime_ns":1787578481510463300,"indexed_at_ns":1787579587449901700,"word_count":350},"frontend/application/app/track/page.tsx":{"size":612,"mtime_ns":1787139270984213600,"indexed_at_ns":1787564283299102300,"word_count":60},"frontend/application/app/trust-seals/page.tsx":{"size":7155,"mtime_ns":1787394001609306700,"indexed_at_ns":1787564283307853000,"word_count":566},"frontend/application/app/videos/page.tsx":{"size":2822,"mtime_ns":1787641664021262100,"indexed_at_ns":1787641848377912400,"word_count":266},"frontend/application/app/wiki/[slug]/page.tsx":{"size":8912,"mtime_ns":1787641766559303500,"indexed_at_ns":1787641848383912500,"word_count":702},"frontend/application/app/wiki/page.tsx":{"size":910,"mtime_ns":1787139270987830800,"indexed_at_ns":1787564283336548200,"word_count":85},"frontend/application/components/AddressModal.tsx":{"size":16148,"mtime_ns":1786799852571178400,"indexed_at_ns":1787564283343300100,"word_count":1109},"frontend/application/components/ArchivePage.tsx":{"size":39791,"mtime_ns":1787641699574880600,"indexed_at_ns":1787641848400009500,"word_count":3110},"frontend/application/components/AuthModal.tsx":{"size":44845,"mtime_ns":1786891855357691900,"indexed_at_ns":1787564283356301300,"word_count":2978},"frontend/application/components/B2BPortal.tsx":{"size":14014,"mtime_ns":1786894580156857600,"indexed_at_ns":1787564283362810800,"word_count":1094},"frontend/application/components/BackButton.tsx":{"size":1120,"mtime_ns":1786965281357277800,"indexed_at_ns":1787564283369816100,"word_count":117},"frontend/application/components/BlogPage.tsx":{"size":20956,"mtime_ns":1787640735444135300,"indexed_at_ns":1787641015692885800,"word_count":1521},"frontend/application/components/CartDrawer.tsx":{"size":20691,"mtime_ns":1787407740765087600,"indexed_at_ns":1787564283403630000,"word_count":1365},"frontend/application/components/CheckoutPage.tsx":{"size":40322,"mtime_ns":1787461919458564100,"indexed_at_ns":1787564283409627600,"word_count":2732},"frontend/application/components/ContactFormClient.tsx":{"size":10535,"mtime_ns":1787127978310946300,"indexed_at_ns":1787564283415627200,"word_count":775},"frontend/application/components/DeleteConfirmModal.tsx":{"size":2328,"mtime_ns":1786799852608752300,"indexed_at_ns":1787564283424164700,"word_count":195},"frontend/application/components/EnamadBadge.tsx":{"size":1516,"mtime_ns":1786799852612361900,"indexed_at_ns":1787564283429683300,"word_count":114},"frontend/application/components/ErrorBoundary.tsx":{"size":2617,"mtime_ns":1786799852614549600,"indexed_at_ns":1787564283436684600,"word_count":235},"frontend/application/components/ErrorPages.tsx":{"size":2809,"mtime_ns":1786885876920726400,"indexed_at_ns":1787564283442678500,"word_count":243},"frontend/application/components/FeaturedProducts.tsx":{"size":10480,"mtime_ns":1787579631794809300,"indexed_at_ns":1787581121420455200,"word_count":904},"frontend/application/components/Footer.tsx":{"size":13707,"mtime_ns":1787641615996103400,"indexed_at_ns":1787641848494696300,"word_count":903},"frontend/application/components/Header.tsx":{"size":30948,"mtime_ns":1787641607741117900,"indexed_at_ns":1787641848500704900,"word_count":2249},"frontend/application/components/HeaderButton.tsx":{"size":2242,"mtime_ns":1786799852637156100,"indexed_at_ns":1787564283472732500,"word_count":208},"frontend/application/components/Hero.tsx":{"size":19216,"mtime_ns":1787577523539588200,"indexed_at_ns":1787579587587091800,"word_count":1616},"frontend/application/components/IngredientWiki.tsx":{"size":20337,"mtime_ns":1786965281374206800,"indexed_at_ns":1787564283484315500,"word_count":1496},"frontend/application/components/LoginModal.tsx":{"size":13846,"mtime_ns":1786885876932267500,"indexed_at_ns":1787564283491310500,"word_count":1121},"frontend/application/components/MaintenancePage.tsx":{"size":3686,"mtime_ns":1786946249984693000,"indexed_at_ns":1787564283497309400,"word_count":313},"frontend/application/components/NetworkBanner.tsx":{"size":2350,"mtime_ns":1786799852662138900,"indexed_at_ns":1787564283504310000,"word_count":214},"frontend/application/components/OrderDetailsModal.tsx":{"size":36149,"mtime_ns":1787564348694929900,"indexed_at_ns":1787566187397322400,"word_count":2477},"frontend/application/components/OrderSuccess.tsx":{"size":6396,"mtime_ns":1786799852665542300,"indexed_at_ns":1787564283517318800,"word_count":521},"frontend/application/components/OrderTracking.tsx":{"size":9106,"mtime_ns":1786965281380189400,"indexed_at_ns":1787564283526450300,"word_count":663},"frontend/application/components/PetProfile.tsx":{"size":83314,"mtime_ns":1787564348695930500,"indexed_at_ns":1787566187413918800,"word_count":5882},"frontend/application/components/PrescriptionUploadModal.tsx":{"size":18907,"mtime_ns":1786965281385656300,"indexed_at_ns":1787564283554264900,"word_count":1331},"frontend/application/components/ProductPage.tsx":{"size":69953,"mtime_ns":1787579631799835500,"indexed_at_ns":1787581121498381000,"word_count":4986},"frontend/application/components/SafeImage.tsx":{"size":3431,"mtime_ns":1787579631801836700,"indexed_at_ns":1787581121509317800,"word_count":318},"frontend/application/components/SearchResultsPage.tsx":{"size":8335,"mtime_ns":1786799852701578200,"indexed_at_ns":1787564283582695900,"word_count":594},"frontend/application/components/SearchableSelect.tsx":{"size":4375,"mtime_ns":1785575516155554800,"indexed_at_ns":1787564283590696700,"word_count":336},"frontend/application/components/Skeleton.tsx":{"size":3084,"mtime_ns":1783764561943996900,"indexed_at_ns":1787564283596695600,"word_count":291},"frontend/application/components/SmartAdvisor.tsx":{"size":35049,"mtime_ns":1787461919461079000,"indexed_at_ns":1787564283604697000,"word_count":2686},"frontend/application/components/TickerBanner.tsx":{"size":1605,"mtime_ns":1786885876960835800,"indexed_at_ns":1787564283617707000,"word_count":140},"frontend/application/components/Tooltip.tsx":{"size":2771,"mtime_ns":1786885876964103200,"indexed_at_ns":1787564283624218300,"word_count":227},"frontend/application/components/TopUpModal.tsx":{"size":9381,"mtime_ns":1787406597303349300,"indexed_at_ns":1787564283631217800,"word_count":741},"frontend/application/components/UserDashboard.tsx":{"size":92697,"mtime_ns":1787394935320317600,"indexed_at_ns":1787564283638867700,"word_count":5939},"frontend/application/components/VetGallery.tsx":{"size":8292,"mtime_ns":1787074301692915100,"indexed_at_ns":1787564283646099700,"word_count":643},"frontend/application/components/VideosPage.tsx":{"size":7000,"mtime_ns":1787048863693787300,"indexed_at_ns":1787564283659099700,"word_count":531},"frontend/application/components/__tests__/CartDrawer.test.tsx":{"size":3197,"mtime_ns":1786799852761825800,"indexed_at_ns":1787564283664612000,"word_count":285},"frontend/application/components/__tests__/FeaturedProducts.test.tsx":{"size":3115,"mtime_ns":1786799852765632100,"indexed_at_ns":1787564283674102900,"word_count":242},"frontend/application/components/__tests__/Footer.test.tsx":{"size":1649,"mtime_ns":1786885876976595100,"indexed_at_ns":1787564283680103500,"word_count":139},"frontend/application/components/__tests__/Header.test.tsx":{"size":3277,"mtime_ns":1786799852770019100,"indexed_at_ns":1787564283687680800,"word_count":261},"frontend/application/components/__tests__/Hero.test.tsx":{"size":1980,"mtime_ns":1786799852776010800,"indexed_at_ns":1787564283694680800,"word_count":192},"frontend/application/components/__tests__/Tooltip.test.tsx":{"size":1508,"mtime_ns":1786799852784348900,"indexed_at_ns":1787564283702458200,"word_count":137},"frontend/application/eslint.config.mjs":{"size":747,"mtime_ns":1787148092358055900,"indexed_at_ns":1787564283732316100,"word_count":61},"frontend/application/lib/data/products.ts":{"size":104224,"mtime_ns":1787578481513988500,"indexed_at_ns":1787579587785035200,"word_count":9748},"frontend/application/lib/data/provinces.ts":{"size":2993,"mtime_ns":1785571725610676000,"indexed_at_ns":1787564283749267800,"word_count":203},"frontend/application/lib/data/scientificTerms.ts":{"size":18042,"mtime_ns":1786958978743097300,"indexed_at_ns":1787564283758834500,"word_count":1756},"frontend/application/lib/hooks/useNetworkStatus.ts":{"size":610,"mtime_ns":1786799852793488000,"indexed_at_ns":1787564283765348100,"word_count":59},"frontend/application/lib/services/api.ts":{"size":3694,"mtime_ns":1786954681844297300,"indexed_at_ns":1787564283779578000,"word_count":391},"frontend/application/lib/services/authService.ts":{"size":4524,"mtime_ns":1786885876986184800,"indexed_at_ns":1787564283786586900,"word_count":509},"frontend/application/lib/services/orderService.ts":{"size":2428,"mtime_ns":1786799852810726500,"indexed_at_ns":1787564283798142900,"word_count":279},"frontend/application/lib/services/productService.ts":{"size":15840,"mtime_ns":1787579631803836100,"indexed_at_ns":1787581121674594200,"word_count":1409},"frontend/application/lib/services/videoService.ts":{"size":1234,"mtime_ns":1786967385871970500,"indexed_at_ns":1787564283823224300,"word_count":144},"frontend/application/lib/store/__tests__/cartStore.test.ts":{"size":4430,"mtime_ns":1786799852822036900,"indexed_at_ns":1787564283831962200,"word_count":386},"frontend/application/lib/store/__tests__/settingsStore.test.ts":{"size":1949,"mtime_ns":1783856793043803200,"indexed_at_ns":1787564283841962300,"word_count":194},"frontend/application/lib/store/__tests__/userStore.test.ts":{"size":3639,"mtime_ns":1786799852825547700,"indexed_at_ns":1787564283848968400,"word_count":289},"frontend/application/lib/store/cartStore.ts":{"size":6972,"mtime_ns":1786895436235684300,"indexed_at_ns":1787564283855969000,"word_count":697},"frontend/application/lib/store/settingsStore.ts":{"size":3630,"mtime_ns":1786948119787096800,"indexed_at_ns":1787564283862787900,"word_count":371},"frontend/application/lib/store/uiStore.ts":{"size":872,"mtime_ns":1786799852833588000,"indexed_at_ns":1787564283868789300,"word_count":100},"frontend/application/lib/store/usePetStore.ts":{"size":8680,"mtime_ns":1786954681845300600,"indexed_at_ns":1787564283875961800,"word_count":850},"frontend/application/lib/store/userStore.ts":{"size":10236,"mtime_ns":1786885876994698300,"indexed_at_ns":1787564283881961000,"word_count":883},"frontend/application/lib/types.ts":{"size":2194,"mtime_ns":1786799852840111800,"indexed_at_ns":1787564283891446100,"word_count":237},"frontend/application/lib/utils.ts":{"size":478,"mtime_ns":1786799852847284000,"indexed_at_ns":1787564283899432000,"word_count":61},"frontend/application/next.config.ts":{"size":2274,"mtime_ns":1787579631805387200,"indexed_at_ns":1787581121748067000,"word_count":208},"frontend/application/package.json":{"size":844,"mtime_ns":1787640978247182300,"indexed_at_ns":1787641020904995300,"word_count":72,"hashes":{"frontend/application/package.json":"6f60e7e1648827d0553bb5db6faa06d1a77f6809f0a6370f9b9517c91dd19db7"}},"frontend/application/postcss.config.mjs":{"size":94,"mtime_ns":1783764561988252100,"indexed_at_ns":1787564283923981900,"word_count":13},"frontend/application/public/assets/images/hero-section-image.png":{"size":6990105,"mtime_ns":1783856793095044200,"indexed_at_ns":1787564284102873200,"word_count":267685},"frontend/application/public/assets/images/regenerated_image_1779109861747.png":{"size":2269101,"mtime_ns":1783764562014110300,"indexed_at_ns":1787564284275644800,"word_count":84979},"frontend/application/public/file.svg":{"size":391,"mtime_ns":1783764562016213600,"indexed_at_ns":1787564284329558800,"word_count":50},"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856793098052000,"indexed_at_ns":1787564284359579800,"word_count":15},"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856793107660400,"indexed_at_ns":1787564284385265800,"word_count":15},"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856793113660500,"indexed_at_ns":1787564288917846400,"word_count":1077,"hashes":{"frontend/application/public/fonts/sahel-font-v3.4.0/changelog.md":"be9b046e69dc5442c30d61cca51a69e4238f861da265d1ce8cd0192bafce40a9"}},"frontend/application/public/fonts/sahel-font-v3.4.0/README.md":{"size":4136,"mtime_ns":1783856793156251700,"indexed_at_ns":1787564288918846000,"word_count":366,"hashes":{"frontend/application/public/fonts/sahel-font-v3.4.0/readme.md":"9b0e689f6474b487d70db0ecb05321072f15df92266522497b60aaa47579aac5"}},"frontend/application/public/fonts/sahel-font-v3.4.0/sample-variable.gif":{"size":236102,"mtime_ns":1783856793229119700,"indexed_at_ns":1787564285013040800,"word_count":10881},"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856793230118600,"indexed_at_ns":1787564285027163500,"word_count":951},"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856793279542700,"indexed_at_ns":1787564285290463900,"word_count":283},"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856793315146800,"indexed_at_ns":1787564285533666700,"word_count":2615},"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856793316155600,"indexed_at_ns":1787564285543697700,"word_count":55},"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856793317690100,"indexed_at_ns":1787564285550703100,"word_count":5086},"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856793319422000,"indexed_at_ns":1787564285557705000,"word_count":671},"frontend/application/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856793320489000,"indexed_at_ns":1787564285564280600,"word_count":270},"frontend/application/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt":{"size":211,"mtime_ns":1783856793668096800,"indexed_at_ns":1787564287947611200,"word_count":14},"frontend/application/public/globe.svg":{"size":1035,"mtime_ns":1783764562016720700,"indexed_at_ns":1787564287953617800,"word_count":154},"frontend/application/public/next.svg":{"size":1375,"mtime_ns":1783764562018238900,"indexed_at_ns":1787564288119164700,"word_count":183},"frontend/application/public/vercel.svg":{"size":128,"mtime_ns":1783764562019253000,"indexed_at_ns":1787564288125339900,"word_count":12},"frontend/application/public/window.svg":{"size":385,"mtime_ns":1783764562019253000,"indexed_at_ns":1787564288135344400,"word_count":63},"frontend/application/tsconfig.json":{"size":750,"mtime_ns":1786799852865640000,"indexed_at_ns":1787564288761338000,"word_count":61,"hashes":{"frontend/application/tsconfig.json":"adcade0f962ec5888be99b4b1402d98812cfd570b0c5669bda73142b2cb9210d"}},"frontend/application/vitest.config.ts":{"size":244,"mtime_ns":1786799852868652900,"indexed_at_ns":1787564288154346600,"word_count":25},"frontend/application/vitest.setup.ts":{"size":532,"mtime_ns":1786799852870650700,"indexed_at_ns":1787564288160348600,"word_count":58},"metadata.json":{"size":334,"mtime_ns":1783856793672137200,"indexed_at_ns":1787564288762305500,"word_count":35,"hashes":{"metadata.json":"c44b4c4ba60752554ceae65e2f22bddb756cbeb25a4a31ee79160b6eb182255a"}},"package.json":{"size":992,"mtime_ns":1783856793674105800,"indexed_at_ns":1787564288763810700,"word_count":118,"hashes":{"package.json":"0157b70b08d4db87730d29b1da6749d719cc3f815c2c01d0c5cd29042f4d0bcf"}},"prometheus.yml":{"size":164,"mtime_ns":1783764562027779300,"indexed_at_ns":1787564288183410300,"word_count":13},"scripts/backup_db.sh":{"size":1362,"mtime_ns":1786799852876784600,"indexed_at_ns":1787564288765816600,"word_count":134,"hashes":{"scripts/backup_db.sh":"f90cf2d0c954f3eaca83566ccb365bff62fd97a2af0225816c19902ee4dfdd6c"}},"scripts/compose.prod.yml":{"size":2166,"mtime_ns":1787077093990777200,"indexed_at_ns":1787564288200012000,"word_count":120},"scripts/compose.stage.yml":{"size":2557,"mtime_ns":1787077093991779700,"indexed_at_ns":1787564288207734600,"word_count":137},"scripts/deploy.sh":{"size":3346,"mtime_ns":1787136904559094200,"indexed_at_ns":1787564288766816200,"word_count":351,"hashes":{"scripts/deploy.sh":"64d276bb6eb6cfb83690c529b9d1c0c71fa46aa912a458f684dfcf842fab2aea"}},"scripts/open-browsers.js":{"size":1551,"mtime_ns":1787640978248234500,"indexed_at_ns":1787641020319836400,"word_count":202},"scripts/start-dev.js":{"size":1689,"mtime_ns":1787072106514646900,"indexed_at_ns":1787564288229733900,"word_count":186},"start.sh":{"size":26,"mtime_ns":1784033954813080300,"indexed_at_ns":1787564288767817400,"word_count":4,"hashes":{"start.sh":"694c258b963c309734a3316c770f5fef29703bc6f24754b04155fd8db94cf862"}},"swagger.yml":{"size":95785,"mtime_ns":1786799852892091600,"indexed_at_ns":1787564288244352200,"word_count":7031},".antigravity/instructions.md":{"size":226,"mtime_ns":1786870552833405800,"indexed_at_ns":1787564288824755500,"word_count":29,"hashes":{".antigravity/instructions.md":"8d8f5c1bbdbb7b8045e02b06a50e68d3fcfabfb2d65f8ac1cd86168dc8a8cc96"}},".antigravity/workflows/graphify.md":{"size":43292,"mtime_ns":1786870552837921500,"indexed_at_ns":1787564288825731900,"word_count":5442,"hashes":{".antigravity/workflows/graphify.md":"0c16b701a50d64f741f6de107c49584012a8dd7f5e922af9f79754540629e2fe"}},".agents/rules/graphify.md":{"size":933,"mtime_ns":1786870552830271100,"indexed_at_ns":1787564288768819100,"word_count":127,"hashes":{".agents/rules/graphify.md":"26f2577a68d808f7f33ec3e418b95b635aec180d93b22b975e9ae67c47e361c8"}},".agents/workflows/graphify.md":{"size":229,"mtime_ns":1786870552832398300,"indexed_at_ns":1787564288770915200,"word_count":37,"hashes":{".agents/workflows/graphify.md":"a81e2d017e0669c71099362b20854e4d9ed68753f1c240d0682120bdb9aa3c72"}},"backend/src/payment/dto/initiate-payment.dto.ts":{"size":775,"mtime_ns":1786870552874246400,"indexed_at_ns":1787564276845597900,"word_count":69},"backend/src/payment/dto/verify-payment.dto.ts":{"size":1421,"mtime_ns":1786894580126857900,"indexed_at_ns":1787564276853583000,"word_count":126},"backend/src/payment/payment.controller.ts":{"size":19167,"mtime_ns":1787564362263176000,"indexed_at_ns":1787566182392995700,"word_count":1574},"backend/src/payment/payment.module.ts":{"size":608,"mtime_ns":1787394001605617900,"indexed_at_ns":1787564276879203400,"word_count":61},"backend/src/payment/payment.service.ts":{"size":30818,"mtime_ns":1787564362264174300,"indexed_at_ns":1787566182403784800,"word_count":2752},"backend/src/payment/zibal.service.ts":{"size":25781,"mtime_ns":1787461919453309100,"indexed_at_ns":1787564276907816300,"word_count":2490},"frontend/application/app/payment/verify/page.tsx":{"size":14338,"mtime_ns":1786891855356078600,"indexed_at_ns":1787564283245175000,"word_count":1094},"AGENTS.md":{"size":226,"mtime_ns":1786870552862708600,"indexed_at_ns":1787564288842730300,"word_count":29,"hashes":{"agents.md":"b664c2bb6d85e009d7495bcd9c3d52c419176473cd4e19362fd4256616076151"}},"frontend/admin-panel/src/pages/SmsSettingsPage.tsx":{"size":78907,"mtime_ns":1787467799904439000,"indexed_at_ns":1787564282888807700,"word_count":5444},"backend/src/payment/dto/admin-transaction-filter.dto.ts":{"size":2060,"mtime_ns":1787072106401590500,"indexed_at_ns":1787564276830584100,"word_count":191},"frontend/admin-panel/src/pages/Transactions.tsx":{"size":45136,"mtime_ns":1787471434872188300,"indexed_at_ns":1787564282932768300,"word_count":3213},"backend/src/payment/interfaces/payment-gateway.interface.ts":{"size":1330,"mtime_ns":1786870552876751100,"indexed_at_ns":1787564276862891800,"word_count":128},"frontend/application/components/catalog/CatalogPageSpread.tsx":{"size":24099,"mtime_ns":1786885876979161800,"indexed_at_ns":1787564283710218400,"word_count":1912},"frontend/application/components/catalog/FlipbookCatalog.tsx":{"size":32968,"mtime_ns":1786885876982161900,"indexed_at_ns":1787564283718217500,"word_count":2807},"frontend/application/components/catalog/ProductDetailModal.tsx":{"size":7763,"mtime_ns":1786872121572482100,"indexed_at_ns":1787564283726726900,"word_count":557},"backend/scripts/generate-openapi.d.ts":{"size":11,"mtime_ns":1786883225777483700,"indexed_at_ns":1787564276039943800,"word_count":2},"backend/scripts/generate-openapi.js":{"size":2965,"mtime_ns":1786883225779120000,"indexed_at_ns":1787564276052136500,"word_count":309},"backend/src/admin/dto/user.dto.ts":{"size":2839,"mtime_ns":1787072106381989700,"indexed_at_ns":1787564276183263900,"word_count":259},"backend/src/admin/ssl.controller.ts":{"size":3371,"mtime_ns":1787072106382979000,"indexed_at_ns":1787564276232184000,"word_count":296},"backend/src/admin/ssl.service.ts":{"size":6502,"mtime_ns":1787072106383978900,"indexed_at_ns":1787564276239202600,"word_count":612},"backend/src/auth/auth.constants.ts":{"size":456,"mtime_ns":1787072106385980100,"indexed_at_ns":1787564276294978100,"word_count":32},"backend/src/common/utils/phone.utils.ts":{"size":1089,"mtime_ns":1786883225801396000,"indexed_at_ns":1787564276609454700,"word_count":149},"backend/src/reviews/dto/create-review.dto.ts":{"size":949,"mtime_ns":1787072106414306300,"indexed_at_ns":1787564277100235900,"word_count":92},"backend/src/reviews/dto/update-review.dto.ts":{"size":534,"mtime_ns":1787072106415805700,"indexed_at_ns":1787564277108594200,"word_count":53},"backend/src/reviews/reviews.controller.ts":{"size":3221,"mtime_ns":1786944769516312000,"indexed_at_ns":1787564277114590800,"word_count":314},"backend/src/reviews/reviews.module.ts":{"size":374,"mtime_ns":1786944769517310800,"indexed_at_ns":1787564277121093400,"word_count":38},"backend/src/reviews/reviews.service.ts":{"size":7013,"mtime_ns":1787579631775586600,"indexed_at_ns":1787581116730198900,"word_count":742},"backend/src/settings/default-ui-texts.ts":{"size":19291,"mtime_ns":1787564362266172200,"indexed_at_ns":1787566182581953200,"word_count":1538},"backend/src/settings/dto/sms-log-query.dto.ts":{"size":1343,"mtime_ns":1787072106421339300,"indexed_at_ns":1787564277163303300,"word_count":125},"backend/src/tickets/dto/create-ticket.dto.ts":{"size":2374,"mtime_ns":1787072106430874900,"indexed_at_ns":1787564277252724900,"word_count":201},"backend/src/tickets/dto/ticket-query.dto.ts":{"size":1103,"mtime_ns":1787072106431871400,"indexed_at_ns":1787564277259243800,"word_count":106},"backend/src/tickets/tickets.controller.ts":{"size":3114,"mtime_ns":1787072106433878000,"indexed_at_ns":1787564277267243500,"word_count":293},"backend/src/tickets/tickets.module.ts":{"size":374,"mtime_ns":1786890779322296800,"indexed_at_ns":1787564277272754600,"word_count":38},"backend/src/tickets/tickets.service.ts":{"size":7310,"mtime_ns":1787072106434874300,"indexed_at_ns":1787564277279759700,"word_count":781},"frontend/admin-panel/src/pages/Reviews.tsx":{"size":20769,"mtime_ns":1787467799897934900,"indexed_at_ns":1787564282848431600,"word_count":1479},"frontend/admin-panel/src/pages/SslSettingsPage.tsx":{"size":25502,"mtime_ns":1787467799905446700,"indexed_at_ns":1787564282900134300,"word_count":1847},"frontend/admin-panel/src/pages/Tickets.tsx":{"size":20254,"mtime_ns":1787467799909962900,"indexed_at_ns":1787564282926172900,"word_count":1455},"frontend/application/components/BannerPlacement.tsx":{"size":7703,"mtime_ns":1787564348689902000,"indexed_at_ns":1787566187279919800,"word_count":527},"frontend/application/components/BrandLogo.tsx":{"size":3307,"mtime_ns":1787564348690862200,"indexed_at_ns":1787566187296891000,"word_count":287},"frontend/application/components/ProductReviews.tsx":{"size":16108,"mtime_ns":1787048863691774800,"indexed_at_ns":1787564283568575400,"word_count":1194},"frontend/application/lib/services/ticketService.ts":{"size":1569,"mtime_ns":1786890779340901800,"indexed_at_ns":1787564283813667100,"word_count":170},"frontend/admin-panel/src/components/ui/PriceInput.tsx":{"size":2633,"mtime_ns":1786948119771162400,"indexed_at_ns":1787564282596400400,"word_count":267},"frontend/admin-panel/src/components/ui/Badge.tsx":{"size":1554,"mtime_ns":1787461920844094000,"indexed_at_ns":1787564282507850700,"word_count":158},"frontend/admin-panel/src/components/ui/FormField.tsx":{"size":1683,"mtime_ns":1786954681823527000,"indexed_at_ns":1787564282530979500,"word_count":148},"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx":{"size":3351,"mtime_ns":1786954681824534900,"indexed_at_ns":1787564282548015500,"word_count":270},"frontend/admin-panel/src/components/ui/Input.tsx":{"size":1747,"mtime_ns":1786954681825535900,"indexed_at_ns":1787564282557685700,"word_count":147},"frontend/admin-panel/src/components/ui/Select.tsx":{"size":1881,"mtime_ns":1786954681828537500,"indexed_at_ns":1787564282612467900,"word_count":160},"frontend/admin-panel/src/components/ui/Textarea.tsx":{"size":1287,"mtime_ns":1786954681828537500,"indexed_at_ns":1787564282635345800,"word_count":110},"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx":{"size":1623,"mtime_ns":1786954681830044900,"indexed_at_ns":1787564282651611000,"word_count":143},"backend/prisma/tsconfig.json":{"size":194,"mtime_ns":1786961195300236300,"indexed_at_ns":1787564288727957200,"word_count":17,"hashes":{"backend/prisma/tsconfig.json":"0308b15b67bad714ff5f1b6b73f64ae46f98d5190cd6092abb1fb67885d67be1"}},"backend/src/admin/dto/product.dto.ts":{"size":6434,"mtime_ns":1787579631762178300,"indexed_at_ns":1787581116066315300,"word_count":521},"backend/src/doctors/doctors.controller.ts":{"size":1583,"mtime_ns":1787148092311692900,"indexed_at_ns":1787564276643036300,"word_count":148},"backend/src/doctors/doctors.module.ts":{"size":374,"mtime_ns":1786971396035575100,"indexed_at_ns":1787564276651046400,"word_count":38},"backend/src/doctors/doctors.service.ts":{"size":2336,"mtime_ns":1787148092312693100,"indexed_at_ns":1787564276657561500,"word_count":266},"frontend/admin-panel/src/pages/DoctorsManager.tsx":{"size":23282,"mtime_ns":1787467799879923800,"indexed_at_ns":1787564282731656300,"word_count":1666},"frontend/application/components/TestimonialsSection.tsx":{"size":6473,"mtime_ns":1787148092353045800,"indexed_at_ns":1787564283610703800,"word_count":494},"frontend/application/components/VideoModalPlayer.tsx":{"size":23237,"mtime_ns":1787061337636422600,"indexed_at_ns":1787564283653106900,"word_count":1737},"frontend/application/components/PodcastPlayerModal.tsx":{"size":18090,"mtime_ns":1787564348697931500,"indexed_at_ns":1787566187429556300,"word_count":1485},"frontend/application/components/PodcastInlinePlayer.tsx":{"size":17030,"mtime_ns":1787579631796809000,"indexed_at_ns":1787581121483583600,"word_count":1382},"frontend/admin-panel/src/components/RouteErrorBoundary.tsx":{"size":4042,"mtime_ns":1787062174623011100,"indexed_at_ns":1787564282476819000,"word_count":350},"frontend/admin-panel/src/utils/lazyWithRetry.ts":{"size":1129,"mtime_ns":1787062174626227900,"indexed_at_ns":1787564283041437300,"word_count":114},"frontend/admin-panel/src/components/ui/IconPickerModal.tsx":{"size":4853,"mtime_ns":1787071159959928200,"indexed_at_ns":1787564282540947700,"word_count":397},"frontend/admin-panel/src/components/ui/RichTextEditor.tsx":{"size":35899,"mtime_ns":1787577523704353400,"indexed_at_ns":1787579586948875400,"word_count":2719},"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx":{"size":37893,"mtime_ns":1787467799889939500,"indexed_at_ns":1787564282801816300,"word_count":2521},"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx":{"size":7615,"mtime_ns":1787467799901935300,"indexed_at_ns":1787564282872645500,"word_count":585},"backend/test/app-audit-verification.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059109005600,"indexed_at_ns":1787564277474988100,"word_count":2},"backend/test/app-audit-verification.e2e-spec.js":{"size":8429,"mtime_ns":1787073059110516300,"indexed_at_ns":1787564277482992300,"word_count":714},"backend/test/app.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059112563300,"indexed_at_ns":1787564277507000600,"word_count":2},"backend/test/app.e2e-spec.js":{"size":1228,"mtime_ns":1787073059113572500,"indexed_at_ns":1787564277516999300,"word_count":97},"frontend/application/lib/seo.ts":{"size":8046,"mtime_ns":1787139270988834800,"indexed_at_ns":1787564283771867700,"word_count":737},"backend/src/doctors/dto/doctor-query.dto.ts":{"size":1009,"mtime_ns":1787148092314699500,"indexed_at_ns":1787564276666878400,"word_count":116},"backend/src/faq/faq.controller.ts":{"size":2210,"mtime_ns":1787148092316694700,"indexed_at_ns":1787564276673980400,"word_count":199},"backend/src/faq/faq.module.ts":{"size":234,"mtime_ns":1787148092316694700,"indexed_at_ns":1787564276680982300,"word_count":28},"backend/src/faq/faq.service.ts":{"size":1541,"mtime_ns":1787148092319911700,"indexed_at_ns":1787564276686982700,"word_count":184},"backend/src/menu/menu.controller.ts":{"size":2920,"mtime_ns":1787564348681948800,"indexed_at_ns":1787566182315979000,"word_count":265},"backend/src/menu/menu.module.ts":{"size":267,"mtime_ns":1787148092323869500,"indexed_at_ns":1787564276773370000,"word_count":30},"backend/src/menu/menu.service.ts":{"size":7799,"mtime_ns":1787564362262172600,"indexed_at_ns":1787566182327994000,"word_count":799},"backend/src/payment/dto/ebank-checkout.dto.ts":{"size":1378,"mtime_ns":1787394001603461200,"indexed_at_ns":1787564276837578000,"word_count":118},"backend/src/payment/zibal-ebank.service.ts":{"size":10087,"mtime_ns":1787461919452306600,"indexed_at_ns":1787564276900819500,"word_count":1006},"frontend/admin-panel/src/pages/FAQManager.tsx":{"size":12625,"mtime_ns":1787467799881924800,"indexed_at_ns":1787564282739660500,"word_count":937},"frontend/admin-panel/src/pages/MenuManager.tsx":{"size":19625,"mtime_ns":1787469989146215000,"indexed_at_ns":1787564282776784700,"word_count":1512},"frontend/application/components/BlogPreviewSection.tsx":{"size":7535,"mtime_ns":1787640735445200900,"indexed_at_ns":1787641015698860600,"word_count":544},"frontend/application/components/FAQSection.tsx":{"size":4790,"mtime_ns":1787148092351047600,"indexed_at_ns":1787564283447682800,"word_count":394},"frontend/admin-panel/src/pages/ZibalPortalPage.tsx":{"size":55699,"mtime_ns":1787570438155805200,"indexed_at_ns":1787576611067857200,"word_count":3753},"frontend/admin-panel/src/components/TransactionReceiptModal.tsx":{"size":9674,"mtime_ns":1787405554804618300,"indexed_at_ns":1787564282501818200,"word_count":738},"frontend/admin-panel/src/components/ui/Button.tsx":{"size":3591,"mtime_ns":1787467799871536000,"indexed_at_ns":1787564282514820400,"word_count":338},"frontend/admin-panel/src/components/ui/MaskableField.tsx":{"size":3246,"mtime_ns":1787405554805712000,"indexed_at_ns":1787564282565200500,"word_count":310},".vscode/extensions.json":{"size":74,"mtime_ns":1787461919449307400,"indexed_at_ns":1787564288719437300,"word_count":6,"hashes":{".vscode/extensions.json":"57518c36999b5176c9e8617cf937f6e35b54ddd015305005d4611729d1d69177"}},"frontend/admin-panel/src/components/ui/Modal.tsx":{"size":3381,"mtime_ns":1787461920845094300,"indexed_at_ns":1787564282580803500,"word_count":324},"frontend/admin-panel/src/components/ui/ThSort.tsx":{"size":1478,"mtime_ns":1787461920845094300,"indexed_at_ns":1787564282643340000,"word_count":148},"frontend/admin-panel/src/pages/MonitoringPage.tsx":{"size":16455,"mtime_ns":1787466234965980200,"indexed_at_ns":1787564282783791800,"word_count":1289},"frontend/admin-panel/src/utils/useTableParams.ts":{"size":4060,"mtime_ns":1787461920855096000,"indexed_at_ns":1787564283050948100,"word_count":441},"frontend/application/public/assets/images/canina-product-placeholder.png":{"size":6990105,"mtime_ns":1787461919505024400,"indexed_at_ns":1787564283930981500,"word_count":267685},"frontend/application/public/images/vets/vet1.webp":{"size":6990105,"mtime_ns":1787461919541761600,"indexed_at_ns":1787564287960615800,"word_count":267685},"frontend/application/app/blog/rss.xml/route.ts":{"size":3076,"mtime_ns":1787577523710351300,"indexed_at_ns":1787579587319573400,"word_count":280},"backend/src/common/revalidation/revalidation.module.ts":{"size":240,"mtime_ns":1787579631769582300,"indexed_at_ns":1787581116353646400,"word_count":24},"backend/src/common/revalidation/revalidation.service.ts":{"size":3410,"mtime_ns":1787579631770587500,"indexed_at_ns":1787581116358646500,"word_count":272},"frontend/application/app/api/revalidate/route.ts":{"size":1889,"mtime_ns":1787579631780106700,"indexed_at_ns":1787581121159687800,"word_count":220},"frontend/application/app/shop/feed.xml/route.ts":{"size":3391,"mtime_ns":1787578481506463600,"indexed_at_ns":1787579587427563500,"word_count":301},"frontend/application/app/sitemap-categories.xml/route.ts":{"size":1797,"mtime_ns":1787578481507462100,"indexed_at_ns":1787579587438898000,"word_count":179},"frontend/application/app/sitemap-products.xml/route.ts":{"size":1980,"mtime_ns":1787578481508464300,"indexed_at_ns":1787579587444898000,"word_count":186},"frontend/application/lib/fonts.ts":{"size":683,"mtime_ns":1787579631802834900,"indexed_at_ns":1787581121643100200,"word_count":59},"frontend/application/components/BlogPostClient.tsx":{"size":18802,"mtime_ns":1787641161059331400,"indexed_at_ns":1787641302398480800,"word_count":1239},"backend/scripts/seo-backfill.ts":{"size":4515,"mtime_ns":1787641715588816600,"indexed_at_ns":1787641842923132900,"word_count":460},"frontend/application/app/b2b/page.tsx":{"size":1506,"mtime_ns":1787641596358280400,"indexed_at_ns":1787641848218111800,"word_count":135},"frontend/application/components/B2BLandingClient.tsx":{"size":25488,"mtime_ns":1787641590421628900,"indexed_at_ns":1787641848410015900,"word_count":1812},"frontend/application/lib/schema.ts":{"size":7336,"mtime_ns":1787641568219643300,"indexed_at_ns":1787641848726176000,"word_count":609}}
\ No newline at end of file
diff --git a/graphify-out/graph.html b/graphify-out/graph.html
index 30d25cb..4e03787 100644
--- a/graphify-out/graph.html
+++ b/graphify-out/graph.html
@@ -63,12 +63,12 @@