diff --git a/backend/src/main.ts b/backend/src/main.ts index 442ab23..5993e2b 100644 --- a/backend/src/main.ts +++ b/backend/src/main.ts @@ -101,10 +101,10 @@ async function bootstrap() { app.useGlobalInterceptors(new DecimalInterceptor()); - const isProduction = process.env.NODE_ENV === 'production'; + const isExplicitProduction = process.env.NODE_ENV === 'production'; const enableSwagger = process.env.ENABLE_SWAGGER === 'true'; - if (!isProduction || enableSwagger) { + if (!isExplicitProduction && enableSwagger !== false) { const config = new DocumentBuilder() .setTitle('Canina Iran API') .setDescription( diff --git a/frontend/admin-panel/package.json b/frontend/admin-panel/package.json index 42c58eb..f0f50bc 100644 --- a/frontend/admin-panel/package.json +++ b/frontend/admin-panel/package.json @@ -4,7 +4,7 @@ "version": "0.0.0", "type": "module", "scripts": { - "dev": "vite --port 5050 --host 127.0.0.1", + "dev": "vite --port 3100 --host 127.0.0.1", "build": "vite build", "lint": "eslint .", "preview": "vite preview" diff --git a/frontend/application/app/ClientLayout.tsx b/frontend/application/app/ClientLayout.tsx index 85ee5a9..fcc2a3d 100644 --- a/frontend/application/app/ClientLayout.tsx +++ b/frontend/application/app/ClientLayout.tsx @@ -57,27 +57,10 @@ export default function ClientLayout({ children }: { children: React.ReactNode } } }, [fetchProfile, fetchSettings]); - // Handle scroll position tracking per pathname for reliable mobile back navigation + // Scroll to top on navigation / pathname change useEffect(() => { if (typeof window === 'undefined') return; - - const key = `scroll_pos_${pathname}`; - const savedPos = sessionStorage.getItem(key); - if (savedPos !== null) { - const targetY = parseInt(savedPos, 10); - requestAnimationFrame(() => { - window.scrollTo({ top: targetY, behavior: 'instant' }); - }); - } - - const handleScroll = () => { - sessionStorage.setItem(`scroll_pos_${pathname}`, window.scrollY.toString()); - }; - - window.addEventListener('scroll', handleScroll, { passive: true }); - return () => { - window.removeEventListener('scroll', handleScroll); - }; + window.scrollTo({ top: 0, left: 0, behavior: 'instant' }); }, [pathname]); // Check Maintenance Mode (Admin / Partner bypass) diff --git a/frontend/application/components/Hero.tsx b/frontend/application/components/Hero.tsx index b926b67..a1d584e 100644 --- a/frontend/application/components/Hero.tsx +++ b/frontend/application/components/Hero.tsx @@ -7,6 +7,7 @@ import { toPersian } from "../lib/utils"; import { useSettingsStore } from "../lib/store/settingsStore"; import { useRouter } from 'next/navigation'; import { Banner } from "../lib/types"; +import { getMediaUrl } from "../lib/media"; function StatCounter({ target }: { target: number }) { const [displayValue, setDisplayValue] = useState(0); @@ -197,7 +198,7 @@ export default function Hero({ banners = [], onShopNavigate }: { banners?: Banne heroBanners.map((banner, idx) => ( 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 (336 total, 122 thin omitted) +## Communities (312 total, 91 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.05 -Nodes (43): AppModule, Module, B2BModule, Module, BannersModule, Module, CmsModule, Module (+35 more) +Cohesion: 0.07 +Nodes (35): B2BModule, Module, BannersModule, Module, BlogsModule, Module, CmsModule, Module (+27 more) ### Community 3 - "productService.ts" Cohesion: 0.06 @@ -380,8 +355,8 @@ Cohesion: 0.13 Nodes (15): ProductImageZoomModalProps, CalculatorState, GalleryMediaItem, ICON_MAP, isVideoUrl(), ProductImageZoomModal, ProductPage(), ProductReviews (+7 more) ### Community 5 - "CmsController" -Cohesion: 0.09 -Nodes (24): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+16 more) +Cohesion: 0.10 +Nodes (14): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 6 - "tickets.controller.ts" Cohesion: 0.09 @@ -391,17 +366,17 @@ Nodes (29): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, Cohesion: 0.12 Nodes (14): Button(), ButtonProps, ButtonSize, ButtonVariant, Spinner(), FAQ, BlogCommentItem, ProductReview (+6 more) -### Community 8 - "pets/pets.controller.ts" -Cohesion: 0.12 -Nodes (15): CreatePetDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional, IsString (+7 more) +### Community 8 - "WikiController" +Cohesion: 0.13 +Nodes (13): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+5 more) ### Community 9 - "devDependencies" -Cohesion: 0.22 -Nodes (9): devDependencies, eslint, @types/bcryptjs, @types/node, typescript, eslint, @types/node, typescript (+1 more) +Cohesion: 0.05 +Nodes (43): devDependencies, eslint, eslint-config-prettier, @eslint/eslintrc, @nestjs/schematics, @nestjs/testing, prisma, source-map-support (+35 more) -### Community 10 - "CreateReviewDto" -Cohesion: 0.07 -Nodes (30): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+22 more) +### Community 10 - "ReviewsService" +Cohesion: 0.12 +Nodes (17): ReviewsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+9 more) ### Community 11 - "MediaSelector.tsx" Cohesion: 0.06 @@ -412,8 +387,8 @@ Cohesion: 0.06 Nodes (24): backend, frontend, playwright.config.ts, @playwright/test, tests/**/*.ts, authFile, test, compilerOptions (+16 more) ### Community 13 - "app-audit-verification.e2e-spec.js" -Cohesion: 0.07 -Nodes (26): EnvironmentVariables, IsNotEmpty, IsOptional, IsString, validateEnv(), CustomHttpExceptionFilter, Catch, PrismaExceptionFilter (+18 more) +Cohesion: 0.06 +Nodes (28): AppModule, Module, EnvironmentVariables, IsNotEmpty, IsOptional, IsString, validateEnv(), CustomHttpExceptionFilter (+20 more) ### Community 14 - "userStore.ts" Cohesion: 0.11 @@ -432,7 +407,7 @@ Cohesion: 0.15 Nodes (18): B2BPage(), generateMetadata(), ContactPage(), generateMetadata(), generateMetadata(), getRelatedProducts(), getWikiTerm(), WikiTermPage() (+10 more) ### Community 18 - "JwtAuthGuard" -Cohesion: 0.17 +Cohesion: 0.19 Nodes (7): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload ### Community 19 - "ProductsService" @@ -440,16 +415,20 @@ Cohesion: 0.10 Nodes (19): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, ProductsController, ApiOperation, ApiTags (+11 more) ### Community 20 - "CreateVideoDto" -Cohesion: 0.09 -Nodes (24): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+16 more) +Cohesion: 0.07 +Nodes (32): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+24 more) ### Community 21 - "admin.module.ts" -Cohesion: 0.07 -Nodes (19): AdminModule, Module, MediaService, Injectable, ReportsController, ApiBearerAuth, ApiOperation, ApiQuery (+11 more) +Cohesion: 0.08 +Nodes (19): AdminModule, Module, PetQuery, PetsService, Injectable, ReportsController, ApiBearerAuth, ApiOperation (+11 more) + +### Community 22 - "RevalidationService" +Cohesion: 0.20 +Nodes (5): RevalidationModule, Global, Module, RevalidationService, Injectable ### Community 23 - "MenuService" -Cohesion: 0.12 -Nodes (16): MenuController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more) +Cohesion: 0.10 +Nodes (19): MenuController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+11 more) ### Community 24 - "BE-001" Cohesion: 0.06 @@ -484,24 +463,24 @@ 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 (24): App(), Props, RouteErrorBoundary, State, HeroBanner, VetTestimonial, BestSellerItem, CategoryDistItem (+16 more) +Cohesion: 0.08 +Nodes (17): App(), Props, RouteErrorBoundary, State, HeroBanner, VetTestimonial, AdminRouteConfig, CMS (+9 more) -### Community 33 - "WholesaleApplyDto" -Cohesion: 0.10 -Nodes (20): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+12 more) +### Community 33 - "WholesaleService" +Cohesion: 0.14 +Nodes (14): ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param, Post (+6 more) ### Community 34 - "B2BService" -Cohesion: 0.13 -Nodes (15): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+7 more) +Cohesion: 0.12 +Nodes (16): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+8 more) ### Community 35 - "AuthController" Cohesion: 0.25 Nodes (13): AuthController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+5 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 @@ -516,24 +495,24 @@ Cohesion: 0.10 Nodes (16): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more) ### Community 40 - "MediaController" -Cohesion: 0.07 -Nodes (23): MediaController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+15 more) +Cohesion: 0.11 +Nodes (16): MediaController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) ### Community 41 - "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 42 - "SslController" -Cohesion: 0.13 -Nodes (14): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Post (+6 more) +Cohesion: 0.11 +Nodes (15): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Post (+7 more) ### Community 43 - "BannersService" -Cohesion: 0.13 +Cohesion: 0.12 Nodes (15): BannersController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+7 more) ### Community 44 - "TestimonialsService" -Cohesion: 0.13 -Nodes (14): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) +Cohesion: 0.11 +Nodes (16): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) ### Community 45 - "What You Must Do When Invoked" Cohesion: 0.07 @@ -544,11 +523,11 @@ Cohesion: 0.27 Nodes (14): "coupons", "health_logs", "order_items", "orders", "pet_medical_conditions", "pets", "product_ingredients", "product_symptoms" (+6 more) ### Community 47 - "IngredientsService" -Cohesion: 0.13 +Cohesion: 0.12 Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 48 - "UsersController" -Cohesion: 0.21 +Cohesion: 0.19 Nodes (16): ApiBadRequestResponse, ApiBearerAuth, ApiCreatedResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+8 more) ### Community 49 - "devDependencies" @@ -556,20 +535,20 @@ Cohesion: 0.11 Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, globals, postcss, @types/node (+11 more) ### Community 50 - "devDependencies" -Cohesion: 0.13 -Nodes (15): eslint-config-next, devDependencies, eslint, eslint-config-next, jsdom, tailwindcss, @tailwindcss/postcss, @types/node (+7 more) +Cohesion: 0.12 +Nodes (17): devDependencies, eslint, jsdom, tailwindcss, @testing-library/jest-dom, @testing-library/react, @types/node, @types/react (+9 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 +Cohesion: 0.13 Nodes (14): PrescriptionsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more) ### Community 53 - "SmartAdvisorService" -Cohesion: 0.13 -Nodes (14): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) +Cohesion: 0.11 +Nodes (16): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) ### Community 54 - "Modal.tsx" Cohesion: 0.10 @@ -595,29 +574,29 @@ Nodes (12): 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 - "PaymentService" -Cohesion: 0.11 -Nodes (9): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type, PaymentService (+1 more) +### Community 60 - "payment.service.ts" +Cohesion: 0.20 +Nodes (8): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type, ClientMetadata ### Community 61 - "useCartStore" Cohesion: 0.08 Nodes (27): ArchiveProductCard(), CartDrawer(), DeleteConfirmModal(), DeleteConfirmModalProps, FeaturedProducts(), ProductCard(), Header(), OrderDetailsModal() (+19 more) ### Community 63 - "dependencies" -Cohesion: 0.09 -Nodes (23): dependencies, bcryptjs, class-validator, compression, ioredis, @nestjs/common, @nestjs/passport, @nestjs/platform-express (+15 more) +Cohesion: 0.05 +Nodes (43): dependencies, bcrypt, bcryptjs, class-transformer, class-validator, compression, helmet, ioredis (+35 more) ### Community 64 - "compilerOptions" Cohesion: 0.10 Nodes (20): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, lib, module, moduleDetection, moduleResolution, noEmit (+12 more) -### Community 66 - "ApiOperation" -Cohesion: 0.13 -Nodes (8): ApiOperation, ApiQuery, Get, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString +### Community 66 - "AdminQueryDto" +Cohesion: 0.18 +Nodes (7): ApiQuery, Get, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString ### Community 67 - "PetsController" -Cohesion: 0.10 -Nodes (14): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+6 more) +Cohesion: 0.14 +Nodes (11): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+3 more) ### Community 68 - "UserDashboard.tsx" Cohesion: 0.12 @@ -648,8 +627,12 @@ Cohesion: 0.13 Nodes (14): ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 75 - "PetsController" -Cohesion: 0.08 -Nodes (32): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, CreateReminderDto, ApiProperty (+24 more) +Cohesion: 0.05 +Nodes (47): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, CreatePetDto, ApiProperty (+39 more) + +### Community 76 - "AdminController" +Cohesion: 0.14 +Nodes (7): AdminController, ApiBearerAuth, ApiTags, Controller, Delete, Param, UseGuards ### Community 77 - "seo.module.ts" Cohesion: 0.16 @@ -692,8 +675,8 @@ Cohesion: 0.16 Nodes (9): GatewayHealthResult, IPaymentGateway, PaymentInquiryResult, PaymentRequestOptions, PaymentRequestResult, PaymentVerifyResult, ZibalInquiryResponse, ZibalRequestResponse (+1 more) ### Community 87 - "dependencies" -Cohesion: 0.12 -Nodes (17): dependencies, axios, lucide-react, motion, next, react, react-dom, sonner (+9 more) +Cohesion: 0.11 +Nodes (19): dependencies, axios, lucide-react, motion, next, nextjs-toploader, react, react-dom (+11 more) ### Community 88 - "CreateEBankCheckoutDto" Cohesion: 0.22 @@ -703,9 +686,9 @@ Nodes (8): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, Cohesion: 0.17 Nodes (12): prisma, main(), prisma, determineSuitableFor(), findOrCreateCategory(), getProductImageUrl(), main(), parseSize() (+4 more) -### Community 90 - "ApiBearerAuth" -Cohesion: 0.25 -Nodes (7): ApiBearerAuth, Body, Param, Patch, Post, Put, UseGuards +### Community 90 - "CreateReviewDto" +Cohesion: 0.13 +Nodes (13): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+5 more) ### Community 91 - "Reconciled Audit Roles & Assignments" Cohesion: 0.12 @@ -769,15 +752,15 @@ Nodes (11): 1. Detect Test Runner from Tech Stack, 2. Execution Output Capture ( ### Community 106 - "auth.service.ts" Cohesion: 0.10 -Nodes (17): AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, SendOtpDto, ApiProperty, IsNotEmpty (+9 more) +Nodes (8): AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, normalizeMobile(), RedisService, Injectable ### Community 107 - "PaginationDto" -Cohesion: 0.06 -Nodes (23): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional (+15 more) +Cohesion: 0.10 +Nodes (12): BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional, IsEnum, IsInt (+4 more) ### Community 108 - "PrismaService" -Cohesion: 0.06 -Nodes (27): ApiExcludeController, CategoryQuery, B2BWholesaleOrderItem, MetricsController, Controller, Get, Res, MeliPayamakPattern (+19 more) +Cohesion: 0.07 +Nodes (22): ApiExcludeController, CategoryQuery, WikiQuery, MetricsController, Controller, Get, Res, MeliPayamakPattern (+14 more) ### Community 109 - "1. Summary of Integrity Repairs Performed" Cohesion: 0.17 @@ -796,8 +779,8 @@ 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 - "SettingsController" -Cohesion: 0.20 -Nodes (8): SettingsController, ApiOkResponse, ApiOperation, ApiTags, Controller, Delete, Get, Query +Cohesion: 0.18 +Nodes (15): SettingsController, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller, Delete (+7 more) ### Community 114 - "AppService" Cohesion: 0.29 @@ -831,13 +814,13 @@ 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 - "AdminService" -Cohesion: 0.11 -Nodes (10): AdminController, ApiBearerAuth, ApiTags, Body, Controller, Post, Put, UseGuards (+2 more) +### Community 122 - "ApiOperation" +Cohesion: 0.17 +Nodes (3): ApiOperation, Body, Put -### Community 123 - "users.service.ts" -Cohesion: 0.13 -Nodes (14): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+6 more) +### Community 123 - "UsersService" +Cohesion: 0.14 +Nodes (9): ApiPropertyOptional, IsEmail, IsOptional, IsString, MinLength, UpdateProfileDto, Injectable, UserAddressInput (+1 more) ### Community 124 - "Repository Map" Cohesion: 0.20 @@ -855,9 +838,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 - "RedisService" -Cohesion: 0.15 -Nodes (5): RedisModule, Global, Module, RedisService, Injectable +### Community 128 - "AdminService" +Cohesion: 0.17 +Nodes (3): Post, AdminService, Injectable + +### Community 129 - "cms.controller.ts" +Cohesion: 0.37 +Nodes (10): CreateHeroBannerDto, CreateSmartAdvisorRuleDto, CreateVetTestimonialDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNumber, IsOptional (+2 more) ### Community 130 - "Sahel-Font" Cohesion: 0.20 @@ -932,7 +919,7 @@ Cohesion: 0.16 Nodes (10): HomeController, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, HomeModule, Module (+2 more) ### Community 148 - "admin.service.ts" -Cohesion: 0.17 +Cohesion: 0.19 Nodes (14): CouponInput, CouponTargetInput, PaginationQuery, CreateUserDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty (+6 more) ### Community 149 - "SmsSettingsPage.tsx" @@ -1040,13 +1027,17 @@ Cohesion: 0.60 Nodes (4): dynamic, GET(), getCandidateUrls(), HEAD() ### Community 177 - "auth.module.ts" -Cohesion: 0.17 +Cohesion: 0.15 Nodes (10): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable (+2 more) ### Community 178 - "نقشه جامع پوشش تست‌های سرتاسری (E2E Test Coverage Map) — پروژه Canina" Cohesion: 0.33 Nodes (5): نقشه جامع پوشش تست‌های سرتاسری (E2E Test Coverage Map) — پروژه Canina, ۱. معماری و نقش‌های کاربری (User Roles), ۲. ماتریس جریان‌ها و قابلیت‌های کاربرمحور (Feature & Flow Matrix), ۳. وضعیت پوشش نهایی سوئیت ۱۱گانه (Final 11 Test Suites Status), ۴. راهنمای نگهداری و افزودن فیچرهای جدید بدون شکستن تست‌ها (Developer Maintenance Guide) +### Community 179 - "Reports.tsx" +Cohesion: 0.20 +Nodes (7): BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps, ReportData, TopCouponItem, Reports + ### Community 180 - "API Contract Specification" Cohesion: 0.50 Nodes (3): 1. OpenAPI 3.0 (Swagger) Specification, 2. Endpoint Definitions & Data Types, API Contract Specification @@ -1063,9 +1054,9 @@ Nodes (3): Architectural Overview, Critical Review Findings & Required Enhanceme Cohesion: 0.50 Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO & Content Strategy Review (12_seo_content) -### Community 184 - "RegisterDto" -Cohesion: 0.22 -Nodes (8): RegisterDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsOptional, IsString, MinLength +### Community 184 - "auth.controller.ts" +Cohesion: 0.08 +Nodes (24): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+16 more) ### Community 185 - "SmsLogQueryDto" Cohesion: 0.25 @@ -1095,13 +1086,9 @@ Nodes (3): Expanding the ESLint configuration, React Compiler, React + TypeScrip Cohesion: 0.50 Nodes (3): Select, SelectOption, SelectProps -### Community 197 - "AdminLoginDto" +### Community 197 - "WholesaleApplyDto" Cohesion: 0.29 -Nodes (6): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength - -### Community 198 - "LoginDto" -Cohesion: 0.33 -Nodes (5): LoginDto, ApiProperty, IsNotEmpty, IsString, MinLength +Nodes (6): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto ### Community 199 - "videos/page.tsx" Cohesion: 0.47 @@ -1119,45 +1106,57 @@ Nodes (3): COMPOSE_DOCKER_CLI_BUILD, DOCKER_BUILDKIT, deploy.sh script Cohesion: 0.67 Nodes (3): ADR-AUTH-001: Admin Panel Authentication Architecture & Token Management, Master Task Backlog (Phase 3.3), Phase 3 Master Execution Plan +### Community 224 - "VerifyOtpDto" +Cohesion: 0.29 +Nodes (6): ApiProperty, IsNotEmpty, IsString, Matches, VerifyOtpDto, Length + ### Community 226 - "Shabnam Font README" Cohesion: 0.67 Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font +### Community 231 - "AddressDto" +Cohesion: 0.29 +Nodes (7): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString + +### Community 232 - "ZibalCallbackQueryDto" +Cohesion: 0.40 +Nodes (4): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto + +### 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) +Cohesion: 0.32 +Nodes (6): ApiBadRequestResponse, ApiOkResponse, Req, Res, Headers, Ip ### Community 317 - "revalidate/route.ts" Cohesion: 0.83 Nodes (3): GET(), handleRevalidate(), POST() -### Community 332 - "app.e2e-spec.js" -Cohesion: 0.50 -Nodes (3): app_module_1, supertest_1, testing_1 - ### Community 333 - "app/page.tsx" Cohesion: 0.67 Nodes (3): generateMetadata(), getHomeData(), Home() ## Knowledge Gaps -- **1343 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1338 more) +- **1344 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1339 more) These have ≤1 connection - possible missing edges or undocumented components. -- **122 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. +- **91 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`, `MediaController`, `PetsController`, `UsersController`, `HomeController`, `ProductsService`, `OrdersService`?** +- **Why does `ApiResponse` connect `src/services/api.ts` to `BlogsController`, `AuthController`, `WikiController`, `PetsController`, `UsersController`, `HomeController`, `ProductsService`, `OrdersService`?** _High betweenness centrality (0.080) - this node is a cross-community bridge._ -- **Why does `Roles()` connect `Roles` to `WholesaleApplyDto`, `B2BService`, `FaqService`, `CmsController`, `ApiBearerAuth`, `tickets.controller.ts`, `SslController`, `BannersService`, `CreateReviewDto`, `TestimonialsService`, `IngredientsService`, `SettingsController`, `JwtAuthGuard`, `ProductsService`, `PrescriptionsService`, `SmartAdvisorService`, `MenuService`, `ContactService`?** - _High betweenness centrality (0.063) - this node is a cross-community bridge._ -- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `PetsController`, `CmsController`, `tickets.controller.ts`, `pets/pets.controller.ts`, `auth.service.ts`, `PaginationDto`, `DoctorQueryDto`, `ProductsService`, `admin.service.ts`, `admin.module.ts`, `users.service.ts`, `OrdersService`?** +- **Why does `Roles()` connect `Roles` to `cms.controller.ts`, `B2BService`, `WholesaleService`, `FaqService`, `CmsController`, `tickets.controller.ts`, `SslController`, `BannersService`, `ReviewsService`, `TestimonialsService`, `IngredientsService`, `SettingsController`, `JwtAuthGuard`, `ProductsService`, `PrescriptionsService`, `SmartAdvisorService`, `MenuService`, `ContactService`?** + _High betweenness centrality (0.062) - this node is a cross-community bridge._ +- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `cms.controller.ts`, `PetsController`, `tickets.controller.ts`, `MediaController`, `PaginationDto`, `PetsController`, `DoctorQueryDto`, `ProductsService`, `admin.service.ts`, `admin.module.ts`, `CreateVideoDto`, `auth.controller.ts`, `UsersService`, `OrdersService`?** _High betweenness centrality (0.035) - this node is a cross-community bridge._ - **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?** - _1343 weakly-connected nodes found - possible documentation gaps or missing edges._ + _1344 weakly-connected nodes found - possible documentation gaps or missing edges._ - **Should `app.module.ts` be split into smaller, more focused modules?** - _Cohesion score 0.053613053613053616 - nodes in this community are weakly interconnected._ + _Cohesion score 0.07058823529411765 - nodes in this community are weakly interconnected._ - **Should `SettingsService` be split into smaller, more focused modules?** - _Cohesion score 0.09782608695652174 - nodes in this community are weakly interconnected._ + _Cohesion score 0.11231884057971014 - nodes in this community are weakly interconnected._ - **Should `productService.ts` be split into smaller, more focused modules?** _Cohesion score 0.06384180790960452 - nodes in this community are weakly interconnected._ \ No newline at end of file diff --git a/graphify-out/2026-08-29/graph.json b/graphify-out/2026-08-29/graph.json index 28597ef..89b6da9 100644 --- a/graphify-out/2026-08-29/graph.json +++ b/graphify-out/2026-08-29/graph.json @@ -16,19 +16,6 @@ "community_name": "Roles", "norm_label": "paymentcontroller" }, - { - "label": "AppModule", - "file_type": "code", - "source_file": "backend/src/app.module.ts", - "source_location": "L89", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_app_module_appmodule", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "appmodule" - }, { "label": "B2BModule", "file_type": "code", @@ -55,6 +42,19 @@ "community_name": "app.module.ts", "norm_label": "bannersmodule" }, + { + "label": "BlogsModule", + "file_type": "code", + "source_file": "backend/src/blogs/blogs.module.ts", + "source_location": "L9", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_blogs_blogs_module_blogsmodule", + "community": 1, + "community_name": "app.module.ts", + "norm_label": "blogsmodule" + }, { "label": "CmsModule", "file_type": "code", @@ -68,19 +68,6 @@ "community_name": "app.module.ts", "norm_label": "cmsmodule" }, - { - "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": 1, - "community_name": "app.module.ts", - "norm_label": "revalidationmodule" - }, { "label": "SmsModule", "file_type": "code", @@ -133,19 +120,6 @@ "community_name": "app.module.ts", "norm_label": "ingredientsmodule" }, - { - "label": "MenuModule", - "file_type": "code", - "source_file": "backend/src/menu/menu.module.ts", - "source_location": "L10", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_menu_menu_module_menumodule", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "menumodule" - }, { "label": "PaymentModule", "file_type": "code", @@ -211,32 +185,6 @@ "community_name": "app.module.ts", "norm_label": "settingsmodule" }, - { - "label": "SmartAdvisorModule", - "file_type": "code", - "source_file": "backend/src/smart-advisor/smart-advisor.module.ts", - "source_location": "L12", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_smart_advisor_smart_advisor_module_smartadvisormodule", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "smartadvisormodule" - }, - { - "label": "TestimonialsModule", - "file_type": "code", - "source_file": "backend/src/testimonials/testimonials.module.ts", - "source_location": "L12", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_testimonials_testimonials_module_testimonialsmodule", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "testimonialsmodule" - }, { "label": "TicketsModule", "file_type": "code", @@ -250,19 +198,6 @@ "community_name": "app.module.ts", "norm_label": "ticketsmodule" }, - { - "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", @@ -276,32 +211,6 @@ "community_name": "app.module.ts", "norm_label": "wholesalemodule" }, - { - "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": 10, - "community_name": "CreateReviewDto", - "norm_label": "createreviewdto" - }, - { - "label": "UpdateReviewDto", - "file_type": "code", - "source_file": "backend/src/reviews/dto/update-review.dto.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_updatereviewdto", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "updatereviewdto" - }, { "label": "ReviewsController", "file_type": "code", @@ -312,7 +221,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "reviewscontroller" }, { @@ -325,7 +234,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_reviewsservice", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "reviewsservice" }, { @@ -459,43 +368,17 @@ "norm_label": "registerinput" }, { - "label": "SendOtpDto", + "label": "RedisService", "file_type": "code", - "source_file": "backend/src/auth/dto/send-otp.dto.ts", - "source_location": "L4", + "source_file": "backend/src/redis/redis.service.ts", + "source_location": "L5", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_auth_dto_send_otp_dto_sendotpdto", + "id": "backend_src_redis_redis_service_redisservice", "community": 106, "community_name": "auth.service.ts", - "norm_label": "sendotpdto" - }, - { - "label": "VerifyOtpDto", - "file_type": "code", - "source_file": "backend/src/auth/dto/verify-otp.dto.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_auth_dto_verify_otp_dto_verifyotpdto", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "verifyotpdto" - }, - { - "label": "BlogsModule", - "file_type": "code", - "source_file": "backend/src/blogs/blogs.module.ts", - "source_location": "L9", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_blogs_blogs_module_blogsmodule", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "blogsmodule" + "norm_label": "redisservice" }, { "label": "BlogFilterDto", @@ -549,45 +432,6 @@ "community_name": "PaginationDto", "norm_label": "sortorder" }, - { - "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": 107, - "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": 107, - "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": 107, - "community_name": "PaginationDto", - "norm_label": "wikiservice" - }, { "label": "CategoryQuery", "file_type": "code", @@ -602,17 +446,17 @@ "norm_label": "categoryquery" }, { - "label": "B2BWholesaleOrderItem", + "label": "WikiQuery", "file_type": "code", - "source_file": "backend/src/b2b/b2b.service.ts", - "source_location": "L8", + "source_file": "backend/src/admin/wiki.service.ts", + "source_location": "L5", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_b2b_b2b_service_b2bwholesaleorderitem", + "id": "backend_src_admin_wiki_service_wikiquery", "community": 108, "community_name": "PrismaService", - "norm_label": "b2bwholesaleorderitem" + "norm_label": "wikiquery" }, { "label": "MetricsController", @@ -718,45 +562,6 @@ "community_name": "PrismaService", "norm_label": "updatecontactinfoitemdto" }, - { - "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": 108, - "community_name": "PrismaService", - "norm_label": "faqmodule" - }, - { - "label": "MenuType", - "file_type": "code", - "source_file": "backend/src/menu/menu.service.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_menu_menu_service_menutype", - "community": 108, - "community_name": "PrismaService", - "norm_label": "menutype" - }, - { - "label": "ClientMetadata", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L13", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_clientmetadata", - "community": 108, - "community_name": "PrismaService", - "norm_label": "clientmetadata" - }, { "label": "EBankCheckoutListFilter", "file_type": "code", @@ -835,19 +640,6 @@ "community_name": "PrismaService", "norm_label": "scientifictermdata" }, - { - "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", @@ -1225,45 +1017,6 @@ "community_name": "Blogs.tsx", "norm_label": "product" }, - { - "label": "AdminController", - "file_type": "code", - "source_file": "backend/src/admin/admin.controller.ts", - "source_location": "L29", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_admin_admin_controller_admincontroller", - "community": 122, - "community_name": "AdminService", - "norm_label": "admincontroller" - }, - { - "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": 122, - "community_name": "AdminService", - "norm_label": "adminservice" - }, - { - "label": "AddressDto", - "file_type": "code", - "source_file": "backend/src/users/dto/address.dto.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_addressdto", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "addressdto" - }, { "label": "UpdateProfileDto", "file_type": "code", @@ -1274,7 +1027,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto_updateprofiledto", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "updateprofiledto" }, { @@ -1287,35 +1040,9 @@ "_origin": "ast", "id": "backend_src_users_users_service_useraddressinput", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "useraddressinput" }, - { - "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": 128, - "community_name": "RedisService", - "norm_label": "redismodule" - }, - { - "label": "RedisService", - "file_type": "code", - "source_file": "backend/src/redis/redis.service.ts", - "source_location": "L5", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_redis_redis_service_redisservice", - "community": 128, - "community_name": "RedisService", - "norm_label": "redisservice" - }, { "label": "UsersService", "file_type": "code", @@ -1325,10 +1052,75 @@ "_callable_class": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": "usersservice" }, + { + "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": 128, + "community_name": "AdminService", + "norm_label": "adminservice" + }, + { + "label": "CreateHeroBannerDto", + "file_type": "code", + "source_file": "backend/src/cms/dto/cms.dto.ts", + "source_location": "L10", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_createherobannerdto", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "createherobannerdto" + }, + { + "label": "CreateSmartAdvisorRuleDto", + "file_type": "code", + "source_file": "backend/src/cms/dto/cms.dto.ts", + "source_location": "L80", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_createsmartadvisorruledto", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "createsmartadvisorruledto" + }, + { + "label": "CreateVetTestimonialDto", + "file_type": "code", + "source_file": "backend/src/cms/dto/cms.dto.ts", + "source_location": "L45", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_createvettestimonialdto", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "createvettestimonialdto" + }, + { + "label": "AppModule", + "file_type": "code", + "source_file": "backend/src/app.module.ts", + "source_location": "L89", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_app_module_appmodule", + "community": 13, + "community_name": "app-audit-verification.e2e-spec.js", + "norm_label": "appmodule" + }, { "label": "EnvironmentVariables", "file_type": "code", @@ -2421,6 +2213,71 @@ "community_name": "auth.module.ts", "norm_label": "usersmodule" }, + { + "label": "BestSellerItem", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L54", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_bestselleritem", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "bestselleritem" + }, + { + "label": "CategoryDistItem", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L49", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_categorydistitem", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "categorydistitem" + }, + { + "label": "CustomTooltipProps", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L26", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_customtooltipprops", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "customtooltipprops" + }, + { + "label": "ReportData", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L65", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_reportdata", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "reportdata" + }, + { + "label": "TopCouponItem", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L59", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_topcouponitem", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "topcouponitem" + }, { "label": "JwtAuthGuard", "file_type": "code", @@ -2473,6 +2330,32 @@ "community_name": "JwtAuthGuard", "norm_label": "userreqpayload" }, + { + "label": "AdminLoginDto", + "file_type": "code", + "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_admin_login_dto_adminlogindto", + "community": 184, + "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": 184, + "community_name": "auth.controller.ts", + "norm_label": "logindto" + }, { "label": "RegisterDto", "file_type": "code", @@ -2483,9 +2366,22 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_registerdto", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "registerdto" }, + { + "label": "SendOtpDto", + "file_type": "code", + "source_file": "backend/src/auth/dto/send-otp.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_auth_dto_send_otp_dto_sendotpdto", + "community": 184, + "community_name": "auth.controller.ts", + "norm_label": "sendotpdto" + }, { "label": "SmsLogQueryDto", "file_type": "code", @@ -2656,30 +2552,30 @@ "norm_label": "selectprops" }, { - "label": "AdminLoginDto", + "label": "WholesaleApplyDto", "file_type": "code", - "source_file": "backend/src/auth/dto/admin-login.dto.ts", + "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts", "source_location": "L4", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto_adminlogindto", + "id": "backend_src_wholesale_dto_wholesale_apply_dto_wholesaleapplydto", "community": 197, - "community_name": "AdminLoginDto", - "norm_label": "adminlogindto" + "community_name": "WholesaleApplyDto", + "norm_label": "wholesaleapplydto" }, { - "label": "LoginDto", + "label": "WikiService", "file_type": "code", - "source_file": "backend/src/auth/dto/login.dto.ts", - "source_location": "L4", + "source_file": "backend/src/admin/wiki.service.ts", + "source_location": "L12", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_auth_dto_login_dto_logindto", + "id": "backend_src_admin_wiki_service_wikiservice", "community": 198, - "community_name": "LoginDto", - "norm_label": "logindto" + "community_name": "WikiService", + "norm_label": "wikiservice" }, { "label": "SettingsService", @@ -2720,6 +2616,19 @@ "community_name": "CreateVideoDto", "norm_label": "updatevideodto" }, + { + "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": 20, + "community_name": "CreateVideoDto", + "norm_label": "getvideosquerydto" + }, { "label": "VideosController", "file_type": "code", @@ -2733,6 +2642,32 @@ "community_name": "CreateVideoDto", "norm_label": "videoscontroller" }, + { + "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": 20, + "community_name": "CreateVideoDto", + "norm_label": "videosmodule" + }, + { + "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": 20, + "community_name": "CreateVideoDto", + "norm_label": "videoquery" + }, { "label": "VideosService", "file_type": "code", @@ -2773,17 +2708,30 @@ "norm_label": "adminmodule" }, { - "label": "MediaService", + "label": "PetQuery", "file_type": "code", - "source_file": "backend/src/admin/media.service.ts", - "source_location": "L7", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L5", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_admin_media_service_mediaservice", + "id": "backend_src_admin_pets_service_petquery", "community": 21, "community_name": "admin.module.ts", - "norm_label": "mediaservice" + "norm_label": "petquery" + }, + { + "label": "PetsService", + "file_type": "code", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L12", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_admin_pets_service_petsservice", + "community": 21, + "community_name": "admin.module.ts", + "norm_label": "petsservice" }, { "label": "ReportsController", @@ -2812,43 +2760,17 @@ "norm_label": "reportsservice" }, { - "label": "SslCertInfo", + "label": "RedisModule", "file_type": "code", - "source_file": "backend/src/admin/ssl.service.ts", - "source_location": "L7", + "source_file": "backend/src/redis/redis.module.ts", + "source_location": "L9", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_admin_ssl_service_sslcertinfo", + "id": "backend_src_redis_redis_module_redismodule", "community": 21, "community_name": "admin.module.ts", - "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": 21, - "community_name": "admin.module.ts", - "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": 21, - "community_name": "admin.module.ts", - "norm_label": "wikiservice" + "norm_label": "redismodule" }, { "label": "FormFieldProps", @@ -2863,6 +2785,19 @@ "community_name": "FormField.tsx", "norm_label": "formfieldprops" }, + { + "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": 22, + "community_name": "RevalidationService", + "norm_label": "revalidationmodule" + }, { "label": "RevalidationService", "file_type": "code", @@ -2902,6 +2837,19 @@ "community_name": "Textarea.tsx", "norm_label": "textareaprops" }, + { + "label": "VerifyOtpDto", + "file_type": "code", + "source_file": "backend/src/auth/dto/verify-otp.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_auth_dto_verify_otp_dto_verifyotpdto", + "community": 224, + "community_name": "VerifyOtpDto", + "norm_label": "verifyotpdto" + }, { "label": "MenuController", "file_type": "code", @@ -2915,6 +2863,19 @@ "community_name": "MenuService", "norm_label": "menucontroller" }, + { + "label": "MenuModule", + "file_type": "code", + "source_file": "backend/src/menu/menu.module.ts", + "source_location": "L10", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_menu_menu_module_menumodule", + "community": 23, + "community_name": "MenuService", + "norm_label": "menumodule" + }, { "label": "MenuService", "file_type": "code", @@ -2928,6 +2889,45 @@ "community_name": "MenuService", "norm_label": "menuservice" }, + { + "label": "MenuType", + "file_type": "code", + "source_file": "backend/src/menu/menu.service.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_menu_menu_service_menutype", + "community": 23, + "community_name": "MenuService", + "norm_label": "menutype" + }, + { + "label": "AddressDto", + "file_type": "code", + "source_file": "backend/src/users/dto/address.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_users_dto_address_dto_addressdto", + "community": 231, + "community_name": "AddressDto", + "norm_label": "addressdto" + }, + { + "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": 232, + "community_name": "ZibalCallbackQueryDto", + "norm_label": "zibalcallbackquerydto" + }, { "label": "Blog", "file_type": "code", @@ -2980,6 +2980,19 @@ "community_name": "vitest.setup.ts", "norm_label": "mockintersectionobserver" }, + { + "label": "PaymentService", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L19", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice", + "community": 294, + "community_name": "ZibalService", + "norm_label": "paymentservice" + }, { "label": "ZibalService", "file_type": "code", @@ -3006,19 +3019,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": ".initiateOrderPayment", - "norm_label": "zibalcallbackquerydto" - }, { "label": "BlogCategory", "file_type": "code", @@ -3292,71 +3292,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "vettestimonial" }, - { - "label": "BestSellerItem", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L54", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_bestselleritem", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "bestselleritem" - }, - { - "label": "CategoryDistItem", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L49", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_categorydistitem", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "categorydistitem" - }, - { - "label": "CustomTooltipProps", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L26", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_customtooltipprops", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "customtooltipprops" - }, - { - "label": "ReportData", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L65", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_reportdata", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "reportdata" - }, - { - "label": "TopCouponItem", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L59", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_topcouponitem", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "topcouponitem" - }, { "label": "AdminRouteConfig", "file_type": "code", @@ -3370,19 +3305,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "adminrouteconfig" }, - { - "label": "WholesaleApplyDto", - "file_type": "code", - "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_wholesaleapplydto", - "community": 33, - "community_name": "WholesaleApplyDto", - "norm_label": "wholesaleapplydto" - }, { "label": "WholesaleController", "file_type": "code", @@ -3393,7 +3315,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "wholesalecontroller" }, { @@ -3406,7 +3328,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "wholesaleservice" }, { @@ -3435,6 +3357,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", @@ -3461,6 +3396,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", @@ -3748,17 +3696,17 @@ "norm_label": "mediacontroller" }, { - "label": "WikiController", + "label": "MediaService", "file_type": "code", - "source_file": "backend/src/wiki/wiki.controller.ts", - "source_location": "L18", + "source_file": "backend/src/admin/media.service.ts", + "source_location": "L7", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_wikicontroller", + "id": "backend_src_admin_media_service_mediaservice", "community": 40, "community_name": "MediaController", - "norm_label": "wikicontroller" + "norm_label": "mediaservice" }, { "label": "SslController", @@ -3773,6 +3721,19 @@ "community_name": "SslController", "norm_label": "sslcontroller" }, + { + "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": 42, + "community_name": "SslController", + "norm_label": "sslcertinfo" + }, { "label": "SslService", "file_type": "code", @@ -3825,6 +3786,19 @@ "community_name": "TestimonialsService", "norm_label": "testimonialscontroller" }, + { + "label": "TestimonialsModule", + "file_type": "code", + "source_file": "backend/src/testimonials/testimonials.module.ts", + "source_location": "L12", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_testimonials_testimonials_module_testimonialsmodule", + "community": 44, + "community_name": "TestimonialsService", + "norm_label": "testimonialsmodule" + }, { "label": "TestimonialsService", "file_type": "code", @@ -3903,45 +3877,6 @@ "community_name": "CmsController", "norm_label": "cmsservice" }, - { - "label": "CreateHeroBannerDto", - "file_type": "code", - "source_file": "backend/src/cms/dto/cms.dto.ts", - "source_location": "L10", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_createherobannerdto", - "community": 5, - "community_name": "CmsController", - "norm_label": "createherobannerdto" - }, - { - "label": "CreateSmartAdvisorRuleDto", - "file_type": "code", - "source_file": "backend/src/cms/dto/cms.dto.ts", - "source_location": "L80", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_createsmartadvisorruledto", - "community": 5, - "community_name": "CmsController", - "norm_label": "createsmartadvisorruledto" - }, - { - "label": "CreateVetTestimonialDto", - "file_type": "code", - "source_file": "backend/src/cms/dto/cms.dto.ts", - "source_location": "L45", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_createvettestimonialdto", - "community": 5, - "community_name": "CmsController", - "norm_label": "createvettestimonialdto" - }, { "label": "BlogsController", "file_type": "code", @@ -3994,6 +3929,19 @@ "community_name": "SmartAdvisorService", "norm_label": "smartadvisorcontroller" }, + { + "label": "SmartAdvisorModule", + "file_type": "code", + "source_file": "backend/src/smart-advisor/smart-advisor.module.ts", + "source_location": "L12", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_smart_advisor_smart_advisor_module_smartadvisormodule", + "community": 53, + "community_name": "SmartAdvisorService", + "norm_label": "smartadvisormodule" + }, { "label": "SmartAdvisorService", "file_type": "code", @@ -4368,21 +4316,21 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_admintransactionfilterdto", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "admintransactionfilterdto" }, { - "label": "PaymentService", + "label": "ClientMetadata", "file_type": "code", "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L19", + "source_location": "L13", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice", + "id": "backend_src_payment_payment_service_clientmetadata", "community": 60, - "community_name": "PaymentService", - "norm_label": "paymentservice" + "community_name": "payment.service.ts", + "norm_label": "clientmetadata" }, { "label": "DeleteConfirmModalProps", @@ -4550,7 +4498,7 @@ "_origin": "ast", "id": "backend_src_admin_dto_admin_query_dto_adminquerydto", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "adminquerydto" }, { @@ -4566,32 +4514,6 @@ "community_name": "PetsController", "norm_label": "petscontroller" }, - { - "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": "PetsController", - "norm_label": "petquery" - }, - { - "label": "PetsService", - "file_type": "code", - "source_file": "backend/src/admin/pets.service.ts", - "source_location": "L12", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_admin_pets_service_petsservice", - "community": 67, - "community_name": "PetsController", - "norm_label": "petsservice" - }, { "label": "AddressFormData", "file_type": "code", @@ -4878,6 +4800,19 @@ "community_name": "PetsController", "norm_label": "createhealthlogdto" }, + { + "label": "CreatePetDto", + "file_type": "code", + "source_file": "backend/src/pets/dto/create-pet.dto.ts", + "source_location": "L10", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_createpetdto", + "community": 75, + "community_name": "PetsController", + "norm_label": "createpetdto" + }, { "label": "CreateReminderDto", "file_type": "code", @@ -4891,6 +4826,19 @@ "community_name": "PetsController", "norm_label": "createreminderdto" }, + { + "label": "UpdatePetDto", + "file_type": "code", + "source_file": "backend/src/pets/dto/update-pet.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_pets_dto_update_pet_dto_updatepetdto", + "community": 75, + "community_name": "PetsController", + "norm_label": "updatepetdto" + }, { "label": "PetsController", "file_type": "code", @@ -4904,6 +4852,71 @@ "community_name": "PetsController", "norm_label": "petscontroller" }, + { + "label": "PetsModule", + "file_type": "code", + "source_file": "backend/src/pets/pets.module.ts", + "source_location": "L9", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_pets_pets_module_petsmodule", + "community": 75, + "community_name": "PetsController", + "norm_label": "petsmodule" + }, + { + "label": "HealthLogInput", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L15", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_healthloginput", + "community": 75, + "community_name": "PetsController", + "norm_label": "healthloginput" + }, + { + "label": "PetsService", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L23", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice", + "community": 75, + "community_name": "PetsController", + "norm_label": "petsservice" + }, + { + "label": "ReminderInput", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L8", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_reminderinput", + "community": 75, + "community_name": "PetsController", + "norm_label": "reminderinput" + }, + { + "label": "AdminController", + "file_type": "code", + "source_file": "backend/src/admin/admin.controller.ts", + "source_location": "L29", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_admin_admin_controller_admincontroller", + "community": 76, + "community_name": "AdminController", + "norm_label": "admincontroller" + }, { "label": "SeoController", "file_type": "code", @@ -4944,82 +4957,43 @@ "norm_label": "seoservice" }, { - "label": "CreatePetDto", + "label": "WikiController", "file_type": "code", - "source_file": "backend/src/pets/dto/create-pet.dto.ts", - "source_location": "L10", + "source_file": "backend/src/wiki/wiki.controller.ts", + "source_location": "L18", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_createpetdto", + "id": "backend_src_wiki_wiki_controller_wikicontroller", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "createpetdto" + "community_name": "WikiController", + "norm_label": "wikicontroller" }, { - "label": "UpdatePetDto", + "label": "WikiModule", "file_type": "code", - "source_file": "backend/src/pets/dto/update-pet.dto.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_pets_dto_update_pet_dto_updatepetdto", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "updatepetdto" - }, - { - "label": "PetsModule", - "file_type": "code", - "source_file": "backend/src/pets/pets.module.ts", + "source_file": "backend/src/wiki/wiki.module.ts", "source_location": "L9", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_pets_pets_module_petsmodule", + "id": "backend_src_wiki_wiki_module_wikimodule", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "petsmodule" + "community_name": "WikiController", + "norm_label": "wikimodule" }, { - "label": "HealthLogInput", + "label": "WikiService", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L15", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L7", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_pets_pets_service_healthloginput", + "id": "backend_src_wiki_wiki_service_wikiservice", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "healthloginput" - }, - { - "label": "PetsService", - "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L23", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "petsservice" - }, - { - "label": "ReminderInput", - "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L8", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_pets_pets_service_reminderinput", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "reminderinput" + "community_name": "WikiController", + "norm_label": "wikiservice" }, { "label": "BrandLogoProps", @@ -5242,6 +5216,32 @@ "community_name": "CreateEBankCheckoutDto", "norm_label": "createebankcheckoutdto" }, + { + "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": 90, + "community_name": "CreateReviewDto", + "norm_label": "createreviewdto" + }, + { + "label": "UpdateReviewDto", + "file_type": "code", + "source_file": "backend/src/reviews/dto/update-review.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_reviews_dto_update_review_dto_updatereviewdto", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "updatereviewdto" + }, { "label": "CreateOrderDto", "file_type": "code", @@ -5838,30 +5838,6 @@ "community_name": "Roles", "norm_label": ".reconcilepending()" }, - { - "label": "generateOpenApi()", - "file_type": "code", - "source_file": "backend/scripts/generate-openapi.ts", - "source_location": "L9", - "_callable": true, - "_origin": "ast", - "id": "backend_scripts_generate_openapi_ts_backend_scripts_generate_openapi_generateopenapi", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "generateopenapi()" - }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/app.module.ts", - "source_location": "L90", - "_callable": true, - "_origin": "ast", - "id": "backend_src_app_module_appmodule_constructor", - "community": 1, - "community_name": "app.module.ts", - "norm_label": ".constructor()" - }, { "label": ".constructor()", "file_type": "code", @@ -5871,7 +5847,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller_constructor", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".constructor()" }, { @@ -5883,7 +5859,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller_createreview", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".createreview()" }, { @@ -5895,7 +5871,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller_deletereview", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".deletereview()" }, { @@ -5907,7 +5883,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller_getadminreviews", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".getadminreviews()" }, { @@ -5919,7 +5895,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller_getproductreviews", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".getproductreviews()" }, { @@ -5931,7 +5907,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_reviewscontroller_updatereviewstatus", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".updatereviewstatus()" }, { @@ -5943,7 +5919,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_reviewsservice_constructor", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".constructor()" }, { @@ -5955,7 +5931,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_reviewsservice_createreview", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".createreview()" }, { @@ -5967,7 +5943,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_reviewsservice_deletereview", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".deletereview()" }, { @@ -5979,7 +5955,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_reviewsservice_getadminreviews", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".getadminreviews()" }, { @@ -5991,21 +5967,9 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_reviewsservice_getproductreviews", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": ".getproductreviews()" }, - { - "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": 10, - "community_name": "CreateReviewDto", - "norm_label": ".updatereviewstatus()" - }, { "label": "formatPriceWithCommas()", "file_type": "code", @@ -6078,6 +6042,30 @@ "community_name": "Coupons.tsx", "norm_label": "financialsettingspage()" }, + { + "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": 106, + "community_name": "auth.service.ts", + "norm_label": ".configure()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/auth/auth.controller.ts", + "source_location": "L43", + "_callable": true, + "_origin": "ast", + "id": "backend_src_auth_auth_controller_authcontroller_constructor", + "community": 106, + "community_name": "auth.service.ts", + "norm_label": ".constructor()" + }, { "label": ".adminLogin()", "file_type": "code", @@ -6162,6 +6150,18 @@ "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": 106, + "community_name": "auth.service.ts", + "norm_label": ".incrementrequestcount()" + }, { "label": "normalizeMobile()", "file_type": "code", @@ -6186,6 +6186,54 @@ "community_name": "auth.service.ts", "norm_label": ".del()" }, + { + "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": 106, + "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": 106, + "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": 106, + "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": 106, + "community_name": "auth.service.ts", + "norm_label": ".set()" + }, { "label": ".ttl()", "file_type": "code", @@ -6306,18 +6354,6 @@ "community_name": "PaginationDto", "norm_label": ".incrementview()" }, - { - "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": 107, - "community_name": "PaginationDto", - "norm_label": ".findalladmin()" - }, { "label": ".findAllByUser()", "file_type": "code", @@ -6330,42 +6366,6 @@ "community_name": "PaginationDto", "norm_label": ".findallbyuser()" }, - { - "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": 107, - "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": 107, - "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": 107, - "community_name": "PaginationDto", - "norm_label": ".findonebykey()" - }, { "label": ".constructor()", "file_type": "code", @@ -6390,6 +6390,42 @@ "community_name": "PrismaService", "norm_label": ".getmetrics()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L54", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_constructor", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".constructor()" + }, + { + "label": ".getSmsLogs()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L191", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_getsmslogs", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".getsmslogs()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L47", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_constructor", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".constructor()" + }, { "label": ".ensureTablesExist()", "file_type": "code", @@ -6426,6 +6462,18 @@ "community_name": "PrismaService", "norm_label": ".onmoduleinit()" }, + { + "label": ".getSmsLogs()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L616", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_getsmslogs", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".getsmslogs()" + }, { "label": "ConfirmModal()", "file_type": "code", @@ -6618,6 +6666,18 @@ "community_name": "MediaSelector.tsx", "norm_label": "wiki()" }, + { + "label": ".addPattern()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L238", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_addpattern", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".addpattern()" + }, { "label": ".clearAllSmsLogs()", "file_type": "code", @@ -6654,6 +6714,18 @@ "community_name": "SettingsController", "norm_label": ".deletesmslog()" }, + { + "label": ".editPattern()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L253", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_editpattern", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".editpattern()" + }, { "label": ".getFinancial()", "file_type": "code", @@ -6775,16 +6847,124 @@ "norm_label": ".getuitexts()" }, { - "label": ".getCategorySetting()", + "label": ".patchUiText()", "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L403", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L65", "_callable": true, "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_getcategorysetting", + "id": "backend_src_settings_settings_controller_settingscontroller_patchuitext", "community": 113, "community_name": "SettingsController", - "norm_label": ".getcategorysetting()" + "norm_label": ".patchuitext()" + }, + { + "label": ".putBulkUiTexts()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L80", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_putbulkuitexts", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".putbulkuitexts()" + }, + { + "label": ".putUiText()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L48", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_putuitext", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".putuitext()" + }, + { + "label": ".testSms()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L214", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_testsms", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".testsms()" + }, + { + "label": ".updateFinancial()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L96", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_updatefinancial", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".updatefinancial()" + }, + { + "label": ".updateFinancialSettings()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L158", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_updatefinancialsettings", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".updatefinancialsettings()" + }, + { + "label": ".updateSeoSettings()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L139", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_updateseosettings", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".updateseosettings()" + }, + { + "label": ".updateSmsSettings()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L205", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_updatesmssettings", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".updatesmssettings()" + }, + { + "label": ".updateSystemSettings()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L177", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_updatesystemsettings", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".updatesystemsettings()" + }, + { + "label": ".upsertScientificTerm()", + "file_type": "code", + "source_file": "backend/src/settings/settings.controller.ts", + "source_location": "L111", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_controller_settingscontroller_upsertscientificterm", + "community": 113, + "community_name": "SettingsController", + "norm_label": ".upsertscientificterm()" }, { "label": ".constructor()", @@ -6870,42 +7050,6 @@ "community_name": "index.ts", "norm_label": "parsepersianprice()" }, - { - "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": 122, - "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": 122, - "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": 122, - "community_name": "AdminService", - "norm_label": ".createcoupon()" - }, { "label": ".createDoctor()", "file_type": "code", @@ -6915,32 +7059,20 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_createdoctor", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".createdoctor()" }, { - "label": ".getSettings()", + "label": ".getDoctors()", "file_type": "code", "source_file": "backend/src/admin/admin.controller.ts", - "source_location": "L287", + "source_location": "L240", "_callable": true, "_origin": "ast", - "id": "backend_src_admin_admin_controller_admincontroller_getsettings", + "id": "backend_src_admin_admin_controller_admincontroller_getdoctors", "community": 122, - "community_name": "AdminService", - "norm_label": ".getsettings()" - }, - { - "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": 122, - "community_name": "AdminService", - "norm_label": ".refundordertowallet()" + "community_name": "ApiOperation", + "norm_label": ".getdoctors()" }, { "label": ".toggleCoupon()", @@ -6951,7 +7083,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_togglecoupon", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".togglecoupon()" }, { @@ -6963,7 +7095,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_updatecoupon", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updatecoupon()" }, { @@ -6975,7 +7107,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_updatedoctor", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updatedoctor()" }, { @@ -6987,7 +7119,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_updateorderstatus", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updateorderstatus()" }, { @@ -6999,7 +7131,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_updatesettings", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updatesettings()" }, { @@ -7011,7 +7143,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_updateuser", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updateuser()" }, { @@ -7023,33 +7155,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_updateuserrole", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updateuserrole()" }, - { - "label": ".adjustUserWallet()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L997", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_adjustuserwallet", - "community": 122, - "community_name": "AdminService", - "norm_label": ".adjustuserwallet()" - }, - { - "label": ".createCoupon()", - "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_createcoupon", - "community": 122, - "community_name": "AdminService", - "norm_label": ".createcoupon()" - }, { "label": ".createDoctor()", "file_type": "code", @@ -7059,44 +7167,20 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_createdoctor", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".createdoctor()" }, { - "label": ".getPets()", + "label": ".getDoctors()", "file_type": "code", "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L914", + "source_location": "L964", "_callable": true, "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_getpets", + "id": "backend_src_admin_admin_service_adminservice_getdoctors", "community": 122, - "community_name": "AdminService", - "norm_label": ".getpets()" - }, - { - "label": ".getSettings()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L869", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_getsettings", - "community": 122, - "community_name": "AdminService", - "norm_label": ".getsettings()" - }, - { - "label": ".refundOrderToWallet()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L700", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_refundordertowallet", - "community": 122, - "community_name": "AdminService", - "norm_label": ".refundordertowallet()" + "community_name": "ApiOperation", + "norm_label": ".getdoctors()" }, { "label": ".toggleCoupon()", @@ -7107,7 +7191,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_togglecoupon", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".togglecoupon()" }, { @@ -7119,7 +7203,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_updatecoupon", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updatecoupon()" }, { @@ -7131,7 +7215,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_updatedoctor", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updatedoctor()" }, { @@ -7143,21 +7227,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_updateorderstatus", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updateorderstatus()" }, - { - "label": ".updateSettings()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L877", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_updatesettings", - "community": 122, - "community_name": "AdminService", - "norm_label": ".updatesettings()" - }, { "label": ".updateUser()", "file_type": "code", @@ -7167,7 +7239,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_updateuser", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updateuser()" }, { @@ -7179,129 +7251,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_updateuserrole", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": ".updateuserrole()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L52", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_constructor", - "community": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "norm_label": ".configure()" - }, - { - "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": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "norm_label": ".set()" - }, - { - "label": ".validate()", - "file_type": "code", - "source_file": "backend/src/auth/jwt.strategy.ts", - "source_location": "L24", - "_callable": true, - "_origin": "ast", - "id": "backend_src_auth_jwt_strategy_jwtstrategy_validate", - "community": 129, - "community_name": "UsersService", - "norm_label": ".validate()" - }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/users/users.controller.ts", - "source_location": "L44", - "_callable": true, - "_origin": "ast", - "id": "backend_src_users_users_controller_userscontroller_constructor", - "community": 129, - "community_name": "UsersService", - "norm_label": ".constructor()" - }, - { - "label": ".addAddress()", - "file_type": "code", - "source_file": "backend/src/users/users.service.ts", - "source_location": "L210", - "_callable": true, - "_origin": "ast", - "id": "backend_src_users_users_service_usersservice_addaddress", - "community": 129, - "community_name": "UsersService", - "norm_label": ".addaddress()" - }, { "label": ".constructor()", "file_type": "code", @@ -7310,7 +7262,7 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_constructor", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".constructor()" }, @@ -7322,22 +7274,10 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_deleteaddress", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".deleteaddress()" }, - { - "label": ".findById()", - "file_type": "code", - "source_file": "backend/src/users/users.service.ts", - "source_location": "L27", - "_callable": true, - "_origin": "ast", - "id": "backend_src_users_users_service_usersservice_findbyid", - "community": 129, - "community_name": "UsersService", - "norm_label": ".findbyid()" - }, { "label": ".findByPhone()", "file_type": "code", @@ -7346,7 +7286,7 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_findbyphone", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".findbyphone()" }, @@ -7358,7 +7298,7 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_setdefaultaddress", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".setdefaultaddress()" }, @@ -7370,7 +7310,7 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_topupwallet", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".topupwallet()" }, @@ -7382,7 +7322,7 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_update", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".update()" }, @@ -7394,10 +7334,178 @@ "_callable": true, "_origin": "ast", "id": "backend_src_users_users_service_usersservice_updateaddress", - "community": 129, + "community": 123, "community_name": "UsersService", "norm_label": ".updateaddress()" }, + { + "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": ".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": ".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": ".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": ".adjustUserWallet()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L997", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_adjustuserwallet", + "community": 128, + "community_name": "AdminService", + "norm_label": ".adjustuserwallet()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L52", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_constructor", + "community": 128, + "community_name": "AdminService", + "norm_label": ".constructor()" + }, + { + "label": ".createCoupon()", + "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_createcoupon", + "community": 128, + "community_name": "AdminService", + "norm_label": ".createcoupon()" + }, + { + "label": ".createUser()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L204", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_createuser", + "community": 128, + "community_name": "AdminService", + "norm_label": ".createuser()" + }, + { + "label": ".getPets()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L914", + "_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": "L869", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_getsettings", + "community": 128, + "community_name": "AdminService", + "norm_label": ".getsettings()" + }, + { + "label": ".refundOrderToWallet()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L700", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_refundordertowallet", + "community": 128, + "community_name": "AdminService", + "norm_label": ".refundordertowallet()" + }, + { + "label": ".updateSettings()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L877", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_updatesettings", + "community": 128, + "community_name": "AdminService", + "norm_label": ".updatesettings()" + }, + { + "label": "generateOpenApi()", + "file_type": "code", + "source_file": "backend/scripts/generate-openapi.ts", + "source_location": "L9", + "_callable": true, + "_origin": "ast", + "id": "backend_scripts_generate_openapi_ts_backend_scripts_generate_openapi_generateopenapi", + "community": 13, + "community_name": "app-audit-verification.e2e-spec.js", + "norm_label": "generateopenapi()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/app.module.ts", + "source_location": "L90", + "_callable": true, + "_origin": "ast", + "id": "backend_src_app_module_appmodule_constructor", + "community": 13, + "community_name": "app-audit-verification.e2e-spec.js", + "norm_label": ".constructor()" + }, { "label": "validateEnv()", "file_type": "code", @@ -7654,7 +7762,7 @@ "label": "generateMetadata()", "file_type": "code", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L7", + "source_location": "L8", "_callable": true, "_origin": "ast", "id": "frontend_application_app_layout_generatemetadata", @@ -7666,7 +7774,7 @@ "label": "RootLayout()", "file_type": "code", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L100", + "source_location": "L101", "_callable": true, "_origin": "ast", "id": "frontend_application_app_layout_rootlayout", @@ -8106,30 +8214,6 @@ "community_name": "HomeController", "norm_label": ".gethomedata()" }, - { - "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": 148, - "community_name": "admin.service.ts", - "norm_label": ".createuser()" - }, - { - "label": ".createUser()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L204", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_createuser", - "community": 148, - "community_name": "admin.service.ts", - "norm_label": ".createuser()" - }, { "label": "SmsSettingsPage()", "file_type": "code", @@ -9006,6 +9090,54 @@ "community_name": "auth.module.ts", "norm_label": ".constructor()" }, + { + "label": ".validate()", + "file_type": "code", + "source_file": "backend/src/auth/jwt.strategy.ts", + "source_location": "L24", + "_callable": true, + "_origin": "ast", + "id": "backend_src_auth_jwt_strategy_jwtstrategy_validate", + "community": 177, + "community_name": "auth.module.ts", + "norm_label": ".validate()" + }, + { + "label": ".findById()", + "file_type": "code", + "source_file": "backend/src/users/users.service.ts", + "source_location": "L27", + "_callable": true, + "_origin": "ast", + "id": "backend_src_users_users_service_usersservice_findbyid", + "community": 177, + "community_name": "auth.module.ts", + "norm_label": ".findbyid()" + }, + { + "label": "CustomTooltip()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L32", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_customtooltip", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "customtooltip()" + }, + { + "label": "Reports()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L87", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_reports_reports", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "reports()" + }, { "label": ".handleRequest()", "file_type": "code", @@ -9150,6 +9282,18 @@ "community_name": "ProductsService", "norm_label": ".updatedosageconfig()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/products/products.service.ts", + "source_location": "L9", + "_callable": true, + "_origin": "ast", + "id": "backend_src_products_products_service_productsservice_constructor", + "community": 19, + "community_name": "ProductsService", + "norm_label": ".constructor()" + }, { "label": ".findAll()", "file_type": "code", @@ -9222,6 +9366,66 @@ "community_name": "ProductsService", "norm_label": ".updatedosageconfig()" }, + { + "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": 198, + "community_name": "WikiService", + "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": 198, + "community_name": "WikiService", + "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": 198, + "community_name": "WikiService", + "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": 198, + "community_name": "WikiService", + "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": 198, + "community_name": "WikiService", + "norm_label": ".updateterm()" + }, { "label": "generateMetadata()", "file_type": "code", @@ -9306,18 +9510,6 @@ "community_name": "SettingsService", "norm_label": ".deletesmslog()" }, - { - "label": ".getSmsLogs()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L191", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_getsmslogs", - "community": 2, - "community_name": "SettingsService", - "norm_label": ".getsmslogs()" - }, { "label": ".constructor()", "file_type": "code", @@ -9379,16 +9571,16 @@ "norm_label": ".deletesmslog()" }, { - "label": ".editPattern()", + "label": ".getCategorySetting()", "file_type": "code", "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L612", + "source_location": "L403", "_callable": true, "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_editpattern", + "id": "backend_src_settings_settings_service_settingsservice_getcategorysetting", "community": 2, "community_name": "SettingsService", - "norm_label": ".editpattern()" + "norm_label": ".getcategorysetting()" }, { "label": ".getFinancialSettings()", @@ -9402,18 +9594,6 @@ "community_name": "SettingsService", "norm_label": ".getfinancialsettings()" }, - { - "label": ".getPatterns()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L604", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_getpatterns", - "community": 2, - "community_name": "SettingsService", - "norm_label": ".getpatterns()" - }, { "label": ".getScientificTerms()", "file_type": "code", @@ -9438,18 +9618,6 @@ "community_name": "SettingsService", "norm_label": ".getsmscredit()" }, - { - "label": ".getSmsLogs()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L616", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_getsmslogs", - "community": 2, - "community_name": "SettingsService", - "norm_label": ".getsmslogs()" - }, { "label": ".getSmsSettings()", "file_type": "code", @@ -9510,6 +9678,30 @@ "community_name": "SettingsService", "norm_label": ".testsms()" }, + { + "label": ".updateBulkUiTexts()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L261", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_updatebulkuitexts", + "community": 2, + "community_name": "SettingsService", + "norm_label": ".updatebulkuitexts()" + }, + { + "label": ".updateCategorySetting()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L499", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_updatecategorysetting", + "community": 2, + "community_name": "SettingsService", + "norm_label": ".updatecategorysetting()" + }, { "label": ".updateFinancialSettings()", "file_type": "code", @@ -9534,6 +9726,18 @@ "community_name": "SettingsService", "norm_label": ".updatesmssettings()" }, + { + "label": ".updateUiText()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L229", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_updateuitext", + "community": 2, + "community_name": "SettingsService", + "norm_label": ".updateuitext()" + }, { "label": ".upsertScientificTerm()", "file_type": "code", @@ -9753,15 +9957,39 @@ { "label": ".constructor()", "file_type": "code", - "source_file": "backend/src/admin/media.service.ts", - "source_location": "L8", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L13", "_callable": true, "_origin": "ast", - "id": "backend_src_admin_media_service_mediaservice_constructor", + "id": "backend_src_admin_pets_service_petsservice_constructor", "community": 21, "community_name": "admin.module.ts", "norm_label": ".constructor()" }, + { + "label": ".deletePet()", + "file_type": "code", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L65", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_pets_service_petsservice_deletepet", + "community": 21, + "community_name": "admin.module.ts", + "norm_label": ".deletepet()" + }, + { + "label": ".getPets()", + "file_type": "code", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L15", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_pets_service_petsservice_getpets", + "community": 21, + "community_name": "admin.module.ts", + "norm_label": ".getpets()" + }, { "label": ".constructor()", "file_type": "code", @@ -9810,66 +10038,6 @@ "community_name": "admin.module.ts", "norm_label": ".getdashboardreports()" }, - { - "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": 21, - "community_name": "admin.module.ts", - "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": 21, - "community_name": "admin.module.ts", - "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": 21, - "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": 21, - "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": 21, - "community_name": "admin.module.ts", - "norm_label": ".updateterm()" - }, { "label": "FormField()", "file_type": "code", @@ -9882,18 +10050,6 @@ "community_name": "FormField.tsx", "norm_label": "formfield()" }, - { - "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": 22, - "community_name": "RevalidationService", - "norm_label": ".constructor()" - }, { "label": ".frontendUrl()", "file_type": "code", @@ -9966,18 +10122,6 @@ "community_name": "RevalidationService", "norm_label": ".secret()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/products/products.service.ts", - "source_location": "L9", - "_callable": true, - "_origin": "ast", - "id": "backend_src_products_products_service_productsservice_constructor", - "community": 22, - "community_name": "RevalidationService", - "norm_label": ".constructor()" - }, { "label": "CatalogClient()", "file_type": "code", @@ -10218,6 +10362,42 @@ "community_name": "MenuService", "norm_label": ".update()" }, + { + "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": 234, + "community_name": ".getDashboardStats", + "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": 234, + "community_name": ".getDashboardStats", + "norm_label": ".getdashboardstats()" + }, + { + "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": 234, + "community_name": ".getDashboardStats", + "norm_label": ".get()" + }, { "label": "robots()", "file_type": "code", @@ -10230,6 +10410,114 @@ "community_name": "robots.ts", "norm_label": "robots()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/payment/payment.controller.ts", + "source_location": "L42", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_controller_paymentcontroller_constructor", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".constructor()" + }, + { + "label": ".adminLiveInquiry()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L845", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_adminliveinquiry", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".adminliveinquiry()" + }, + { + "label": ".adminManualReject()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L988", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_adminmanualreject", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".adminmanualreject()" + }, + { + "label": ".adminManualVerify()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L925", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_adminmanualverify", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".adminmanualverify()" + }, + { + "label": ".checkGatewayHealth()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1014", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_checkgatewayhealth", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".checkgatewayhealth()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L22", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_constructor", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".constructor()" + }, + { + "label": ".getAdminTransactionStats()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L798", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_getadmintransactionstats", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".getadmintransactionstats()" + }, + { + "label": ".getTransaction()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L635", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_gettransaction", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".gettransaction()" + }, + { + "label": ".getTransactionByTrackId()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L896", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_gettransactionbytrackid", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".gettransactionbytrackid()" + }, { "label": ".initiateOrderPayment()", "file_type": "code", @@ -10254,6 +10542,42 @@ "community_name": "ZibalService", "norm_label": ".initiatewallettopup()" }, + { + "label": ".inquiryDirectZibal()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L902", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_inquirydirectzibal", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".inquirydirectzibal()" + }, + { + "label": ".reconcilePendingTransactions()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L540", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_reconcilependingtransactions", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".reconcilependingtransactions()" + }, + { + "label": ".verifyAndProcess()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L227", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_verifyandprocess", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".verifyandprocess()" + }, { "label": ".apiRequest()", "file_type": "code", @@ -10290,18 +10614,6 @@ "community_name": "ZibalService", "norm_label": ".checkhealth()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L47", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_constructor", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".constructor()" - }, { "label": ".createSubMerchant()", "file_type": "code", @@ -10434,6 +10746,18 @@ "community_name": "ZibalService", "norm_label": ".getrefundlist()" }, + { + "label": ".getResultMessage()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L779", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_getresultmessage", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".getresultmessage()" + }, { "label": ".getStartUrl()", "file_type": "code", @@ -10446,6 +10770,18 @@ "community_name": "ZibalService", "norm_label": ".getstarturl()" }, + { + "label": ".getStatusMessage()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L816", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_getstatusmessage", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".getstatusmessage()" + }, { "label": ".getSubMerchantList()", "file_type": "code", @@ -10506,6 +10842,18 @@ "community_name": "ZibalService", "norm_label": ".inquirerefund()" }, + { + "label": ".inquiryPayment()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L260", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_inquirypayment", + "community": 294, + "community_name": "ZibalService", + "norm_label": ".inquirypayment()" + }, { "label": ".requestLazyPayment()", "file_type": "code", @@ -11214,30 +11562,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "cms()" }, - { - "label": "CustomTooltip()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L32", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_customtooltip", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "customtooltip()" - }, - { - "label": "Reports()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L87", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_reports", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "reports()" - }, { "label": "lazyWithRetry()", "file_type": "code", @@ -11283,7 +11607,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_applyforwholesale", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".applyforwholesale()" }, { @@ -11295,7 +11619,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_approvewholesalerequest", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".approvewholesalerequest()" }, { @@ -11307,7 +11631,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_constructor", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".constructor()" }, { @@ -11319,7 +11643,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_getwholesalerequests", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".getwholesalerequests()" }, { @@ -11331,7 +11655,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_rejectwholesalerequest", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".rejectwholesalerequest()" }, { @@ -11343,7 +11667,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_applyforwholesale", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".applyforwholesale()" }, { @@ -11355,7 +11679,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_approvewholesalerequest", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".approvewholesalerequest()" }, { @@ -11367,7 +11691,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_constructor", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".constructor()" }, { @@ -11379,7 +11703,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_getwholesalerequests", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".getwholesalerequests()" }, { @@ -11391,7 +11715,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_rejectwholesalerequest", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": ".rejectwholesalerequest()" }, { @@ -11610,18 +11934,6 @@ "community_name": "AuthController", "norm_label": ".adminlogin()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/auth/auth.controller.ts", - "source_location": "L43", - "_callable": true, - "_origin": "ast", - "id": "backend_src_auth_auth_controller_authcontroller_constructor", - "community": 35, - "community_name": "AuthController", - "norm_label": ".constructor()" - }, { "label": ".login()", "file_type": "code", @@ -12198,6 +12510,18 @@ "community_name": "MediaController", "norm_label": ".uploadfile()" }, + { + "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": 40, + "community_name": "MediaController", + "norm_label": ".constructor()" + }, { "label": ".deleteManyMedia()", "file_type": "code", @@ -12258,42 +12582,6 @@ "community_name": "MediaController", "norm_label": ".uploadfile()" }, - { - "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": 40, - "community_name": "MediaController", - "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": 40, - "community_name": "MediaController", - "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": 40, - "community_name": "MediaController", - "norm_label": ".findone()" - }, { "label": ".constructor()", "file_type": "code", @@ -12882,6 +13170,18 @@ "community_name": "UsersController", "norm_label": ".addaddress()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/users/users.controller.ts", + "source_location": "L44", + "_callable": true, + "_origin": "ast", + "id": "backend_src_users_users_controller_userscontroller_constructor", + "community": 48, + "community_name": "UsersController", + "norm_label": ".constructor()" + }, { "label": ".deleteAddress()", "file_type": "code", @@ -12954,6 +13254,18 @@ "community_name": "UsersController", "norm_label": ".updateprofile()" }, + { + "label": ".addAddress()", + "file_type": "code", + "source_file": "backend/src/users/users.service.ts", + "source_location": "L210", + "_callable": true, + "_origin": "ast", + "id": "backend_src_users_users_service_usersservice_addaddress", + "community": 48, + "community_name": "UsersController", + "norm_label": ".addaddress()" + }, { "label": ".constructor()", "file_type": "code", @@ -14226,78 +14538,6 @@ "community_name": "tickets.controller.ts", "norm_label": ".updateticketstatus()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/payment/payment.controller.ts", - "source_location": "L42", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_controller_paymentcontroller_constructor", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".constructor()" - }, - { - "label": ".adminLiveInquiry()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L845", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_adminliveinquiry", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".adminliveinquiry()" - }, - { - "label": ".adminManualReject()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L988", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_adminmanualreject", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".adminmanualreject()" - }, - { - "label": ".adminManualVerify()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L925", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_adminmanualverify", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".adminmanualverify()" - }, - { - "label": ".checkGatewayHealth()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L1014", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_checkgatewayhealth", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".checkgatewayhealth()" - }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L22", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_constructor", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".constructor()" - }, { "label": ".getAdminTransactions()", "file_type": "code", @@ -14307,117 +14547,9 @@ "_origin": "ast", "id": "backend_src_payment_payment_service_paymentservice_getadmintransactions", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": ".getadmintransactions()" }, - { - "label": ".getAdminTransactionStats()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L798", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_getadmintransactionstats", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".getadmintransactionstats()" - }, - { - "label": ".getTransaction()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L635", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_gettransaction", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".gettransaction()" - }, - { - "label": ".getTransactionByTrackId()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L896", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_gettransactionbytrackid", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".gettransactionbytrackid()" - }, - { - "label": ".inquiryDirectZibal()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L902", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_inquirydirectzibal", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".inquirydirectzibal()" - }, - { - "label": ".reconcilePendingTransactions()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L540", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_reconcilependingtransactions", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".reconcilependingtransactions()" - }, - { - "label": ".verifyAndProcess()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L227", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_verifyandprocess", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".verifyandprocess()" - }, - { - "label": ".getResultMessage()", - "file_type": "code", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L779", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_getresultmessage", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".getresultmessage()" - }, - { - "label": ".getStatusMessage()", - "file_type": "code", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L816", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_getstatusmessage", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".getstatusmessage()" - }, - { - "label": ".inquiryPayment()", - "file_type": "code", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L260", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_inquirypayment", - "community": 60, - "community_name": "PaymentService", - "norm_label": ".inquirypayment()" - }, { "label": "SuccessPage()", "file_type": "code", @@ -14622,18 +14754,6 @@ "community_name": "SmsService", "norm_label": ".addpattern()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L54", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_constructor", - "community": 62, - "community_name": "SmsService", - "norm_label": ".constructor()" - }, { "label": ".editPattern()", "file_type": "code", @@ -14838,6 +14958,42 @@ "community_name": "SmsService", "norm_label": ".updatelocalpattern()" }, + { + "label": ".addPattern()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L608", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_addpattern", + "community": 62, + "community_name": "SmsService", + "norm_label": ".addpattern()" + }, + { + "label": ".editPattern()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L612", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_editpattern", + "community": 62, + "community_name": "SmsService", + "norm_label": ".editpattern()" + }, + { + "label": ".getPatterns()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L604", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_getpatterns", + "community": 62, + "community_name": "SmsService", + "norm_label": ".getpatterns()" + }, { "label": ".constructor()", "file_type": "code", @@ -14850,6 +15006,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": 65, + "community_name": "BlogsService", + "norm_label": ".constructor()" + }, { "label": ".createBlog()", "file_type": "code", @@ -15063,45 +15231,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_getcoupons", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getcoupons()" }, - { - "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": 66, - "community_name": "ApiOperation", - "norm_label": ".getdashboardstats()" - }, - { - "label": ".getDoctors()", - "file_type": "code", - "source_file": "backend/src/admin/admin.controller.ts", - "source_location": "L240", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_controller_admincontroller_getdoctors", - "community": 66, - "community_name": "ApiOperation", - "norm_label": ".getdoctors()" - }, - { - "label": ".getOrderById()", - "file_type": "code", - "source_file": "backend/src/admin/admin.controller.ts", - "source_location": "L162", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_controller_admincontroller_getorderbyid", - "community": 66, - "community_name": "ApiOperation", - "norm_label": ".getorderbyid()" - }, { "label": ".getOrders()", "file_type": "code", @@ -15111,7 +15243,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_getorders", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getorders()" }, { @@ -15123,20 +15255,20 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_getproducts", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getproducts()" }, { - "label": ".getUserDetails()", + "label": ".getSettings()", "file_type": "code", "source_file": "backend/src/admin/admin.controller.ts", - "source_location": "L62", + "source_location": "L287", "_callable": true, "_origin": "ast", - "id": "backend_src_admin_admin_controller_admincontroller_getuserdetails", + "id": "backend_src_admin_admin_controller_admincontroller_getsettings", "community": 66, - "community_name": "ApiOperation", - "norm_label": ".getuserdetails()" + "community_name": "AdminQueryDto", + "norm_label": ".getsettings()" }, { "label": ".getUsers()", @@ -15147,7 +15279,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_getusers", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getusers()" }, { @@ -15159,45 +15291,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_getcoupons", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getcoupons()" }, - { - "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": 66, - "community_name": "ApiOperation", - "norm_label": ".getdashboardstats()" - }, - { - "label": ".getDoctors()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L964", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_getdoctors", - "community": 66, - "community_name": "ApiOperation", - "norm_label": ".getdoctors()" - }, - { - "label": ".getOrderById()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L658", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_getorderbyid", - "community": 66, - "community_name": "ApiOperation", - "norm_label": ".getorderbyid()" - }, { "label": ".getOrders()", "file_type": "code", @@ -15207,7 +15303,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_getorders", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getorders()" }, { @@ -15219,21 +15315,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_getproducts", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getproducts()" }, - { - "label": ".getUserDetails()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L190", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_getuserdetails", - "community": 66, - "community_name": "ApiOperation", - "norm_label": ".getuserdetails()" - }, { "label": ".getUsers()", "file_type": "code", @@ -15243,21 +15327,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_getusers", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": ".getusers()" }, - { - "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": 66, - "community_name": "ApiOperation", - "norm_label": ".get()" - }, { "label": ".constructor()", "file_type": "code", @@ -15294,42 +15366,6 @@ "community_name": "PetsController", "norm_label": ".getpets()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/admin/pets.service.ts", - "source_location": "L13", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_pets_service_petsservice_constructor", - "community": 67, - "community_name": "PetsController", - "norm_label": ".constructor()" - }, - { - "label": ".deletePet()", - "file_type": "code", - "source_file": "backend/src/admin/pets.service.ts", - "source_location": "L65", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_pets_service_petsservice_deletepet", - "community": 67, - "community_name": "PetsController", - "norm_label": ".deletepet()" - }, - { - "label": ".getPets()", - "file_type": "code", - "source_file": "backend/src/admin/pets.service.ts", - "source_location": "L15", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_pets_service_petsservice_getpets", - "community": 67, - "community_name": "PetsController", - "norm_label": ".getpets()" - }, { "label": "HomeClient()", "file_type": "code", @@ -16002,6 +16038,18 @@ "community_name": "PetsController", "norm_label": ".addreminder()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/pets/pets.controller.ts", + "source_location": "L56", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_controller_petscontroller_constructor", + "community": 75, + "community_name": "PetsController", + "norm_label": ".constructor()" + }, { "label": ".create()", "file_type": "code", @@ -16086,6 +16134,126 @@ "community_name": "PetsController", "norm_label": ".uploadpetimage()" }, + { + "label": ".addHealthLog()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L260", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_addhealthlog", + "community": 75, + "community_name": "PetsController", + "norm_label": ".addhealthlog()" + }, + { + "label": ".addReminder()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L198", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_addreminder", + "community": 75, + "community_name": "PetsController", + "norm_label": ".addreminder()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L24", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_constructor", + "community": 75, + "community_name": "PetsController", + "norm_label": ".constructor()" + }, + { + "label": ".create()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L26", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_create", + "community": 75, + "community_name": "PetsController", + "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": 75, + "community_name": "PetsController", + "norm_label": ".findalladmin()" + }, + { + "label": ".findOne()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L150", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_findone", + "community": 75, + "community_name": "PetsController", + "norm_label": ".findone()" + }, + { + "label": ".remove()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L191", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_remove", + "community": 75, + "community_name": "PetsController", + "norm_label": ".remove()" + }, + { + "label": ".toggleReminder()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L211", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_togglereminder", + "community": 75, + "community_name": "PetsController", + "norm_label": ".togglereminder()" + }, + { + "label": ".update()", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L161", + "_callable": true, + "_origin": "ast", + "id": "backend_src_pets_pets_service_petsservice_update", + "community": 75, + "community_name": "PetsController", + "norm_label": ".update()" + }, + { + "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": 76, + "community_name": "AdminController", + "norm_label": ".constructor()" + }, { "label": ".deleteCoupon()", "file_type": "code", @@ -16095,7 +16263,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_deletecoupon", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deletecoupon()" }, { @@ -16107,7 +16275,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_deletedoctor", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deletedoctor()" }, { @@ -16119,7 +16287,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_deleteproduct", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deleteproduct()" }, { @@ -16131,9 +16299,33 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_admincontroller_deleteuser", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deleteuser()" }, + { + "label": ".getOrderById()", + "file_type": "code", + "source_file": "backend/src/admin/admin.controller.ts", + "source_location": "L162", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_controller_admincontroller_getorderbyid", + "community": 76, + "community_name": "AdminController", + "norm_label": ".getorderbyid()" + }, + { + "label": ".getUserDetails()", + "file_type": "code", + "source_file": "backend/src/admin/admin.controller.ts", + "source_location": "L62", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_controller_admincontroller_getuserdetails", + "community": 76, + "community_name": "AdminController", + "norm_label": ".getuserdetails()" + }, { "label": ".deleteCoupon()", "file_type": "code", @@ -16143,7 +16335,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_deletecoupon", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deletecoupon()" }, { @@ -16155,7 +16347,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_deletedoctor", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deletedoctor()" }, { @@ -16167,7 +16359,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_deleteproduct", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deleteproduct()" }, { @@ -16179,9 +16371,33 @@ "_origin": "ast", "id": "backend_src_admin_admin_service_adminservice_deleteuser", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": ".deleteuser()" }, + { + "label": ".getOrderById()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L658", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_getorderbyid", + "community": 76, + "community_name": "AdminController", + "norm_label": ".getorderbyid()" + }, + { + "label": ".getUserDetails()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L190", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_getuserdetails", + "community": 76, + "community_name": "AdminController", + "norm_label": ".getuserdetails()" + }, { "label": ".constructor()", "file_type": "code", @@ -16281,110 +16497,74 @@ { "label": ".constructor()", "file_type": "code", - "source_file": "backend/src/pets/pets.controller.ts", - "source_location": "L56", + "source_file": "backend/src/wiki/wiki.controller.ts", + "source_location": "L19", "_callable": true, "_origin": "ast", - "id": "backend_src_pets_pets_controller_petscontroller_constructor", + "id": "backend_src_wiki_wiki_controller_wikicontroller_constructor", "community": 8, - "community_name": "pets/pets.controller.ts", + "community_name": "WikiController", "norm_label": ".constructor()" }, { - "label": ".addHealthLog()", + "label": ".findAll()", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L260", - "_callable": true, - "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_addhealthlog", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".addhealthlog()" - }, - { - "label": ".addReminder()", - "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L198", - "_callable": true, - "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_addreminder", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".addreminder()" - }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", + "source_file": "backend/src/wiki/wiki.controller.ts", "source_location": "L24", "_callable": true, "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_constructor", + "id": "backend_src_wiki_wiki_controller_wikicontroller_findall", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".constructor()" - }, - { - "label": ".create()", - "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L26", - "_callable": true, - "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_create", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".create()" + "community_name": "WikiController", + "norm_label": ".findall()" }, { "label": ".findOne()", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L150", + "source_file": "backend/src/wiki/wiki.controller.ts", + "source_location": "L32", "_callable": true, "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_findone", + "id": "backend_src_wiki_wiki_controller_wikicontroller_findone", "community": 8, - "community_name": "pets/pets.controller.ts", + "community_name": "WikiController", "norm_label": ".findone()" }, { - "label": ".remove()", + "label": ".constructor()", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L191", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L8", "_callable": true, "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_remove", + "id": "backend_src_wiki_wiki_service_wikiservice_constructor", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".remove()" + "community_name": "WikiController", + "norm_label": ".constructor()" }, { - "label": ".toggleReminder()", + "label": ".findAll()", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L211", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L10", "_callable": true, "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_togglereminder", + "id": "backend_src_wiki_wiki_service_wikiservice_findall", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".togglereminder()" + "community_name": "WikiController", + "norm_label": ".findall()" }, { - "label": ".update()", + "label": ".findOneByKey()", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", - "source_location": "L161", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L52", "_callable": true, "_origin": "ast", - "id": "backend_src_pets_pets_service_petsservice_update", + "id": "backend_src_wiki_wiki_service_wikiservice_findonebykey", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": ".update()" + "community_name": "WikiController", + "norm_label": ".findonebykey()" }, { "label": "ClientLayout()", @@ -16699,196 +16879,16 @@ "norm_label": "slugify()" }, { - "label": ".addPattern()", + "label": ".updateReviewStatus()", "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L238", + "source_file": "backend/src/reviews/reviews.service.ts", + "source_location": "L207", "_callable": true, "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_addpattern", + "id": "backend_src_reviews_reviews_service_reviewsservice_updatereviewstatus", "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".addpattern()" - }, - { - "label": ".editPattern()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L253", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_editpattern", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".editpattern()" - }, - { - "label": ".patchUiText()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L65", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_patchuitext", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".patchuitext()" - }, - { - "label": ".putBulkUiTexts()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L80", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_putbulkuitexts", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".putbulkuitexts()" - }, - { - "label": ".putUiText()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L48", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_putuitext", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".putuitext()" - }, - { - "label": ".testSms()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L214", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_testsms", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".testsms()" - }, - { - "label": ".updateFinancial()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L96", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_updatefinancial", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updatefinancial()" - }, - { - "label": ".updateFinancialSettings()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L158", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_updatefinancialsettings", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updatefinancialsettings()" - }, - { - "label": ".updateSeoSettings()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L139", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_updateseosettings", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updateseosettings()" - }, - { - "label": ".updateSmsSettings()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L205", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_updatesmssettings", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updatesmssettings()" - }, - { - "label": ".updateSystemSettings()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L177", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_updatesystemsettings", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updatesystemsettings()" - }, - { - "label": ".upsertScientificTerm()", - "file_type": "code", - "source_file": "backend/src/settings/settings.controller.ts", - "source_location": "L111", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_controller_settingscontroller_upsertscientificterm", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".upsertscientificterm()" - }, - { - "label": ".addPattern()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L608", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_addpattern", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".addpattern()" - }, - { - "label": ".updateBulkUiTexts()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L261", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_updatebulkuitexts", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updatebulkuitexts()" - }, - { - "label": ".updateCategorySetting()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L499", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_updatecategorysetting", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updatecategorysetting()" - }, - { - "label": ".updateUiText()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L229", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_updateuitext", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": ".updateuitext()" + "community_name": "CreateReviewDto", + "norm_label": ".updatereviewstatus()" }, { "label": ".constructor()", @@ -17527,17 +17527,6 @@ "community_name": "Roles", "norm_label": "useguards" }, - { - "label": "generate-openapi.ts", - "file_type": "code", - "source_file": "backend/scripts/generate-openapi.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_scripts_generate_openapi_ts_backend_scripts_generate_openapi", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "generate-openapi.ts" - }, { "label": "app.module.ts", "file_type": "code", @@ -17549,17 +17538,6 @@ "community_name": "app.module.ts", "norm_label": "app.module.ts" }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_app_module_ts_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "module" - }, { "label": "b2b.module.ts", "file_type": "code", @@ -17604,6 +17582,17 @@ "community_name": "app.module.ts", "norm_label": "module" }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_blogs_blogs_module_ts_module", + "community": 1, + "community_name": "app.module.ts", + "norm_label": "module" + }, { "label": "cms.module.ts", "file_type": "code", @@ -17626,28 +17615,6 @@ "community_name": "app.module.ts", "norm_label": "module" }, - { - "label": "Global", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_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_common_revalidation_revalidation_module_ts_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "module" - }, { "label": "sms.module.ts", "file_type": "code", @@ -17747,28 +17714,6 @@ "community_name": "app.module.ts", "norm_label": "module" }, - { - "label": "menu.module.ts", - "file_type": "code", - "source_file": "backend/src/menu/menu.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_menu_menu_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "menu.module.ts" - }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_menu_menu_module_ts_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "module" - }, { "label": "payment.module.ts", "file_type": "code", @@ -17890,50 +17835,6 @@ "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", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_smart_advisor_smart_advisor_module_ts_module", - "community": 1, - "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", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_testimonials_testimonials_module_ts_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "module" - }, { "label": "tickets.module.ts", "file_type": "code", @@ -17956,28 +17857,6 @@ "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", @@ -18001,125 +17880,48 @@ "norm_label": "module" }, { - "label": "app.e2e-spec.ts", + "label": "app_module_1", "file_type": "code", - "source_file": "backend/test/app.e2e-spec.ts", - "source_location": "L1", + "source_file": "backend/test/app.e2e-spec.js", + "source_location": "L8", "_origin": "ast", - "id": "backend_test_app_e2e_spec_ts_backend_test_app_e2e_spec", + "id": "backend_test_app_e2e_spec_app_module_1", "community": 1, "community_name": "app.module.ts", - "norm_label": "app.e2e-spec.ts" + "norm_label": "app_module_1" }, { - "label": "ApiProperty", + "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_reviews_dto_create_review_dto_ts_apiproperty", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "apiproperty" + "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": "IsInt", + "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_reviews_dto_create_review_dto_ts_isint", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "isint" + "id": "backend_test_app_e2e_spec_supertest_1", + "community": 1, + "community_name": "app.module.ts", + "norm_label": "supertest_1" }, { - "label": "IsNotEmpty", + "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_reviews_dto_create_review_dto_ts_isnotempty", - "community": 10, - "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": 10, - "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": 10, - "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": 10, - "community_name": "CreateReviewDto", - "norm_label": "min" - }, - { - "label": "ApiProperty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_apiproperty", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "apiproperty" - }, - { - "label": "IsIn", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_isin", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "isin" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_isoptional", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_isstring", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "isstring" + "id": "backend_test_app_e2e_spec_testing_1", + "community": 1, + "community_name": "app.module.ts", + "norm_label": "testing_1" }, { "label": "ApiBearerAuth", @@ -18129,7 +17931,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_apibearerauth", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "apibearerauth" }, { @@ -18140,7 +17942,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_apioperation", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "apioperation" }, { @@ -18151,7 +17953,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_apitags", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "apitags" }, { @@ -18162,7 +17964,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_body", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "body" }, { @@ -18173,7 +17975,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_controller", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "controller" }, { @@ -18184,7 +17986,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_delete", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "delete" }, { @@ -18195,7 +17997,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_get", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "get" }, { @@ -18206,7 +18008,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_param", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "param" }, { @@ -18217,7 +18019,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_patch", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "patch" }, { @@ -18228,7 +18030,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_post", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "post" }, { @@ -18239,7 +18041,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_query", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "query" }, { @@ -18250,7 +18052,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_req", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "req" }, { @@ -18261,7 +18063,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_throttle", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "throttle" }, { @@ -18272,7 +18074,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_controller_ts_useguards", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "useguards" }, { @@ -18283,20 +18085,9 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service_ts_injectable", "community": 10, - "community_name": "CreateReviewDto", + "community_name": "ReviewsService", "norm_label": "injectable" }, - { - "label": "Max", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "max", - "community": 10, - "community_name": "CreateReviewDto", - "norm_label": "max" - }, { "label": "16-deep-audit-summary.md", "file_type": "document", @@ -19068,26 +18859,15 @@ "norm_label": "strict input specifications (what files to read)" }, { - "label": "auth.controller.ts", + "label": "admin.service.spec.ts", "file_type": "code", - "source_file": "backend/src/auth/auth.controller.ts", + "source_file": "backend/src/admin/admin.service.spec.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_auth_auth_controller", + "id": "backend_src_admin_admin_service_spec", "community": 106, "community_name": "auth.service.ts", - "norm_label": "auth.controller.ts" - }, - { - "label": "auth.controller.spec.ts", - "file_type": "code", - "source_file": "backend/src/auth/auth.controller.spec.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_auth_auth_controller_spec", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "auth.controller.spec.ts" + "norm_label": "admin.service.spec.ts" }, { "label": "auth.service.ts", @@ -19100,6 +18880,17 @@ "community_name": "auth.service.ts", "norm_label": "auth.service.ts" }, + { + "label": "auth.service.spec.ts", + "file_type": "code", + "source_file": "backend/src/auth/auth.service.spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_auth_auth_service_spec", + "community": 106, + "community_name": "auth.service.ts", + "norm_label": "auth.service.spec.ts" + }, { "label": "Injectable", "file_type": "code", @@ -19111,116 +18902,6 @@ "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": 106, - "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": 106, - "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": 106, - "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": 106, - "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": 106, - "community_name": "auth.service.ts", - "norm_label": "matches" - }, - { - "label": "verify-otp.dto.ts", - "file_type": "code", - "source_file": "backend/src/auth/dto/verify-otp.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_auth_dto_verify_otp_dto", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "verify-otp.dto.ts" - }, - { - "label": "ApiProperty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_verify_otp_dto_ts_apiproperty", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "apiproperty" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_verify_otp_dto_ts_isnotempty", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "isnotempty" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_verify_otp_dto_ts_isstring", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "isstring" - }, - { - "label": "Matches", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_verify_otp_dto_ts_matches", - "community": 106, - "community_name": "auth.service.ts", - "norm_label": "matches" - }, { "label": "phone.utils.ts", "file_type": "code", @@ -19233,48 +18914,48 @@ "norm_label": "phone.utils.ts" }, { - "label": "Length", + "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": 106, + "community_name": "auth.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": 106, + "community_name": "auth.service.ts", + "norm_label": "redis.service.spec.ts" + }, + { + "label": "Injectable", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "length", + "id": "backend_src_redis_redis_service_ts_injectable", "community": 106, "community_name": "auth.service.ts", - "norm_label": "length" + "norm_label": "injectable" }, { - "label": "admin/blogs.controller.ts", + "label": "admin/wiki.controller.ts", "file_type": "code", - "source_file": "backend/src/admin/blogs.controller.ts", + "source_file": "backend/src/admin/wiki.controller.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_admin_blogs_controller", + "id": "backend_src_admin_wiki_controller", "community": 107, "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": 107, - "community_name": "PaginationDto", - "norm_label": "admin/blogs.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": 107, - "community_name": "PaginationDto", - "norm_label": "admin-query.dto.ts" + "norm_label": "admin/wiki.controller.ts" }, { "label": "blogs/blogs.controller.ts", @@ -19298,17 +18979,6 @@ "community_name": "PaginationDto", "norm_label": "blogs.module.ts" }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_blogs_blogs_module_ts_module", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "module" - }, { "label": "blogs/blogs.service.ts", "file_type": "code", @@ -19419,127 +19089,6 @@ "community_name": "PaginationDto", "norm_label": "type" }, - { - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "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": 107, - "community_name": "PaginationDto", - "norm_label": "injectable" - }, { "label": "ApiExcludeController", "file_type": "code", @@ -19563,37 +19112,15 @@ "norm_label": "categories.service.ts" }, { - "label": "auth.service.spec.ts", + "label": "admin/wiki.service.ts", "file_type": "code", - "source_file": "backend/src/auth/auth.service.spec.ts", + "source_file": "backend/src/admin/wiki.service.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_auth_auth_service_spec", + "id": "backend_src_admin_wiki_service", "community": 108, "community_name": "PrismaService", - "norm_label": "auth.service.spec.ts" - }, - { - "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.service.ts", - "file_type": "code", - "source_file": "backend/src/banners/banners.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_banners_banners_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "banners.service.ts" + "norm_label": "admin/wiki.service.ts" }, { "label": "metrics.controller.ts", @@ -19661,61 +19188,6 @@ "community_name": "PrismaService", "norm_label": "contact.service.ts" }, - { - "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": 108, - "community_name": "PrismaService", - "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": 108, - "community_name": "PrismaService", - "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": 108, - "community_name": "PrismaService", - "norm_label": "faq.service.ts" - }, - { - "label": "ingredients.service.ts", - "file_type": "code", - "source_file": "backend/src/ingredients/ingredients.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_ingredients_ingredients_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "ingredients.service.ts" - }, - { - "label": "menu.service.ts", - "file_type": "code", - "source_file": "backend/src/menu/menu.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_menu_menu_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "menu.service.ts" - }, { "label": "orders.service.spec.ts", "file_type": "code", @@ -19727,28 +19199,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", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_payment_payment_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "payment.service.ts" - }, { "label": "zibal-ebank.service.ts", "file_type": "code", @@ -19760,17 +19210,6 @@ "community_name": "PrismaService", "norm_label": "zibal-ebank.service.ts" }, - { - "label": "prescriptions.service.ts", - "file_type": "code", - "source_file": "backend/src/prescriptions/prescriptions.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_prescriptions_prescriptions_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "prescriptions.service.ts" - }, { "label": "prisma.service.ts", "file_type": "code", @@ -19837,72 +19276,6 @@ "community_name": "PrismaService", "norm_label": "settings.service.spec.ts" }, - { - "label": "smart-advisor.service.ts", - "file_type": "code", - "source_file": "backend/src/smart-advisor/smart-advisor.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_smart_advisor_smart_advisor_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "smart-advisor.service.ts" - }, - { - "label": "testimonials.service.ts", - "file_type": "code", - "source_file": "backend/src/testimonials/testimonials.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_testimonials_testimonials_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "testimonials.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": 108, - "community_name": "PrismaService", - "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-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": 108, - "community_name": "PrismaService", - "norm_label": "wholesale-apply.dto.ts" - }, - { - "label": "wholesale.service.ts", - "file_type": "code", - "source_file": "backend/src/wholesale/wholesale.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_wholesale_wholesale_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "wholesale.service.ts" - }, { "label": "26-phase2-integrity-repair-report.md", "file_type": "document", @@ -20673,6 +20046,17 @@ "community_name": "Operational Rules & Boundaries", "norm_label": "strict input specifications (what files to read)" }, + { + "label": "ApiBearerAuth", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_apibearerauth", + "community": 113, + "community_name": "SettingsController", + "norm_label": "apibearerauth" + }, { "label": "ApiOkResponse", "file_type": "code", @@ -20706,6 +20090,17 @@ "community_name": "SettingsController", "norm_label": "apitags" }, + { + "label": "Body", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_body", + "community": 113, + "community_name": "SettingsController", + "norm_label": "body" + }, { "label": "Controller", "file_type": "code", @@ -20739,6 +20134,50 @@ "community_name": "SettingsController", "norm_label": "get" }, + { + "label": "Param", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_param", + "community": 113, + "community_name": "SettingsController", + "norm_label": "param" + }, + { + "label": "Patch", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_patch", + "community": 113, + "community_name": "SettingsController", + "norm_label": "patch" + }, + { + "label": "Post", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_post", + "community": 113, + "community_name": "SettingsController", + "norm_label": "post" + }, + { + "label": "Put", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_put", + "community": 113, + "community_name": "SettingsController", + "norm_label": "put" + }, { "label": "Query", "file_type": "code", @@ -20750,6 +20189,17 @@ "community_name": "SettingsController", "norm_label": "query" }, + { + "label": "UseGuards", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_settings_controller_ts_useguards", + "community": 113, + "community_name": "SettingsController", + "norm_label": "useguards" + }, { "label": "app.controller.ts", "file_type": "code", @@ -22060,26 +21510,15 @@ "norm_label": "support" }, { - "label": "ApiBearerAuth", + "label": "ApiOperation", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_admin_admin_controller_ts_apibearerauth", + "id": "backend_src_admin_admin_controller_ts_apioperation", "community": 122, - "community_name": "AdminService", - "norm_label": "apibearerauth" - }, - { - "label": "ApiTags", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_controller_ts_apitags", - "community": 122, - "community_name": "AdminService", - "norm_label": "apitags" + "community_name": "ApiOperation", + "norm_label": "apioperation" }, { "label": "Body", @@ -22089,31 +21528,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_body", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": "body" }, - { - "label": "Controller", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_controller_ts_controller", - "community": 122, - "community_name": "AdminService", - "norm_label": "controller" - }, - { - "label": "Post", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_controller_ts_post", - "community": 122, - "community_name": "AdminService", - "norm_label": "post" - }, { "label": "Put", "file_type": "code", @@ -22122,31 +21539,9 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_put", "community": 122, - "community_name": "AdminService", + "community_name": "ApiOperation", "norm_label": "put" }, - { - "label": "UseGuards", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_controller_ts_useguards", - "community": 122, - "community_name": "AdminService", - "norm_label": "useguards" - }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_service_ts_injectable", - "community": 122, - "community_name": "AdminService", - "norm_label": "injectable" - }, { "label": "address.dto.ts", "file_type": "code", @@ -22155,75 +21550,9 @@ "_origin": "ast", "id": "backend_src_users_dto_address_dto", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "address.dto.ts" }, - { - "label": "ApiProperty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_ts_apiproperty", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "apiproperty" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_ts_apipropertyoptional", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsBoolean", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_ts_isboolean", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "isboolean" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_ts_isnotempty", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "isnotempty" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_ts_isoptional", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_dto_address_dto_ts_isstring", - "community": 123, - "community_name": "users.service.ts", - "norm_label": "isstring" - }, { "label": "update-profile.dto.ts", "file_type": "code", @@ -22232,7 +21561,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "update-profile.dto.ts" }, { @@ -22243,7 +21572,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto_ts_apipropertyoptional", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "apipropertyoptional" }, { @@ -22254,7 +21583,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto_ts_isemail", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "isemail" }, { @@ -22265,7 +21594,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto_ts_isoptional", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "isoptional" }, { @@ -22276,7 +21605,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto_ts_isstring", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "isstring" }, { @@ -22287,7 +21616,7 @@ "_origin": "ast", "id": "backend_src_users_dto_update_profile_dto_ts_minlength", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "minlength" }, { @@ -22298,7 +21627,7 @@ "_origin": "ast", "id": "backend_src_users_users_controller", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "users.controller.ts" }, { @@ -22309,7 +21638,7 @@ "_origin": "ast", "id": "backend_src_users_users_controller_spec", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "norm_label": "users.controller.spec.ts" }, { @@ -22320,9 +21649,31 @@ "_origin": "ast", "id": "backend_src_users_users_service", "community": 123, - "community_name": "users.service.ts", + "community_name": "UsersService", "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": 123, + "community_name": "UsersService", + "norm_label": "users.service.spec.ts" + }, + { + "label": "Injectable", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_users_users_service_ts_injectable", + "community": 123, + "community_name": "UsersService", + "norm_label": "injectable" + }, { "label": "00-repository-map.md", "file_type": "document", @@ -22764,26 +22115,147 @@ "norm_label": "\u0637\u0631\u06cc\u0642\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062f\u0631 \u0635\u0641\u062d\u0627\u062a \u0648\u0628" }, { - "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": 128, - "community_name": "RedisService", - "norm_label": "redis.module.ts" - }, - { - "label": "Global", + "label": "Post", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_redis_redis_module_ts_global", + "id": "backend_src_admin_admin_controller_ts_post", "community": 128, - "community_name": "RedisService", - "norm_label": "global" + "community_name": "AdminService", + "norm_label": "post" + }, + { + "label": "Injectable", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_admin_service_ts_injectable", + "community": 128, + "community_name": "AdminService", + "norm_label": "injectable" + }, + { + "label": "cms.controller.ts", + "file_type": "code", + "source_file": "backend/src/cms/cms.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_cms_cms_controller", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "cms.controller.ts" + }, + { + "label": "cms.service.ts", + "file_type": "code", + "source_file": "backend/src/cms/cms.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_cms_cms_service", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "cms.service.ts" + }, + { + "label": "cms.dto.ts", + "file_type": "code", + "source_file": "backend/src/cms/dto/cms.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "cms.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_ts_apiproperty", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "apiproperty" + }, + { + "label": "ApiPropertyOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_ts_apipropertyoptional", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsBoolean", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_ts_isboolean", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "isboolean" + }, + { + "label": "IsNumber", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_ts_isnumber", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "isnumber" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_ts_isoptional", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_cms_dto_cms_dto_ts_isstring", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "isstring" + }, + { + "label": "IsUUID", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "isuuid", + "community": 129, + "community_name": "cms.controller.ts", + "norm_label": "isuuid" + }, + { + "label": "generate-openapi.ts", + "file_type": "code", + "source_file": "backend/scripts/generate-openapi.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_scripts_generate_openapi_ts_backend_scripts_generate_openapi", + "community": 13, + "community_name": "app-audit-verification.e2e-spec.js", + "norm_label": "generate-openapi.ts" }, { "label": "Module", @@ -22791,55 +22263,11 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_redis_redis_module_ts_module", - "community": 128, - "community_name": "RedisService", + "id": "backend_src_app_module_ts_module", + "community": 13, + "community_name": "app-audit-verification.e2e-spec.js", "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": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "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": 128, - "community_name": "RedisService", - "norm_label": "injectable" - }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_users_service_ts_injectable", - "community": 129, - "community_name": "UsersService", - "norm_label": "injectable" - }, { "label": "env.validation.ts", "file_type": "code", @@ -23137,6 +22565,17 @@ "community_name": "app-audit-verification.e2e-spec.js", "norm_label": "app-audit-verification.e2e-spec.ts" }, + { + "label": "app.e2e-spec.ts", + "file_type": "code", + "source_file": "backend/test/app.e2e-spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_test_app_e2e_spec_ts_backend_test_app_e2e_spec", + "community": 13, + "community_name": "app-audit-verification.e2e-spec.js", + "norm_label": "app.e2e-spec.ts" + }, { "label": "application/public/fonts/sahel-font-v3.4.0/README.md", "file_type": "document", @@ -27027,26 +26466,48 @@ "norm_label": "\u06f4. \u0631\u0627\u0647\u0646\u0645\u0627\u06cc \u0646\u06af\u0647\u062f\u0627\u0631\u06cc \u0648 \u0627\u0641\u0632\u0648\u062f\u0646 \u0641\u06cc\u0686\u0631\u0647\u0627\u06cc \u062c\u062f\u06cc\u062f \u0628\u062f\u0648\u0646 \u0634\u06a9\u0633\u062a\u0646 \u062a\u0633\u062a\u200c\u0647\u0627 (developer maintenance guide)" }, { - "label": "prisma", + "label": "Reports.tsx", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L69", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L1", "_origin": "ast", - "id": "backend_package_devdependencies_prisma", + "id": "frontend_admin_panel_src_pages_reports", "community": 179, - "community_name": "prisma", - "norm_label": "prisma" + "community_name": "Reports.tsx", + "norm_label": "reports.tsx" }, { - "label": "prisma", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L69", + "label": "COLORS", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L24", "_origin": "ast", - "id": "prisma", + "id": "frontend_admin_panel_src_pages_reports_colors", "community": 179, - "community_name": "prisma", - "norm_label": "prisma" + "community_name": "Reports.tsx", + "norm_label": "colors" + }, + { + "label": "Reports", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L16", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_reports", + "community": 179, + "community_name": "Reports.tsx", + "norm_label": "reports" + }, + { + "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": 18, + "community_name": "JwtAuthGuard", + "norm_label": "admin/blogs.controller.ts" }, { "label": "categories.controller.ts", @@ -27257,28 +26718,6 @@ "community_name": "JwtAuthGuard", "norm_label": "prescriptions.controller.ts" }, - { - "label": "create-review.dto.ts", - "file_type": "code", - "source_file": "backend/src/reviews/dto/create-review.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_reviews_dto_create_review_dto", - "community": 18, - "community_name": "JwtAuthGuard", - "norm_label": "create-review.dto.ts" - }, - { - "label": "update-review.dto.ts", - "file_type": "code", - "source_file": "backend/src/reviews/dto/update-review.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto", - "community": 18, - "community_name": "JwtAuthGuard", - "norm_label": "update-review.dto.ts" - }, { "label": "reviews.controller.ts", "file_type": "code", @@ -27290,17 +26729,6 @@ "community_name": "JwtAuthGuard", "norm_label": "reviews.controller.ts" }, - { - "label": "reviews.service.ts", - "file_type": "code", - "source_file": "backend/src/reviews/reviews.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_reviews_reviews_service", - "community": 18, - "community_name": "JwtAuthGuard", - "norm_label": "reviews.service.ts" - }, { "label": "settings.controller.ts", "file_type": "code", @@ -27532,6 +26960,138 @@ "community_name": "\ud83d\ude80 SEO & Content Strategy Review (12_seo_content)", "norm_label": "\ud83d\ude80 seo & content strategy review (12_seo_content)" }, + { + "label": "auth.controller.ts", + "file_type": "code", + "source_file": "backend/src/auth/auth.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_auth_auth_controller", + "community": 184, + "community_name": "auth.controller.ts", + "norm_label": "auth.controller.ts" + }, + { + "label": "admin-login.dto.ts", + "file_type": "code", + "source_file": "backend/src/auth/dto/admin-login.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_auth_dto_admin_login_dto", + "community": 184, + "community_name": "auth.controller.ts", + "norm_label": "admin-login.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_auth_dto_admin_login_dto_ts_apiproperty", + "community": 184, + "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": 184, + "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": 184, + "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": 184, + "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": 184, + "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": 184, + "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": 184, + "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": 184, + "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": 184, + "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": 184, + "community_name": "auth.controller.ts", + "norm_label": "minlength" + }, { "label": "register.dto.ts", "file_type": "code", @@ -27540,7 +27100,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "register.dto.ts" }, { @@ -27551,7 +27111,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_apiproperty", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "apiproperty" }, { @@ -27562,7 +27122,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_apipropertyoptional", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "apipropertyoptional" }, { @@ -27573,7 +27133,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_isemail", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "isemail" }, { @@ -27584,7 +27144,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_isnotempty", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "isnotempty" }, { @@ -27595,7 +27155,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_isoptional", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "isoptional" }, { @@ -27606,7 +27166,7 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_isstring", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "isstring" }, { @@ -27617,9 +27177,64 @@ "_origin": "ast", "id": "backend_src_auth_dto_register_dto_ts_minlength", "community": 184, - "community_name": "RegisterDto", + "community_name": "auth.controller.ts", "norm_label": "minlength" }, + { + "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": 184, + "community_name": "auth.controller.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": 184, + "community_name": "auth.controller.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": 184, + "community_name": "auth.controller.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": 184, + "community_name": "auth.controller.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": 184, + "community_name": "auth.controller.ts", + "norm_label": "matches" + }, { "label": "sms-log-query.dto.ts", "file_type": "code", @@ -28292,15 +27907,15 @@ "norm_label": "select" }, { - "label": "admin-login.dto.ts", + "label": "wholesale-apply.dto.ts", "file_type": "code", - "source_file": "backend/src/auth/dto/admin-login.dto.ts", + "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto", + "id": "backend_src_wholesale_dto_wholesale_apply_dto", "community": 197, - "community_name": "AdminLoginDto", - "norm_label": "admin-login.dto.ts" + "community_name": "WholesaleApplyDto", + "norm_label": "wholesale-apply.dto.ts" }, { "label": "ApiProperty", @@ -28308,21 +27923,21 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto_ts_apiproperty", + "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_apiproperty", "community": 197, - "community_name": "AdminLoginDto", + "community_name": "WholesaleApplyDto", "norm_label": "apiproperty" }, { - "label": "IsEmail", + "label": "ApiPropertyOptional", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto_ts_isemail", + "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_apipropertyoptional", "community": 197, - "community_name": "AdminLoginDto", - "norm_label": "isemail" + "community_name": "WholesaleApplyDto", + "norm_label": "apipropertyoptional" }, { "label": "IsNotEmpty", @@ -28330,87 +27945,54 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto_ts_isnotempty", + "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isnotempty", "community": 197, - "community_name": "AdminLoginDto", + "community_name": "WholesaleApplyDto", "norm_label": "isnotempty" }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isoptional", + "community": 197, + "community_name": "WholesaleApplyDto", + "norm_label": "isoptional" + }, { "label": "IsString", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto_ts_isstring", + "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isstring", "community": 197, - "community_name": "AdminLoginDto", + "community_name": "WholesaleApplyDto", "norm_label": "isstring" }, { - "label": "MinLength", + "label": "wholesale.service.ts", "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_admin_login_dto_ts_minlength", - "community": 197, - "community_name": "AdminLoginDto", - "norm_label": "minlength" - }, - { - "label": "login.dto.ts", - "file_type": "code", - "source_file": "backend/src/auth/dto/login.dto.ts", + "source_file": "backend/src/wholesale/wholesale.service.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_auth_dto_login_dto", - "community": 198, - "community_name": "LoginDto", - "norm_label": "login.dto.ts" + "id": "backend_src_wholesale_wholesale_service", + "community": 197, + "community_name": "WholesaleApplyDto", + "norm_label": "wholesale.service.ts" }, { - "label": "ApiProperty", + "label": "Injectable", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_auth_dto_login_dto_ts_apiproperty", + "id": "backend_src_admin_wiki_service_ts_injectable", "community": 198, - "community_name": "LoginDto", - "norm_label": "apiproperty" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_login_dto_ts_isnotempty", - "community": 198, - "community_name": "LoginDto", - "norm_label": "isnotempty" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_login_dto_ts_isstring", - "community": 198, - "community_name": "LoginDto", - "norm_label": "isstring" - }, - { - "label": "MinLength", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_dto_login_dto_ts_minlength", - "community": 198, - "community_name": "LoginDto", - "norm_label": "minlength" + "community_name": "WikiService", + "norm_label": "injectable" }, { "label": "videos/page.tsx", @@ -28511,6 +28093,72 @@ "community_name": "CreateVideoDto", "norm_label": "isstring" }, + { + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "norm_label": "videos.controller.ts" + }, { "label": "ApiBearerAuth", "file_type": "code", @@ -28654,6 +28302,39 @@ "community_name": "CreateVideoDto", "norm_label": "useguards" }, + { + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "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": 20, + "community_name": "CreateVideoDto", + "norm_label": "videos.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -29012,26 +28693,15 @@ "norm_label": "module" }, { - "label": "media.controller.ts", + "label": "admin/pets.service.ts", "file_type": "code", - "source_file": "backend/src/admin/media.controller.ts", + "source_file": "backend/src/admin/pets.service.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_admin_media_controller", + "id": "backend_src_admin_pets_service", "community": 21, "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": 21, - "community_name": "admin.module.ts", - "norm_label": "media.service.ts" + "norm_label": "admin/pets.service.ts" }, { "label": "Injectable", @@ -29039,7 +28709,7 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_admin_media_service_ts_injectable", + "id": "backend_src_admin_pets_service_ts_injectable", "community": 21, "community_name": "admin.module.ts", "norm_label": "injectable" @@ -29166,48 +28836,37 @@ "norm_label": "injectable" }, { - "label": "ssl.service.ts", + "label": "redis.module.ts", "file_type": "code", - "source_file": "backend/src/admin/ssl.service.ts", + "source_file": "backend/src/redis/redis.module.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_admin_ssl_service", + "id": "backend_src_redis_redis_module", "community": 21, "community_name": "admin.module.ts", - "norm_label": "ssl.service.ts" + "norm_label": "redis.module.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": 21, - "community_name": "admin.module.ts", - "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": 21, - "community_name": "admin.module.ts", - "norm_label": "admin/wiki.service.ts" - }, - { - "label": "Injectable", + "label": "Global", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_admin_wiki_service_ts_injectable", + "id": "backend_src_redis_redis_module_ts_global", "community": 21, "community_name": "admin.module.ts", - "norm_label": "injectable" + "norm_label": "global" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_redis_redis_module_ts_module", + "community": 21, + "community_name": "admin.module.ts", + "norm_label": "module" }, { "label": "18-compiler-diagnostic-dispositions.md", @@ -29485,15 +29144,15 @@ "norm_label": "formfield.tsx" }, { - "label": "admin.service.spec.ts", + "label": "admin/blogs.service.ts", "file_type": "code", - "source_file": "backend/src/admin/admin.service.spec.ts", + "source_file": "backend/src/admin/blogs.service.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_admin_admin_service_spec", + "id": "backend_src_admin_blogs_service", "community": 22, "community_name": "RevalidationService", - "norm_label": "admin.service.spec.ts" + "norm_label": "admin/blogs.service.ts" }, { "label": "revalidation.module.ts", @@ -29506,6 +29165,28 @@ "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": 22, + "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": 22, + "community_name": "RevalidationService", + "norm_label": "module" + }, { "label": "revalidation.service.ts", "file_type": "code", @@ -29628,26 +29309,70 @@ "norm_label": "catalog/page.tsx" }, { - "label": "bcrypt", + "label": "verify-otp.dto.ts", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L33", + "source_file": "backend/src/auth/dto/verify-otp.dto.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_package_dependencies_bcrypt", + "id": "backend_src_auth_dto_verify_otp_dto", "community": 224, - "community_name": "bcrypt", - "norm_label": "bcrypt" + "community_name": "VerifyOtpDto", + "norm_label": "verify-otp.dto.ts" }, { - "label": "bcrypt", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L33", + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "bcrypt", + "id": "backend_src_auth_dto_verify_otp_dto_ts_apiproperty", "community": 224, - "community_name": "bcrypt", - "norm_label": "bcrypt" + "community_name": "VerifyOtpDto", + "norm_label": "apiproperty" + }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_auth_dto_verify_otp_dto_ts_isnotempty", + "community": 224, + "community_name": "VerifyOtpDto", + "norm_label": "isnotempty" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_auth_dto_verify_otp_dto_ts_isstring", + "community": 224, + "community_name": "VerifyOtpDto", + "norm_label": "isstring" + }, + { + "label": "Matches", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_auth_dto_verify_otp_dto_ts_matches", + "community": 224, + "community_name": "VerifyOtpDto", + "norm_label": "matches" + }, + { + "label": "Length", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "length", + "community": 224, + "community_name": "VerifyOtpDto", + "norm_label": "length" }, { "label": "next.config.ts", @@ -29891,6 +29616,39 @@ "community_name": "MenuService", "norm_label": "useguards" }, + { + "label": "menu.module.ts", + "file_type": "code", + "source_file": "backend/src/menu/menu.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_menu_menu_module", + "community": 23, + "community_name": "MenuService", + "norm_label": "menu.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_menu_menu_module_ts_module", + "community": 23, + "community_name": "MenuService", + "norm_label": "module" + }, + { + "label": "menu.service.ts", + "file_type": "code", + "source_file": "backend/src/menu/menu.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_menu_menu_service", + "community": 23, + "community_name": "MenuService", + "norm_label": "menu.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -29925,48 +29683,114 @@ "norm_label": "graphify" }, { - "label": "class-transformer", + "label": "ApiProperty", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L35", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_package_dependencies_class_transformer", + "id": "backend_src_users_dto_address_dto_ts_apiproperty", "community": 231, - "community_name": "class-transformer", - "norm_label": "class-transformer" + "community_name": "AddressDto", + "norm_label": "apiproperty" }, { - "label": "class-transformer", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L35", - "_origin": "ast", - "id": "class_transformer", - "community": 231, - "community_name": "class-transformer", - "norm_label": "class-transformer" - }, - { - "label": "helmet", + "label": "ApiPropertyOptional", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L38", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_package_dependencies_helmet", - "community": 232, - "community_name": "helmet", - "norm_label": "helmet" + "id": "backend_src_users_dto_address_dto_ts_apipropertyoptional", + "community": 231, + "community_name": "AddressDto", + "norm_label": "apipropertyoptional" }, { - "label": "helmet", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L38", + "label": "IsBoolean", + "file_type": "code", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "helmet", + "id": "backend_src_users_dto_address_dto_ts_isboolean", + "community": 231, + "community_name": "AddressDto", + "norm_label": "isboolean" + }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_users_dto_address_dto_ts_isnotempty", + "community": 231, + "community_name": "AddressDto", + "norm_label": "isnotempty" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_users_dto_address_dto_ts_isoptional", + "community": 231, + "community_name": "AddressDto", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_users_dto_address_dto_ts_isstring", + "community": 231, + "community_name": "AddressDto", + "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": "backend_src_payment_dto_verify_payment_dto", "community": 232, - "community_name": "helmet", - "norm_label": "helmet" + "community_name": "ZibalCallbackQueryDto", + "norm_label": "verify-payment.dto.ts" + }, + { + "label": "ApiPropertyOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_verify_payment_dto_ts_apipropertyoptional", + "community": 232, + "community_name": "ZibalCallbackQueryDto", + "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": 232, + "community_name": "ZibalCallbackQueryDto", + "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": 232, + "community_name": "ZibalCallbackQueryDto", + "norm_label": "isstring" }, { "label": "tailwindcss", @@ -29991,136 +29815,92 @@ "norm_label": "tailwindcss" }, { - "label": "@nestjs/schematics", + "label": "@types/node", "file_type": "code", "source_file": "backend/package.json", - "source_location": "L51", + "source_location": "L60", "_origin": "ast", - "id": "backend_package_devdependencies_nestjs_schematics", - "community": 234, - "community_name": "@nestjs/schematics", - "norm_label": "@nestjs/schematics" - }, - { - "label": "@nestjs/schematics", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L51", - "_origin": "ast", - "id": "nestjs_schematics", - "community": 234, - "community_name": "@nestjs/schematics", - "norm_label": "@nestjs/schematics" - }, - { - "label": "js-yaml", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L40", - "_origin": "ast", - "id": "backend_package_dependencies_js_yaml", + "id": "backend_package_devdependencies_types_node", "community": 235, - "community_name": "js-yaml", - "norm_label": "js-yaml" + "community_name": "@types/node", + "norm_label": "@types/node" }, { - "label": "js-yaml", + "label": "@types/node", "file_type": "concept", "source_file": "backend/package.json", - "source_location": "L40", + "source_location": "L60", "_origin": "ast", - "id": "js_yaml", + "id": "backend_package_json_types_node", "community": 235, - "community_name": "js-yaml", - "norm_label": "js-yaml" + "community_name": "@types/node", + "norm_label": "@types/node" }, { - "label": "@nestjs/core", + "label": "eslint-config-next", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L26", + "source_file": "frontend/application/package.json", + "source_location": "L31", "_origin": "ast", - "id": "backend_package_dependencies_nestjs_core", + "id": "frontend_application_package_devdependencies_eslint_config_next", "community": 236, - "community_name": "@nestjs/core", - "norm_label": "@nestjs/core" + "community_name": "eslint-config-next", + "norm_label": "eslint-config-next" }, { - "label": "@nestjs/core", + "label": "eslint-config-next", "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L26", + "source_file": "frontend/application/package.json", + "source_location": "L31", "_origin": "ast", - "id": "nestjs_core", + "id": "eslint_config_next", "community": 236, - "community_name": "@nestjs/core", - "norm_label": "@nestjs/core" + "community_name": "eslint-config-next", + "norm_label": "eslint-config-next" }, { - "label": "source-map-support", + "label": "@tailwindcss/postcss", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L70", + "source_file": "frontend/application/package.json", + "source_location": "L23", "_origin": "ast", - "id": "backend_package_devdependencies_source_map_support", + "id": "frontend_application_package_devdependencies_tailwindcss_postcss", "community": 237, - "community_name": "source-map-support", - "norm_label": "source-map-support" + "community_name": "@tailwindcss/postcss", + "norm_label": "@tailwindcss/postcss" }, { - "label": "source-map-support", + "label": "@tailwindcss/postcss", "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L70", + "source_file": "frontend/application/package.json", + "source_location": "L23", "_origin": "ast", - "id": "source_map_support", + "id": "frontend_application_package_json_tailwindcss_postcss", "community": 237, - "community_name": "source-map-support", - "norm_label": "source-map-support" + "community_name": "@tailwindcss/postcss", + "norm_label": "@tailwindcss/postcss" }, { - "label": "@nestjs/jwt", + "label": "@vitejs/plugin-react", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L27", + "source_file": "frontend/application/package.json", + "source_location": "L29", "_origin": "ast", - "id": "backend_package_dependencies_nestjs_jwt", + "id": "frontend_application_package_devdependencies_vitejs_plugin_react", "community": 238, - "community_name": "@nestjs/jwt", - "norm_label": "@nestjs/jwt" + "community_name": "@vitejs/plugin-react", + "norm_label": "@vitejs/plugin-react" }, { - "label": "@nestjs/jwt", + "label": "@vitejs/plugin-react", "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L27", + "source_file": "frontend/application/package.json", + "source_location": "L29", "_origin": "ast", - "id": "nestjs_jwt", + "id": "frontend_application_package_json_vitejs_plugin_react", "community": 238, - "community_name": "@nestjs/jwt", - "norm_label": "@nestjs/jwt" - }, - { - "label": "ts-loader", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L73", - "_origin": "ast", - "id": "backend_package_devdependencies_ts_loader", - "community": 239, - "community_name": "ts-loader", - "norm_label": "ts-loader" - }, - { - "label": "ts-loader", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L73", - "_origin": "ast", - "id": "ts_loader", - "community": 239, - "community_name": "ts-loader", - "norm_label": "ts-loader" + "community_name": "@vitejs/plugin-react", + "norm_label": "@vitejs/plugin-react" }, { "label": "07-backend-audit.md", @@ -31480,116 +31260,6 @@ "community_name": "generate-openapi.d.ts", "norm_label": "generate-openapi.d.ts" }, - { - "label": "ts-node", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L74", - "_origin": "ast", - "id": "backend_package_devdependencies_ts_node", - "community": 264, - "community_name": "ts-node", - "norm_label": "ts-node" - }, - { - "label": "ts-node", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L74", - "_origin": "ast", - "id": "ts_node", - "community": 264, - "community_name": "ts-node", - "norm_label": "ts-node" - }, - { - "label": "@testing-library/jest-dom", - "file_type": "code", - "source_file": "frontend/application/package.json", - "source_location": "L23", - "_origin": "ast", - "id": "frontend_application_package_devdependencies_testing_library_jest_dom", - "community": 265, - "community_name": "@testing-library/jest-dom", - "norm_label": "@testing-library/jest-dom" - }, - { - "label": "@testing-library/jest-dom", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L23", - "_origin": "ast", - "id": "testing_library_jest_dom", - "community": 265, - "community_name": "@testing-library/jest-dom", - "norm_label": "@testing-library/jest-dom" - }, - { - "label": "tsconfig-paths", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L75", - "_origin": "ast", - "id": "backend_package_devdependencies_tsconfig_paths", - "community": 266, - "community_name": "tsconfig-paths", - "norm_label": "tsconfig-paths" - }, - { - "label": "tsconfig-paths", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L75", - "_origin": "ast", - "id": "tsconfig_paths", - "community": 266, - "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": 267, - "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": 267, - "community_name": "@types/bcrypt", - "norm_label": "@types/bcrypt" - }, - { - "label": "@types/compression", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L55", - "_origin": "ast", - "id": "backend_package_devdependencies_types_compression", - "community": 268, - "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": 268, - "community_name": "@types/compression", - "norm_label": "@types/compression" - }, { "label": "eslint-plugin-react-hooks", "file_type": "code", @@ -32795,32 +32465,21 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_payment_zibal_service_ts_injectable", + "id": "backend_src_payment_payment_service_ts_injectable", "community": 294, "community_name": "ZibalService", "norm_label": "injectable" }, { - "label": "@types/express", + "label": "Injectable", "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L56", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_package_devdependencies_types_express", - "community": 295, - "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": 295, - "community_name": "@types/express", - "norm_label": "@types/express" + "id": "backend_src_payment_zibal_service_ts_injectable", + "community": 294, + "community_name": "ZibalService", + "norm_label": "injectable" }, { "label": "eslint-plugin-prettier", @@ -32855,50 +32514,6 @@ "community_name": "ZibalEBankService", "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": ".initiateOrderPayment", - "norm_label": "verify-payment.dto.ts" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_payment_dto_verify_payment_dto_ts_apipropertyoptional", - "community": 298, - "community_name": ".initiateOrderPayment", - "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": 298, - "community_name": ".initiateOrderPayment", - "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": 298, - "community_name": ".initiateOrderPayment", - "norm_label": "isstring" - }, { "label": "ApiBadRequestResponse", "file_type": "code", @@ -33614,28 +33229,6 @@ "community_name": "typescript", "norm_label": "typescript" }, - { - "label": "@types/jest", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L57", - "_origin": "ast", - "id": "backend_package_devdependencies_types_jest", - "community": 301, - "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": 301, - "community_name": "@types/jest", - "norm_label": "@types/jest" - }, { "label": "typescript-eslint", "file_type": "code", @@ -33658,72 +33251,6 @@ "community_name": "typescript-eslint", "norm_label": "typescript-eslint" }, - { - "label": "@nestjs/swagger", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L30", - "_origin": "ast", - "id": "backend_package_dependencies_nestjs_swagger", - "community": 303, - "community_name": "@nestjs/swagger", - "norm_label": "@nestjs/swagger" - }, - { - "label": "@nestjs/swagger", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L30", - "_origin": "ast", - "id": "nestjs_swagger", - "community": 303, - "community_name": "@nestjs/swagger", - "norm_label": "@nestjs/swagger" - }, - { - "label": "@types/multer", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L59", - "_origin": "ast", - "id": "backend_package_devdependencies_types_multer", - "community": 304, - "community_name": "@types/multer", - "norm_label": "@types/multer" - }, - { - "label": "@types/multer", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L59", - "_origin": "ast", - "id": "types_multer", - "community": 304, - "community_name": "@types/multer", - "norm_label": "@types/multer" - }, - { - "label": "@types/react", - "file_type": "code", - "source_file": "frontend/application/package.json", - "source_location": "L26", - "_origin": "ast", - "id": "frontend_application_package_devdependencies_types_react", - "community": 305, - "community_name": "@types/react", - "norm_label": "@types/react" - }, - { - "label": "@types/react", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L26", - "_origin": "ast", - "id": "frontend_application_package_json_types_react", - "community": 305, - "community_name": "@types/react", - "norm_label": "@types/react" - }, { "label": "globals", "file_type": "code", @@ -33746,50 +33273,6 @@ "community_name": "globals", "norm_label": "globals" }, - { - "label": "@nestjs/throttler", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L31", - "_origin": "ast", - "id": "backend_package_dependencies_nestjs_throttler", - "community": 307, - "community_name": "@nestjs/throttler", - "norm_label": "@nestjs/throttler" - }, - { - "label": "@nestjs/throttler", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L31", - "_origin": "ast", - "id": "nestjs_throttler", - "community": 307, - "community_name": "@nestjs/throttler", - "norm_label": "@nestjs/throttler" - }, - { - "label": "vitest", - "file_type": "code", - "source_file": "frontend/application/package.json", - "source_location": "L34", - "_origin": "ast", - "id": "frontend_application_package_devdependencies_vitest", - "community": 308, - "community_name": "vitest", - "norm_label": "vitest" - }, - { - "label": "vitest", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L34", - "_origin": "ast", - "id": "vitest", - "community": 308, - "community_name": "vitest", - "norm_label": "vitest" - }, { "label": "axios", "file_type": "code", @@ -34164,28 +33647,6 @@ "community_name": "tailwindcss", "norm_label": "tailwindcss" }, - { - "label": "reflect-metadata", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L43", - "_origin": "ast", - "id": "backend_package_dependencies_reflect_metadata", - "community": 311, - "community_name": "reflect-metadata", - "norm_label": "reflect-metadata" - }, - { - "label": "reflect-metadata", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L43", - "_origin": "ast", - "id": "reflect_metadata", - "community": 311, - "community_name": "reflect-metadata", - "norm_label": "reflect-metadata" - }, { "label": "@types/passport-jwt", "file_type": "code", @@ -34241,33 +33702,11 @@ "community_name": "20260526160916_add_ui_texts_and_scientific_terms/migration.sql", "norm_label": "\"ui_texts\"" }, - { - "label": "typescript-eslint", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L77", - "_origin": "ast", - "id": "backend_package_devdependencies_typescript_eslint", - "community": 314, - "community_name": "typescript-eslint", - "norm_label": "typescript-eslint" - }, - { - "label": "typescript-eslint", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L77", - "_origin": "ast", - "id": "backend_package_json_typescript_eslint", - "community": 314, - "community_name": "typescript-eslint", - "norm_label": "typescript-eslint" - }, { "label": "typescript", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L33", + "source_location": "L34", "_origin": "ast", "id": "frontend_application_package_devdependencies_typescript", "community": 315, @@ -34278,35 +33717,13 @@ "label": "typescript", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L33", + "source_location": "L34", "_origin": "ast", "id": "frontend_application_package_json_typescript", "community": 315, "community_name": "typescript", "norm_label": "typescript" }, - { - "label": "swagger-ui-express", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L45", - "_origin": "ast", - "id": "backend_package_dependencies_swagger_ui_express", - "community": 316, - "community_name": "swagger-ui-express", - "norm_label": "swagger-ui-express" - }, - { - "label": "swagger-ui-express", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L45", - "_origin": "ast", - "id": "swagger_ui_express", - "community": 316, - "community_name": "swagger-ui-express", - "norm_label": "swagger-ui-express" - }, { "label": "revalidate/route.ts", "file_type": "code", @@ -34395,28 +33812,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "cms.tsx" }, - { - "label": "Reports.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "reports.tsx" - }, - { - "label": "COLORS", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Reports.tsx", - "source_location": "L24", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_reports_colors", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "colors" - }, { "label": "adminRoutes.tsx", "file_type": "code", @@ -34450,17 +33845,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "paymentgatewayspage" }, - { - "label": "Reports", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L16", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_reports", - "community": 32, - "community_name": "adminRoutes.tsx", - "norm_label": "reports" - }, { "label": "Reviews", "file_type": "code", @@ -34549,28 +33933,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "lazywithretry.ts" }, - { - "label": "@testing-library/react", - "file_type": "code", - "source_file": "frontend/application/package.json", - "source_location": "L24", - "_origin": "ast", - "id": "frontend_application_package_devdependencies_testing_library_react", - "community": 320, - "community_name": "@testing-library/react", - "norm_label": "@testing-library/react" - }, - { - "label": "@testing-library/react", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L24", - "_origin": "ast", - "id": "testing_library_react", - "community": 320, - "community_name": "@testing-library/react", - "norm_label": "@testing-library/react" - }, { "label": "orders/page.tsx", "file_type": "code", @@ -34593,55 +33955,11 @@ "community_name": "pets/page.tsx", "norm_label": "pets/page.tsx" }, - { - "label": "eslint-config-prettier", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L64", - "_origin": "ast", - "id": "backend_package_devdependencies_eslint_config_prettier", - "community": 323, - "community_name": "eslint-config-prettier", - "norm_label": "eslint-config-prettier" - }, - { - "label": "eslint-config-prettier", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L64", - "_origin": "ast", - "id": "eslint_config_prettier", - "community": 323, - "community_name": "eslint-config-prettier", - "norm_label": "eslint-config-prettier" - }, - { - "label": "@eslint/eslintrc", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L48", - "_origin": "ast", - "id": "backend_package_devdependencies_eslint_eslintrc", - "community": 324, - "community_name": "@eslint/eslintrc", - "norm_label": "@eslint/eslintrc" - }, - { - "label": "@eslint/eslintrc", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L48", - "_origin": "ast", - "id": "eslint_eslintrc", - "community": 324, - "community_name": "@eslint/eslintrc", - "norm_label": "@eslint/eslintrc" - }, { "label": "@types/react-dom", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L27", + "source_location": "L28", "_origin": "ast", "id": "frontend_application_package_devdependencies_types_react_dom", "community": 325, @@ -34652,7 +33970,7 @@ "label": "@types/react-dom", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L27", + "source_location": "L28", "_origin": "ast", "id": "frontend_application_package_json_types_react_dom", "community": 325, @@ -34725,83 +34043,6 @@ "community_name": "@nestjs/cli", "norm_label": "@nestjs/cli" }, - { - "label": "@nestjs/testing", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L52", - "_origin": "ast", - "id": "backend_package_devdependencies_nestjs_testing", - "community": 329, - "community_name": "@nestjs/testing", - "norm_label": "@nestjs/testing" - }, - { - "label": "@nestjs/testing", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L52", - "_origin": "ast", - "id": "nestjs_testing", - "community": 329, - "community_name": "@nestjs/testing", - "norm_label": "@nestjs/testing" - }, - { - "label": "ApiProperty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_apiproperty", - "community": 33, - "community_name": "WholesaleApplyDto", - "norm_label": "apiproperty" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_apipropertyoptional", - "community": 33, - "community_name": "WholesaleApplyDto", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isnotempty", - "community": 33, - "community_name": "WholesaleApplyDto", - "norm_label": "isnotempty" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isoptional", - "community": 33, - "community_name": "WholesaleApplyDto", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isstring", - "community": 33, - "community_name": "WholesaleApplyDto", - "norm_label": "isstring" - }, { "label": "ApiBearerAuth", "file_type": "code", @@ -34810,7 +34051,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_apibearerauth", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "apibearerauth" }, { @@ -34821,7 +34062,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_apioperation", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "apioperation" }, { @@ -34832,7 +34073,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_apitags", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "apitags" }, { @@ -34843,7 +34084,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_body", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "body" }, { @@ -34854,7 +34095,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_controller", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "controller" }, { @@ -34865,7 +34106,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_get", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "get" }, { @@ -34876,7 +34117,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_param", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "param" }, { @@ -34887,7 +34128,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_post", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "post" }, { @@ -34898,7 +34139,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_put", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "put" }, { @@ -34909,7 +34150,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_request", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "request" }, { @@ -34920,7 +34161,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_useguards", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "useguards" }, { @@ -34931,7 +34172,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_ts_injectable", "community": 33, - "community_name": "WholesaleApplyDto", + "community_name": "WholesaleService", "norm_label": "injectable" }, { @@ -34956,72 +34197,6 @@ "community_name": "prettier", "norm_label": "prettier" }, - { - "label": "ts-jest", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L72", - "_origin": "ast", - "id": "backend_package_devdependencies_ts_jest", - "community": 331, - "community_name": "ts-jest", - "norm_label": "ts-jest" - }, - { - "label": "ts-jest", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L72", - "_origin": "ast", - "id": "ts_jest", - "community": 331, - "community_name": "ts-jest", - "norm_label": "ts-jest" - }, - { - "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": 332, - "community_name": "app.e2e-spec.js", - "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": 332, - "community_name": "app.e2e-spec.js", - "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": 332, - "community_name": "app.e2e-spec.js", - "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": 332, - "community_name": "app.e2e-spec.js", - "norm_label": "testing_1" - }, { "label": "app/page.tsx", "file_type": "code", @@ -35033,50 +34208,6 @@ "community_name": "app/page.tsx", "norm_label": "app/page.tsx" }, - { - "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": 334, - "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": 334, - "community_name": "@types/js-yaml", - "norm_label": "@types/js-yaml" - }, - { - "label": "@types/supertest", - "file_type": "code", - "source_file": "backend/package.json", - "source_location": "L62", - "_origin": "ast", - "id": "backend_package_devdependencies_types_supertest", - "community": 335, - "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": 335, - "community_name": "@types/supertest", - "norm_label": "@types/supertest" - }, { "label": "ApiBearerAuth", "file_type": "code", @@ -35209,6 +34340,17 @@ "community_name": "B2BService", "norm_label": "useguards" }, + { + "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", @@ -35220,6 +34362,17 @@ "community_name": "B2BService", "norm_label": "injectable" }, + { + "label": "auth.controller.spec.ts", + "file_type": "code", + "source_file": "backend/src/auth/auth.controller.spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_auth_auth_controller_spec", + "community": 35, + "community_name": "AuthController", + "norm_label": "auth.controller.spec.ts" + }, { "label": "ApiBadRequestResponse", "file_type": "code", @@ -35473,6 +34626,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", @@ -36155,6 +35341,17 @@ "community_name": "ProductPage.tsx", "norm_label": "scientific_terms" }, + { + "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": 40, + "community_name": "MediaController", + "norm_label": "media.controller.ts" + }, { "label": "ApiBearerAuth", "file_type": "code", @@ -36299,92 +35496,26 @@ "norm_label": "useinterceptors" }, { - "label": "ApiNotFoundResponse", + "label": "media.service.ts", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/admin/media.service.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_apinotfoundresponse", + "id": "backend_src_admin_media_service", "community": 40, "community_name": "MediaController", - "norm_label": "apinotfoundresponse" + "norm_label": "media.service.ts" }, { - "label": "ApiOkResponse", + "label": "Injectable", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_apiokresponse", + "id": "backend_src_admin_media_service_ts_injectable", "community": 40, "community_name": "MediaController", - "norm_label": "apiokresponse" - }, - { - "label": "ApiOperation", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_apioperation", - "community": 40, - "community_name": "MediaController", - "norm_label": "apioperation" - }, - { - "label": "ApiTags", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_apitags", - "community": 40, - "community_name": "MediaController", - "norm_label": "apitags" - }, - { - "label": "Controller", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_controller", - "community": 40, - "community_name": "MediaController", - "norm_label": "controller" - }, - { - "label": "Get", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_get", - "community": 40, - "community_name": "MediaController", - "norm_label": "get" - }, - { - "label": "Param", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_param", - "community": 40, - "community_name": "MediaController", - "norm_label": "param" - }, - { - "label": "Query", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_wiki_wiki_controller_ts_query", - "community": 40, - "community_name": "MediaController", - "norm_label": "query" + "norm_label": "injectable" }, { "label": ".antigravity/workflows/graphify.md", @@ -36793,6 +35924,17 @@ "community_name": "SslController", "norm_label": "useinterceptors" }, + { + "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": 42, + "community_name": "SslController", + "norm_label": "ssl.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -36947,6 +36089,17 @@ "community_name": "BannersService", "norm_label": "useguards" }, + { + "label": "banners.service.ts", + "file_type": "code", + "source_file": "backend/src/banners/banners.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_banners_banners_service", + "community": 43, + "community_name": "BannersService", + "norm_label": "banners.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -37079,6 +36232,39 @@ "community_name": "TestimonialsService", "norm_label": "useguards" }, + { + "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": 44, + "community_name": "TestimonialsService", + "norm_label": "testimonials.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_testimonials_testimonials_module_ts_module", + "community": 44, + "community_name": "TestimonialsService", + "norm_label": "module" + }, + { + "label": "testimonials.service.ts", + "file_type": "code", + "source_file": "backend/src/testimonials/testimonials.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_testimonials_testimonials_service", + "community": 44, + "community_name": "TestimonialsService", + "norm_label": "testimonials.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -37673,6 +36859,17 @@ "community_name": "IngredientsService", "norm_label": "useguards" }, + { + "label": "ingredients.service.ts", + "file_type": "code", + "source_file": "backend/src/ingredients/ingredients.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_ingredients_ingredients_service", + "community": 47, + "community_name": "IngredientsService", + "norm_label": "ingredients.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -38058,17 +37255,6 @@ "community_name": "devDependencies", "norm_label": "postcss" }, - { - "label": "cms.controller.ts", - "file_type": "code", - "source_file": "backend/src/cms/cms.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_cms_cms_controller", - "community": 5, - "community_name": "CmsController", - "norm_label": "cms.controller.ts" - }, { "label": "ApiBearerAuth", "file_type": "code", @@ -38190,17 +37376,6 @@ "community_name": "CmsController", "norm_label": "useguards" }, - { - "label": "cms.service.ts", - "file_type": "code", - "source_file": "backend/src/cms/cms.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_cms_cms_service", - "community": 5, - "community_name": "CmsController", - "norm_label": "cms.service.ts" - }, { "label": "Injectable", "file_type": "code", @@ -38212,99 +37387,11 @@ "community_name": "CmsController", "norm_label": "injectable" }, - { - "label": "cms.dto.ts", - "file_type": "code", - "source_file": "backend/src/cms/dto/cms.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto", - "community": 5, - "community_name": "CmsController", - "norm_label": "cms.dto.ts" - }, - { - "label": "ApiProperty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_ts_apiproperty", - "community": 5, - "community_name": "CmsController", - "norm_label": "apiproperty" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_ts_apipropertyoptional", - "community": 5, - "community_name": "CmsController", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsBoolean", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_ts_isboolean", - "community": 5, - "community_name": "CmsController", - "norm_label": "isboolean" - }, - { - "label": "IsNumber", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_ts_isnumber", - "community": 5, - "community_name": "CmsController", - "norm_label": "isnumber" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_ts_isoptional", - "community": 5, - "community_name": "CmsController", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_cms_dto_cms_dto_ts_isstring", - "community": 5, - "community_name": "CmsController", - "norm_label": "isstring" - }, - { - "label": "IsUUID", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "isuuid", - "community": 5, - "community_name": "CmsController", - "norm_label": "isuuid" - }, { "label": "devDependencies", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L21", + "source_location": "L22", "_origin": "ast", "id": "frontend_application_package_devdependencies", "community": 50, @@ -38315,29 +37402,18 @@ "label": "eslint", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L29", + "source_location": "L30", "_origin": "ast", "id": "frontend_application_package_devdependencies_eslint", "community": 50, "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", "source_file": "frontend/application/package.json", - "source_location": "L31", + "source_location": "L32", "_origin": "ast", "id": "frontend_application_package_devdependencies_jsdom", "community": 50, @@ -38348,7 +37424,7 @@ "label": "tailwindcss", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L32", + "source_location": "L33", "_origin": "ast", "id": "frontend_application_package_devdependencies_tailwindcss", "community": 50, @@ -38356,21 +37432,32 @@ "norm_label": "tailwindcss" }, { - "label": "@tailwindcss/postcss", + "label": "@testing-library/jest-dom", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L22", + "source_location": "L24", "_origin": "ast", - "id": "frontend_application_package_devdependencies_tailwindcss_postcss", + "id": "frontend_application_package_devdependencies_testing_library_jest_dom", "community": 50, "community_name": "devDependencies", - "norm_label": "@tailwindcss/postcss" + "norm_label": "@testing-library/jest-dom" + }, + { + "label": "@testing-library/react", + "file_type": "code", + "source_file": "frontend/application/package.json", + "source_location": "L25", + "_origin": "ast", + "id": "frontend_application_package_devdependencies_testing_library_react", + "community": 50, + "community_name": "devDependencies", + "norm_label": "@testing-library/react" }, { "label": "@types/node", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L25", + "source_location": "L26", "_origin": "ast", "id": "frontend_application_package_devdependencies_types_node", "community": 50, @@ -38378,32 +37465,32 @@ "norm_label": "@types/node" }, { - "label": "@vitejs/plugin-react", + "label": "@types/react", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L28", + "source_location": "L27", "_origin": "ast", - "id": "frontend_application_package_devdependencies_vitejs_plugin_react", + "id": "frontend_application_package_devdependencies_types_react", "community": 50, "community_name": "devDependencies", - "norm_label": "@vitejs/plugin-react" + "norm_label": "@types/react" }, { - "label": "eslint-config-next", - "file_type": "concept", + "label": "vitest", + "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L30", + "source_location": "L35", "_origin": "ast", - "id": "eslint_config_next", + "id": "frontend_application_package_devdependencies_vitest", "community": 50, "community_name": "devDependencies", - "norm_label": "eslint-config-next" + "norm_label": "vitest" }, { "label": "eslint", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L29", + "source_location": "L30", "_origin": "ast", "id": "frontend_application_package_json_eslint", "community": 50, @@ -38414,29 +37501,18 @@ "label": "tailwindcss", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L32", + "source_location": "L33", "_origin": "ast", "id": "frontend_application_package_json_tailwindcss", "community": 50, "community_name": "devDependencies", "norm_label": "tailwindcss" }, - { - "label": "@tailwindcss/postcss", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L22", - "_origin": "ast", - "id": "frontend_application_package_json_tailwindcss_postcss", - "community": 50, - "community_name": "devDependencies", - "norm_label": "@tailwindcss/postcss" - }, { "label": "@types/node", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L25", + "source_location": "L26", "_origin": "ast", "id": "frontend_application_package_json_types_node", "community": 50, @@ -38444,27 +37520,60 @@ "norm_label": "@types/node" }, { - "label": "@vitejs/plugin-react", + "label": "@types/react", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L28", + "source_location": "L27", "_origin": "ast", - "id": "frontend_application_package_json_vitejs_plugin_react", + "id": "frontend_application_package_json_types_react", "community": 50, "community_name": "devDependencies", - "norm_label": "@vitejs/plugin-react" + "norm_label": "@types/react" }, { "label": "jsdom", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L31", + "source_location": "L32", "_origin": "ast", "id": "jsdom", "community": 50, "community_name": "devDependencies", "norm_label": "jsdom" }, + { + "label": "@testing-library/jest-dom", + "file_type": "concept", + "source_file": "frontend/application/package.json", + "source_location": "L24", + "_origin": "ast", + "id": "testing_library_jest_dom", + "community": 50, + "community_name": "devDependencies", + "norm_label": "@testing-library/jest-dom" + }, + { + "label": "@testing-library/react", + "file_type": "concept", + "source_file": "frontend/application/package.json", + "source_location": "L25", + "_origin": "ast", + "id": "testing_library_react", + "community": 50, + "community_name": "devDependencies", + "norm_label": "@testing-library/react" + }, + { + "label": "vitest", + "file_type": "concept", + "source_file": "frontend/application/package.json", + "source_location": "L35", + "_origin": "ast", + "id": "vitest", + "community": 50, + "community_name": "devDependencies", + "norm_label": "vitest" + }, { "label": "ApiBearerAuth", "file_type": "code", @@ -38751,6 +37860,17 @@ "community_name": "PrescriptionsService", "norm_label": "useguards" }, + { + "label": "prescriptions.service.ts", + "file_type": "code", + "source_file": "backend/src/prescriptions/prescriptions.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_prescriptions_prescriptions_service", + "community": 52, + "community_name": "PrescriptionsService", + "norm_label": "prescriptions.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -38883,6 +38003,39 @@ "community_name": "SmartAdvisorService", "norm_label": "useguards" }, + { + "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": 53, + "community_name": "SmartAdvisorService", + "norm_label": "smart-advisor.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_smart_advisor_smart_advisor_module_ts_module", + "community": 53, + "community_name": "SmartAdvisorService", + "norm_label": "module" + }, + { + "label": "smart-advisor.service.ts", + "file_type": "code", + "source_file": "backend/src/smart-advisor/smart-advisor.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_smart_advisor_smart_advisor_service", + "community": 53, + "community_name": "SmartAdvisorService", + "norm_label": "smart-advisor.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -40225,6 +39378,17 @@ "community_name": "tickets.controller.ts", "norm_label": "injectable" }, + { + "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": 60, + "community_name": "payment.service.ts", + "norm_label": "admin-transaction-filter.dto.ts" + }, { "label": "ApiPropertyOptional", "file_type": "code", @@ -40233,7 +39397,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_apipropertyoptional", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "apipropertyoptional" }, { @@ -40244,7 +39408,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isin", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "isin" }, { @@ -40255,7 +39419,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isnumber", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "isnumber" }, { @@ -40266,7 +39430,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isoptional", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "isoptional" }, { @@ -40277,7 +39441,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_isstring", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "isstring" }, { @@ -40288,19 +39452,19 @@ "_origin": "ast", "id": "backend_src_payment_dto_admin_transaction_filter_dto_ts_type", "community": 60, - "community_name": "PaymentService", + "community_name": "payment.service.ts", "norm_label": "type" }, { - "label": "Injectable", + "label": "payment.service.ts", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_payment_payment_service_ts_injectable", + "id": "backend_src_payment_payment_service", "community": 60, - "community_name": "PaymentService", - "norm_label": "injectable" + "community_name": "payment.service.ts", + "norm_label": "payment.service.ts" }, { "label": "[id]/page.tsx", @@ -40533,6 +39697,17 @@ "community_name": "dependencies", "norm_label": "dependencies" }, + { + "label": "bcrypt", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L33", + "_origin": "ast", + "id": "backend_package_dependencies_bcrypt", + "community": 63, + "community_name": "dependencies", + "norm_label": "bcrypt" + }, { "label": "bcryptjs", "file_type": "code", @@ -40544,6 +39719,17 @@ "community_name": "dependencies", "norm_label": "bcryptjs" }, + { + "label": "class-transformer", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L35", + "_origin": "ast", + "id": "backend_package_dependencies_class_transformer", + "community": 63, + "community_name": "dependencies", + "norm_label": "class-transformer" + }, { "label": "class-validator", "file_type": "code", @@ -40566,6 +39752,17 @@ "community_name": "dependencies", "norm_label": "compression" }, + { + "label": "helmet", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L38", + "_origin": "ast", + "id": "backend_package_dependencies_helmet", + "community": 63, + "community_name": "dependencies", + "norm_label": "helmet" + }, { "label": "ioredis", "file_type": "code", @@ -40577,6 +39774,17 @@ "community_name": "dependencies", "norm_label": "ioredis" }, + { + "label": "js-yaml", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L40", + "_origin": "ast", + "id": "backend_package_dependencies_js_yaml", + "community": 63, + "community_name": "dependencies", + "norm_label": "js-yaml" + }, { "label": "@nestjs/common", "file_type": "code", @@ -40588,6 +39796,28 @@ "community_name": "dependencies", "norm_label": "@nestjs/common" }, + { + "label": "@nestjs/core", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L26", + "_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": "L27", + "_origin": "ast", + "id": "backend_package_dependencies_nestjs_jwt", + "community": 63, + "community_name": "dependencies", + "norm_label": "@nestjs/jwt" + }, { "label": "@nestjs/passport", "file_type": "code", @@ -40610,6 +39840,28 @@ "community_name": "dependencies", "norm_label": "@nestjs/platform-express" }, + { + "label": "@nestjs/swagger", + "file_type": "code", + "source_file": "backend/package.json", + "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": "L31", + "_origin": "ast", + "id": "backend_package_dependencies_nestjs_throttler", + "community": 63, + "community_name": "dependencies", + "norm_label": "@nestjs/throttler" + }, { "label": "passport", "file_type": "code", @@ -40643,6 +39895,17 @@ "community_name": "dependencies", "norm_label": "@prisma/client" }, + { + "label": "reflect-metadata", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L43", + "_origin": "ast", + "id": "backend_package_dependencies_reflect_metadata", + "community": 63, + "community_name": "dependencies", + "norm_label": "reflect-metadata" + }, { "label": "rxjs", "file_type": "code", @@ -40654,6 +39917,28 @@ "community_name": "dependencies", "norm_label": "rxjs" }, + { + "label": "swagger-ui-express", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L45", + "_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": "L33", + "_origin": "ast", + "id": "bcrypt", + "community": 63, + "community_name": "dependencies", + "norm_label": "bcrypt" + }, { "label": "bcryptjs", "file_type": "concept", @@ -40665,6 +39950,17 @@ "community_name": "dependencies", "norm_label": "bcryptjs" }, + { + "label": "class-transformer", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L35", + "_origin": "ast", + "id": "class_transformer", + "community": 63, + "community_name": "dependencies", + "norm_label": "class-transformer" + }, { "label": "class-validator", "file_type": "concept", @@ -40687,6 +39983,17 @@ "community_name": "dependencies", "norm_label": "compression" }, + { + "label": "helmet", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L38", + "_origin": "ast", + "id": "helmet", + "community": 63, + "community_name": "dependencies", + "norm_label": "helmet" + }, { "label": "ioredis", "file_type": "concept", @@ -40698,6 +40005,17 @@ "community_name": "dependencies", "norm_label": "ioredis" }, + { + "label": "js-yaml", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L40", + "_origin": "ast", + "id": "js_yaml", + "community": 63, + "community_name": "dependencies", + "norm_label": "js-yaml" + }, { "label": "@nestjs/common", "file_type": "concept", @@ -40709,6 +40027,28 @@ "community_name": "dependencies", "norm_label": "@nestjs/common" }, + { + "label": "@nestjs/core", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L26", + "_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": "L27", + "_origin": "ast", + "id": "nestjs_jwt", + "community": 63, + "community_name": "dependencies", + "norm_label": "@nestjs/jwt" + }, { "label": "@nestjs/passport", "file_type": "concept", @@ -40731,6 +40071,28 @@ "community_name": "dependencies", "norm_label": "@nestjs/platform-express" }, + { + "label": "@nestjs/swagger", + "file_type": "concept", + "source_file": "backend/package.json", + "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": "L31", + "_origin": "ast", + "id": "nestjs_throttler", + "community": 63, + "community_name": "dependencies", + "norm_label": "@nestjs/throttler" + }, { "label": "passport", "file_type": "concept", @@ -40764,6 +40126,17 @@ "community_name": "dependencies", "norm_label": "@prisma/client" }, + { + "label": "reflect-metadata", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L43", + "_origin": "ast", + "id": "reflect_metadata", + "community": 63, + "community_name": "dependencies", + "norm_label": "reflect-metadata" + }, { "label": "rxjs", "file_type": "concept", @@ -40775,6 +40148,17 @@ "community_name": "dependencies", "norm_label": "rxjs" }, + { + "label": "swagger-ui-express", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L45", + "_origin": "ast", + "id": "swagger_ui_express", + "community": 63, + "community_name": "dependencies", + "norm_label": "swagger-ui-express" + }, { "label": "tsconfig.node.json", "file_type": "code", @@ -41017,17 +40401,6 @@ "community_name": "BlogsService", "norm_label": "injectable" }, - { - "label": "ApiOperation", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_controller_ts_apioperation", - "community": 66, - "community_name": "ApiOperation", - "norm_label": "apioperation" - }, { "label": "ApiQuery", "file_type": "code", @@ -41036,7 +40409,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_apiquery", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "apiquery" }, { @@ -41047,7 +40420,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_get", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "get" }, { @@ -41058,9 +40431,20 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_query", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "query" }, + { + "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": 66, + "community_name": "AdminQueryDto", + "norm_label": "admin-query.dto.ts" + }, { "label": "ApiPropertyOptional", "file_type": "code", @@ -41069,7 +40453,7 @@ "_origin": "ast", "id": "backend_src_admin_dto_admin_query_dto_ts_apipropertyoptional", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "apipropertyoptional" }, { @@ -41080,7 +40464,7 @@ "_origin": "ast", "id": "backend_src_admin_dto_admin_query_dto_ts_isoptional", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "isoptional" }, { @@ -41091,7 +40475,7 @@ "_origin": "ast", "id": "backend_src_admin_dto_admin_query_dto_ts_isstring", "community": 66, - "community_name": "ApiOperation", + "community_name": "AdminQueryDto", "norm_label": "isstring" }, { @@ -41215,28 +40599,6 @@ "community_name": "PetsController", "norm_label": "useguards" }, - { - "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": 67, - "community_name": "PetsController", - "norm_label": "admin/pets.service.ts" - }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_service_ts_injectable", - "community": 67, - "community_name": "PetsController", - "norm_label": "injectable" - }, { "label": "verify/page.tsx", "file_type": "code", @@ -42799,6 +42161,94 @@ "community_name": "PetsController", "norm_label": "isstring" }, + { + "label": "create-pet.dto.ts", + "file_type": "code", + "source_file": "backend/src/pets/dto/create-pet.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto", + "community": 75, + "community_name": "PetsController", + "norm_label": "create-pet.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_apiproperty", + "community": 75, + "community_name": "PetsController", + "norm_label": "apiproperty" + }, + { + "label": "ApiPropertyOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_apipropertyoptional", + "community": 75, + "community_name": "PetsController", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsArray", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_isarray", + "community": 75, + "community_name": "PetsController", + "norm_label": "isarray" + }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_isnotempty", + "community": 75, + "community_name": "PetsController", + "norm_label": "isnotempty" + }, + { + "label": "IsNumber", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_isnumber", + "community": 75, + "community_name": "PetsController", + "norm_label": "isnumber" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_isoptional", + "community": 75, + "community_name": "PetsController", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_dto_create_pet_dto_ts_isstring", + "community": 75, + "community_name": "PetsController", + "norm_label": "isstring" + }, { "label": "create-reminder.dto.ts", "file_type": "code", @@ -42865,6 +42315,39 @@ "community_name": "PetsController", "norm_label": "isstring" }, + { + "label": "update-pet.dto.ts", + "file_type": "code", + "source_file": "backend/src/pets/dto/update-pet.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_pets_dto_update_pet_dto", + "community": 75, + "community_name": "PetsController", + "norm_label": "update-pet.dto.ts" + }, + { + "label": "pets/pets.controller.ts", + "file_type": "code", + "source_file": "backend/src/pets/pets.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_pets_pets_controller", + "community": 75, + "community_name": "PetsController", + "norm_label": "pets/pets.controller.ts" + }, + { + "label": "pets.controller.spec.ts", + "file_type": "code", + "source_file": "backend/src/pets/pets.controller.spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_pets_pets_controller_spec", + "community": 75, + "community_name": "PetsController", + "norm_label": "pets.controller.spec.ts" + }, { "label": "ApiBadRequestResponse", "file_type": "code", @@ -43074,6 +42557,94 @@ "community_name": "PetsController", "norm_label": "useinterceptors" }, + { + "label": "pets.module.ts", + "file_type": "code", + "source_file": "backend/src/pets/pets.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_pets_pets_module", + "community": 75, + "community_name": "PetsController", + "norm_label": "pets.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_pets_module_ts_module", + "community": 75, + "community_name": "PetsController", + "norm_label": "module" + }, + { + "label": "pets/pets.service.ts", + "file_type": "code", + "source_file": "backend/src/pets/pets.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_pets_pets_service", + "community": 75, + "community_name": "PetsController", + "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": 75, + "community_name": "PetsController", + "norm_label": "pets.service.spec.ts" + }, + { + "label": "Injectable", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_pets_pets_service_ts_injectable", + "community": 75, + "community_name": "PetsController", + "norm_label": "injectable" + }, + { + "label": "ApiBearerAuth", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_admin_controller_ts_apibearerauth", + "community": 76, + "community_name": "AdminController", + "norm_label": "apibearerauth" + }, + { + "label": "ApiTags", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_admin_controller_ts_apitags", + "community": 76, + "community_name": "AdminController", + "norm_label": "apitags" + }, + { + "label": "Controller", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_admin_controller_ts_controller", + "community": 76, + "community_name": "AdminController", + "norm_label": "controller" + }, { "label": "Delete", "file_type": "code", @@ -43082,7 +42653,7 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_delete", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": "delete" }, { @@ -43093,9 +42664,20 @@ "_origin": "ast", "id": "backend_src_admin_admin_controller_ts_param", "community": 76, - "community_name": "Param", + "community_name": "AdminController", "norm_label": "param" }, + { + "label": "UseGuards", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_admin_controller_ts_useguards", + "community": 76, + "community_name": "AdminController", + "norm_label": "useguards" + }, { "label": "seo.controller.ts", "file_type": "code", @@ -43427,136 +43009,114 @@ "norm_label": "your identity" }, { - "label": "create-pet.dto.ts", + "label": "wiki/wiki.controller.ts", "file_type": "code", - "source_file": "backend/src/pets/dto/create-pet.dto.ts", + "source_file": "backend/src/wiki/wiki.controller.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto", + "id": "backend_src_wiki_wiki_controller", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "create-pet.dto.ts" + "community_name": "WikiController", + "norm_label": "wiki/wiki.controller.ts" }, { - "label": "ApiProperty", + "label": "ApiNotFoundResponse", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_apiproperty", + "id": "backend_src_wiki_wiki_controller_ts_apinotfoundresponse", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "apiproperty" + "community_name": "WikiController", + "norm_label": "apinotfoundresponse" }, { - "label": "ApiPropertyOptional", + "label": "ApiOkResponse", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_apipropertyoptional", + "id": "backend_src_wiki_wiki_controller_ts_apiokresponse", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "apipropertyoptional" + "community_name": "WikiController", + "norm_label": "apiokresponse" }, { - "label": "IsArray", + "label": "ApiOperation", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_isarray", + "id": "backend_src_wiki_wiki_controller_ts_apioperation", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "isarray" + "community_name": "WikiController", + "norm_label": "apioperation" }, { - "label": "IsNotEmpty", + "label": "ApiTags", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_isnotempty", + "id": "backend_src_wiki_wiki_controller_ts_apitags", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "isnotempty" + "community_name": "WikiController", + "norm_label": "apitags" }, { - "label": "IsNumber", + "label": "Controller", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_isnumber", + "id": "backend_src_wiki_wiki_controller_ts_controller", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "isnumber" + "community_name": "WikiController", + "norm_label": "controller" }, { - "label": "IsOptional", + "label": "Get", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_isoptional", + "id": "backend_src_wiki_wiki_controller_ts_get", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "isoptional" + "community_name": "WikiController", + "norm_label": "get" }, { - "label": "IsString", + "label": "Param", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_dto_create_pet_dto_ts_isstring", + "id": "backend_src_wiki_wiki_controller_ts_param", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "isstring" + "community_name": "WikiController", + "norm_label": "param" }, { - "label": "update-pet.dto.ts", + "label": "Query", "file_type": "code", - "source_file": "backend/src/pets/dto/update-pet.dto.ts", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_wiki_wiki_controller_ts_query", + "community": 8, + "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_pets_dto_update_pet_dto", + "id": "backend_src_wiki_wiki_module", "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "update-pet.dto.ts" - }, - { - "label": "pets/pets.controller.ts", - "file_type": "code", - "source_file": "backend/src/pets/pets.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_pets_pets_controller", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "pets/pets.controller.ts" - }, - { - "label": "pets.controller.spec.ts", - "file_type": "code", - "source_file": "backend/src/pets/pets.controller.spec.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_pets_pets_controller_spec", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "pets.controller.spec.ts" - }, - { - "label": "pets.module.ts", - "file_type": "code", - "source_file": "backend/src/pets/pets.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_pets_pets_module", - "community": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "pets.module.ts" + "community_name": "WikiController", + "norm_label": "wiki.module.ts" }, { "label": "Module", @@ -43564,32 +43124,21 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_pets_module_ts_module", + "id": "backend_src_wiki_wiki_module_ts_module", "community": 8, - "community_name": "pets/pets.controller.ts", + "community_name": "WikiController", "norm_label": "module" }, { - "label": "pets/pets.service.ts", + "label": "wiki/wiki.service.ts", "file_type": "code", - "source_file": "backend/src/pets/pets.service.ts", + "source_file": "backend/src/wiki/wiki.service.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_pets_pets_service", + "id": "backend_src_wiki_wiki_service", "community": 8, - "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": 8, - "community_name": "pets/pets.controller.ts", - "norm_label": "pets.service.spec.ts" + "community_name": "WikiController", + "norm_label": "wiki/wiki.service.ts" }, { "label": "Injectable", @@ -43597,9 +43146,9 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_pets_pets_service_ts_injectable", + "id": "backend_src_wiki_wiki_service_ts_injectable", "community": 8, - "community_name": "pets/pets.controller.ts", + "community_name": "WikiController", "norm_label": "injectable" }, { @@ -45088,11 +44637,22 @@ "norm_label": "next" }, { - "label": "react", + "label": "nextjs-toploader", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L16", "_origin": "ast", + "id": "frontend_application_package_dependencies_nextjs_toploader", + "community": 87, + "community_name": "dependencies", + "norm_label": "nextjs-toploader" + }, + { + "label": "react", + "file_type": "code", + "source_file": "frontend/application/package.json", + "source_location": "L17", + "_origin": "ast", "id": "frontend_application_package_dependencies_react", "community": 87, "community_name": "dependencies", @@ -45102,7 +44662,7 @@ "label": "react-dom", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L17", + "source_location": "L18", "_origin": "ast", "id": "frontend_application_package_dependencies_react_dom", "community": 87, @@ -45113,7 +44673,7 @@ "label": "sonner", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L18", + "source_location": "L19", "_origin": "ast", "id": "frontend_application_package_dependencies_sonner", "community": 87, @@ -45124,7 +44684,7 @@ "label": "zustand", "file_type": "code", "source_file": "frontend/application/package.json", - "source_location": "L19", + "source_location": "L20", "_origin": "ast", "id": "frontend_application_package_dependencies_zustand", "community": 87, @@ -45157,7 +44717,7 @@ "label": "react", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L16", + "source_location": "L17", "_origin": "ast", "id": "frontend_application_package_json_react", "community": 87, @@ -45168,7 +44728,7 @@ "label": "react-dom", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L17", + "source_location": "L18", "_origin": "ast", "id": "frontend_application_package_json_react_dom", "community": 87, @@ -45179,7 +44739,7 @@ "label": "zustand", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L19", + "source_location": "L20", "_origin": "ast", "id": "frontend_application_package_json_zustand", "community": 87, @@ -45208,11 +44768,22 @@ "community_name": "dependencies", "norm_label": "next" }, + { + "label": "nextjs-toploader", + "file_type": "concept", + "source_file": "frontend/application/package.json", + "source_location": "L16", + "_origin": "ast", + "id": "nextjs_toploader", + "community": 87, + "community_name": "dependencies", + "norm_label": "nextjs-toploader" + }, { "label": "sonner", "file_type": "concept", "source_file": "frontend/application/package.json", - "source_location": "L18", + "source_location": "L19", "_origin": "ast", "id": "sonner", "community": 87, @@ -45417,6 +44988,127 @@ "community_name": "devDependencies", "norm_label": "eslint" }, + { + "label": "eslint-config-prettier", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L64", + "_origin": "ast", + "id": "backend_package_devdependencies_eslint_config_prettier", + "community": 9, + "community_name": "devDependencies", + "norm_label": "eslint-config-prettier" + }, + { + "label": "@eslint/eslintrc", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L48", + "_origin": "ast", + "id": "backend_package_devdependencies_eslint_eslintrc", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@eslint/eslintrc" + }, + { + "label": "@nestjs/schematics", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L51", + "_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": "L52", + "_origin": "ast", + "id": "backend_package_devdependencies_nestjs_testing", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@nestjs/testing" + }, + { + "label": "prisma", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L69", + "_origin": "ast", + "id": "backend_package_devdependencies_prisma", + "community": 9, + "community_name": "devDependencies", + "norm_label": "prisma" + }, + { + "label": "source-map-support", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L70", + "_origin": "ast", + "id": "backend_package_devdependencies_source_map_support", + "community": 9, + "community_name": "devDependencies", + "norm_label": "source-map-support" + }, + { + "label": "ts-jest", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L72", + "_origin": "ast", + "id": "backend_package_devdependencies_ts_jest", + "community": 9, + "community_name": "devDependencies", + "norm_label": "ts-jest" + }, + { + "label": "ts-loader", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L73", + "_origin": "ast", + "id": "backend_package_devdependencies_ts_loader", + "community": 9, + "community_name": "devDependencies", + "norm_label": "ts-loader" + }, + { + "label": "ts-node", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L74", + "_origin": "ast", + "id": "backend_package_devdependencies_ts_node", + "community": 9, + "community_name": "devDependencies", + "norm_label": "ts-node" + }, + { + "label": "tsconfig-paths", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L75", + "_origin": "ast", + "id": "backend_package_devdependencies_tsconfig_paths", + "community": 9, + "community_name": "devDependencies", + "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": 9, + "community_name": "devDependencies", + "norm_label": "@types/bcrypt" + }, { "label": "@types/bcryptjs", "file_type": "code", @@ -45429,15 +45121,70 @@ "norm_label": "@types/bcryptjs" }, { - "label": "@types/node", + "label": "@types/compression", "file_type": "code", "source_file": "backend/package.json", - "source_location": "L60", + "source_location": "L55", "_origin": "ast", - "id": "backend_package_devdependencies_types_node", + "id": "backend_package_devdependencies_types_compression", "community": 9, "community_name": "devDependencies", - "norm_label": "@types/node" + "norm_label": "@types/compression" + }, + { + "label": "@types/express", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L56", + "_origin": "ast", + "id": "backend_package_devdependencies_types_express", + "community": 9, + "community_name": "devDependencies", + "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": 9, + "community_name": "devDependencies", + "norm_label": "@types/jest" + }, + { + "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": 9, + "community_name": "devDependencies", + "norm_label": "@types/js-yaml" + }, + { + "label": "@types/multer", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L59", + "_origin": "ast", + "id": "backend_package_devdependencies_types_multer", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/multer" + }, + { + "label": "@types/supertest", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L62", + "_origin": "ast", + "id": "backend_package_devdependencies_types_supertest", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/supertest" }, { "label": "typescript", @@ -45450,6 +45197,17 @@ "community_name": "devDependencies", "norm_label": "typescript" }, + { + "label": "typescript-eslint", + "file_type": "code", + "source_file": "backend/package.json", + "source_location": "L77", + "_origin": "ast", + "id": "backend_package_devdependencies_typescript_eslint", + "community": 9, + "community_name": "devDependencies", + "norm_label": "typescript-eslint" + }, { "label": "eslint", "file_type": "concept", @@ -45461,17 +45219,6 @@ "community_name": "devDependencies", "norm_label": "eslint" }, - { - "label": "@types/node", - "file_type": "concept", - "source_file": "backend/package.json", - "source_location": "L60", - "_origin": "ast", - "id": "backend_package_json_types_node", - "community": 9, - "community_name": "devDependencies", - "norm_label": "@types/node" - }, { "label": "typescript", "file_type": "concept", @@ -45483,6 +45230,138 @@ "community_name": "devDependencies", "norm_label": "typescript" }, + { + "label": "typescript-eslint", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L77", + "_origin": "ast", + "id": "backend_package_json_typescript_eslint", + "community": 9, + "community_name": "devDependencies", + "norm_label": "typescript-eslint" + }, + { + "label": "eslint-config-prettier", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L64", + "_origin": "ast", + "id": "eslint_config_prettier", + "community": 9, + "community_name": "devDependencies", + "norm_label": "eslint-config-prettier" + }, + { + "label": "@eslint/eslintrc", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L48", + "_origin": "ast", + "id": "eslint_eslintrc", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@eslint/eslintrc" + }, + { + "label": "@nestjs/schematics", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L51", + "_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": "L52", + "_origin": "ast", + "id": "nestjs_testing", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@nestjs/testing" + }, + { + "label": "prisma", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L69", + "_origin": "ast", + "id": "prisma", + "community": 9, + "community_name": "devDependencies", + "norm_label": "prisma" + }, + { + "label": "source-map-support", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L70", + "_origin": "ast", + "id": "source_map_support", + "community": 9, + "community_name": "devDependencies", + "norm_label": "source-map-support" + }, + { + "label": "ts-jest", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L72", + "_origin": "ast", + "id": "ts_jest", + "community": 9, + "community_name": "devDependencies", + "norm_label": "ts-jest" + }, + { + "label": "ts-loader", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L73", + "_origin": "ast", + "id": "ts_loader", + "community": 9, + "community_name": "devDependencies", + "norm_label": "ts-loader" + }, + { + "label": "ts-node", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L74", + "_origin": "ast", + "id": "ts_node", + "community": 9, + "community_name": "devDependencies", + "norm_label": "ts-node" + }, + { + "label": "tsconfig-paths", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L75", + "_origin": "ast", + "id": "tsconfig_paths", + "community": 9, + "community_name": "devDependencies", + "norm_label": "tsconfig-paths" + }, + { + "label": "@types/bcrypt", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L53", + "_origin": "ast", + "id": "types_bcrypt", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/bcrypt" + }, { "label": "@types/bcryptjs", "file_type": "concept", @@ -45495,81 +45374,224 @@ "norm_label": "@types/bcryptjs" }, { - "label": "ApiBearerAuth", - "file_type": "code", - "source_file": "", - "source_location": "", + "label": "@types/compression", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L55", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_apibearerauth", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "apibearerauth" + "id": "types_compression", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/compression" }, { - "label": "Body", - "file_type": "code", - "source_file": "", - "source_location": "", + "label": "@types/express", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L56", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_body", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "body" + "id": "types_express", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/express" }, { - "label": "Param", - "file_type": "code", - "source_file": "", - "source_location": "", + "label": "@types/jest", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L57", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_param", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "param" + "id": "types_jest", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/jest" }, { - "label": "Patch", - "file_type": "code", - "source_file": "", - "source_location": "", + "label": "@types/js-yaml", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L58", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_patch", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "patch" + "id": "types_js_yaml", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/js-yaml" }, { - "label": "Post", - "file_type": "code", - "source_file": "", - "source_location": "", + "label": "@types/multer", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L59", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_post", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "post" + "id": "types_multer", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/multer" }, { - "label": "Put", - "file_type": "code", - "source_file": "", - "source_location": "", + "label": "@types/supertest", + "file_type": "concept", + "source_file": "backend/package.json", + "source_location": "L62", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_put", - "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "put" + "id": "types_supertest", + "community": 9, + "community_name": "devDependencies", + "norm_label": "@types/supertest" }, { - "label": "UseGuards", + "label": "create-review.dto.ts", + "file_type": "code", + "source_file": "backend/src/reviews/dto/create-review.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_reviews_dto_create_review_dto", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "create-review.dto.ts" + }, + { + "label": "ApiProperty", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_settings_settings_controller_ts_useguards", + "id": "backend_src_reviews_dto_create_review_dto_ts_apiproperty", "community": 90, - "community_name": "ApiBearerAuth", - "norm_label": "useguards" + "community_name": "CreateReviewDto", + "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": 90, + "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": 90, + "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": 90, + "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": 90, + "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": 90, + "community_name": "CreateReviewDto", + "norm_label": "min" + }, + { + "label": "update-review.dto.ts", + "file_type": "code", + "source_file": "backend/src/reviews/dto/update-review.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_reviews_dto_update_review_dto", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "update-review.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_reviews_dto_update_review_dto_ts_apiproperty", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "apiproperty" + }, + { + "label": "IsIn", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_reviews_dto_update_review_dto_ts_isin", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "isin" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_reviews_dto_update_review_dto_ts_isoptional", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_reviews_dto_update_review_dto_ts_isstring", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "isstring" + }, + { + "label": "reviews.service.ts", + "file_type": "code", + "source_file": "backend/src/reviews/reviews.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_reviews_reviews_service", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "reviews.service.ts" + }, + { + "label": "Max", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "max", + "community": 90, + "community_name": "CreateReviewDto", + "norm_label": "max" }, { "label": "02-audit-plan.md", @@ -49961,7 +49983,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "frontend/application/app/layout.tsx", - "source_location": "L8", + "source_location": "L9", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout_generatemetadata", @@ -49973,7 +49995,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "frontend/application/app/layout.tsx", - "source_location": "L105", + "source_location": "L106", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout_rootlayout", @@ -82049,7 +82071,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L3", + "source_location": "L4", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -82061,7 +82083,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L4", + "source_location": "L5", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -82073,7 +82095,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L5", + "source_location": "L6", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -82085,7 +82107,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L5", + "source_location": "L6", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -82097,7 +82119,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L98", + "source_location": "L99", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -85892,6 +85914,18 @@ "weight": 1.0, "context": "import", "_origin": "ast", + "source": "frontend_application_package_dependencies_nextjs_toploader", + "target": "nextjs_toploader", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "confidence": "EXTRACTED", + "source_file": "frontend/application/package.json", + "source_location": "L17", + "weight": 1.0, + "context": "import", + "_origin": "ast", "source": "frontend_application_package_dependencies_react", "target": "frontend_application_package_json_react", "confidence_score": 1.0 @@ -85900,7 +85934,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L17", + "source_location": "L18", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85912,7 +85946,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L18", + "source_location": "L19", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85924,7 +85958,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L19", + "source_location": "L20", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85936,7 +85970,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L29", + "source_location": "L30", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85948,7 +85982,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L30", + "source_location": "L31", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85960,7 +85994,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L31", + "source_location": "L32", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85972,7 +86006,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L32", + "source_location": "L33", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85984,7 +86018,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L22", + "source_location": "L23", "weight": 1.0, "context": "import", "_origin": "ast", @@ -85996,7 +86030,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L23", + "source_location": "L24", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86008,7 +86042,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L24", + "source_location": "L25", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86020,7 +86054,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L25", + "source_location": "L26", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86032,7 +86066,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L26", + "source_location": "L27", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86044,7 +86078,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L27", + "source_location": "L28", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86056,7 +86090,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L33", + "source_location": "L34", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86068,7 +86102,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L28", + "source_location": "L29", "weight": 1.0, "context": "import", "_origin": "ast", @@ -86080,7 +86114,7 @@ "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L34", + "source_location": "L35", "weight": 1.0, "context": "import", "_origin": "ast", @@ -94673,7 +94707,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L3", + "source_location": "L4", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -94685,7 +94719,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L4", + "source_location": "L5", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -94697,7 +94731,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L5", + "source_location": "L6", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -94709,7 +94743,7 @@ "context": "import", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L98", + "source_location": "L99", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -118317,7 +118351,7 @@ "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L100", + "source_location": "L101", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -118328,7 +118362,7 @@ "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/app/layout.tsx", - "source_location": "L7", + "source_location": "L8", "weight": 1.0, "_origin": "ast", "source": "frontend_application_app_layout", @@ -121331,7 +121365,7 @@ "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L21", + "source_location": "L22", "weight": 1.0, "_origin": "ast", "source": "frontend_application_package", @@ -121423,7 +121457,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_dependencies", - "target": "frontend_application_package_dependencies_react", + "target": "frontend_application_package_dependencies_nextjs_toploader", "confidence_score": 1.0 }, { @@ -121434,7 +121468,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_dependencies", - "target": "frontend_application_package_dependencies_react_dom", + "target": "frontend_application_package_dependencies_react", "confidence_score": 1.0 }, { @@ -121445,7 +121479,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_dependencies", - "target": "frontend_application_package_dependencies_sonner", + "target": "frontend_application_package_dependencies_react_dom", "confidence_score": 1.0 }, { @@ -121456,18 +121490,18 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_dependencies", - "target": "frontend_application_package_dependencies_zustand", + "target": "frontend_application_package_dependencies_sonner", "confidence_score": 1.0 }, { "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", - "source_location": "L22", + "source_location": "L20", "weight": 1.0, "_origin": "ast", - "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_tailwindcss_postcss", + "source": "frontend_application_package_dependencies", + "target": "frontend_application_package_dependencies_zustand", "confidence_score": 1.0 }, { @@ -121478,7 +121512,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_testing_library_jest_dom", + "target": "frontend_application_package_devdependencies_tailwindcss_postcss", "confidence_score": 1.0 }, { @@ -121489,7 +121523,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_testing_library_react", + "target": "frontend_application_package_devdependencies_testing_library_jest_dom", "confidence_score": 1.0 }, { @@ -121500,7 +121534,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_types_node", + "target": "frontend_application_package_devdependencies_testing_library_react", "confidence_score": 1.0 }, { @@ -121511,7 +121545,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_types_react", + "target": "frontend_application_package_devdependencies_types_node", "confidence_score": 1.0 }, { @@ -121522,7 +121556,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_types_react_dom", + "target": "frontend_application_package_devdependencies_types_react", "confidence_score": 1.0 }, { @@ -121533,7 +121567,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_vitejs_plugin_react", + "target": "frontend_application_package_devdependencies_types_react_dom", "confidence_score": 1.0 }, { @@ -121544,7 +121578,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_eslint", + "target": "frontend_application_package_devdependencies_vitejs_plugin_react", "confidence_score": 1.0 }, { @@ -121555,7 +121589,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_eslint_config_next", + "target": "frontend_application_package_devdependencies_eslint", "confidence_score": 1.0 }, { @@ -121566,7 +121600,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_jsdom", + "target": "frontend_application_package_devdependencies_eslint_config_next", "confidence_score": 1.0 }, { @@ -121577,7 +121611,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_tailwindcss", + "target": "frontend_application_package_devdependencies_jsdom", "confidence_score": 1.0 }, { @@ -121588,7 +121622,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", - "target": "frontend_application_package_devdependencies_typescript", + "target": "frontend_application_package_devdependencies_tailwindcss", "confidence_score": 1.0 }, { @@ -121599,6 +121633,17 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_package_devdependencies", + "target": "frontend_application_package_devdependencies_typescript", + "confidence_score": 1.0 + }, + { + "relation": "contains", + "confidence": "EXTRACTED", + "source_file": "frontend/application/package.json", + "source_location": "L35", + "weight": 1.0, + "_origin": "ast", + "source": "frontend_application_package_devdependencies", "target": "frontend_application_package_devdependencies_vitest", "confidence_score": 1.0 }, @@ -134518,5 +134563,5 @@ } ], "hyperedges": [], - "built_at_commit": "fa1a35c8353fd51d6ecc583a17414e538fba52be" + "built_at_commit": "b68dd2954119239719a53fa2891d7dc2653bb856" } \ No newline at end of file diff --git a/graphify-out/2026-08-29/manifest.json b/graphify-out/2026-08-29/manifest.json index 6d13428..e5cb0a1 100644 --- a/graphify-out/2026-08-29/manifest.json +++ b/graphify-out/2026-08-29/manifest.json @@ -1,3685 +1,3685 @@ { ".ai_agency/orchestrate.py": { "mtime": 1785148022.0726626, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "43b4b40901868f1bdfd470cf58f40760", "semantic_hash": "" }, ".gitea/scripts/with-vpn.sh": { "mtime": 1786799852.1263163, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "451f307a9e42d2240949e7bf39de6667", "semantic_hash": "" }, "backend/eslint.config.mjs": { "mtime": 1787073059.1053617, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "54fb00fe78776d07db9dae804aced0d1", "semantic_hash": "" }, "backend/nest-cli.json": { "mtime": 1787072106.3705614, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "718a59f7d90dbf49fdda2843d72172c4", "semantic_hash": "" }, "backend/package.json": { "mtime": 1787644197.1371043, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4f466b887ff858a0d2890c9ca9727285", "semantic_hash": "" }, "backend/prisma/scientificTerms.ts": { "mtime": 1785325924.6348126, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4c449cfeea573afd27cdfd1cdc72d4f3", "semantic_hash": "" }, "backend/prisma/seed-blogs.ts": { "mtime": 1786885876.777374, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "be491715958e8f9473913bdfe9cf5638", "semantic_hash": "" }, "backend/prisma/seed-custom.ts": { "mtime": 1786799852.144902, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "23cefb1ea3fc60be141520fd50e3f9f9", "semantic_hash": "" }, "backend/prisma/seed-home.ts": { "mtime": 1786885876.779371, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3fd438d66d0b1174b885a9065e43b569", "semantic_hash": "" }, "backend/prisma/seed-products.ts": { "mtime": 1787127978.2192707, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "62ab15adef06163ac0d7c93efa357e66", "semantic_hash": "" }, "backend/prisma/seed-ui-texts.ts": { "mtime": 1787127978.2217898, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7ff151f7d60dd6cd3358909be5a2f90e", "semantic_hash": "" }, "backend/prisma/seed-wiki.ts": { "mtime": 1786961195.297596, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4734726498e97501b3f8c6c8bc022bb8", "semantic_hash": "" }, "backend/prisma/seed.ts": { "mtime": 1787127978.2255876, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7e9527a378a7a25a0a673c80a420739f", "semantic_hash": "" }, "backend/prisma/tsconfig.json": { "mtime": 1786961195.3002362, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a12c81b60c5e9fdb3c1aba03ac7ecb27", "semantic_hash": "" }, "backend/prisma/tsconfig.seed.json": { "mtime": 1786955870.751259, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a12c81b60c5e9fdb3c1aba03ac7ecb27", "semantic_hash": "" }, "backend/scripts/generate-openapi.d.ts": { "mtime": 1786883225.7774837, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e2ebd7ddedcadeeadbf819c35985c768", "semantic_hash": "" }, "backend/scripts/generate-openapi.js": { "mtime": 1786883225.77912, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f7c2607fc067b04e7cb7716490ea1169", "semantic_hash": "" }, "backend/scripts/generate-openapi.ts": { "mtime": 1787729527.925392, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "561983534164723c0f073bcd98f22be9", "semantic_hash": "" }, "backend/scripts/seo-backfill.ts": { "mtime": 1787729527.925392, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "fc6da532f40c339058c682a352378027", "semantic_hash": "" }, "backend/src/admin/admin.controller.spec.ts": { "mtime": 1786799852.1573997, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "05370741c60e581754191c00baf87596", "semantic_hash": "" }, "backend/src/admin/admin.controller.ts": { "mtime": 1787564362.261174, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a1d3fa0677cabb7c037f49b325286fac", "semantic_hash": "" }, "backend/src/admin/admin.module.ts": { "mtime": 1786877667.0050085, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "2c08f0bdcbeb87979024730e39c7a6ce", "semantic_hash": "" }, "backend/src/admin/admin.service.spec.ts": { "mtime": 1787729523.4348526, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "fd18f82573faa70207c62b2b4f336385", "semantic_hash": "" }, "backend/src/admin/admin.service.ts": { "mtime": 1787740536.6613674, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "89c9b1da4980b8a41d0e46436977a417", "semantic_hash": "" }, "backend/src/admin/blogs.controller.ts": { "mtime": 1787579631.7581778, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "ddeda17e05fee4b7ce49a44c89c0f1bb", "semantic_hash": "" }, "backend/src/admin/blogs.service.ts": { "mtime": 1787579631.7601776, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "cb13d9df89955a1f5145abc300225fb8", "semantic_hash": "" }, "backend/src/admin/categories.controller.ts": { "mtime": 1786799852.1741924, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e6322c19042382028966e6eb8dce7c62", "semantic_hash": "" }, "backend/src/admin/categories.service.ts": { "mtime": 1786799852.1751943, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7c6b626454aa53d5a3458b5ca738a97c", "semantic_hash": "" }, "backend/src/admin/dto/admin-query.dto.ts": { "mtime": 1786799852.1787064, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0a3e421ccf508d1a50ec1cfa8c92a4f9", "semantic_hash": "" }, "backend/src/admin/dto/product.dto.ts": { "mtime": 1787579631.7621782, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8fb28b8f62bc610bdc1196d54cafb672", "semantic_hash": "" }, "backend/src/admin/dto/user.dto.ts": { "mtime": 1787072106.3819897, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7f8b670a02bb9f6f52123a8e289f866a", "semantic_hash": "" }, "backend/src/admin/media.controller.ts": { "mtime": 1786876983.6488664, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "02fa16bdaf1363f117f7200f590b13c4", "semantic_hash": "" }, "backend/src/admin/media.service.ts": { "mtime": 1787748438.7015336, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "53b0f8a000202bad6359f987cdf0865e", "semantic_hash": "" }, "backend/src/admin/pets.controller.ts": { "mtime": 1786799852.1862173, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8734d47651b112f7f1682f629dc4c7b1", "semantic_hash": "" }, "backend/src/admin/pets.service.ts": { "mtime": 1786954681.814243, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "67ef020c49eb8334a2bac643941678ac", "semantic_hash": "" }, "backend/src/admin/reports.controller.ts": { "mtime": 1787729523.4348526, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d8557eb2c8b2e0e5272bc5eee2530080", "semantic_hash": "" }, "backend/src/admin/reports.service.ts": { "mtime": 1787729523.4348526, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "37233e7d62592c9d74c0c6ce5eb7096f", "semantic_hash": "" }, "backend/src/admin/ssl.controller.ts": { "mtime": 1787072106.382979, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "460506a236a330ba614aae15a2659b2b", "semantic_hash": "" }, "backend/src/admin/ssl.service.ts": { "mtime": 1787072106.3839788, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "dc7ba9e922c1e3d80dae4f1593297fa7", "semantic_hash": "" }, "backend/src/admin/wiki.controller.ts": { "mtime": 1786799852.1917324, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8b7c8559d6ed6bb2c220d9abd4f622b1", "semantic_hash": "" }, "backend/src/admin/wiki.service.ts": { "mtime": 1786799852.193324, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "ed627a21f3b767e9855511afefa5273c", "semantic_hash": "" }, "backend/src/app.controller.spec.ts": { "mtime": 1783764561.6448398, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4a1c0e1133dbda6f6e8f3e60d984eddf", "semantic_hash": "" }, "backend/src/app.controller.ts": { "mtime": 1783764561.645849, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3ab0e83b7d93b85ea489ab994ec79ea1", "semantic_hash": "" }, "backend/src/app.module.ts": { "mtime": 1787579631.7646954, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "5b326fa2dc121d0b55648e7530304f4f", "semantic_hash": "" }, "backend/src/app.service.ts": { "mtime": 1783764561.6488404, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "cd3fb7836f10de08a725ee1fd4ab36fe", "semantic_hash": "" }, "backend/src/auth/auth.constants.ts": { "mtime": 1787072106.3859801, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "382adefba83246badeae8701ef6335cd", "semantic_hash": "" }, "backend/src/auth/auth.controller.spec.ts": { "mtime": 1785327951.179468, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7531d00aaa85a80f27e175071ce21c89", "semantic_hash": "" }, "backend/src/auth/auth.controller.ts": { "mtime": 1787645037.3680255, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e0360966564df6fe0650699160f24f57", "semantic_hash": "" }, "backend/src/auth/auth.module.ts": { "mtime": 1787072106.3885016, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3bd9f559e5d43ee9c8cae151954c8356", "semantic_hash": "" }, "backend/src/auth/auth.service.spec.ts": { "mtime": 1787729523.4368768, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "9bf084557cffdb7f7f36b192ef746071", "semantic_hash": "" }, "backend/src/auth/auth.service.ts": { "mtime": 1787127978.2285898, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b38c558251bdbadb7ab1b5f690c5c387", "semantic_hash": "" }, "backend/src/auth/dto/admin-login.dto.ts": { "mtime": 1787127978.2295873, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "c1a7d3d5babba82ff11b04ae7dcaabca", "semantic_hash": "" }, "backend/src/auth/dto/login.dto.ts": { "mtime": 1783764561.659109, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "9941767ad430851531a9f049c2b65ed5", "semantic_hash": "" }, "backend/src/auth/dto/register.dto.ts": { "mtime": 1785327951.186477, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6165fdad9219dee4390732a7f6504e4a", "semantic_hash": "" }, "backend/src/auth/dto/send-otp.dto.ts": { "mtime": 1783764561.6611066, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a99015984cd1320cbd36719809f69d3b", "semantic_hash": "" }, "backend/src/auth/dto/verify-otp.dto.ts": { "mtime": 1783764561.662112, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8bc250f7ca73e6cbe4cfa01a99a3c032", "semantic_hash": "" }, "backend/src/auth/jwt-auth.guard.ts": { "mtime": 1786799852.2058628, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f98f32eaf66499355a5e61632ac82aa5", "semantic_hash": "" }, "backend/src/auth/jwt.strategy.ts": { "mtime": 1786883225.7943432, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f815b9f719678a154ebf50090b801c62", "semantic_hash": "" }, "backend/src/auth/roles.decorator.ts": { "mtime": 1786799852.2083795, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0d86f61ddaab0d2f4d5f9b331a5e2541", "semantic_hash": "" }, "backend/src/auth/roles.guard.ts": { "mtime": 1786799852.2090034, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "10b31496903f54383d35b90a55c3e84a", "semantic_hash": "" }, "backend/src/b2b/b2b.controller.ts": { "mtime": 1787645037.3690653, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7a18bd2c1df187a504e15a2a9f93f41b", "semantic_hash": "" }, "backend/src/b2b/b2b.module.ts": { "mtime": 1786799852.2120132, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b1777d0004a54e8f89328879a20aa171", "semantic_hash": "" }, "backend/src/b2b/b2b.service.ts": { "mtime": 1786799852.2140093, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d025e172746789d44802755b8bb441bf", "semantic_hash": "" }, "backend/src/banners/banners.controller.ts": { "mtime": 1786799852.2150102, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "30e1fba8ef3e98e127cf400aac0f71e8", "semantic_hash": "" }, "backend/src/banners/banners.module.ts": { "mtime": 1786799852.2160103, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3dca61f7cf64dfb5f827469c7f14c655", "semantic_hash": "" }, "backend/src/banners/banners.service.ts": { "mtime": 1786799852.2160103, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "777061ff84dc642fee69803ce9ac2de9", "semantic_hash": "" }, "backend/src/blogs/blogs.controller.ts": { "mtime": 1787740536.6629725, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "284f632ea02a1fde472742e295c26efc", "semantic_hash": "" }, "backend/src/blogs/blogs.module.ts": { "mtime": 1783764561.665678, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3fc38d55e03319844c6c8cbb3017364b", "semantic_hash": "" }, "backend/src/blogs/blogs.service.ts": { "mtime": 1787740536.6640294, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "1df541d328815516bdd765439410f99c", "semantic_hash": "" }, "backend/src/blogs/dto/create-blog.dto.ts": { "mtime": 1783764561.671557, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a1938b347011dd71bfd99801b7453305", "semantic_hash": "" }, "backend/src/blogs/dto/update-blog.dto.ts": { "mtime": 1783764561.6737125, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "15612098d2a3cac84249518465104370", "semantic_hash": "" }, "backend/src/blogs/entities/blog.entity.ts": { "mtime": 1783764561.675101, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7fadae161e6d38110bdc8ce71f9f1bdd", "semantic_hash": "" }, "backend/src/cms/cms.controller.ts": { "mtime": 1785327951.196913, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "72482ba30a017f8ed1ef26b423eb83d1", "semantic_hash": "" }, "backend/src/cms/cms.module.ts": { "mtime": 1785148022.206298, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "831ca7e3ee288322e05ddeeb1b02229d", "semantic_hash": "" }, "backend/src/cms/cms.service.ts": { "mtime": 1785327951.1979403, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f9da5085411e9fe60ab0c35fb852ef56", "semantic_hash": "" }, "backend/src/cms/dto/cms.dto.ts": { "mtime": 1785327951.1999955, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b91b502820b503e4ca63dd36028608d5", "semantic_hash": "" }, "backend/src/common/decorators/roles.decorator.ts": { "mtime": 1786799852.2205224, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "155f61ea03e3ef7d3d5e2fee554f8428", "semantic_hash": "" }, "backend/src/common/dto/pagination.dto.ts": { "mtime": 1785327951.201989, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6e66fdace411feba9d947fe0f678c900", "semantic_hash": "" }, "backend/src/common/env.validation.ts": { "mtime": 1787645037.3706467, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0c5617db25ad4a82310a4d57954f9148", "semantic_hash": "" }, "backend/src/common/filters/http-exception.filter.ts": { "mtime": 1787645037.3717394, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bbc06910a686ac6fffe7093cfac25247", "semantic_hash": "" }, "backend/src/common/filters/prisma-exception.filter.ts": { "mtime": 1787645037.3722546, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "ea9516e198b828d217e871db50bfd020", "semantic_hash": "" }, "backend/src/common/guards/roles.guard.spec.ts": { "mtime": 1786799852.2255569, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0ee2661808205a0bb03a45d4cbca4472", "semantic_hash": "" }, "backend/src/common/guards/roles.guard.ts": { "mtime": 1786799852.2265651, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "72eadcd106153ccaad697234d8c0d281", "semantic_hash": "" }, "backend/src/common/interceptors/decimal.interceptor.spec.ts": { "mtime": 1786799852.2275658, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bbf53de234b9963923c3163a10cd8e17", "semantic_hash": "" }, "backend/src/common/interceptors/decimal.interceptor.ts": { "mtime": 1786799852.2275658, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "71f8f0bfa748a8cbeb5f4627f972261d", "semantic_hash": "" }, "backend/src/common/metrics.controller.ts": { "mtime": 1786799852.229073, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6380f2c18000ac46235e7adde60329dc", "semantic_hash": "" }, "backend/src/common/revalidation/revalidation.module.ts": { "mtime": 1787579631.7695823, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "9902f11ce5669722083f76ba239749ca", "semantic_hash": "" }, "backend/src/common/revalidation/revalidation.service.ts": { "mtime": 1787579631.7705874, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d1d36ecad18a71db13e14330c70aa137", "semantic_hash": "" }, "backend/src/common/schemas/error-response.schema.ts": { "mtime": 1785330913.1447015, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e2d4a690aa006a63ad617d2c21c7d11d", "semantic_hash": "" }, "backend/src/common/schemas/paginated-response.schema.ts": { "mtime": 1786799852.2300823, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6ea7e2edc0ab662b3f244e0ffb8e5f19", "semantic_hash": "" }, "backend/src/common/services/sms.service.ts": { "mtime": 1787072106.3960736, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "354ecbb2d60de34e2176c1a8941edac0", "semantic_hash": "" }, "backend/src/common/sms.module.ts": { "mtime": 1785330750.996125, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "c2621fbe872597ca7fbc23fc7e261665", "semantic_hash": "" }, "backend/src/common/utils/phone.utils.ts": { "mtime": 1786883225.801396, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a4c682b767823a624163b9430f1db7d1", "semantic_hash": "" }, "backend/src/contact/contact.controller.ts": { "mtime": 1787645037.373264, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "96c41a8993b5a047db2f7ab33b3140fc", "semantic_hash": "" }, "backend/src/contact/contact.module.ts": { "mtime": 1786799852.236599, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3522066b9bc0d12c79ee13138ec94a23", "semantic_hash": "" }, "backend/src/contact/contact.service.ts": { "mtime": 1787127978.233104, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "795ecd48e5786280804b554877f43907", "semantic_hash": "" }, "backend/src/doctors/doctors.controller.ts": { "mtime": 1787148092.311693, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a552f2b9fa5f186871234fa7ffc0c849", "semantic_hash": "" }, "backend/src/doctors/doctors.module.ts": { "mtime": 1786971396.0355752, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6850f9203296ff749b5d7de975d3c6f7", "semantic_hash": "" }, "backend/src/doctors/doctors.service.ts": { "mtime": 1787148092.312693, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b7473f48fc2a077328d9d054c075bf46", "semantic_hash": "" }, "backend/src/doctors/dto/doctor-query.dto.ts": { "mtime": 1787148092.3146994, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "9c9b8e83bb5b207eb88d5da473562843", "semantic_hash": "" }, "backend/src/faq/faq.controller.ts": { "mtime": 1787148092.3166947, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "09e34477f9322954d856b496009ba0d5", "semantic_hash": "" }, "backend/src/faq/faq.module.ts": { "mtime": 1787148092.3166947, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "eb0d0be8c8742a787d205ef121b50ee7", "semantic_hash": "" }, "backend/src/faq/faq.service.ts": { "mtime": 1787148092.3199117, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "76c44314a43aa61ca7ba02e6cce871be", "semantic_hash": "" }, "backend/src/home/dto/create-home.dto.ts": { "mtime": 1783764561.6823654, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b20293c0606e764e43e19412e8b94e58", "semantic_hash": "" }, "backend/src/home/dto/update-home.dto.ts": { "mtime": 1783764561.6823654, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "fdbec5105f68e9ef5edca26c91c2a01b", "semantic_hash": "" }, "backend/src/home/entities/home.entity.ts": { "mtime": 1783764561.6848848, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f7e5b57b1dbb4fa28600ebdd5c86a73c", "semantic_hash": "" }, "backend/src/home/home.controller.ts": { "mtime": 1785327951.2120874, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3474997a729a3a47f1872f489c28e70e", "semantic_hash": "" }, "backend/src/home/home.module.ts": { "mtime": 1783764561.687108, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b8671f0d293617cf95cc2e9aef8ab11a", "semantic_hash": "" }, "backend/src/home/home.service.ts": { "mtime": 1785327951.2140872, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "20073496a83b447238b4e8ab793573ec", "semantic_hash": "" }, "backend/src/ingredients/ingredients.controller.ts": { "mtime": 1786799852.2375965, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b591e9eeddc544d5224bbf8dc747f71e", "semantic_hash": "" }, "backend/src/ingredients/ingredients.module.ts": { "mtime": 1786799852.2385964, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "928f762b562c624011ca6c7e72543d0d", "semantic_hash": "" }, "backend/src/ingredients/ingredients.service.ts": { "mtime": 1786799852.2401083, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7d07a0fb1cdebe81d9ecef7604701bed", "semantic_hash": "" }, "backend/src/main.ts": { "mtime": 1787645037.3742604, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8a8353cb7d8f9eb4d079805678f31fb6", "semantic_hash": "" }, "backend/src/menu/menu.controller.ts": { "mtime": 1787564348.681949, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "091e15205d159cebb946d545a9cec92a", "semantic_hash": "" }, "backend/src/menu/menu.module.ts": { "mtime": 1787148092.3238695, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "57340cf9c9a8c0562995738bac8efc7b", "semantic_hash": "" }, "backend/src/menu/menu.service.ts": { "mtime": 1787564362.2621727, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "50a88c362e71338570fa3aee831bb0ba", "semantic_hash": "" }, "backend/src/orders/dto/create-order.dto.ts": { "mtime": 1785327951.218626, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "de9e39544ff4cfbbc8233318b2b71c67", "semantic_hash": "" }, "backend/src/orders/orders.controller.spec.ts": { "mtime": 1785327951.2196276, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "03aae30c09648646afbd6f8862d2d12b", "semantic_hash": "" }, "backend/src/orders/orders.controller.ts": { "mtime": 1787072106.3980772, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "58b8b3790952f51c625e31f5eed09d3b", "semantic_hash": "" }, "backend/src/orders/orders.module.ts": { "mtime": 1783764561.6975982, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "10e4c03ae468f0412d882306bdb20401", "semantic_hash": "" }, "backend/src/orders/orders.service.spec.ts": { "mtime": 1787729523.4368768, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a080730dc8c8abe4ab58ddb86ef7a5ef", "semantic_hash": "" }, "backend/src/orders/orders.service.ts": { "mtime": 1787127978.2361033, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "36e0f20d4d60e0aa48540ffe11ca0d1c", "semantic_hash": "" }, "backend/src/payment/dto/admin-transaction-filter.dto.ts": { "mtime": 1787072106.4015906, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "afa18a9b091f326229902f10477bb1c1", "semantic_hash": "" }, "backend/src/payment/dto/ebank-checkout.dto.ts": { "mtime": 1787394001.6034613, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "420fb2e706c51e65cac8615d130993fe", "semantic_hash": "" }, "backend/src/payment/dto/initiate-payment.dto.ts": { "mtime": 1786870552.8742464, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a097fcbb5846e7cd00e7cb2cefc060bb", "semantic_hash": "" }, "backend/src/payment/dto/verify-payment.dto.ts": { "mtime": 1786894580.126858, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f6db4b79ca261e36334ef84f39b8e87c", "semantic_hash": "" }, "backend/src/payment/interfaces/payment-gateway.interface.ts": { "mtime": 1786870552.8767512, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "930a5f06cdec431d842bf9b12618eed5", "semantic_hash": "" }, "backend/src/payment/payment.controller.ts": { "mtime": 1787564362.263176, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a98c3805d67b740857686d128592a734", "semantic_hash": "" }, "backend/src/payment/payment.module.ts": { "mtime": 1787394001.605618, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7ee5887f04915d1bd1471705a8f941ad", "semantic_hash": "" }, "backend/src/payment/payment.service.ts": { "mtime": 1787564362.2641742, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3f65606fa57b8e2c85cfdfc600a02ec8", "semantic_hash": "" }, "backend/src/payment/zibal-ebank.service.ts": { "mtime": 1787461919.4523065, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7075a9caf96d6f38e0a8b0208dbd0ab5", "semantic_hash": "" }, "backend/src/payment/zibal.service.ts": { "mtime": 1787461919.453309, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0c7c645422cf2a3ba406390802ee365d", "semantic_hash": "" }, "backend/src/pets/dto/create-health-log.dto.ts": { "mtime": 1785327951.2294433, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "da823d24eecce83c17760374fbc99131", "semantic_hash": "" }, "backend/src/pets/dto/create-pet.dto.ts": { "mtime": 1785327951.2309487, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "22e442118c4b4c44d887a9e72bf416e2", "semantic_hash": "" }, "backend/src/pets/dto/create-reminder.dto.ts": { "mtime": 1785327951.2319582, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "61e74b013460e406bd10197b3d3a95df", "semantic_hash": "" }, "backend/src/pets/dto/update-pet.dto.ts": { "mtime": 1783764561.7095575, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a2086bbebe7ca2718d4933b9828b456d", "semantic_hash": "" }, "backend/src/pets/pets.controller.spec.ts": { "mtime": 1786799852.2481189, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "ea25cbbc55569e44ea0ceaf8c7af5111", "semantic_hash": "" }, "backend/src/pets/pets.controller.ts": { "mtime": 1787461919.454309, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "20c1ead48262a81ff538fedae048d784", "semantic_hash": "" }, "backend/src/pets/pets.module.ts": { "mtime": 1783764561.71447, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "1e30ca9c5823c33d4f3266d5b48fee01", "semantic_hash": "" }, "backend/src/pets/pets.service.spec.ts": { "mtime": 1785327951.238208, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "49e5e2df9d623a5510db8d9c3eefdbd5", "semantic_hash": "" }, "backend/src/pets/pets.service.ts": { "mtime": 1786799852.2501173, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f34775f4106e2ac19efff3a9b140db3f", "semantic_hash": "" }, "backend/src/prescriptions/prescriptions.controller.ts": { "mtime": 1786799852.2537484, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3b657f5cac989600c165b8eac3a6a2af", "semantic_hash": "" }, "backend/src/prescriptions/prescriptions.module.ts": { "mtime": 1786954681.8158092, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0f9ea31fa7fa71f4ec87e461ce7d444f", "semantic_hash": "" }, "backend/src/prescriptions/prescriptions.service.ts": { "mtime": 1787072106.408779, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6b018d33377fdfcba9e4512e50da48a0", "semantic_hash": "" }, "backend/src/prisma/prisma.module.ts": { "mtime": 1783764561.7181997, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3505a1831c78f0a9475e4ce0f0092410", "semantic_hash": "" }, "backend/src/prisma/prisma.service.ts": { "mtime": 1787640806.107781, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "1a6d7ac4a114351a0a3deb1835481a59", "semantic_hash": "" }, "backend/src/products/dto/get-products.dto.ts": { "mtime": 1786799852.2602715, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bed3d5bd69f866349bfc408bfea60e78", "semantic_hash": "" }, "backend/src/products/products.controller.spec.ts": { "mtime": 1785327951.243281, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6fde28604e799d5c5c0d2c6c2fcb4372", "semantic_hash": "" }, "backend/src/products/products.controller.ts": { "mtime": 1786799852.2612817, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "db015311d34c7985c1c4ab818070b297", "semantic_hash": "" }, "backend/src/products/products.module.ts": { "mtime": 1783764561.7236724, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "a70b434bb1a044adf542a78cd9461264", "semantic_hash": "" }, "backend/src/products/products.service.spec.ts": { "mtime": 1787729523.4384463, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "1f1e441d2138fefdd717b553f42d3ca0", "semantic_hash": "" }, "backend/src/products/products.service.ts": { "mtime": 1787740536.6650896, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3d2bd9ee46d38e11faaca20027814b0c", "semantic_hash": "" }, "backend/src/redis/redis.module.ts": { "mtime": 1783764561.727662, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0856864a521a862369a89de9b2d3c9f0", "semantic_hash": "" }, "backend/src/redis/redis.service.spec.ts": { "mtime": 1783764561.7286723, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f3a16f7f1721be9e6ddb7ddd2949ea6c", "semantic_hash": "" }, "backend/src/redis/redis.service.ts": { "mtime": 1786895436.2118347, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4f5e58ffc36bbaed17ee669e5a7394b7", "semantic_hash": "" }, "backend/src/reviews/dto/create-review.dto.ts": { "mtime": 1787072106.4143064, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "2ae6e4616eaeeafd56d4c74bbfe79f12", "semantic_hash": "" }, "backend/src/reviews/dto/update-review.dto.ts": { "mtime": 1787072106.4158058, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "1c989ea4d1dd9c3fcf8b442e61a2d2e3", "semantic_hash": "" }, "backend/src/reviews/reviews.controller.ts": { "mtime": 1787645037.3752687, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "afebaeead6edc0c9618daa1a3b16ac42", "semantic_hash": "" }, "backend/src/reviews/reviews.module.ts": { "mtime": 1786944769.5173109, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7f5cb88dda0a902c24c48edb34647428", "semantic_hash": "" }, "backend/src/reviews/reviews.service.ts": { "mtime": 1787579631.7755866, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "fc9f239f7b233fd9549aaaaa226bd9f3", "semantic_hash": "" }, "backend/src/seo/seo.controller.ts": { "mtime": 1785327951.2472832, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4c11a3beaa94a769acf206bf9ff279b0", "semantic_hash": "" }, "backend/src/seo/seo.module.ts": { "mtime": 1785148022.268581, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4160982445b855a6406e8713e95bf91b", "semantic_hash": "" }, "backend/src/seo/seo.service.ts": { "mtime": 1787127978.249385, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "c104390de2fa710428b6d69c6201f4d8", "semantic_hash": "" }, "backend/src/settings/default-ui-texts.ts": { "mtime": 1787564362.2661722, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6b2cb7838c9b17d1856a03da34d299dd", "semantic_hash": "" }, "backend/src/settings/dto/sms-log-query.dto.ts": { "mtime": 1787072106.4213393, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d1b143222dc6ecfcff03180de1a23e9e", "semantic_hash": "" }, "backend/src/settings/settings.controller.spec.ts": { "mtime": 1787729523.4384463, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bc268d693685c78c407142ecd0e58afe", "semantic_hash": "" }, "backend/src/settings/settings.controller.ts": { "mtime": 1787072106.423348, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d9785a80bc7e90198192a97d4f7cbb7b", "semantic_hash": "" }, "backend/src/settings/settings.module.ts": { "mtime": 1783764561.7355156, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b84a45f92537de41c7c3821847271004", "semantic_hash": "" }, "backend/src/settings/settings.service.spec.ts": { "mtime": 1787729523.4394524, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8a15891a088d3c0e69639ac19dbe8f40", "semantic_hash": "" }, "backend/src/settings/settings.service.ts": { "mtime": 1787461919.45531, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8750d228767aa14db2551f72de954d73", "semantic_hash": "" }, "backend/src/smart-advisor/smart-advisor.controller.ts": { "mtime": 1786799852.2754414, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "eacb4fc2f3d82eb3833f4b04d851d4c3", "semantic_hash": "" }, "backend/src/smart-advisor/smart-advisor.module.ts": { "mtime": 1786799852.2764418, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "40d2882f5f8a0733c940c754631be24b", "semantic_hash": "" }, "backend/src/smart-advisor/smart-advisor.service.ts": { "mtime": 1786799852.2774403, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "1824f7151599e310cd2de7435e345afe", "semantic_hash": "" }, "backend/src/testimonials/testimonials.controller.ts": { "mtime": 1787148092.3297865, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "077ac1d08fbec205f030f3cc6b7f357c", "semantic_hash": "" }, "backend/src/testimonials/testimonials.module.ts": { "mtime": 1786799852.2794418, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e2778d19b65d66f61d35f1a98333c873", "semantic_hash": "" }, "backend/src/testimonials/testimonials.service.ts": { "mtime": 1787148092.3325016, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7c108b6bdfc5625fc3c058f1db527bbe", "semantic_hash": "" }, "backend/src/tickets/dto/create-ticket.dto.ts": { "mtime": 1787072106.4308748, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "cb6ad48fdfa6c9c24158b32c4882a38f", "semantic_hash": "" }, "backend/src/tickets/dto/ticket-query.dto.ts": { "mtime": 1787072106.4318714, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f7c6a4165ac086ba6de6fb111c75c2e9", "semantic_hash": "" }, "backend/src/tickets/tickets.controller.ts": { "mtime": 1787072106.433878, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6eb0b4d21421f9f5aa1831b0402257e8", "semantic_hash": "" }, "backend/src/tickets/tickets.module.ts": { "mtime": 1786890779.3222969, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0b3e226a18679b4bf37016c27b874ae9", "semantic_hash": "" }, "backend/src/tickets/tickets.service.ts": { "mtime": 1787072106.4348743, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "16b88701d7cc2a14f47e99f55882e67a", "semantic_hash": "" }, "backend/src/users/dto/address.dto.ts": { "mtime": 1783764561.7398715, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d42a8da106b862f8934b4268e5974025", "semantic_hash": "" }, "backend/src/users/dto/update-profile.dto.ts": { "mtime": 1786885876.8054721, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7c5b2601ea43f7045a5691ed1fde7840", "semantic_hash": "" }, "backend/src/users/users.controller.spec.ts": { "mtime": 1785327951.2537966, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8879233da361926bf496aa33fc24a0a4", "semantic_hash": "" }, "backend/src/users/users.controller.ts": { "mtime": 1786799852.2824814, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0c14b005ce0dddc5c6be9fb33672c659", "semantic_hash": "" }, "backend/src/users/users.module.ts": { "mtime": 1783764561.7481544, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "6a22d47a72af32e6726ff5025c1d6f0b", "semantic_hash": "" }, "backend/src/users/users.service.spec.ts": { "mtime": 1787729523.4404535, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "c85c82974e9889c38cbca862f0c659f0", "semantic_hash": "" }, "backend/src/users/users.service.ts": { "mtime": 1787127978.2530408, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "30b5b653694deebda2e072a57145b3d6", "semantic_hash": "" }, "backend/src/videos/dto/create-video.dto.ts": { "mtime": 1786971396.042094, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "292c465ed02d974fc16c674ca6f7caf5", "semantic_hash": "" }, "backend/src/videos/dto/get-videos-query.dto.ts": { "mtime": 1786799852.2876434, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "22029a395d4906dec82a0472af9827a2", "semantic_hash": "" }, "backend/src/videos/videos.controller.ts": { "mtime": 1786799852.2911532, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "64de50207aa54dc4d9866fb41a3cf11e", "semantic_hash": "" }, "backend/src/videos/videos.module.ts": { "mtime": 1785148022.3065836, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "79c989585f2c5da29199d914ca54abdf", "semantic_hash": "" }, "backend/src/videos/videos.service.ts": { "mtime": 1787740536.6661606, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "837274265cc2372144071ed4d261ca09", "semantic_hash": "" }, "backend/src/wholesale/dto/wholesale-apply.dto.ts": { "mtime": 1785148022.3176222, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "dda43ea50daed66d9ddf56ff14c2ac31", "semantic_hash": "" }, "backend/src/wholesale/wholesale.controller.ts": { "mtime": 1786799852.294177, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "85347767e9b0508aa27c8fc2ada57403", "semantic_hash": "" }, "backend/src/wholesale/wholesale.module.ts": { "mtime": 1785148022.3287463, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "431fcacfcaaf5ee3872869c796581db3", "semantic_hash": "" }, "backend/src/wholesale/wholesale.service.ts": { "mtime": 1785330913.1492333, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f17e69107c7ddb8baedfb9fa1177c8a0", "semantic_hash": "" }, "backend/src/wiki/dto/create-wiki.dto.ts": { "mtime": 1783764561.7529333, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bff0bff5978c808b3f6c7c0471ecc09f", "semantic_hash": "" }, "backend/src/wiki/dto/update-wiki.dto.ts": { "mtime": 1783764561.753945, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "aafeafc832089a9d47f2b09c15f5166c", "semantic_hash": "" }, "backend/src/wiki/entities/wiki.entity.ts": { "mtime": 1783764561.7550395, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "0babba8c13baba4a2ad2fd70395060f2", "semantic_hash": "" }, "backend/src/wiki/wiki.controller.ts": { "mtime": 1785327951.2728505, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "ca3a7279ecce06e6747e4b5d1b83f042", "semantic_hash": "" }, "backend/src/wiki/wiki.module.ts": { "mtime": 1783764561.756925, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "22c999c57982f13d0526d25d7990b745", "semantic_hash": "" }, "backend/src/wiki/wiki.service.ts": { "mtime": 1786799852.295173, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4f9a02a302512579c6eaed6e06da679e", "semantic_hash": "" }, "backend/test/app-audit-verification.e2e-spec.d.ts": { "mtime": 1787073059.1090057, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e2ebd7ddedcadeeadbf819c35985c768", "semantic_hash": "" }, "backend/test/app-audit-verification.e2e-spec.js": { "mtime": 1787073059.1105163, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3906e1e6a6fe48f74cd15f9b81b8775a", "semantic_hash": "" }, "backend/test/app-audit-verification.e2e-spec.ts": { "mtime": 1786799852.2961748, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "5df6593dd9fd1f88f2b1e13f44b7b350", "semantic_hash": "" }, "backend/test/app.e2e-spec.d.ts": { "mtime": 1787073059.1125634, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e2ebd7ddedcadeeadbf819c35985c768", "semantic_hash": "" }, "backend/test/app.e2e-spec.js": { "mtime": 1787073059.1135726, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "4ff6e84fd1b500597f4cc40d5877ad1b", "semantic_hash": "" }, "backend/test/app.e2e-spec.ts": { "mtime": 1786799852.297175, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "8373bf2ee758abe47f5681e898cde506", "semantic_hash": "" }, "backend/tsconfig.build.json": { "mtime": 1783764561.763447, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d3d6c627ed113034e4138ae830ca9221", "semantic_hash": "" }, "backend/tsconfig.json": { "mtime": 1787073059.1161675, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bc2ddace3dc933b714ebc21504c43b62", "semantic_hash": "" }, "docs/audit/build_manifest.js": { "mtime": 1786799852.3383932, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "5865147d3b17e6ddad0be4f4b9dc00d0", "semantic_hash": "" }, "docs/audit/generate_classification.js": { "mtime": 1786799852.3393898, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "01cdce5da0cdc41b49a7e9560a0b8ae9", "semantic_hash": "" }, "docs/audit/generate_evidence.js": { "mtime": 1786799852.3403902, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f31d1dafad3e771e9602776460c04761", "semantic_hash": "" }, "docs/audit/generate_ledger.js": { "mtime": 1786799852.3418972, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "c502805af184c8efe08a66030ff0203b", "semantic_hash": "" }, "docs/audit/generate_manifest.js": { "mtime": 1786799852.3418972, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "d9ead302d1023a72718e60261725e429", "semantic_hash": "" }, "docs/audit/rebuild_honest_ledger.js": { "mtime": 1786799852.348953, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "5a505fbc55dbabd0557377ce8de0643a", "semantic_hash": "" }, "docs/audit/sync_honest_manifest.js": { "mtime": 1786799852.3499532, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "3f2ec3b689e720b6e50fe4666a9b8bb0", "semantic_hash": "" }, "docs/audit/sync_manifest.js": { "mtime": 1786799852.3509533, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7315ba82c162ad4c2a0cec307966c580", "semantic_hash": "" }, "docs/audit/validate_evidence_grade.js": { "mtime": 1786799852.351954, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "5f68ed3e8236ececf82e5da4ac47d93b", "semantic_hash": "" }, "docs/audit/validate_integrity.js": { "mtime": 1786799852.3529525, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "7bd05a71bd8c0c23db65db5201d3c030", "semantic_hash": "" }, "frontend/admin-panel/eslint.config.js": { "mtime": 1787148092.3345017, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "b204828b41a3391dd9ab65a1087e197f", "semantic_hash": "" }, "frontend/admin-panel/package.json": { "mtime": 1785570791.953119, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "f9e35fdccbe93fd60b511f72bf414766", "semantic_hash": "" }, "frontend/admin-panel/postcss.config.js": { "mtime": 1783764561.7962818, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "c1ee9ce6a4fe04105dbf8e619390df5e", "semantic_hash": "" }, "frontend/admin-panel/src/App.tsx": { "mtime": 1786799852.3654811, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "140226fcd94080d00f56e2f8b65f95e5", "semantic_hash": "" }, "frontend/admin-panel/src/components/Layout.tsx": { "mtime": 1784621786.9585948, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "e2192f9b6c86f07ff6c6ec9bf9d1cb71", "semantic_hash": "" }, "frontend/admin-panel/src/components/ProtectedRoute.tsx": { "mtime": 1786799852.369164, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bcb0329847fb25e9fe1e990a30609210", "semantic_hash": "" }, "frontend/admin-panel/src/components/RouteErrorBoundary.tsx": { "mtime": 1787062174.623011, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "bede52b77e6efe56c4f710279fdbcfbd", "semantic_hash": "" }, "frontend/admin-panel/src/components/Sidebar.tsx": { "mtime": 1787461920.8420844, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0020921da1b729dd663979b02a39e91f", "semantic_hash": "" }, "frontend/admin-panel/src/components/Topbar.tsx": { "mtime": 1787466234.9643857, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ffa50e46783a27f148b41212e5810b46", "semantic_hash": "" }, "frontend/admin-panel/src/components/TransactionReceiptModal.tsx": { "mtime": 1787405554.8046184, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8931b7ade86ad779579db166eb148469", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Badge.tsx": { "mtime": 1787461920.844094, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3b93789328a250499e58378552881527", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Button.tsx": { "mtime": 1787467799.871536, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8d920444901883ddb6e7b4745d28c0a7", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ConfirmModal.tsx": { "mtime": 1786972191.3590996, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "982712b3d0130cbc66035a9caa4dc173", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/FormField.tsx": { "mtime": 1786954681.823527, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "265c887af876e10153f2ac32844194c2", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/IconPickerModal.tsx": { "mtime": 1787071159.9599283, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d4676fe2b24132bbfeb1b53f2b314ed7", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx": { "mtime": 1786954681.824535, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ada78d41f18a3dcce5e806a2ab252d30", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Input.tsx": { "mtime": 1786954681.825536, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b3c0b6ae3bec10c6ac070ae60e804e28", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/MaskableField.tsx": { "mtime": 1787405554.805712, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b97dc137463327fd294e929cfa65545c", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/MediaSelector.tsx": { "mtime": 1787038450.536697, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ed6a6da6e5929bf77a82b5cda0fb3eeb", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Modal.tsx": { "mtime": 1787461920.8450942, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "e11f7ea28068c2a268db4d032c3fc9f5", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Pagination.tsx": { "mtime": 1786799852.387442, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8ab314264c858bcd6cb53fc4c9985cf0", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/PriceInput.tsx": { "mtime": 1786948119.7711625, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "09a84a9f29f735448d05e4327c0304b3", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/RichTextEditor.tsx": { "mtime": 1787980615.5635426, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "af8af048bb77473565ae93c941d6f71d", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Select.tsx": { "mtime": 1786954681.8285375, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a06e97672e210fdff460252966d2ab09", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Skeleton.tsx": { "mtime": 1783856792.9775357, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "dd6a1fca8a8db341521aa315829143e0", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Spinner.tsx": { "mtime": 1783856792.9790492, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "32a95c9dc25ac088596fdccd17d7284a", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Textarea.tsx": { "mtime": 1786954681.8285375, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "bbbdbaa3a2aeb68e7e406d555129fb79", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ThSort.tsx": { "mtime": 1787461920.8450942, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "421faa21b7189758f65616964f288b0c", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ToggleSwitch.tsx": { "mtime": 1786954681.830045, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "f212eaa6017ac07b37356612883b2884", "semantic_hash": "" }, "frontend/admin-panel/src/main.tsx": { "mtime": 1787062325.3950386, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "e9195a72ddf4287e9eac6200a579623c", "semantic_hash": "" }, "frontend/admin-panel/src/pages/B2BManager.tsx": { "mtime": 1787729527.9273918, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1c0145c22fcc3261e7c783a4c3d098ff", "semantic_hash": "" }, "frontend/admin-panel/src/pages/BannersManager.tsx": { "mtime": 1787467799.8741717, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d567c9ad3dcbf316b5622aeaa1b8e71d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Blogs.tsx": { "mtime": 1787729527.9283917, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "2f2312e9d916f845c5ffa512522e5684", "semantic_hash": "" }, "frontend/admin-panel/src/pages/CMS.tsx": { "mtime": 1787467933.66426, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "7c60aa58d334f1ffbaba2bf881492999", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Categories.tsx": { "mtime": 1787469989.1415117, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "db0c156eff28f6adb66eeebf37f0cd0c", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ContactSubmissions.tsx": { "mtime": 1787467799.877344, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b636f5f1432d4e2842d4bcea297ad4b8", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Coupons.tsx": { "mtime": 1787469989.1442049, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1131b4561720966f7ad1693f0d93b1c9", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Dashboard.tsx": { "mtime": 1786885876.82951, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "025cbf432db0594426593332e01d5924", "semantic_hash": "" }, "frontend/admin-panel/src/pages/DoctorsManager.tsx": { "mtime": 1787467799.8799238, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5671cef0d264dc92d9540058a929633e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/FAQManager.tsx": { "mtime": 1787467799.8819249, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3024a02175a185553d0fe7bef61ba293", "semantic_hash": "" }, "frontend/admin-panel/src/pages/FinancialSettingsPage.tsx": { "mtime": 1787467799.8829253, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1051e6ca581035434cfb7f44408e24ab", "semantic_hash": "" }, "frontend/admin-panel/src/pages/IngredientsManager.tsx": { "mtime": 1787467933.6699345, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ff90e4e00c59efc1decad824ccd74f2f", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Login.tsx": { "mtime": 1787127978.262361, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "49f753cc3593cff1360ca981e8f7682e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Media.tsx": { "mtime": 1787467799.8859253, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "82bca4823f75ac46b5c99010d90406c0", "semantic_hash": "" }, "frontend/admin-panel/src/pages/MenuManager.tsx": { "mtime": 1787469989.146215, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "22996483f9cfdd91ac8b003e0c88bf02", "semantic_hash": "" }, "frontend/admin-panel/src/pages/MonitoringPage.tsx": { "mtime": 1787466234.9659803, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0b2ef8e74d5b5c1cc7f1587445080cc1", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Orders.tsx": { "mtime": 1787729527.9293962, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "f842ff46e5b91949d2fc64a5ca10a147", "semantic_hash": "" }, "frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx": { "mtime": 1787467799.8899395, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3f56b1c5ba2b01fae9ed51faf870cb8d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Pets.tsx": { "mtime": 1787467799.8919382, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d7193caca6127917bb62d9303859c55f", "semantic_hash": "" }, "frontend/admin-panel/src/pages/PrescriptionsManager.tsx": { "mtime": 1787467799.8929358, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "da18bacd672ffa7453f1a0dd00a0c1e5", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Products.tsx": { "mtime": 1787991371.7697499, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3b66f8f14380c9cc35b18a598d42c11d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Reports.tsx": { "mtime": 1787729523.4424512, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "aece92a46fa9602c4f1c2312d1654c0d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Reviews.tsx": { "mtime": 1787740536.6709485, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "6dd3c72f62f2d7d26a6300b577f3829d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SeoSettingsPage.tsx": { "mtime": 1787467799.8999343, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "07c293b237c544f1c22771ff40dcf432", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Settings.tsx": { "mtime": 1787468615.4578195, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "48d2a21e7213783f8fded696ef514d40", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ShippingSettingsPage.tsx": { "mtime": 1787467799.9019353, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "329ce7c2b153a8d4f0ca26374759938e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SmartAdvisorManager.tsx": { "mtime": 1787467799.9029336, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c7581c0ab40797e55144e588e75741de", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SmsSettingsPage.tsx": { "mtime": 1787467799.904439, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3f2bf95555c155f64faca1439356346f", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SslSettingsPage.tsx": { "mtime": 1787467799.9054468, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a989703bb87076f3c9c3c4a26012a5cb", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SystemSettingsPage.tsx": { "mtime": 1787742160.542544, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3b0e55c4e54c7f6ac70bb563db4396e2", "semantic_hash": "" }, "frontend/admin-panel/src/pages/TestimonialsManager.tsx": { "mtime": 1787467799.9089553, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "4efa3f2d1fe0f23974fa880da26e6768", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Tickets.tsx": { "mtime": 1787467799.909963, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0a9562f28e15b5af8acc8c15fc130729", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Transactions.tsx": { "mtime": 1787471434.8721883, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "50d95775caf9b786ee9dba4c5558d49e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/UITexts.tsx": { "mtime": 1787564362.2671711, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c6981f08494a46ffd28f085b88d15e1a", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Users.tsx": { "mtime": 1787740536.6729496, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1ce6b91814664a0f4af6eda895b9e96d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Videos.tsx": { "mtime": 1787740536.6756897, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "af075ac9e261faafbbc76de807fe2824", "semantic_hash": "" }, "frontend/admin-panel/src/pages/WholesaleApplications.tsx": { "mtime": 1787467799.9168525, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "706933237e883550fbb7cdb6dd379815", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Wiki.tsx": { "mtime": 1787469989.158213, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c563794e3da6d723f67834eed032495a", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ZibalPortalPage.tsx": { "mtime": 1787570438.155805, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "7411a269c9220ed427aced022e858504", "semantic_hash": "" }, "frontend/admin-panel/src/routes/adminRoutes.tsx": { "mtime": 1787461920.8540971, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "50755a1d58935bf5b70406d2e83564f3", "semantic_hash": "" }, "frontend/admin-panel/src/services/api.ts": { - "mtime": 1786896758.433963, - "seen": 1787997337.391446, - "ast_hash": "2bec645a6dc0218587030146034dbea0", + "mtime": 1787997569.0013134, + "seen": 1787997655.7301521, + "ast_hash": "3fb217f4a2e3e3dfc0f8e5494f1eabac", "semantic_hash": "" }, "frontend/admin-panel/src/store/adminAuthStore.ts": { "mtime": 1786799852.469037, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a2ca7b287d2c7efe08802b6187d95d67", "semantic_hash": "" }, "frontend/admin-panel/src/types/admin.ts": { "mtime": 1787139270.9574077, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "7e167fef2655f090edc24e3575bb84f4", "semantic_hash": "" }, "frontend/admin-panel/src/utils/lazyWithRetry.ts": { "mtime": 1787062174.6262279, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8fd1116250eef64a64411d9dd8322c18", "semantic_hash": "" }, "frontend/admin-panel/src/utils/useTableParams.ts": { "mtime": 1787461920.855096, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "beda95a77f5cf930e48d9d5dc365aa12", "semantic_hash": "" }, "frontend/admin-panel/tailwind.config.js": { "mtime": 1783764561.8617213, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3346df3fd0a1ea3f84440703bf8fd2cb", "semantic_hash": "" }, "frontend/admin-panel/tsconfig.app.json": { "mtime": 1787055476.7795663, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b885d5f97cf6fc2c1e7997d4b8abfb88", "semantic_hash": "" }, "frontend/admin-panel/tsconfig.json": { "mtime": 1783764561.8633935, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a3d39fa780ebff65444de257f291ce6c", "semantic_hash": "" }, "frontend/admin-panel/tsconfig.node.json": { "mtime": 1783764561.863923, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "70bdd0a673bcfc0e828080b306e7c680", "semantic_hash": "" }, "frontend/admin-panel/vite.config.ts": { "mtime": 1783764561.864455, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "88439104b3c207f17d33ef3160e3b080", "semantic_hash": "" }, "frontend/application/app/ClientLayout.tsx": { "mtime": 1787729523.4434545, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "f92ed2cc89f07b1694ac80f703a829c6", "semantic_hash": "" }, "frontend/application/app/HomeClient.tsx": { "mtime": 1787729995.2374384, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "2a90eb17bc9fe8a752adcddab52b0e55", "semantic_hash": "" }, "frontend/application/app/about/page.tsx": { "mtime": 1787139270.9594126, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "dea769499f3e4d950e310655b5b9b455", "semantic_hash": "" }, "frontend/application/app/api/revalidate/route.ts": { "mtime": 1787579631.7801068, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "23184adf61db300179c0776b6a61ab0a", "semantic_hash": "" }, "frontend/application/app/b2b/error.tsx": { "mtime": 1787645037.377262, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d1311a94b33f2e302704576e2543fe10", "semantic_hash": "" }, "frontend/application/app/b2b/page.tsx": { "mtime": 1787644197.1416183, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "06efdc27aa409ef9001b99f03603c645", "semantic_hash": "" }, "frontend/application/app/blog/[slug]/page.tsx": { "mtime": 1787641161.057694, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1d3634d4395f48acdfe8e322f306ec3d", "semantic_hash": "" }, "frontend/application/app/blog/error.tsx": { "mtime": 1787645037.3782682, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "47fda48f69163db4c3e7ce7e13a1aef8", "semantic_hash": "" }, "frontend/application/app/blog/loading.tsx": { "mtime": 1787645037.3792627, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3ac7dcd4e891cc77e6a9a61f980c64e0", "semantic_hash": "" }, "frontend/application/app/blog/page.tsx": { "mtime": 1787993003.7725687, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "674cb6f16d90e8ca9023ba3db194667a", "semantic_hash": "" }, "frontend/application/app/blog/rss.xml/route.ts": { "mtime": 1787577523.7103512, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0f825c41a5e5c9ce9193e7ac98246f2d", "semantic_hash": "" }, "frontend/application/app/catalog/CatalogClient.tsx": { "mtime": 1786872121.5664852, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "32fa6454837b8cc0eabeec1f43f7208e", "semantic_hash": "" }, "frontend/application/app/catalog/page.tsx": { "mtime": 1787139270.9655254, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a3df5895707ba1f0809841320a2b7dff", "semantic_hash": "" }, "frontend/application/app/checkout/page.tsx": { "mtime": 1787139270.9675355, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3f670c85242a956b39b07dbada3e11d0", "semantic_hash": "" }, "frontend/application/app/checkout/success/[id]/page.tsx": { "mtime": 1783764561.8786683, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0e0899f968c15078ee01116c3e34d4a4", "semantic_hash": "" }, "frontend/application/app/contact/page.tsx": { "mtime": 1787644197.1431985, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d2c5d581794a3db28e310d33cdef4ef1", "semantic_hash": "" }, "frontend/application/app/dashboard/page.tsx": { "mtime": 1787394935.3182175, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "82cfc707ac8e663e34c742ee14b11a4e", "semantic_hash": "" }, "frontend/application/app/error.tsx": { "mtime": 1785148022.478709, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "aea86a6d5b21cbff7bb38f382d1dd82d", "semantic_hash": "" }, "frontend/application/app/layout.tsx": { - "mtime": 1787644197.1441965, - "seen": 1787997337.391446, - "ast_hash": "ab20541699ab83332ce9fcfe454aacdb", + "mtime": 1787997529.828964, + "seen": 1787997655.7301521, + "ast_hash": "084d6f6c7b9ec9bce37d843573a46804", "semantic_hash": "" }, "frontend/application/app/loading.tsx": { "mtime": 1785148022.48765, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "daf62321fecabcbf8379d39f84a07c03", "semantic_hash": "" }, "frontend/application/app/not-found.tsx": { "mtime": 1783764561.8914113, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "6cada341f40f65b06a39f2a3020d7b96", "semantic_hash": "" }, "frontend/application/app/page.tsx": { "mtime": 1787139270.9749596, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "cf29e953f9b3c0666b71f7d97136e8d3", "semantic_hash": "" }, "frontend/application/app/payment/verify/page.tsx": { "mtime": 1786891855.3560786, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "68d1923f04a3300b7b6dca6023ab357e", "semantic_hash": "" }, "frontend/application/app/privacy/page.tsx": { "mtime": 1787139270.9765637, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "54bf1a02ddfd06de2d9ec536a04ba97f", "semantic_hash": "" }, "frontend/application/app/profile/page.tsx": { "mtime": 1787139270.9788032, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1a4283a6fb6b3120519acbd35cb5282e", "semantic_hash": "" }, "frontend/application/app/robots.ts": { "mtime": 1787578481.501464, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c0e38b88b84ac47f4400128cfbc87987", "semantic_hash": "" }, "frontend/application/app/search/page.tsx": { "mtime": 1787139270.9799466, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "27d03ec9568875b47bb7d5bad3632085", "semantic_hash": "" }, "frontend/application/app/shop/[slug]/page.tsx": { "mtime": 1787579631.7871044, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "42d0bbe6ca70f218a49cb016d75bf606", "semantic_hash": "" }, "frontend/application/app/shop/error.tsx": { "mtime": 1787645037.3802679, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "23789b3ca79c69763d31dbf356e76a4b", "semantic_hash": "" }, "frontend/application/app/shop/feed.xml/route.ts": { "mtime": 1787578481.5064635, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "fb1f529191ecb6caf1e3e25853c7587c", "semantic_hash": "" }, "frontend/application/app/shop/loading.tsx": { "mtime": 1787645037.3802679, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "e7bc5c6479b8906b5f8fb19bfcf289f2", "semantic_hash": "" }, "frontend/application/app/shop/page.tsx": { "mtime": 1787644197.146199, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "746a67c82411b1d01b564dc0838cf26c", "semantic_hash": "" }, "frontend/application/app/sitemap-categories.xml/route.ts": { "mtime": 1787578481.507462, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "906c6270f0c13612729f42c1e7630cc2", "semantic_hash": "" }, "frontend/application/app/sitemap-products.xml/route.ts": { "mtime": 1787578481.5084643, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "e07cfe74793cf294eace564bf881bf6f", "semantic_hash": "" }, "frontend/application/app/sitemap.ts": { "mtime": 1787578481.5104632, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5ce17876bf57c30d753801930423e32c", "semantic_hash": "" }, "frontend/application/app/track/page.tsx": { "mtime": 1787139270.9842136, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ead1a36ba8de0ddbc98d68c77fcd0c68", "semantic_hash": "" }, "frontend/application/app/trust-seals/page.tsx": { "mtime": 1787394001.6093068, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8dca9a0847bedf92637fc07ed89e39b3", "semantic_hash": "" }, "frontend/application/app/videos/page.tsx": { "mtime": 1787644197.1471968, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "54232e77a222f6de008a9709b2975274", "semantic_hash": "" }, "frontend/application/app/wiki/[slug]/page.tsx": { "mtime": 1787644197.1491973, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "198d84f897be0d678ec7f4c3d9aeb25d", "semantic_hash": "" }, "frontend/application/app/wiki/page.tsx": { "mtime": 1787139270.9878309, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "79fec8952ae04bb5c7c9a1fc753da583", "semantic_hash": "" }, "frontend/application/components/AddressModal.tsx": { "mtime": 1787739535.190384, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "bcc4eb00c43d561308575389d6e21fb8", "semantic_hash": "" }, "frontend/application/components/ArchivePage.tsx": { "mtime": 1787742267.3054917, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8889f41536c5aed712fc9396bad75bd9", "semantic_hash": "" }, "frontend/application/components/AuthModal.tsx": { "mtime": 1787741599.341881, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "4752fec36f24504829a0165c8e98ac9e", "semantic_hash": "" }, "frontend/application/components/B2BLandingClient.tsx": { "mtime": 1787645037.3812675, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "795114ff03d5a13c4ac8b675cdadbe13", "semantic_hash": "" }, "frontend/application/components/B2BPortal.tsx": { "mtime": 1786894580.1568575, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "cd073e8a2de7b93496df2310de77f41a", "semantic_hash": "" }, "frontend/application/components/BackButton.tsx": { "mtime": 1786965281.3572779, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "9537791a36d9fc0245ab1edd523bad9e", "semantic_hash": "" }, "frontend/application/components/BannerPlacement.tsx": { "mtime": 1787564348.689902, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c8d73a358a8708e714e7e6d207aa4956", "semantic_hash": "" }, "frontend/application/components/BlogPage.tsx": { "mtime": 1787729523.4464538, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "7644b237cf768e9da2111e9c8908be4f", "semantic_hash": "" }, "frontend/application/components/BlogPostClient.tsx": { "mtime": 1787740536.6796968, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "de5822c944a797063075431f03a6bbb5", "semantic_hash": "" }, "frontend/application/components/BlogPreviewSection.tsx": { "mtime": 1787729995.238555, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d166cdd57e646e6cbd09bf6a59ec537b", "semantic_hash": "" }, "frontend/application/components/BrandLogo.tsx": { "mtime": 1787564348.6908622, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "2a31c72d7a8773622e7c898ce6d366ca", "semantic_hash": "" }, "frontend/application/components/CartDrawer.tsx": { "mtime": 1787733215.5489805, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "443487f1ee72272176431bd42ca89809", "semantic_hash": "" }, "frontend/application/components/CheckoutPage.tsx": { "mtime": 1787739535.1914592, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0d3d074e00ca89ec49bbb3992b89353c", "semantic_hash": "" }, "frontend/application/components/ContactFormClient.tsx": { "mtime": 1787729527.9353964, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1facfb3e0741d874546b3e76c6fd9bcd", "semantic_hash": "" }, "frontend/application/components/DeleteConfirmModal.tsx": { "mtime": 1786799852.6087523, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "831b2bddd3e6d156abdac216577e3c4c", "semantic_hash": "" }, "frontend/application/components/EnamadBadge.tsx": { "mtime": 1786799852.612362, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "37c7d2eaa27905307e5b2b147849519c", "semantic_hash": "" }, "frontend/application/components/ErrorBoundary.tsx": { "mtime": 1786799852.6145496, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "21b1cf87a9176b9f7902e5fc4f8b6482", "semantic_hash": "" }, "frontend/application/components/ErrorPages.tsx": { "mtime": 1787661485.9450746, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d367c117edee2e91bfaa263a9514b93c", "semantic_hash": "" }, "frontend/application/components/FAQSection.tsx": { "mtime": 1787729995.2396145, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5db489a17a6648b7eba83a4c5ae0bc5f", "semantic_hash": "" }, "frontend/application/components/FeaturedProducts.tsx": { "mtime": 1787981163.2423756, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "4b3f86326e55da7736eaf8fea377dd06", "semantic_hash": "" }, "frontend/application/components/Footer.tsx": { "mtime": 1787740536.6816978, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "89eb5ce19d28c4a68942227ed75a5c97", "semantic_hash": "" }, "frontend/application/components/Header.tsx": { "mtime": 1787980615.5669081, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3f53523324dfd5c305425935921a9245", "semantic_hash": "" }, "frontend/application/components/HeaderButton.tsx": { "mtime": 1786799852.637156, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5e4679ee49ad04e753de83a405255e44", "semantic_hash": "" }, "frontend/application/components/Hero.tsx": { "mtime": 1787729995.2417963, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "93dbb2a570cf39b65ce6a167b3c5ee78", "semantic_hash": "" }, "frontend/application/components/IngredientWiki.tsx": { "mtime": 1786965281.3742068, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5a656dd2b9fd9e8f8c83544b706da19a", "semantic_hash": "" }, "frontend/application/components/LoginModal.tsx": { "mtime": 1786885876.9322674, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8e7bdd175df5e72f59814fac75ff6254", "semantic_hash": "" }, "frontend/application/components/MaintenancePage.tsx": { "mtime": 1786946249.984693, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ddff8dfe25db6a3b4667f52a92ffbd12", "semantic_hash": "" }, "frontend/application/components/NetworkBanner.tsx": { "mtime": 1786799852.662139, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "17a159f769af90f446309ca321c86805", "semantic_hash": "" }, "frontend/application/components/OrderDetailsModal.tsx": { "mtime": 1787564348.6949298, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "0c74c1847f6de23d78e0069d1c438ea8", "semantic_hash": "" }, "frontend/application/components/OrderSuccess.tsx": { "mtime": 1786799852.6655424, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1af189b677cfa054b76f3a1b518113f8", "semantic_hash": "" }, "frontend/application/components/OrderTracking.tsx": { "mtime": 1787729527.937447, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "93ce4adc177efe4a3b2aadc4ede6f0bc", "semantic_hash": "" }, "frontend/application/components/PetProfile.tsx": { "mtime": 1787564348.6959305, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "861afaf9b756009c2694d3c922639dc4", "semantic_hash": "" }, "frontend/application/components/PodcastInlinePlayer.tsx": { "mtime": 1787993003.7742205, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "712a8696b965a733de2b5b6e2c6ab0ed", "semantic_hash": "" }, "frontend/application/components/PodcastPlayerModal.tsx": { "mtime": 1787748657.1551368, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a3a83583f1b826aa0c27e316f2cb8907", "semantic_hash": "" }, "frontend/application/components/PrescriptionUploadModal.tsx": { "mtime": 1787741735.2679474, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ecd337bd55277c67016bee2f1662d46d", "semantic_hash": "" }, "frontend/application/components/ProductPage.tsx": { "mtime": 1787991371.771377, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "08ae020f4e7d1c174a5cdc50c58114ec", "semantic_hash": "" }, "frontend/application/components/ProductReviews.tsx": { "mtime": 1787048863.6917748, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "814a762e9710ce872a7467ea0dd8e716", "semantic_hash": "" }, "frontend/application/components/SafeImage.tsx": { "mtime": 1787993003.7747903, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3d18d776b587cec3aa9173e6827fbaf0", "semantic_hash": "" }, "frontend/application/components/SearchResultsPage.tsx": { "mtime": 1786799852.7015781, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a5418e889a76fa054734277bd9a77a3d", "semantic_hash": "" }, "frontend/application/components/SearchableSelect.tsx": { "mtime": 1785575516.1555548, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "9a5010afe35da7c9584bf60e69e47002", "semantic_hash": "" }, "frontend/application/components/Skeleton.tsx": { "mtime": 1783764561.943997, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3df12c74c99d1d9ac25dfe620cf2b2c5", "semantic_hash": "" }, "frontend/application/components/SmartAdvisor.tsx": { "mtime": 1787729995.2428882, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "34ec5c5f9042ec19fcc046bcb7f6b54e", "semantic_hash": "" }, "frontend/application/components/TestimonialsSection.tsx": { "mtime": 1787729995.2439265, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "3644fcd722380b6d885b8f879a65fba3", "semantic_hash": "" }, "frontend/application/components/TickerBanner.tsx": { "mtime": 1786885876.9608357, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "e00022d0f2300ac98510a6f8c040598b", "semantic_hash": "" }, "frontend/application/components/Tooltip.tsx": { "mtime": 1787738415.3186703, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b0e43e946da566d57c832ccf07b99162", "semantic_hash": "" }, "frontend/application/components/TopUpModal.tsx": { "mtime": 1787406597.3033493, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "178766a9fff90dd0b233dc958a2f79b8", "semantic_hash": "" }, "frontend/application/components/UserDashboard.tsx": { "mtime": 1787394935.3203175, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "4217d24d0a41643d249cd53267ffdf05", "semantic_hash": "" }, "frontend/application/components/VetGallery.tsx": { "mtime": 1787729995.2449634, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1772f3d1f53da91f3331f7ae44b372df", "semantic_hash": "" }, "frontend/application/components/VideoModalPlayer.tsx": { "mtime": 1787993003.7758553, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "43171a7865e98b7763e76b418e3fe9cd", "semantic_hash": "" }, "frontend/application/components/VideosPage.tsx": { "mtime": 1787729523.4504526, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "e0025493d5aaab06e5ccc669781a4a90", "semantic_hash": "" }, "frontend/application/components/__tests__/CartDrawer.test.tsx": { "mtime": 1786799852.7618258, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "6840b24eb0f28d8120a320f0fd466154", "semantic_hash": "" }, "frontend/application/components/__tests__/FeaturedProducts.test.tsx": { "mtime": 1787729523.4514546, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "317f5de841a35b6881d7a637d8cc921d", "semantic_hash": "" }, "frontend/application/components/__tests__/Footer.test.tsx": { "mtime": 1787729523.4524536, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8d06abc7e8f0b6bf8bb8f28e1b16e7de", "semantic_hash": "" }, "frontend/application/components/__tests__/Header.test.tsx": { "mtime": 1787729523.4524536, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a1786feed0dda8b2e95b4dc0493b5d10", "semantic_hash": "" }, "frontend/application/components/__tests__/Hero.test.tsx": { "mtime": 1786799852.7760108, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "cba126955eaf2edc40fe24ce0c42d850", "semantic_hash": "" }, "frontend/application/components/__tests__/Tooltip.test.tsx": { "mtime": 1786799852.784349, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a43df52896070e694d06a2d1ae89a99a", "semantic_hash": "" }, "frontend/application/components/catalog/CatalogPageSpread.tsx": { "mtime": 1787981163.2461245, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "684d8cbb103537467309996870e8d120", "semantic_hash": "" }, "frontend/application/components/catalog/FlipbookCatalog.tsx": { "mtime": 1787738052.8693354, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b8052da550a424f6888d06ccacf38d36", "semantic_hash": "" }, "frontend/application/components/catalog/ProductDetailModal.tsx": { "mtime": 1787981163.2477274, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "6c83f9d093866626428ee2a5cf841e70", "semantic_hash": "" }, "frontend/application/eslint.config.mjs": { "mtime": 1787148092.3580558, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b4917d5d92dcb4fe98715b5625b397e2", "semantic_hash": "" }, "frontend/application/lib/data/products.ts": { "mtime": 1787578481.5139885, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "369af05791a87fe7f4ce5e039b8388d5", "semantic_hash": "" }, "frontend/application/lib/data/provinces.ts": { "mtime": 1785571725.610676, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "cd814c89c40909d1da24ac1e01fd99c0", "semantic_hash": "" }, "frontend/application/lib/data/scientificTerms.ts": { "mtime": 1786958978.7430973, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "b469da9f5c2d6e81279c853211bc197f", "semantic_hash": "" }, "frontend/application/lib/fonts.ts": { "mtime": 1787579631.802835, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c6109c18c63f9d0160a23e1a4e0ce20a", "semantic_hash": "" }, "frontend/application/lib/hooks/useNetworkStatus.ts": { "mtime": 1786799852.793488, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d6ece33f5f0149a299c49366f0e314d0", "semantic_hash": "" }, "frontend/application/lib/schema.ts": { "mtime": 1787644197.1562054, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "78f0ccf9385189aa65639774e6feb3ad", "semantic_hash": "" }, "frontend/application/lib/seo.ts": { "mtime": 1787139270.9888349, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "63561ef7b8bd149b0e211fc4c9d0fab3", "semantic_hash": "" }, "frontend/application/lib/services/api.ts": { - "mtime": 1786954681.8442974, - "seen": 1787997337.391446, - "ast_hash": "ae46ef7c44f6cbfe689fb6807c23b26b", + "mtime": 1787997573.6773643, + "seen": 1787997655.7301521, + "ast_hash": "636bbe92bb95d7a02bd30d3c12ac70ab", "semantic_hash": "" }, "frontend/application/lib/services/authService.ts": { "mtime": 1786885876.9861848, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "497045bd75576ee0cb6f37fc0ad831da", "semantic_hash": "" }, "frontend/application/lib/services/orderService.ts": { "mtime": 1786799852.8107264, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5b8b9c867e3db50a9ed5e6b3f765e3b5", "semantic_hash": "" }, "frontend/application/lib/services/productService.ts": { "mtime": 1787993003.7784612, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "8ff3c37d360c355f6433621fb50000d0", "semantic_hash": "" }, "frontend/application/lib/services/ticketService.ts": { "mtime": 1786890779.3409019, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "6fcf9ed78ca9194e01333602a1989947", "semantic_hash": "" }, "frontend/application/lib/services/videoService.ts": { "mtime": 1787993003.7794602, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "f562a056b1c9a34e4fd37793caadb47a", "semantic_hash": "" }, "frontend/application/lib/store/__tests__/cartStore.test.ts": { "mtime": 1786799852.822037, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "741d154ab7044aa24c39b1694dbd9a32", "semantic_hash": "" }, "frontend/application/lib/store/__tests__/settingsStore.test.ts": { "mtime": 1783856793.0438032, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "9ca2a69a162e64abce0658a348454d97", "semantic_hash": "" }, "frontend/application/lib/store/__tests__/userStore.test.ts": { "mtime": 1786799852.8255477, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "9133574a4b0a49423dadbdc1d8d373b6", "semantic_hash": "" }, "frontend/application/lib/store/cartStore.ts": { "mtime": 1787660831.2202897, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "bca90351f647e0cbd364a37d7e193d8e", "semantic_hash": "" }, "frontend/application/lib/store/settingsStore.ts": { "mtime": 1786948119.7870967, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ad4252536324b30028b5e4844fbd959b", "semantic_hash": "" }, "frontend/application/lib/store/uiStore.ts": { "mtime": 1786799852.833588, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5b78ec13363f2456a9efa6189473f93b", "semantic_hash": "" }, "frontend/application/lib/store/usePetStore.ts": { "mtime": 1786954681.8453007, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ad7e988e8e7561ed1c39db9964710806", "semantic_hash": "" }, "frontend/application/lib/store/userStore.ts": { "mtime": 1787729523.4534545, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d8f10dc4e27e4f67ea104fe3a0dd7d98", "semantic_hash": "" }, "frontend/application/lib/types.ts": { "mtime": 1787729527.940444, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "1f5d62944be8572c5e09c5bdb2cd9333", "semantic_hash": "" }, "frontend/application/lib/utils.ts": { "mtime": 1786799852.847284, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "13d70256fc31437c6a1d3c3450c0d5c6", "semantic_hash": "" }, "frontend/application/next.config.ts": { "mtime": 1787579631.8053873, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "72dbc54deb8d63c55f916796261d5b5d", "semantic_hash": "" }, "frontend/application/package.json": { - "mtime": 1787640978.2471824, - "seen": 1787997337.391446, - "ast_hash": "88157c39dd13eecd904d916a155dd1df", + "mtime": 1787997511.7919667, + "seen": 1787997655.7301521, + "ast_hash": "d37a44f2e807df816937c5d6fffa8742", "semantic_hash": "" }, "frontend/application/postcss.config.mjs": { "mtime": 1783764561.9882522, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "239f3ebf717465dc636818a1a619398d", "semantic_hash": "" }, "frontend/application/tsconfig.json": { "mtime": 1786799852.86564, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "09df7544350f3ee3b4fe33841d294a86", "semantic_hash": "" }, "frontend/application/vitest.config.ts": { "mtime": 1786799852.8686528, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ee482d93c3e5c516e021b7a68c5fb60b", "semantic_hash": "" }, "frontend/application/vitest.setup.ts": { "mtime": 1787729523.454452, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "dc75e4763efd0d28d78fc3d91fdcf1c1", "semantic_hash": "" }, "package.json": { "mtime": 1787729528.0760052, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "c5535a73e39b3c14baebd00970f86081", "semantic_hash": "" }, "playwright.config.ts": { "mtime": 1787729528.0770054, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "61f1ddbe19ecdc3f2aab3547a8e4e469", "semantic_hash": "" }, "scripts/backup_db.sh": { "mtime": 1786799852.8767846, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "82cb31279bdfacde5efe978a55256436", "semantic_hash": "" }, "scripts/deploy.sh": { "mtime": 1787136904.5590942, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ad310d4368d2fe68ff5f902c248fcc22", "semantic_hash": "" }, "scripts/open-browsers.js": { - "mtime": 1787640978.2482345, - "seen": 1787997337.391446, - "ast_hash": "3b052f156a21c22d266ac6c38701c842", + "mtime": 1787997554.596197, + "seen": 1787997655.7301521, + "ast_hash": "bc8f63e0181b81b225e6d6e5dee8f1b7", "semantic_hash": "" }, "scripts/start-dev.js": { - "mtime": 1787072106.514647, - "seen": 1787997337.391446, - "ast_hash": "4c029b34e1d38346196356018a747008", + "mtime": 1787997547.4947727, + "seen": 1787997655.7301521, + "ast_hash": "cc8ebf221860d50c5e461ed3c4b46570", "semantic_hash": "" }, "start.sh": { "mtime": 1784033954.8130803, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "de3176806eab0abd69c6a8ea420b2095", "semantic_hash": "" }, "tests/e2e/admin/admin-b2b-submissions.spec.ts": { "mtime": 1787729528.080006, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "63deec2d4bccd47c87eaadbf1f8fb31b", "semantic_hash": "" }, "tests/e2e/admin/admin-blogs-crud.spec.ts": { "mtime": 1787729528.080006, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "d42eff5d8bc8a2faf14bfd9de683c7fa", "semantic_hash": "" }, "tests/e2e/admin/admin-crud.spec.ts": { "mtime": 1787729528.0810058, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "82a34c05711c1890596e3c00db05d089", "semantic_hash": "" }, "tests/e2e/admin/admin-orders-flow.spec.ts": { "mtime": 1787729528.082005, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "5294a6822ba40c754b5a1cb9b8f0de40", "semantic_hash": "" }, "tests/e2e/admin/admin-rbac-roles.spec.ts": { "mtime": 1787729528.0830057, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "30411471f6f78a13f98ef638fac9f89d", "semantic_hash": "" }, "tests/e2e/security/xss-ratelimit.spec.ts": { "mtime": 1787729528.0850058, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "85c831c7ef545b83626f55d43196cdd7", "semantic_hash": "" }, "tests/e2e/storefront/auth-otp-recovery.spec.ts": { "mtime": 1787729528.0860093, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "a954146b86f7d653ba7459e649ac7a13", "semantic_hash": "" }, "tests/e2e/storefront/b2b-flow.spec.ts": { "mtime": 1787729528.0865166, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "bac838e176aa3e82e88678fb9b067f38", "semantic_hash": "" }, "tests/e2e/storefront/blog-wiki.spec.ts": { "mtime": 1787729528.0875323, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "d9e92b416a7a57729777ac446f885772", "semantic_hash": "" }, "tests/e2e/storefront/cart-operations.spec.ts": { "mtime": 1787729528.0890346, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "3d5f3e4a1f5ae0464663a1f40d1deabf", "semantic_hash": "" }, "tests/e2e/storefront/checkout-flow.spec.ts": { "mtime": 1787729528.0890346, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7bf23a14ed1e1d260b87b6a2d32b9367", "semantic_hash": "" }, "tests/e2e/storefront/concurrency-stock.spec.ts": { "mtime": 1787729528.0900416, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "d0c37fe56bca17fee9e55b8a872b7dab", "semantic_hash": "" }, "tests/e2e/storefront/contact.spec.ts": { "mtime": 1787729528.0910428, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "92a3f8abf800a336fd49e73017b16879", "semantic_hash": "" }, "tests/e2e/storefront/error-pages-404-500.spec.ts": { "mtime": 1787729528.092042, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "0a3d841121c8102bd4601b4cd5a880da", "semantic_hash": "" }, "tests/e2e/storefront/order-tracking.spec.ts": { "mtime": 1787729528.093042, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "bc9462f404850129c094dce93171df69", "semantic_hash": "" }, "tests/e2e/storefront/shop-filter-search.spec.ts": { "mtime": 1787729528.0940487, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "ed34437d88473ac582ff3487cbb58ad1", "semantic_hash": "" }, "tests/fixtures/admin-auth.setup.ts": { "mtime": 1787729528.0950477, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "e9f0440ae28b1d3632693f7e2a3e03a5", "semantic_hash": "" }, "tests/fixtures/index.ts": { "mtime": 1787729528.0950477, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "25e50ff95976135d1b8b381c3d355b51", "semantic_hash": "" }, "tsconfig.json": { "mtime": 1787729528.0960474, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "a57313e870eea61fd8ca26a23da00e62", "semantic_hash": "" }, ".agents/rules/graphify.md": { "mtime": 1786870552.830271, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "f1e53ecc9194573d3c28fc116c743a2e", "semantic_hash": "" }, ".agents/workflows/graphify.md": { "mtime": 1786870552.8323984, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "6d73634a678cf1e1c71930adf80bd1f0", "semantic_hash": "" }, ".ai_agency/AGENCY.md": { "mtime": 1785148021.9796073, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9a615cfac3d434770f0fa036a32b71f9", "semantic_hash": "" }, ".ai_agency/agents/00_intake.md": { "mtime": 1785148021.984319, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "f1b0d3a7e74c834af83cd068a97bc240", "semantic_hash": "" }, ".ai_agency/agents/01_auditor.md": { "mtime": 1785148021.9877827, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "a41d382a1269c2d6432522485e1b3301", "semantic_hash": "" }, ".ai_agency/agents/02_ceo.md": { "mtime": 1785148021.9983747, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "caf2825294f63004fa58a8b3775f10dc", "semantic_hash": "" }, ".ai_agency/agents/03_product_manager.md": { "mtime": 1785148022.0019681, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "d5a7823925324506c4c0f91534c713cc", "semantic_hash": "" }, ".ai_agency/agents/04_architect.md": { "mtime": 1785148022.004966, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "fa9c501ee0e0f13da21dd138ed9116b3", "semantic_hash": "" }, ".ai_agency/agents/05_dev_backend.md": { "mtime": 1785148022.0124812, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9753813406d32d60a4f82b62ffc3f00f", "semantic_hash": "" }, ".ai_agency/agents/06_dev_frontend.md": { "mtime": 1785148022.01702, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "061855c65baa90ab44d77285cf1475f2", "semantic_hash": "" }, ".ai_agency/agents/07_qa_engineer.md": { "mtime": 1785148022.0200446, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "fe33c91f65cbfa2a4e9e9e007cd03370", "semantic_hash": "" }, ".ai_agency/agents/08_visual_qa.md": { "mtime": 1785148022.0300832, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7e8b5e90bb7c668ce961bb1c117d4291", "semantic_hash": "" }, ".ai_agency/agents/09_devops_security.md": { "mtime": 1785148022.0340874, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "f4ce074e72eade7153ee4785ae9a89c6", "semantic_hash": "" }, ".ai_agency/agents/10_tech_writer.md": { "mtime": 1785148022.0370827, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9315ddc6c2960907d7dda7804c1debac", "semantic_hash": "" }, ".ai_agency/agents/11_deploy.md": { "mtime": 1785148022.0406027, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "0f644be55161acf799ccc0b89ebfaa03", "semantic_hash": "" }, ".ai_agency/agents/12_seo_content.md": { "mtime": 1785148022.048604, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "a053bac412fb66749c22ddfc58882766", "semantic_hash": "" }, ".ai_agency/memory/agent_outputs/README.txt": { "mtime": 1785148022.0521505, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7b3064fbf48b53032a8d4bfb73ca9ca7", "semantic_hash": "" }, ".ai_agency/memory/scratchpad.md": { "mtime": 1785148022.0651145, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "04648e7db23c144f89cdf78d071a32a0", "semantic_hash": "" }, ".ai_agency/specs/api_contract.md": { "mtime": 1785148022.0776649, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "2641fc7a31d9fe4761dad3ae7c944cb0", "semantic_hash": "" }, ".ai_agency/specs/architecture_spec.md": { "mtime": 1785148022.0822608, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "8763e7670f9cd0281273e139b484e701", "semantic_hash": "" }, ".ai_agency/specs/prd.md": { "mtime": 1785148022.0872517, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "a030931c59700809b29fa5e2dcbaaf18", "semantic_hash": "" }, ".ai_agency/specs/project_health.md": { "mtime": 1785148022.0983145, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "063e14c4ad0f62b79e412580319d6e6a", "semantic_hash": "" }, ".ai_agency/specs/reviews/README.md": { "mtime": 1785148022.105835, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "e68ba8a85edcd2394cb46d8f03fa09b7", "semantic_hash": "" }, ".ai_agency/specs/reviews/backend_review.md": { "mtime": 1785148022.1103623, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "34de73a13f5917bee531b6c2036e6fd6", "semantic_hash": "" }, ".ai_agency/specs/reviews/code_health_review.md": { "mtime": 1785148022.1143596, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "6ac531c22e5d025f50e6375323a52ed7", "semantic_hash": "" }, ".ai_agency/specs/reviews/frontend_review.md": { "mtime": 1785148022.118487, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "0fd2a25383bafe358068544b4fd5e5f9", "semantic_hash": "" }, ".ai_agency/specs/reviews/security_review.md": { "mtime": 1785148022.1214871, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "ed5139209a62a8a4a461b8a0eff9ac02", "semantic_hash": "" }, ".ai_agency/specs/reviews/seo_content_review.md": { "mtime": 1785148022.1315339, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "4cd7283f78877c1a14ff5b682c762702", "semantic_hash": "" }, ".ai_agency/specs/reviews/ux_review.md": { "mtime": 1785148022.1365507, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "4edeb2b914b36277d8381de722df56ef", "semantic_hash": "" }, ".antigravity/instructions.md": { "mtime": 1786870552.8334057, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9b31786b637be3c13978bec4c2330752", "semantic_hash": "" }, ".antigravity/workflows/graphify.md": { "mtime": 1786870552.8379214, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "3953c31b4ef6d89d3b1cb43f0110817d", "semantic_hash": "" }, ".claude/CLAUDE.md": { "mtime": 1786870552.83892, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9b31786b637be3c13978bec4c2330752", "semantic_hash": "" }, ".claude/skills/graphify/SKILL.md": { "mtime": 1786870552.845041, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "3953c31b4ef6d89d3b1cb43f0110817d", "semantic_hash": "" }, ".claude/skills/graphify/references/add-watch.md": { "mtime": 1786870552.848102, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "d59d027fe449f06aa03905a01184e779", "semantic_hash": "" }, ".claude/skills/graphify/references/exports.md": { "mtime": 1786870552.849102, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9da2a2152e60a22f07f05fed5158f287", "semantic_hash": "" }, ".claude/skills/graphify/references/extraction-spec.md": { "mtime": 1786870552.850102, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "42fef56a01698118f7fd722acdadea34", "semantic_hash": "" }, ".claude/skills/graphify/references/github-and-merge.md": { "mtime": 1786870552.853101, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "cde13df085e4c492aeb7ba298a996d0d", "semantic_hash": "" }, ".claude/skills/graphify/references/hooks.md": { "mtime": 1786870552.8550987, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "3f545db6ce646650bb9de588f5512a27", "semantic_hash": "" }, ".claude/skills/graphify/references/query.md": { "mtime": 1786870552.857703, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "3c46f8ad006874260614ed8657d02307", "semantic_hash": "" }, ".claude/skills/graphify/references/transcribe.md": { "mtime": 1786870552.8587108, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "67b6a5fa6c0974e18f60db9f8932fbd8", "semantic_hash": "" }, ".claude/skills/graphify/references/update.md": { "mtime": 1786870552.86071, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9378bd03d56baaf78bd738ab3848f142", "semantic_hash": "" }, ".gitea/workflows/deploy.yml": { "mtime": 1787078454.7624714, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "8dba2b15f1a2baf9ad6fa20a0b3dc467", "semantic_hash": "" }, ".gitea/workflows/e2e.yml": { "mtime": 1787729527.9233918, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "b4aac490e2d03c136bdfa173565288b3", "semantic_hash": "" }, "AGENTS.md": { "mtime": 1786870552.8627086, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9b31786b637be3c13978bec4c2330752", "semantic_hash": "" }, "BACKEND_INTEGRATION.md": { "mtime": 1786885876.7688253, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "e1f23cc23d23159b32a35acc9fadc689", "semantic_hash": "" }, "CLAUDE.md": { "mtime": 1786870552.8637102, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "82efb97a359f5c7290bf2513d14686be", "semantic_hash": "" }, "DATABASE_SCHEMA.md": { "mtime": 1786885876.7713423, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "ca5ded565172da98231f6cf54af4843d", "semantic_hash": "" }, "README.md": { "mtime": 1786885876.7753718, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "830c27760b856f621e2498eb762743fa", "semantic_hash": "" }, "backend/README.md": { "mtime": 1783764561.6013825, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "f9b30a57e215bc0b63868065fc71a1ac", "semantic_hash": "" }, "canina.md": { "mtime": 1786885876.8094723, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "9dd630592bc7905abc25f844ff134305", "semantic_hash": "" }, "docker-compose.yml": { "mtime": 1787752951.3497422, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "10e33845f2b3992546351af83f878b04", "semantic_hash": "" }, "docs/01-introduction.md": { "mtime": 1786885876.812475, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "4089d3e4da9e473cd14c984e646abe93", "semantic_hash": "" }, "docs/02-user-guide.md": { "mtime": 1786885876.8139858, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "96bf8f4516994e99012a5b6c710835cd", "semantic_hash": "" }, "docs/03-developer-guide.md": { "mtime": 1783764561.7716606, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "14f25993a3a77357739f6cd082c1e566", "semantic_hash": "" }, "docs/04-setup-and-deployment.md": { "mtime": 1787127978.2568479, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7def44fff8cdd0d28b700f711e2443ed", "semantic_hash": "" }, "docs/05-devops-and-monitoring.md": { "mtime": 1783764561.774446, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7dade1c1d477d70ced55a7580b812127", "semantic_hash": "" }, "docs/06-testing.md": { "mtime": 1783764561.7749674, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "2ed3cd7f39157774928e65d5cc0588d0", "semantic_hash": "" }, "docs/README.md": { "mtime": 1786885876.8169968, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "64dfe035bc8fdb4b42f7af8336bf4ab3", "semantic_hash": "" }, "docs/audit/00-repository-map.md": { "mtime": 1786799852.2981741, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "5343b55148ced4eed7f13aa32b689936", "semantic_hash": "" }, "docs/audit/01-system-discovery.md": { "mtime": 1786799852.2991743, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "5fcfb853f894f8697b6badb692dfe249", "semantic_hash": "" }, "docs/audit/02-audit-plan.md": { "mtime": 1786799852.3001754, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "d6a5dbf5ddc5fc174e8a041e835481db", "semantic_hash": "" }, "docs/audit/03-baseline-command-plan.md": { "mtime": 1786799852.3001754, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7d40f368e9ed0f27fa2ef5ad01249ad2", "semantic_hash": "" }, "docs/audit/04-open-questions.md": { "mtime": 1786799852.301682, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "773b455bb84b5df87cfbaa76dfa951f0", "semantic_hash": "" }, "docs/audit/05-architectural-audit.md": { "mtime": 1786799852.3026898, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "ab18a41271f0f845054f52f4dfa715eb", "semantic_hash": "" }, "docs/audit/06-storefront-audit.md": { "mtime": 1786799852.3036914, - "seen": 1787997337.391446, + "seen": 1787997655.7317545, "ast_hash": "7c3aff371cdb919bb885bf4a6f625780", "semantic_hash": "" }, "docs/audit/07-backend-audit.md": { "mtime": 1786799852.30469, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "53927123ba5acca71e57780ca9bd34f9", "semantic_hash": "" }, "docs/audit/08-admin-features-audit.md": { "mtime": 1786799852.3059514, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "d4da7eb2396ad939251ccc541f1fd165", "semantic_hash": "" }, "docs/audit/09-database-audit.md": { "mtime": 1786799852.3069694, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "bdd7e4c3b4723b2006053563ac345819", "semantic_hash": "" }, "docs/audit/10-security-audit.md": { "mtime": 1786799852.3079526, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "125471bb12e468a0ddcd9a1dccca1001", "semantic_hash": "" }, "docs/audit/11-code-quality-audit.md": { "mtime": 1786799852.308957, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "c48e39113f2334fae743488668ecf618", "semantic_hash": "" }, "docs/audit/12-testing-audit.md": { "mtime": 1786799852.3099525, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "0d1570f5138328d090a43edc1f7bc4f0", "semantic_hash": "" }, "docs/audit/13-devops-audit.md": { "mtime": 1786799852.3109539, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "986acddf4e09ccbe2b8b8f6806bc01d5", "semantic_hash": "" }, "docs/audit/14-documentation-audit.md": { "mtime": 1786799852.311952, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "d1f8496a0dae10993495691dc58098ef", "semantic_hash": "" }, "docs/audit/16-deep-audit-summary.md": { "mtime": 1786799852.313067, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "f17a01bf7b59276d28c6948fd14eafd2", "semantic_hash": "" }, "docs/audit/18-compiler-diagnostic-dispositions.md": { "mtime": 1786799852.315065, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "5b402b064300709c7723a63885894c29", "semantic_hash": "" }, "docs/audit/19-finding-verification-report.md": { "mtime": 1786799852.3160648, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "c3363af4c68792722ebadddc10319f14", "semantic_hash": "" }, "docs/audit/21-phase2-quality-gate-summary.md": { "mtime": 1786799852.318066, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "c336937acd576ee2efc36d67dbaf69e2", "semantic_hash": "" }, "docs/audit/22-tracked-first-party-files.txt": { "mtime": 1786799852.319066, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "3f66b26b7f4217a065ed3d3403fe40fd", "semantic_hash": "" }, "docs/audit/23-untracked-first-party-files.txt": { "mtime": 1786799852.319066, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "9fe0a15ea45d03f8e4ccd0ad786dd9fb", "semantic_hash": "" }, "docs/audit/24-omitted-file-inspection-report.md": { "mtime": 1786799852.3200657, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "6fb068c98fefc544e9ff687c1b3c0351", "semantic_hash": "" }, "docs/audit/26-phase2-integrity-repair-report.md": { "mtime": 1786799852.3220918, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "aecc17ca01002edfbdf472cf4f4aaa4c", "semantic_hash": "" }, "docs/audit/27-all-tracked-repository-files.txt": { "mtime": 1786799852.3230999, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "f35e68d28e4c31002698e68cc18242e3", "semantic_hash": "" }, "docs/audit/31-module-audit-closure.md": { "mtime": 1786799852.3276167, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "b66f589f8c3bd0b53b7d61626eec0985", "semantic_hash": "" }, "docs/audit/33-final-phase2-audit-closure.md": { "mtime": 1786799852.3286169, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "ca898e1caffc2764de11b6a10e84d1ea", "semantic_hash": "" }, "docs/audit/ADR-AUTH-001.md": { "mtime": 1786799852.3326428, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "2616cbbcbbc3d461d3b6ca00195902a9", "semantic_hash": "" }, "docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md": { "mtime": 1786799852.3326428, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "6d851d9e754115841a5accab7efcf0dc", "semantic_hash": "" }, "docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md": { "mtime": 1787127978.2588482, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "8210201eae0692d1e76cad23d60c804b", "semantic_hash": "" }, "docs/audit/MASTER-TASK-BACKLOG.md": { "mtime": 1786799852.3354702, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "0efc4759c15a04ca934ec32bb6b6fa6b", "semantic_hash": "" }, "docs/audit/frontend-route-map.md": { "mtime": 1786799852.3393898, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "88fdef86c48b2164cdcced3e502c073f", "semantic_hash": "" }, "docs/audit/phase3-execution-plan.md": { "mtime": 1786799852.3439524, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "15babdd91198793f5b6b791d7a5edd22", "semantic_hash": "" }, "docs/audit/phase3-traceability-matrix.md": { "mtime": 1786799852.3449528, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "40cd32ed7fa433342aa547fa5aa21d86", "semantic_hash": "" }, "docs/audit/phase3.1-backlog-review.md": { "mtime": 1786799852.3459527, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "78810767668f7d90e980648ec8c17869", "semantic_hash": "" }, "docs/audit/phase3.1-change-log.md": { "mtime": 1786799852.3469548, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "eed1734c4a6d1d8464dd63f6cbc33e9f", "semantic_hash": "" }, "docs/audit/phase3.2-change-log.md": { "mtime": 1786799852.3479521, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "b13460f1fa8aaecd88bc007a2c5e2ecb", "semantic_hash": "" }, "docs/audit/phase3.2-implementation-readiness.md": { "mtime": 1786799852.3479521, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "ffe4bce7401d65f9d44e8740d3c2ccf6", "semantic_hash": "" }, "docs/backlog.md": { "mtime": 1786799852.3560216, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "cf6eb1a9c1daef121cfb40f1a7771808", "semantic_hash": "" }, "frontend/admin-panel/README.md": { "mtime": 1783764561.7789528, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "f6e3faf55d738cf2affe1b44195f27cf", "semantic_hash": "" }, "frontend/admin-panel/index.html": { "mtime": 1783764561.7805586, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "d836c7a6b7be6d5b04a925b7ad32e539", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt": { "mtime": 1783856792.435855, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt": { "mtime": 1783856792.445365, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md": { "mtime": 1783856792.4546044, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "eaa55e166ec4a6b2ee875b746ef049a0", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/sahel-font-v3.4.0/README.md": { "mtime": 1783856792.5025032, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "0e4c260ce354bad51a6a184b5e236424", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md": { "mtime": 1783856792.5480056, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "eeaf2bb0943a16d43493f706d0867d1f", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/README.md": { "mtime": 1783856792.5951552, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "5f851eefeeb4bffff8c5427a289f934d", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt": { "mtime": 1783856792.646666, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "a5c1ec085d5dae2319c659151ffce3f0", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md": { "mtime": 1783856792.6476717, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "e7227ba84ca88111166000065d1bdacb", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/OFL.txt": { "mtime": 1783856792.6486697, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "88985b4355a8a44627dde041f10aba75", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md": { "mtime": 1783856792.6486697, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "e9d11601fc4c77fe3d8d1961d9c5d420", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt": { "mtime": 1783856792.971535, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "975634eaf84a797674b29e99c311f54a", "semantic_hash": "" }, "frontend/application/AGENTS.md": { "mtime": 1787127978.2689438, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "657cc62d228d2fcf56f1c843aad131fd", "semantic_hash": "" }, "frontend/application/CLAUDE.md": { "mtime": 1783764561.8667445, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "5c27369b226fcf2be8a6cfe52224e767", "semantic_hash": "" }, "frontend/application/README.md": { "mtime": 1783764561.8673544, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "f15aaa42d5d299d091b1171097ea56ad", "semantic_hash": "" }, "frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt": { "mtime": 1783856793.098052, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt": { "mtime": 1783856793.1076603, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md": { "mtime": 1783856793.1136606, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "eaa55e166ec4a6b2ee875b746ef049a0", "semantic_hash": "" }, "frontend/application/public/fonts/sahel-font-v3.4.0/README.md": { "mtime": 1783856793.1562517, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "0e4c260ce354bad51a6a184b5e236424", "semantic_hash": "" }, "frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md": { "mtime": 1783856793.2301185, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "eeaf2bb0943a16d43493f706d0867d1f", "semantic_hash": "" }, "frontend/application/public/fonts/shabnam-font-v5.0.1/README.md": { "mtime": 1783856793.2795427, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "5f851eefeeb4bffff8c5427a289f934d", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt": { "mtime": 1783856793.3161557, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "a5c1ec085d5dae2319c659151ffce3f0", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md": { "mtime": 1783856793.3176901, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "e7227ba84ca88111166000065d1bdacb", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt": { "mtime": 1783856793.319422, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "88985b4355a8a44627dde041f10aba75", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/README.md": { "mtime": 1783856793.320489, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "e9d11601fc4c77fe3d8d1961d9c5d420", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt": { "mtime": 1783856793.6680968, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "975634eaf84a797674b29e99c311f54a", "semantic_hash": "" }, "manual-test-scenarios.md": { "mtime": 1787729528.0730064, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "d41d8cd98f00b204e9800998ecf8427e", "semantic_hash": "" }, "prometheus.yml": { "mtime": 1783764562.0277793, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "45dc28cd8d9656e7141713ece5a7aa2c", "semantic_hash": "" }, "scripts/compose.prod.yml": { "mtime": 1787752951.3507974, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "f866d55e8f98c553190c7a4bd33065ad", "semantic_hash": "" }, "scripts/compose.stage.yml": { "mtime": 1787077093.9917798, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "6c2045ddae8c6cac20ab3a0b87c39388", "semantic_hash": "" }, "swagger.yml": { "mtime": 1786799852.8920915, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "34b5e7e5e1b19e6e3596ef669f8a0d0d", "semantic_hash": "" }, "test-coverage-map.md": { "mtime": 1787729528.0780063, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "d13004ca00333f0617470080ac36b666", "semantic_hash": "" }, "canina.pdf": { "mtime": 1785148022.3708115, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "900fb024ec3b91912a512a96c2a0c0a0", "semantic_hash": "" }, "backend/uploads/1781288429353-508765350.jpg": { "mtime": 1783764561.766257, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "ebf86506731de8ec10f2c4ea0ba14609", "semantic_hash": "" }, "frontend/admin-panel/public/favicon.svg": { "mtime": 1783764561.7978015, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "7e840862161341271697daa99a40d76b", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/sahel-font-v3.4.0/sample-variable.gif": { "mtime": 1783856792.5464964, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "9d0c1a4764b2b06807578b33c40838ca", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/sample.png": { "mtime": 1783856792.6456678, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "8bca253cfb55f954622145010756efa9", "semantic_hash": "" }, "frontend/admin-panel/public/icons.svg": { "mtime": 1783764561.7993202, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "3b4fcfcf393eca4d264dca4a4663bc37", "semantic_hash": "" }, "frontend/admin-panel/src/assets/hero.png": { "mtime": 1783764561.812863, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "aead493361b27e7510691c5d7072dfc1", "semantic_hash": "" }, "frontend/admin-panel/src/assets/react.svg": { "mtime": 1783764561.8139248, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "f0402b67b6ce880f65666bb49e841696", "semantic_hash": "" }, "frontend/admin-panel/src/assets/vite.svg": { "mtime": 1783764561.8149958, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "9960a24288958394ac50e57ff638b036", "semantic_hash": "" }, "frontend/application/public/assets/images/canina-product-placeholder.png": { "mtime": 1787461919.5050244, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "a9f359cce82a5ab0a24830ed59a33047", "semantic_hash": "" }, "frontend/application/public/assets/images/hero-section-image.png": { "mtime": 1783856793.0950441, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "a9f359cce82a5ab0a24830ed59a33047", "semantic_hash": "" }, "frontend/application/public/assets/images/regenerated_image_1779109861747.png": { "mtime": 1783764562.0141103, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "47111b66c208d1fa0c74877dfc0ee2a5", "semantic_hash": "" }, "frontend/application/public/file.svg": { "mtime": 1783764562.0162137, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "d09f95206c3fa0bb9bd9fefabfd0ea71", "semantic_hash": "" }, "frontend/application/public/fonts/sahel-font-v3.4.0/sample-variable.gif": { "mtime": 1783856793.2291198, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "9d0c1a4764b2b06807578b33c40838ca", "semantic_hash": "" }, "frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png": { "mtime": 1783856793.3151467, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "8bca253cfb55f954622145010756efa9", "semantic_hash": "" }, "frontend/application/public/globe.svg": { "mtime": 1783764562.0167208, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "2aaafa6a49b6563925fe440891e32717", "semantic_hash": "" }, "frontend/application/public/images/vets/vet1.webp": { "mtime": 1787461919.5417616, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "a9f359cce82a5ab0a24830ed59a33047", "semantic_hash": "" }, "frontend/application/public/next.svg": { "mtime": 1783764562.0182388, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "8e061864f388b47f33a1c3780831193e", "semantic_hash": "" }, "frontend/application/public/vercel.svg": { "mtime": 1783764562.019253, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "c0af2f507b369b085b35ef4bbe3bcf1e", "semantic_hash": "" }, "frontend/application/public/window.svg": { "mtime": 1783764562.019253, - "seen": 1787997337.392479, + "seen": 1787997655.7317545, "ast_hash": "a2760511c65806022ad20adf74370ff3", "semantic_hash": "" }, "frontend/application/app/smart-advisor/page.tsx": { "mtime": 1787740536.6786995, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "915d70a715440d85d060653aaa219861", "semantic_hash": "" }, "frontend/application/app/dashboard/orders/page.tsx": { "mtime": 1787741941.3028061, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "2a229305eedc5601932638630618882d", "semantic_hash": "" }, "frontend/application/app/dashboard/pets/page.tsx": { "mtime": 1787741941.3038094, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "fb2e013e721c9711375e6bc4e73d2714", "semantic_hash": "" }, "frontend/application/components/ProductImageZoomModal.tsx": { "mtime": 1787749751.969854, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "ef7bb690c74a484db1d7464ed2390e7d", "semantic_hash": "" }, "backend/prisma/migrations/20260526145407_init/migration.sql": { "mtime": 1783764561.6120076, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "12a9a675c12bc5ff2d2c3164f803f0ad", "semantic_hash": "" }, "backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql": { "mtime": 1783764561.6134257, - "seen": 1787997337.391446, + "seen": 1787997655.728618, "ast_hash": "50977e705726df3fb0f30bd1d3af101b", "semantic_hash": "" }, "frontend/application/app/api/media/[...path]/route.ts": { - "mtime": 1787997245.1102588, - "seen": 1787997337.391446, + "mtime": 1787997353.1987097, + "seen": 1787997655.7301521, "ast_hash": "09ad194faea0f369fd2a0c7d00189ca7", "semantic_hash": "" }, "frontend/application/app/api/uploads/[...path]/route.ts": { - "mtime": 1787997238.5628216, - "seen": 1787997337.391446, + "mtime": 1787997353.2003765, + "seen": 1787997655.7301521, "ast_hash": "154fa6e5d8f875b25dd651957a6bca26", "semantic_hash": "" }, "frontend/application/lib/media.ts": { "mtime": 1787993003.7764504, - "seen": 1787997337.391446, + "seen": 1787997655.7301521, "ast_hash": "9216276186f66c66540dd2ceb58bb86b", "semantic_hash": "" } diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md index 3c6865a..18a0088 100644 --- a/graphify-out/GRAPH_REPORT.md +++ b/graphify-out/GRAPH_REPORT.md @@ -1,23 +1,23 @@ # Graph Report - canina (2026-08-29) ## Corpus Check -- 593 files · ~1,337,982 words +- 593 files · ~1,337,968 words - Verdict: corpus is large enough that graph structure adds value. ## Summary -- 4153 nodes · 7489 edges · 312 communities (221 shown, 91 thin omitted) +- 4153 nodes · 7492 edges · 335 communities (217 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: `b68dd295` +- Built from commit: `2d54fc82` - Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `graphify update .` after code changes (no API cost). ## Community Hubs (Navigation) - Roles - app.module.ts -- SettingsService +- PaymentService - productService.ts - ProductPage.tsx - CmsController @@ -29,14 +29,14 @@ - MediaSelector.tsx - index.ts - app-audit-verification.e2e-spec.js -- userStore.ts +- toPersian - src/services/api.ts - DoctorQueryDto - schema.ts - JwtAuthGuard -- ProductsService +- ProductsController - CreateVideoDto -- admin.module.ts +- ReportsController - RevalidationService - MenuService - BE-001 @@ -48,7 +48,7 @@ - DEVOPS-001 - DOC-001 - adminRoutes.tsx -- WholesaleService +- WholesaleApplyDto - B2BService - AuthController - FaqService @@ -76,8 +76,8 @@ - ContactService - compilerOptions - payment.service.ts -- useCartStore -- SmsService +- ProductsService +- orderService.ts - dependencies - compilerOptions - BlogsService @@ -100,7 +100,7 @@ - scripts - dependencies - Role & Core Objective -- useSettingsStore +- ClientLayout.tsx - zibal.service.ts - dependencies - CreateEBankCheckoutDto @@ -108,7 +108,7 @@ - CreateReviewDto - Reconciled Audit Roles & Assignments - OrdersService -- HomeClient.tsx +- useSettingsStore - Phase 3.1 — Human Review Preparation and Master Backlog Critique - blog/[slug]/page.tsx - compilerOptions @@ -128,7 +128,7 @@ - Operational Rules & Boundaries - Operational Rules & Boundaries - Operational Rules & Boundaries -- SettingsController +- SmsService - AppService - Blogs.tsx - Vazirmatn Changelog @@ -144,7 +144,7 @@ - admin-panel/package.json - Sahel-Font - AdminService -- cms.controller.ts +- MetricsController - Sahel-Font - Role & Core Objective - orchestrate.py @@ -193,7 +193,7 @@ - uploads/[...path]/route.ts - auth.module.ts - نقشه جامع پوشش تست‌های سرتاسری (E2E Test Coverage Map) — پروژه Canina -- Reports.tsx +- app.e2e-spec.js - API Contract Specification - ⚙️ Backend Technical Review (05_dev_backend) - 🎨 Frontend & Admin Panel Technical Review (06_dev_frontend) @@ -211,7 +211,7 @@ - Raw Finding Verification & Disposition Report - React + TypeScript + Vite - Select.tsx -- WholesaleApplyDto +- bcrypt - WikiService - videos/page.tsx - application/README.md @@ -238,20 +238,21 @@ - Textarea.tsx - admin-panel/tsconfig.json - catalog/page.tsx -- VerifyOtpDto +- class-transformer - next.config.ts - Shabnam Font README - AGENTS.md - rules/graphify.md - .agents/workflows/graphify.md - instructions.md -- AddressDto -- ZibalCallbackQueryDto +- js-yaml +- @nestjs/core - tailwindcss -- @types/node -- eslint-config-next +- @nestjs/jwt +- @nestjs/swagger - @tailwindcss/postcss - @vitejs/plugin-react +- @nestjs/throttler - supertest - blog.entity.ts - home.entity.ts @@ -272,6 +273,11 @@ - start.sh - User Login API - User Logout API +- passport +- reflect-metadata +- swagger-ui-express +- eslint +- eslint-config-prettier - eslint-plugin-react-hooks - Canina Pharma GmbH - Pets Table @@ -287,25 +293,42 @@ - Production Docker Compose - Staging Docker Compose - ZibalService +- @nestjs/schematics - eslint-plugin-prettier - ZibalEBankService - .initiateOrderPayment - @tailwindcss/postcss - typescript +- @nestjs/testing - typescript-eslint +- prisma +- source-map-support +- ts-jest - globals +- ts-loader +- ts-node +- tsconfig-paths - @types/passport-jwt - 20260526160916_add_ui_texts_and_scientific_terms/migration.sql +- @types/bcrypt - typescript +- @types/compression - revalidate/route.ts - MaskableField.tsx - @eslint/js +- @types/express +- @types/jest +- @types/js-yaml - @types/react-dom - jest - eslint-plugin-react-refresh - @nestjs/cli +- @types/multer - prettier +- @types/supertest +- typescript-eslint - app/page.tsx +- tailwindcss ## God Nodes (most connected - your core abstractions) 1. `Roles()` - 106 edges @@ -336,7 +359,7 @@ - 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 (312 total, 91 thin omitted) +## Communities (335 total, 118 thin omitted) ### Community 0 - "Roles" Cohesion: 0.24 @@ -344,19 +367,19 @@ Nodes (13): Roles(), PaymentController, ApiBearerAuth, ApiOperation, ApiTags, Bo ### Community 1 - "app.module.ts" Cohesion: 0.07 -Nodes (35): B2BModule, Module, BannersModule, Module, BlogsModule, Module, CmsModule, Module (+27 more) +Nodes (36): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+28 more) ### Community 3 - "productService.ts" Cohesion: 0.06 -Nodes (33): dynamic, revalidate, DEFAULT_CATEGORIES, dynamic, revalidate, dynamic, revalidate, BlogCategory (+25 more) +Nodes (39): dynamic, revalidate, DEFAULT_CATEGORIES, dynamic, revalidate, dynamic, revalidate, BlogCategory (+31 more) ### Community 4 - "ProductPage.tsx" Cohesion: 0.13 Nodes (15): ProductImageZoomModalProps, CalculatorState, GalleryMediaItem, ICON_MAP, isVideoUrl(), ProductImageZoomModal, ProductPage(), ProductReviews (+7 more) ### Community 5 - "CmsController" -Cohesion: 0.10 -Nodes (14): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) +Cohesion: 0.09 +Nodes (24): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+16 more) ### Community 6 - "tickets.controller.ts" Cohesion: 0.09 @@ -367,12 +390,12 @@ Cohesion: 0.12 Nodes (14): Button(), ButtonProps, ButtonSize, ButtonVariant, Spinner(), FAQ, BlogCommentItem, ProductReview (+6 more) ### Community 8 - "WikiController" -Cohesion: 0.13 -Nodes (13): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+5 more) +Cohesion: 0.21 +Nodes (9): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+1 more) ### Community 9 - "devDependencies" -Cohesion: 0.05 -Nodes (43): devDependencies, eslint, eslint-config-prettier, @eslint/eslintrc, @nestjs/schematics, @nestjs/testing, prisma, source-map-support (+35 more) +Cohesion: 0.22 +Nodes (9): devDependencies, @eslint/eslintrc, @types/bcryptjs, @types/node, typescript, @types/node, typescript, @eslint/eslintrc (+1 more) ### Community 10 - "ReviewsService" Cohesion: 0.12 @@ -390,9 +413,9 @@ Nodes (24): backend, frontend, playwright.config.ts, @playwright/test, tests/**/ Cohesion: 0.06 Nodes (28): AppModule, Module, EnvironmentVariables, IsNotEmpty, IsOptional, IsString, validateEnv(), CustomHttpExceptionFilter (+20 more) -### Community 14 - "userStore.ts" -Cohesion: 0.11 -Nodes (11): LoginModal, LoginModal(), LoginModalProps, ApiErr, AuthResponse, AuthService, User, Transaction (+3 more) +### Community 14 - "toPersian" +Cohesion: 0.08 +Nodes (33): VerifyContent(), ArchiveProductCard(), AuthModal(), AuthModalProps, extractOtpFromText(), B2BPortal(), CartDrawer(), ProductCard() (+25 more) ### Community 15 - "src/services/api.ts" Cohesion: 0.08 @@ -407,23 +430,23 @@ Cohesion: 0.15 Nodes (18): B2BPage(), generateMetadata(), ContactPage(), generateMetadata(), generateMetadata(), getRelatedProducts(), getWikiTerm(), WikiTermPage() (+10 more) ### Community 18 - "JwtAuthGuard" -Cohesion: 0.19 -Nodes (7): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload +Cohesion: 0.16 +Nodes (11): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, ApiPropertyOptional, IsOptional (+3 more) -### Community 19 - "ProductsService" -Cohesion: 0.10 -Nodes (19): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, ProductsController, ApiOperation, ApiTags (+11 more) +### Community 19 - "ProductsController" +Cohesion: 0.16 +Nodes (9): ProductsController, ApiOperation, ApiTags, Body, Controller, Get, Param, Patch (+1 more) ### Community 20 - "CreateVideoDto" Cohesion: 0.07 Nodes (32): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+24 more) -### Community 21 - "admin.module.ts" -Cohesion: 0.08 -Nodes (19): AdminModule, Module, PetQuery, PetsService, Injectable, ReportsController, ApiBearerAuth, ApiOperation (+11 more) +### Community 21 - "ReportsController" +Cohesion: 0.14 +Nodes (11): ReportsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Get, Query (+3 more) ### Community 22 - "RevalidationService" -Cohesion: 0.20 +Cohesion: 0.16 Nodes (5): RevalidationModule, Global, Module, RevalidationService, Injectable ### Community 23 - "MenuService" @@ -463,24 +486,24 @@ 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.08 -Nodes (17): App(), Props, RouteErrorBoundary, State, HeroBanner, VetTestimonial, AdminRouteConfig, CMS (+9 more) +Cohesion: 0.06 +Nodes (24): App(), Props, RouteErrorBoundary, State, HeroBanner, VetTestimonial, BestSellerItem, CategoryDistItem (+16 more) -### Community 33 - "WholesaleService" -Cohesion: 0.14 -Nodes (14): ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param, Post (+6 more) +### Community 33 - "WholesaleApplyDto" +Cohesion: 0.10 +Nodes (20): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+12 more) ### Community 34 - "B2BService" -Cohesion: 0.12 -Nodes (16): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+8 more) +Cohesion: 0.13 +Nodes (15): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+7 more) ### Community 35 - "AuthController" Cohesion: 0.25 Nodes (13): AuthController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+5 more) ### Community 36 - "FaqService" -Cohesion: 0.12 -Nodes (16): FaqController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) +Cohesion: 0.14 +Nodes (14): FaqController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 37 - "راهنمای تست سیستم (Software Testing)" Cohesion: 0.07 @@ -511,8 +534,8 @@ Cohesion: 0.12 Nodes (15): BannersController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+7 more) ### Community 44 - "TestimonialsService" -Cohesion: 0.11 -Nodes (16): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) +Cohesion: 0.12 +Nodes (14): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 45 - "What You Must Do When Invoked" Cohesion: 0.07 @@ -527,7 +550,7 @@ Cohesion: 0.12 Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 48 - "UsersController" -Cohesion: 0.19 +Cohesion: 0.21 Nodes (16): ApiBadRequestResponse, ApiBearerAuth, ApiCreatedResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+8 more) ### Community 49 - "devDependencies" @@ -536,19 +559,19 @@ Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, glo ### Community 50 - "devDependencies" Cohesion: 0.12 -Nodes (17): devDependencies, eslint, jsdom, tailwindcss, @testing-library/jest-dom, @testing-library/react, @types/node, @types/react (+9 more) +Nodes (17): eslint-config-next, devDependencies, eslint, eslint-config-next, jsdom, @testing-library/jest-dom, @testing-library/react, @types/node (+9 more) ### Community 51 - "BlogsController" Cohesion: 0.14 Nodes (16): BlogsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more) ### Community 52 - "PrescriptionsService" -Cohesion: 0.13 +Cohesion: 0.14 Nodes (14): PrescriptionsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more) ### Community 53 - "SmartAdvisorService" -Cohesion: 0.11 -Nodes (16): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) +Cohesion: 0.13 +Nodes (14): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 54 - "Modal.tsx" Cohesion: 0.10 @@ -578,13 +601,17 @@ Nodes (30): compilerOptions, allowSyntheticDefaultImports, baseUrl, declaration, Cohesion: 0.20 Nodes (8): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type, ClientMetadata -### Community 61 - "useCartStore" -Cohesion: 0.08 -Nodes (27): ArchiveProductCard(), CartDrawer(), DeleteConfirmModal(), DeleteConfirmModalProps, FeaturedProducts(), ProductCard(), Header(), OrderDetailsModal() (+19 more) +### Community 61 - "ProductsService" +Cohesion: 0.19 +Nodes (10): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, Query, ProductsModule, Module (+2 more) + +### Community 62 - "orderService.ts" +Cohesion: 0.18 +Nodes (5): ApiErr, Order, OrderItem, OrderService, mockProduct ### 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, helmet, ioredis, @nestjs/common, @nestjs/passport (+15 more) ### Community 64 - "compilerOptions" Cohesion: 0.10 @@ -595,12 +622,12 @@ Cohesion: 0.18 Nodes (7): ApiQuery, Get, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString ### Community 67 - "PetsController" -Cohesion: 0.14 -Nodes (11): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+3 more) +Cohesion: 0.11 +Nodes (13): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+5 more) ### Community 68 - "UserDashboard.tsx" -Cohesion: 0.12 -Nodes (32): HomeClient(), VerifyContent(), AddressFormData, AddressModal(), AddressModalProps, normalizeDigits(), validateAddressForm(), AuthModal() (+24 more) +Cohesion: 0.14 +Nodes (23): AddressFormData, AddressModal(), AddressModalProps, normalizeDigits(), validateAddressForm(), CheckoutPage(), DeleteConfirmModal(), DeleteConfirmModalProps (+15 more) ### Community 69 - "Required Review Group Closures" Cohesion: 0.10 @@ -666,9 +693,9 @@ 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 - "useSettingsStore" -Cohesion: 0.09 -Nodes (27): AuthModal, B2BPortal, CartDrawer, ClientLayout(), metadata, ArchivePage(), B2BLandingClient(), BrandLogo() (+19 more) +### Community 85 - "ClientLayout.tsx" +Cohesion: 0.13 +Nodes (14): AuthModal, B2BPortal, CartDrawer, ClientLayout(), LoginModal, metadata, NetworkBanner(), CURRENT_SYMPTOMS (+6 more) ### Community 86 - "zibal.service.ts" Cohesion: 0.16 @@ -687,7 +714,7 @@ Cohesion: 0.17 Nodes (12): prisma, main(), prisma, determineSuitableFor(), findOrCreateCategory(), getProductImageUrl(), main(), parseSize() (+4 more) ### Community 90 - "CreateReviewDto" -Cohesion: 0.13 +Cohesion: 0.14 Nodes (13): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+5 more) ### Community 91 - "Reconciled Audit Roles & Assignments" @@ -698,9 +725,9 @@ Nodes (15): 10. Documentation Engineer, 1. Lead Architect / Orchestrator, 2. Rea Cohesion: 0.06 Nodes (35): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+27 more) -### Community 93 - "HomeClient.tsx" -Cohesion: 0.12 -Nodes (18): HomeClientProps, CATEGORY_MAP, ICON_MAP, BannerPlacement(), BannerPlacementProps, BlogPreviewSection(), FAQItem, FAQSection() (+10 more) +### Community 93 - "useSettingsStore" +Cohesion: 0.08 +Nodes (33): HomeClient(), HomeClientProps, ArchivePage(), CATEGORY_MAP, ICON_MAP, B2BLandingClient(), BannerPlacement(), BannerPlacementProps (+25 more) ### Community 94 - "Phase 3.1 — Human Review Preparation and Master Backlog Critique" Cohesion: 0.13 @@ -751,16 +778,16 @@ 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.service.ts" -Cohesion: 0.10 -Nodes (8): AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, normalizeMobile(), RedisService, Injectable +Cohesion: 0.07 +Nodes (19): AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, SendOtpDto, ApiProperty, IsNotEmpty (+11 more) ### Community 107 - "PaginationDto" -Cohesion: 0.10 -Nodes (12): BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional, IsEnum, IsInt (+4 more) +Cohesion: 0.06 +Nodes (23): AdminModule, Module, BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto (+15 more) ### Community 108 - "PrismaService" -Cohesion: 0.07 -Nodes (22): ApiExcludeController, CategoryQuery, WikiQuery, MetricsController, Controller, Get, Res, MeliPayamakPattern (+14 more) +Cohesion: 0.08 +Nodes (18): CategoryQuery, PetQuery, WikiQuery, B2BWholesaleOrderItem, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions, SmsConfig (+10 more) ### Community 109 - "1. Summary of Integrity Repairs Performed" Cohesion: 0.17 @@ -778,9 +805,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 - "SettingsController" -Cohesion: 0.18 -Nodes (15): SettingsController, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller, Delete (+7 more) +### Community 113 - "SmsService" +Cohesion: 0.06 +Nodes (20): SmsLogQuery, SmsService, Injectable, SettingsController, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags (+12 more) ### Community 114 - "AppService" Cohesion: 0.29 @@ -819,8 +846,8 @@ Cohesion: 0.17 Nodes (3): ApiOperation, Body, Put ### Community 123 - "UsersService" -Cohesion: 0.14 -Nodes (9): ApiPropertyOptional, IsEmail, IsOptional, IsString, MinLength, UpdateProfileDto, Injectable, UserAddressInput (+1 more) +Cohesion: 0.09 +Nodes (16): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+8 more) ### Community 124 - "Repository Map" Cohesion: 0.20 @@ -842,9 +869,9 @@ Nodes (9): Arch Linux, Contributors, Install, Known problems for variable versio Cohesion: 0.17 Nodes (3): Post, AdminService, Injectable -### Community 129 - "cms.controller.ts" -Cohesion: 0.37 -Nodes (10): CreateHeroBannerDto, CreateSmartAdvisorRuleDto, CreateVetTestimonialDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNumber, IsOptional (+2 more) +### Community 129 - "MetricsController" +Cohesion: 0.29 +Nodes (5): ApiExcludeController, MetricsController, Controller, Get, Res ### Community 130 - "Sahel-Font" Cohesion: 0.20 @@ -935,8 +962,8 @@ Cohesion: 0.21 Nodes (5): OrderRowSkeleton(), PetProfileSkeleton(), ProductCardSkeleton(), Skeleton(), SkeletonProps ### Community 152 - "lib/services/api.ts" -Cohesion: 0.08 -Nodes (19): BlogPostClientProps, BlogPost, ContactInfoItem, OrderDetailsModalProps, PLAYBACK_RATES, PodcastPlayerModal(), PodcastPlayerModalProps, SafeImage() (+11 more) +Cohesion: 0.10 +Nodes (20): BlogPostClientProps, BlogPost, ContactInfoItem, OrderDetailsModal(), OrderDetailsModalProps, PLAYBACK_RATES, PodcastPlayerModal(), PodcastPlayerModalProps (+12 more) ### Community 153 - "exclude" Cohesion: 0.22 @@ -1034,9 +1061,9 @@ Nodes (10): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), Auth Cohesion: 0.33 Nodes (5): نقشه جامع پوشش تست‌های سرتاسری (E2E Test Coverage Map) — پروژه Canina, ۱. معماری و نقش‌های کاربری (User Roles), ۲. ماتریس جریان‌ها و قابلیت‌های کاربرمحور (Feature & Flow Matrix), ۳. وضعیت پوشش نهایی سوئیت ۱۱گانه (Final 11 Test Suites Status), ۴. راهنمای نگهداری و افزودن فیچرهای جدید بدون شکستن تست‌ها (Developer Maintenance Guide) -### Community 179 - "Reports.tsx" -Cohesion: 0.20 -Nodes (7): BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps, ReportData, TopCouponItem, Reports +### Community 179 - "app.e2e-spec.js" +Cohesion: 0.50 +Nodes (3): app_module_1, supertest_1, testing_1 ### Community 180 - "API Contract Specification" Cohesion: 0.50 @@ -1055,8 +1082,8 @@ Cohesion: 0.50 Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO & Content Strategy Review (12_seo_content) ### Community 184 - "auth.controller.ts" -Cohesion: 0.08 -Nodes (24): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+16 more) +Cohesion: 0.10 +Nodes (19): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+11 more) ### Community 185 - "SmsLogQueryDto" Cohesion: 0.25 @@ -1086,10 +1113,6 @@ Nodes (3): Expanding the ESLint configuration, React Compiler, React + TypeScrip Cohesion: 0.50 Nodes (3): Select, SelectOption, SelectProps -### Community 197 - "WholesaleApplyDto" -Cohesion: 0.29 -Nodes (6): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto - ### Community 199 - "videos/page.tsx" Cohesion: 0.47 Nodes (5): generateMetadata(), getInitialVideos(), Videos(), VideosPage(), generateVideoObjectSchema() @@ -1106,26 +1129,10 @@ Nodes (3): COMPOSE_DOCKER_CLI_BUILD, DOCKER_BUILDKIT, deploy.sh script Cohesion: 0.67 Nodes (3): ADR-AUTH-001: Admin Panel Authentication Architecture & Token Management, Master Task Backlog (Phase 3.3), Phase 3 Master Execution Plan -### Community 224 - "VerifyOtpDto" -Cohesion: 0.29 -Nodes (6): ApiProperty, IsNotEmpty, IsString, Matches, VerifyOtpDto, Length - ### Community 226 - "Shabnam Font README" Cohesion: 0.67 Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font -### Community 231 - "AddressDto" -Cohesion: 0.29 -Nodes (7): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString - -### Community 232 - "ZibalCallbackQueryDto" -Cohesion: 0.40 -Nodes (4): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto - -### Community 294 - "ZibalService" -Cohesion: 0.09 -Nodes (4): PaymentService, Injectable, Injectable, ZibalService - ### Community 298 - ".initiateOrderPayment" Cohesion: 0.32 Nodes (6): ApiBadRequestResponse, ApiOkResponse, Req, Res, Headers, Ip @@ -1141,22 +1148,22 @@ Nodes (3): generateMetadata(), getHomeData(), Home() ## Knowledge Gaps - **1344 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1339 more) These have ≤1 connection - possible missing edges or undocumented components. -- **91 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 `src/services/api.ts` to `BlogsController`, `AuthController`, `WikiController`, `PetsController`, `UsersController`, `HomeController`, `ProductsService`, `OrdersService`?** +- **Why does `ApiResponse` connect `src/services/api.ts` to `BlogsController`, `AuthController`, `WikiController`, `PetsController`, `UsersController`, `HomeController`, `ProductsController`, `OrdersService`?** _High betweenness centrality (0.080) - this node is a cross-community bridge._ -- **Why does `Roles()` connect `Roles` to `cms.controller.ts`, `B2BService`, `WholesaleService`, `FaqService`, `CmsController`, `tickets.controller.ts`, `SslController`, `BannersService`, `ReviewsService`, `TestimonialsService`, `IngredientsService`, `SettingsController`, `JwtAuthGuard`, `ProductsService`, `PrescriptionsService`, `SmartAdvisorService`, `MenuService`, `ContactService`?** +- **Why does `Roles()` connect `Roles` to `PaymentService`, `CmsController`, `tickets.controller.ts`, `ReviewsService`, `JwtAuthGuard`, `ProductsController`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `FaqService`, `SslController`, `BannersService`, `TestimonialsService`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `ContactService`, `ProductsService`, `SmsService`?** _High betweenness centrality (0.062) - this node is a cross-community bridge._ -- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `cms.controller.ts`, `PetsController`, `tickets.controller.ts`, `MediaController`, `PaginationDto`, `PetsController`, `DoctorQueryDto`, `ProductsService`, `admin.service.ts`, `admin.module.ts`, `CreateVideoDto`, `auth.controller.ts`, `UsersService`, `OrdersService`?** +- **Why does `JwtAuthGuard` connect `JwtAuthGuard` to `CmsController`, `tickets.controller.ts`, `MediaController`, `PaginationDto`, `PetsController`, `DoctorQueryDto`, `admin.service.ts`, `ReportsController`, `CreateVideoDto`, `auth.controller.ts`, `UsersService`, `OrdersService`, `ProductsService`?** _High betweenness centrality (0.035) - this node is a cross-community bridge._ - **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?** _1344 weakly-connected nodes found - possible documentation gaps or missing edges._ - **Should `app.module.ts` be split into smaller, more focused modules?** - _Cohesion score 0.07058823529411765 - nodes in this community are weakly interconnected._ -- **Should `SettingsService` be split into smaller, more focused modules?** - _Cohesion score 0.11231884057971014 - nodes in this community are weakly interconnected._ + _Cohesion score 0.06988120195667366 - nodes in this community are weakly interconnected._ - **Should `productService.ts` be split into smaller, more focused modules?** - _Cohesion score 0.06384180790960452 - nodes in this community are weakly interconnected._ \ No newline at end of file + _Cohesion score 0.05583972719522592 - nodes in this community are weakly interconnected._ +- **Should `ProductPage.tsx` be split into smaller, more focused modules?** + _Cohesion score 0.12631578947368421 - nodes in this community are weakly interconnected._ \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.44/3b2ae80de1d233920eff8c5aea65be5bc5938b22e3fe1b834e3e341293ab1b4d.json b/graphify-out/cache/ast/v0.9.44/3b2ae80de1d233920eff8c5aea65be5bc5938b22e3fe1b834e3e341293ab1b4d.json new file mode 100644 index 0000000..56203a4 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.44/3b2ae80de1d233920eff8c5aea65be5bc5938b22e3fe1b834e3e341293ab1b4d.json @@ -0,0 +1 @@ +{"nodes": [{"id": "$graphify-root$_frontend_admin_panel_package_json", "label": "package.json", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L1"}, {"id": "$graphify-root$_frontend_admin_panel_package_name", "label": "name", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L2"}, {"id": "$graphify-root$_frontend_admin_panel_package_private", "label": "private", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L3"}, {"id": "$graphify-root$_frontend_admin_panel_package_version", "label": "version", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L4"}, {"id": "$graphify-root$_frontend_admin_panel_package_type", "label": "type", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L5"}, {"id": "$graphify-root$_frontend_admin_panel_package_scripts", "label": "scripts", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L6"}, {"id": "$graphify-root$_frontend_admin_panel_package_scripts_dev", "label": "dev", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L7"}, {"id": "$graphify-root$_frontend_admin_panel_package_scripts_build", "label": "build", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L8"}, {"id": "$graphify-root$_frontend_admin_panel_package_scripts_lint", "label": "lint", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L9"}, {"id": "$graphify-root$_frontend_admin_panel_package_scripts_preview", "label": "preview", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L10"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies", "label": "dependencies", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L12"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_tanstack_react_query", "label": "@tanstack/react-query", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L13"}, {"id": "tanstack_react_query", "label": "@tanstack/react-query", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L13"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_axios", "label": "axios", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L14"}, {"id": "axios", "label": "axios", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L14"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_lucide_react", "label": "lucide-react", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L15"}, {"id": "lucide_react", "label": "lucide-react", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L15"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_react", "label": "react", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L16"}, {"id": "react", "label": "react", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L16"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_react_dom", "label": "react-dom", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L17"}, {"id": "react_dom", "label": "react-dom", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L17"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_react_hot_toast", "label": "react-hot-toast", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L18"}, {"id": "react_hot_toast", "label": "react-hot-toast", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L18"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_react_router_dom", "label": "react-router-dom", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L19"}, {"id": "react_router_dom", "label": "react-router-dom", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L19"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_recharts", "label": "recharts", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L20"}, {"id": "recharts", "label": "recharts", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L20"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_vite", "label": "vite", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L21"}, {"id": "vite", "label": "vite", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L21"}, {"id": "$graphify-root$_frontend_admin_panel_package_dependencies_zustand", "label": "zustand", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L22"}, {"id": "zustand", "label": "zustand", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L22"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies", "label": "devDependencies", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L24"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_js", "label": "@eslint/js", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L25"}, {"id": "eslint_js", "label": "@eslint/js", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L25"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_tailwindcss_postcss", "label": "@tailwindcss/postcss", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L26"}, {"id": "tailwindcss_postcss", "label": "@tailwindcss/postcss", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L26"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_node", "label": "@types/node", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L27"}, {"id": "types_node", "label": "@types/node", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L27"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_react", "label": "@types/react", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L28"}, {"id": "types_react", "label": "@types/react", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L28"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_react_dom", "label": "@types/react-dom", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L29"}, {"id": "types_react_dom", "label": "@types/react-dom", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L29"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_vitejs_plugin_react", "label": "@vitejs/plugin-react", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L30"}, {"id": "vitejs_plugin_react", "label": "@vitejs/plugin-react", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L30"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_autoprefixer", "label": "autoprefixer", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L31"}, {"id": "autoprefixer", "label": "autoprefixer", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L31"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint", "label": "eslint", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L32"}, {"id": "eslint", "label": "eslint", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L32"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_plugin_react_hooks", "label": "eslint-plugin-react-hooks", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L33"}, {"id": "eslint_plugin_react_hooks", "label": "eslint-plugin-react-hooks", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L33"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_plugin_react_refresh", "label": "eslint-plugin-react-refresh", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L34"}, {"id": "eslint_plugin_react_refresh", "label": "eslint-plugin-react-refresh", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L34"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_globals", "label": "globals", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L35"}, {"id": "globals", "label": "globals", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L35"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_postcss", "label": "postcss", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L36"}, {"id": "postcss", "label": "postcss", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L36"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_tailwindcss", "label": "tailwindcss", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L37"}, {"id": "tailwindcss", "label": "tailwindcss", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L37"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_typescript", "label": "typescript", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L38"}, {"id": "typescript", "label": "typescript", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L38"}, {"id": "$graphify-root$_frontend_admin_panel_package_devdependencies_typescript_eslint", "label": "typescript-eslint", "file_type": "code", "source_file": "frontend/admin-panel/package.json", "source_location": "L39"}, {"id": "typescript_eslint", "label": "typescript-eslint", "file_type": "concept", "source_file": "frontend/admin-panel/package.json", "source_location": "L39"}], "edges": [{"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L2", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_private", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L3", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_version", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L4", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L5", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_scripts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L6", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_scripts", "target": "$graphify-root$_frontend_admin_panel_package_scripts_dev", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L7", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_scripts", "target": "$graphify-root$_frontend_admin_panel_package_scripts_build", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L8", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_scripts", "target": "$graphify-root$_frontend_admin_panel_package_scripts_lint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L9", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_scripts", "target": "$graphify-root$_frontend_admin_panel_package_scripts_preview", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L10", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_dependencies", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L12", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_tanstack_react_query", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_tanstack_react_query", "target": "tanstack_react_query", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L13", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_axios", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L14", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_axios", "target": "axios", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L14", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_lucide_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L15", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_lucide_react", "target": "lucide_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L15", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L16", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_react", "target": "react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L16", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_react_dom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L17", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_react_dom", "target": "react_dom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L17", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_react_hot_toast", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L18", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_react_hot_toast", "target": "react_hot_toast", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L18", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_react_router_dom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L19", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_react_router_dom", "target": "react_router_dom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L19", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_recharts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L20", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_recharts", "target": "recharts", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L20", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_vite", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L21", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_vite", "target": "vite", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L21", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies", "target": "$graphify-root$_frontend_admin_panel_package_dependencies_zustand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L22", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_dependencies_zustand", "target": "zustand", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L22", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_json", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L24", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_js", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L25", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_js", "target": "eslint_js", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L25", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_tailwindcss_postcss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L26", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_tailwindcss_postcss", "target": "tailwindcss_postcss", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L26", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_node", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L27", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_node", "target": "types_node", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L27", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L28", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_react", "target": "types_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L28", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_react_dom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L29", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_types_react_dom", "target": "types_react_dom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L29", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_vitejs_plugin_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L30", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_vitejs_plugin_react", "target": "vitejs_plugin_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L30", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_autoprefixer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L31", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_autoprefixer", "target": "autoprefixer", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L31", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L32", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint", "target": "eslint", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L32", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_plugin_react_hooks", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L33", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_plugin_react_hooks", "target": "eslint_plugin_react_hooks", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L33", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_plugin_react_refresh", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L34", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_eslint_plugin_react_refresh", "target": "eslint_plugin_react_refresh", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L34", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_globals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L35", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_globals", "target": "globals", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L35", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_postcss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L36", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_postcss", "target": "postcss", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L36", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_tailwindcss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L37", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_tailwindcss", "target": "tailwindcss", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L37", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_typescript", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L38", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_typescript", "target": "typescript", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L38", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies", "target": "$graphify-root$_frontend_admin_panel_package_devdependencies_typescript_eslint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L39", "weight": 1.0}, {"source": "$graphify-root$_frontend_admin_panel_package_devdependencies_typescript_eslint", "target": "typescript_eslint", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/admin-panel/package.json", "source_location": "L39", "weight": 1.0, "context": "import"}]} \ No newline at end of file diff --git a/graphify-out/cache/ast/v0.9.44/8444df027534d7af7044ea32f9a3fad953719e7568389178e9e4c64b92a77b3a.json b/graphify-out/cache/ast/v0.9.44/8444df027534d7af7044ea32f9a3fad953719e7568389178e9e4c64b92a77b3a.json new file mode 100644 index 0000000..b2abd29 --- /dev/null +++ b/graphify-out/cache/ast/v0.9.44/8444df027534d7af7044ea32f9a3fad953719e7568389178e9e4c64b92a77b3a.json @@ -0,0 +1 @@ +{"nodes": [{"id": "$graphify-root$_frontend_application_package_json", "label": "package.json", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L1"}, {"id": "$graphify-root$_frontend_application_package_name", "label": "name", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L2"}, {"id": "$graphify-root$_frontend_application_package_version", "label": "version", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L3"}, {"id": "$graphify-root$_frontend_application_package_private", "label": "private", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L4"}, {"id": "$graphify-root$_frontend_application_package_scripts", "label": "scripts", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L5"}, {"id": "$graphify-root$_frontend_application_package_scripts_dev", "label": "dev", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L6"}, {"id": "$graphify-root$_frontend_application_package_scripts_build", "label": "build", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L7"}, {"id": "$graphify-root$_frontend_application_package_scripts_start", "label": "start", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L8"}, {"id": "$graphify-root$_frontend_application_package_scripts_lint", "label": "lint", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L9"}, {"id": "$graphify-root$_frontend_application_package_dependencies", "label": "dependencies", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L11"}, {"id": "$graphify-root$_frontend_application_package_dependencies_axios", "label": "axios", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L12"}, {"id": "axios", "label": "axios", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L12"}, {"id": "$graphify-root$_frontend_application_package_dependencies_lucide_react", "label": "lucide-react", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L13"}, {"id": "lucide_react", "label": "lucide-react", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L13"}, {"id": "$graphify-root$_frontend_application_package_dependencies_motion", "label": "motion", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L14"}, {"id": "motion", "label": "motion", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L14"}, {"id": "$graphify-root$_frontend_application_package_dependencies_next", "label": "next", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L15"}, {"id": "next", "label": "next", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L15"}, {"id": "$graphify-root$_frontend_application_package_dependencies_nextjs_toploader", "label": "nextjs-toploader", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L16"}, {"id": "nextjs_toploader", "label": "nextjs-toploader", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L16"}, {"id": "$graphify-root$_frontend_application_package_dependencies_react", "label": "react", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L17"}, {"id": "react", "label": "react", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L17"}, {"id": "$graphify-root$_frontend_application_package_dependencies_react_dom", "label": "react-dom", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L18"}, {"id": "react_dom", "label": "react-dom", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L18"}, {"id": "$graphify-root$_frontend_application_package_dependencies_sonner", "label": "sonner", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L19"}, {"id": "sonner", "label": "sonner", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L19"}, {"id": "$graphify-root$_frontend_application_package_dependencies_zustand", "label": "zustand", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L20"}, {"id": "zustand", "label": "zustand", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L20"}, {"id": "$graphify-root$_frontend_application_package_devdependencies", "label": "devDependencies", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L22"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_tailwindcss_postcss", "label": "@tailwindcss/postcss", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L23"}, {"id": "tailwindcss_postcss", "label": "@tailwindcss/postcss", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L23"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_testing_library_jest_dom", "label": "@testing-library/jest-dom", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L24"}, {"id": "testing_library_jest_dom", "label": "@testing-library/jest-dom", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L24"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_testing_library_react", "label": "@testing-library/react", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L25"}, {"id": "testing_library_react", "label": "@testing-library/react", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L25"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_types_node", "label": "@types/node", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L26"}, {"id": "types_node", "label": "@types/node", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L26"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_types_react", "label": "@types/react", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L27"}, {"id": "types_react", "label": "@types/react", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L27"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_types_react_dom", "label": "@types/react-dom", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L28"}, {"id": "types_react_dom", "label": "@types/react-dom", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L28"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_vitejs_plugin_react", "label": "@vitejs/plugin-react", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L29"}, {"id": "vitejs_plugin_react", "label": "@vitejs/plugin-react", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L29"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_eslint", "label": "eslint", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L30"}, {"id": "eslint", "label": "eslint", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L30"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_eslint_config_next", "label": "eslint-config-next", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L31"}, {"id": "eslint_config_next", "label": "eslint-config-next", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L31"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_jsdom", "label": "jsdom", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L32"}, {"id": "jsdom", "label": "jsdom", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L32"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_tailwindcss", "label": "tailwindcss", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L33"}, {"id": "tailwindcss", "label": "tailwindcss", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L33"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_typescript", "label": "typescript", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L34"}, {"id": "typescript", "label": "typescript", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L34"}, {"id": "$graphify-root$_frontend_application_package_devdependencies_vitest", "label": "vitest", "file_type": "code", "source_file": "frontend/application/package.json", "source_location": "L35"}, {"id": "vitest", "label": "vitest", "file_type": "concept", "source_file": "frontend/application/package.json", "source_location": "L35"}], "edges": [{"source": "$graphify-root$_frontend_application_package_json", "target": "$graphify-root$_frontend_application_package_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L2", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_json", "target": "$graphify-root$_frontend_application_package_version", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L3", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_json", "target": "$graphify-root$_frontend_application_package_private", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L4", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_json", "target": "$graphify-root$_frontend_application_package_scripts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L5", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_scripts", "target": "$graphify-root$_frontend_application_package_scripts_dev", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L6", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_scripts", "target": "$graphify-root$_frontend_application_package_scripts_build", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L7", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_scripts", "target": "$graphify-root$_frontend_application_package_scripts_start", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L8", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_scripts", "target": "$graphify-root$_frontend_application_package_scripts_lint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L9", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_json", "target": "$graphify-root$_frontend_application_package_dependencies", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L11", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_axios", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L12", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_axios", "target": "axios", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L12", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_lucide_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L13", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_lucide_react", "target": "lucide_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L13", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_motion", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L14", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_motion", "target": "motion", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L14", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_next", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L15", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_next", "target": "next", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L15", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_nextjs_toploader", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L16", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_nextjs_toploader", "target": "nextjs_toploader", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L16", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L17", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_react", "target": "react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L17", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_react_dom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L18", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_react_dom", "target": "react_dom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L18", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_sonner", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L19", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_sonner", "target": "sonner", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L19", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_dependencies", "target": "$graphify-root$_frontend_application_package_dependencies_zustand", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L20", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_dependencies_zustand", "target": "zustand", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L20", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_json", "target": "$graphify-root$_frontend_application_package_devdependencies", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L22", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_tailwindcss_postcss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L23", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_tailwindcss_postcss", "target": "tailwindcss_postcss", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L23", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_testing_library_jest_dom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L24", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_testing_library_jest_dom", "target": "testing_library_jest_dom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L24", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_testing_library_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L25", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_testing_library_react", "target": "testing_library_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L25", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_types_node", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L26", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_types_node", "target": "types_node", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L26", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_types_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L27", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_types_react", "target": "types_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L27", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_types_react_dom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L28", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_types_react_dom", "target": "types_react_dom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L28", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_vitejs_plugin_react", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L29", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_vitejs_plugin_react", "target": "vitejs_plugin_react", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L29", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_eslint", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L30", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_eslint", "target": "eslint", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L30", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_eslint_config_next", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L31", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_eslint_config_next", "target": "eslint_config_next", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L31", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_jsdom", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L32", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_jsdom", "target": "jsdom", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L32", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_tailwindcss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L33", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_tailwindcss", "target": "tailwindcss", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L33", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_typescript", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L34", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_typescript", "target": "typescript", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L34", "weight": 1.0, "context": "import"}, {"source": "$graphify-root$_frontend_application_package_devdependencies", "target": "$graphify-root$_frontend_application_package_devdependencies_vitest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L35", "weight": 1.0}, {"source": "$graphify-root$_frontend_application_package_devdependencies_vitest", "target": "vitest", "relation": "imports", "confidence": "EXTRACTED", "source_file": "frontend/application/package.json", "source_location": "L35", "weight": 1.0, "context": "import"}]} \ No newline at end of file diff --git a/graphify-out/cache/stat-index.json b/graphify-out/cache/stat-index.json index 1356ac7..0c11046 100644 --- a/graphify-out/cache/stat-index.json +++ b/graphify-out/cache/stat-index.json @@ -1 +1 @@ -{".agents/rules/graphify.md":{"size":933,"mtime_ns":1786870552830271100,"indexed_at_ns":1787726739808807000,"word_count":127,"hashes":{".agents/rules/graphify.md":"26f2577a68d808f7f33ec3e418b95b635aec180d93b22b975e9ae67c47e361c8"}},".agents/workflows/graphify.md":{"size":229,"mtime_ns":1786870552832398300,"indexed_at_ns":1787726739809809700,"word_count":37,"hashes":{".agents/workflows/graphify.md":"a81e2d017e0669c71099362b20854e4d9ed68753f1c240d0682120bdb9aa3c72"}},".ai_agency/AGENCY.md":{"size":8757,"mtime_ns":1785148021979607300,"indexed_at_ns":1787726739810808600,"word_count":1161,"hashes":{".ai_agency/agency.md":"88c7c13583a91fc7e41ce055fede9dce20f181e8d264557808989965e83a9030"}},".ai_agency/agents/00_intake.md":{"size":3819,"mtime_ns":1785148021984319000,"indexed_at_ns":1787726739811809900,"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":1787726739813809800,"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":1787726739814809500,"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":1787726739815810200,"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":1787726739816809500,"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":1787726739817810300,"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":1787726739819343800,"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":1787726739820379800,"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":1787726739821353800,"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":1787726739822379900,"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":1787726739824378500,"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":1787726739825379700,"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":1787726739826379900,"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":1787726728366347600,"word_count":34},".ai_agency/memory/backlog.json":{"size":10711,"mtime_ns":1785330750958890900,"indexed_at_ns":1787726739730126300,"word_count":981,"hashes":{".ai_agency/memory/backlog.json":"6bf3150a1877d03d03b368df21b84071381b1bb8cd03e3721fa9f8e6c38355be"}},".ai_agency/memory/scratchpad.md":{"size":1879,"mtime_ns":1785148022065114400,"indexed_at_ns":1787726739827380200,"word_count":249,"hashes":{".ai_agency/memory/scratchpad.md":"9d0f687cf8e95c6335f1efb070da8029878417c28117e3b89aa8536ad70a5b95"}},".ai_agency/memory/state.json":{"size":3654,"mtime_ns":1785330750963913800,"indexed_at_ns":1787726739754651600,"word_count":254,"hashes":{".ai_agency/memory/state.json":"1204676f8f295d89733888bb87936061b7a700df0cc936fbf08fd5269b534e8d"}},".ai_agency/orchestrate.py":{"size":6800,"mtime_ns":1785148022072662500,"indexed_at_ns":1787726739755649500,"word_count":644,"hashes":{".ai_agency/orchestrate.py":"90ec787fdd4c71f5203c56b6899aadcc26e6e0bad0cc576d2f982aa42eed42e1"}},".ai_agency/specs/api_contract.md":{"size":1515,"mtime_ns":1785148022077664900,"indexed_at_ns":1787726739828380100,"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":1787726739829380100,"word_count":99,"hashes":{".ai_agency/specs/architecture_spec.md":"6269043f6a144e8ac86ff1db7e014075185e5675a4a0ee23e99e70d88253b8af"}},".ai_agency/specs/prd.md":{"size":724,"mtime_ns":1785148022087251600,"indexed_at_ns":1787726739830914500,"word_count":96,"hashes":{".ai_agency/specs/prd.md":"1c6d5a0ec8a709a2b3aed28225f5fe148ad2d75851d45699187678d055947b11"}},".ai_agency/specs/project_health.md":{"size":444,"mtime_ns":1785148022098314600,"indexed_at_ns":1787726739831950800,"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":1787726739832950700,"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":1787726739834457300,"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":1787726739835467400,"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":1787726739837467800,"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":1787726739838331800,"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":1787726739839755700,"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":1787726739840765700,"word_count":150,"hashes":{".ai_agency/specs/reviews/ux_review.md":"b8a52f324e36fcc2d046cc903a05903057098a67a397ae6442d6c825091f4513"}},".antigravity/instructions.md":{"size":226,"mtime_ns":1786870552833405800,"indexed_at_ns":1787726739842276100,"word_count":29,"hashes":{".antigravity/instructions.md":"8d8f5c1bbdbb7b8045e02b06a50e68d3fcfabfb2d65f8ac1cd86168dc8a8cc96"}},".antigravity/workflows/graphify.md":{"size":43292,"mtime_ns":1786870552837921500,"indexed_at_ns":1787726739843281500,"word_count":5442,"hashes":{".antigravity/workflows/graphify.md":"0c16b701a50d64f741f6de107c49584012a8dd7f5e922af9f79754540629e2fe"}},".claude/CLAUDE.md":{"size":226,"mtime_ns":1786870552838920200,"indexed_at_ns":1787726739845281600,"word_count":29,"hashes":{".claude/claude.md":"c6f7fc2f062904d246b700d446ba3ad03e77f41809b12eccfb5e090a11f4fad2"}},".claude/settings.json":{"size":479,"mtime_ns":1786870552841922800,"indexed_at_ns":1787726739757648600,"word_count":38,"hashes":{".claude/settings.json":"0aaafba2cbd7dd67f7d69fa2f01b747c9a72f56ee421a40825521f937caec82b"}},".claude/skills/graphify/SKILL.md":{"size":43292,"mtime_ns":1786870552845041000,"indexed_at_ns":1787726739846281500,"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":1787726739847281400,"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":1787726739848281300,"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":1787726739849713100,"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":1787726739850713300,"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":1787726739852220900,"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":1787726739853231100,"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":1787726739855230800,"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":1787726739856230800,"word_count":1196,"hashes":{".claude/skills/graphify/references/update.md":"0249cd6ceae6effdfc7371b51d00c462f51d95700101dcedd36255bab1b4ce7a"}},".gemini/config/mcp_config.json":{"size":146,"mtime_ns":1787729527922392700,"indexed_at_ns":1787729937075859600,"word_count":15,"hashes":{".gemini/config/mcp_config.json":"5350ccca14cfd0cb47901b879636407765ead90ade58684cbe3bca634580cbd7"}},".gitea/scripts/with-vpn.sh":{"size":1794,"mtime_ns":1786799852126316200,"indexed_at_ns":1787726739759255200,"word_count":208,"hashes":{".gitea/scripts/with-vpn.sh":"9ec013d142e3cf5d7e5f09778fcb06b4b8ea7b394688f9f40b5e74298c76bcf0"}},".gitea/workflows/deploy.yml":{"size":993,"mtime_ns":1787078454762471500,"indexed_at_ns":1787726728591851200,"word_count":84},".gitea/workflows/e2e.yml":{"size":980,"mtime_ns":1787729527923391900,"indexed_at_ns":1787729927042405700,"word_count":98},".vscode/extensions.json":{"size":74,"mtime_ns":1787461919449307400,"indexed_at_ns":1787726739761255600,"word_count":6,"hashes":{".vscode/extensions.json":"57518c36999b5176c9e8617cf937f6e35b54ddd015305005d4611729d1d69177"}},"AGENTS.md":{"size":226,"mtime_ns":1786870552862708600,"indexed_at_ns":1787726739857230800,"word_count":29,"hashes":{"agents.md":"b664c2bb6d85e009d7495bcd9c3d52c419176473cd4e19362fd4256616076151"}},"BACKEND_INTEGRATION.md":{"size":15568,"mtime_ns":1786885876768825200,"indexed_at_ns":1787726728620874500,"word_count":1521},"CLAUDE.md":{"size":772,"mtime_ns":1786870552863710100,"indexed_at_ns":1787726739858230900,"word_count":106,"hashes":{"claude.md":"3612256e7473a2e5f67ef4778d4edeefb44794ef22bac5529bee9c87dc5d8f3d"}},"DATABASE_SCHEMA.md":{"size":15399,"mtime_ns":1786885876771342200,"indexed_at_ns":1787726728633463600,"word_count":1566},"README.md":{"size":13117,"mtime_ns":1786885876775371800,"indexed_at_ns":1787726728645776100,"word_count":1310},"backend/README.md":{"size":5028,"mtime_ns":1783764561601382400,"indexed_at_ns":1787726739859230700,"word_count":472,"hashes":{"backend/readme.md":"c3edfd26252566ef2ddee12c91a874b59e03a1656894d3db25209a0e4031010a"}},"backend/eslint.config.mjs":{"size":1649,"mtime_ns":1787073059105361700,"indexed_at_ns":1787726728676723300,"word_count":104},"backend/nest-cli.json":{"size":172,"mtime_ns":1787072106370561300,"indexed_at_ns":1787726739762253100,"word_count":13,"hashes":{"backend/nest-cli.json":"64fe2904203985aa0acb9b67d7ade489f2362ac8730283fb11d6a764d1cb3878"}},"backend/package.json":{"size":2903,"mtime_ns":1787644197137104200,"indexed_at_ns":1787726739763253000,"word_count":214,"hashes":{"backend/package.json":"164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5"}},"backend/prisma/migrations/20260526145407_init/migration.sql":{"size":8963,"mtime_ns":1783764561612007600,"indexed_at_ns":1787726739764254000,"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":1787726739765254200,"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":1787726728717813800,"word_count":2294},"backend/prisma/seed-blogs.ts":{"size":6950,"mtime_ns":1786885876777374000,"indexed_at_ns":1787726728724742400,"word_count":620},"backend/prisma/seed-custom.ts":{"size":3836,"mtime_ns":1786799852144902000,"indexed_at_ns":1787726728731289500,"word_count":371},"backend/prisma/seed-home.ts":{"size":3870,"mtime_ns":1786885876779371100,"indexed_at_ns":1787726728738323600,"word_count":374},"backend/prisma/seed-products-data.json":{"size":59220,"mtime_ns":1786885876782371300,"indexed_at_ns":1787726739767253200,"word_count":5730,"hashes":{"backend/prisma/seed-products-data.json":"9d1262f8264478eb43ec48f073f817d46fc193d666cd9364f3bb95c1629f25c7"}},"backend/prisma/seed-products.ts":{"size":28268,"mtime_ns":1787127978219270600,"indexed_at_ns":1787726728749556400,"word_count":2063},"backend/prisma/seed-ui-texts.ts":{"size":9191,"mtime_ns":1787127978221789800,"indexed_at_ns":1787726728757558800,"word_count":755},"backend/prisma/seed-wiki.ts":{"size":24019,"mtime_ns":1786961195297596000,"indexed_at_ns":1787726728762216000,"word_count":2292},"backend/prisma/seed.ts":{"size":30480,"mtime_ns":1787127978225587600,"indexed_at_ns":1787726728769733300,"word_count":2636},"backend/prisma/tsconfig.json":{"size":194,"mtime_ns":1786961195300236300,"indexed_at_ns":1787726739768256500,"word_count":17,"hashes":{"backend/prisma/tsconfig.json":"0308b15b67bad714ff5f1b6b73f64ae46f98d5190cd6092abb1fb67885d67be1"}},"backend/prisma/tsconfig.seed.json":{"size":194,"mtime_ns":1786955870751259200,"indexed_at_ns":1787726739769256400,"word_count":17,"hashes":{"backend/prisma/tsconfig.seed.json":"e178d23a09563a7a9b348d905bc70322115514c78a7afcc5a53db7d18e511583"}},"backend/scripts/generate-openapi.d.ts":{"size":11,"mtime_ns":1786883225777483700,"indexed_at_ns":1787726728788027700,"word_count":2},"backend/scripts/generate-openapi.js":{"size":2965,"mtime_ns":1786883225779120000,"indexed_at_ns":1787726728794115400,"word_count":309},"backend/scripts/generate-openapi.ts":{"size":1421,"mtime_ns":1787729527925391800,"indexed_at_ns":1787729927210338500,"word_count":132},"backend/scripts/seo-backfill.ts":{"size":4551,"mtime_ns":1787729527925391800,"indexed_at_ns":1787729927215335400,"word_count":464},"backend/src/admin/admin.controller.spec.ts":{"size":593,"mtime_ns":1786799852157399700,"indexed_at_ns":1787726728816339600,"word_count":59},"backend/src/admin/admin.controller.ts":{"size":9712,"mtime_ns":1787564362261174000,"indexed_at_ns":1787726728822736900,"word_count":966},"backend/src/admin/admin.module.ts":{"size":1420,"mtime_ns":1786877667005008400,"indexed_at_ns":1787726728829614400,"word_count":145},"backend/src/admin/admin.service.spec.ts":{"size":903,"mtime_ns":1787729523434852600,"indexed_at_ns":1787729927236681900,"word_count":89},"backend/src/admin/admin.service.ts":{"size":31167,"mtime_ns":1787740536661367300,"indexed_at_ns":1787741537065111400,"word_count":3140},"backend/src/admin/blogs.controller.ts":{"size":5204,"mtime_ns":1787579631758177800,"indexed_at_ns":1787726728849039400,"word_count":532},"backend/src/admin/blogs.service.ts":{"size":9542,"mtime_ns":1787579631760177700,"indexed_at_ns":1787726728855138400,"word_count":1070},"backend/src/admin/categories.controller.ts":{"size":2187,"mtime_ns":1786799852174192500,"indexed_at_ns":1787726728862149600,"word_count":204},"backend/src/admin/categories.service.ts":{"size":2005,"mtime_ns":1786799852175194300,"indexed_at_ns":1787726728869148700,"word_count":223},"backend/src/admin/dto/admin-query.dto.ts":{"size":634,"mtime_ns":1786799852178706400,"indexed_at_ns":1787726728875856900,"word_count":60},"backend/src/admin/dto/product.dto.ts":{"size":6434,"mtime_ns":1787579631762178300,"indexed_at_ns":1787726728882424900,"word_count":521},"backend/src/admin/dto/user.dto.ts":{"size":2839,"mtime_ns":1787072106381989700,"indexed_at_ns":1787726728889404100,"word_count":259},"backend/src/admin/media.controller.ts":{"size":2339,"mtime_ns":1786876983648866300,"indexed_at_ns":1787726728895408700,"word_count":226},"backend/src/admin/media.service.ts":{"size":3596,"mtime_ns":1787748438701533500,"indexed_at_ns":1787748507167881200,"word_count":373},"backend/src/admin/pets.controller.ts":{"size":1195,"mtime_ns":1786799852186217200,"indexed_at_ns":1787726728908565800,"word_count":117},"backend/src/admin/pets.service.ts":{"size":1731,"mtime_ns":1786954681814243000,"indexed_at_ns":1787726728915489100,"word_count":193},"backend/src/admin/reports.controller.ts":{"size":1079,"mtime_ns":1787729523434852600,"indexed_at_ns":1787729927304516400,"word_count":107},"backend/src/admin/reports.service.ts":{"size":6497,"mtime_ns":1787729523434852600,"indexed_at_ns":1787729927310486400,"word_count":729},"backend/src/admin/ssl.controller.ts":{"size":3371,"mtime_ns":1787072106382979000,"indexed_at_ns":1787726728933458100,"word_count":296},"backend/src/admin/ssl.service.ts":{"size":6502,"mtime_ns":1787072106383978900,"indexed_at_ns":1787726728940536700,"word_count":612},"backend/src/admin/wiki.controller.ts":{"size":1814,"mtime_ns":1786799852191732300,"indexed_at_ns":1787726728947315900,"word_count":179},"backend/src/admin/wiki.service.ts":{"size":1767,"mtime_ns":1786799852193324200,"indexed_at_ns":1787726728953886100,"word_count":195},"backend/src/app.controller.spec.ts":{"size":617,"mtime_ns":1783764561644839700,"indexed_at_ns":1787726728959886100,"word_count":61},"backend/src/app.controller.ts":{"size":274,"mtime_ns":1783764561645849100,"indexed_at_ns":1787726728965475600,"word_count":31},"backend/src/app.module.ts":{"size":4052,"mtime_ns":1787579631764695400,"indexed_at_ns":1787726728971183900,"word_count":382},"backend/src/app.service.ts":{"size":142,"mtime_ns":1783764561648840500,"indexed_at_ns":1787726728977275800,"word_count":19},"backend/src/auth/auth.constants.ts":{"size":456,"mtime_ns":1787072106385980100,"indexed_at_ns":1787726728983890000,"word_count":32},"backend/src/auth/auth.controller.spec.ts":{"size":1528,"mtime_ns":1785327951179468000,"indexed_at_ns":1787726728988890000,"word_count":149},"backend/src/auth/auth.controller.ts":{"size":4304,"mtime_ns":1787645037368025500,"indexed_at_ns":1787726728996333500,"word_count":410},"backend/src/auth/auth.module.ts":{"size":724,"mtime_ns":1787072106388501600,"indexed_at_ns":1787726729002365400,"word_count":80},"backend/src/auth/auth.service.spec.ts":{"size":4306,"mtime_ns":1787729523436876800,"indexed_at_ns":1787729927377157300,"word_count":381},"backend/src/auth/auth.service.ts":{"size":9713,"mtime_ns":1787127978228589700,"indexed_at_ns":1787726729014017400,"word_count":933},"backend/src/auth/dto/admin-login.dto.ts":{"size":766,"mtime_ns":1787127978229587400,"indexed_at_ns":1787726729021017300,"word_count":82},"backend/src/auth/dto/login.dto.ts":{"size":587,"mtime_ns":1783764561659109000,"indexed_at_ns":1787726729027109900,"word_count":63},"backend/src/auth/dto/register.dto.ts":{"size":1197,"mtime_ns":1785327951186476900,"indexed_at_ns":1787726729033385300,"word_count":115},"backend/src/auth/dto/send-otp.dto.ts":{"size":374,"mtime_ns":1783764561661106500,"indexed_at_ns":1787726729039417400,"word_count":39},"backend/src/auth/dto/verify-otp.dto.ts":{"size":594,"mtime_ns":1783764561662112100,"indexed_at_ns":1787726729045971800,"word_count":64},"backend/src/auth/jwt-auth.guard.ts":{"size":494,"mtime_ns":1786799852205862700,"indexed_at_ns":1787726729051550300,"word_count":58},"backend/src/auth/jwt.strategy.ts":{"size":1122,"mtime_ns":1786883225794343300,"indexed_at_ns":1787726729058027000,"word_count":116},"backend/src/auth/roles.decorator.ts":{"size":54,"mtime_ns":1786799852208379600,"indexed_at_ns":1787726729064059300,"word_count":4},"backend/src/auth/roles.guard.ts":{"size":46,"mtime_ns":1786799852209003400,"indexed_at_ns":1787726729070031800,"word_count":4},"backend/src/b2b/b2b.controller.ts":{"size":2782,"mtime_ns":1787645037369065300,"indexed_at_ns":1787726729075540200,"word_count":261},"backend/src/b2b/b2b.module.ts":{"size":342,"mtime_ns":1786799852212013200,"indexed_at_ns":1787726729082375900,"word_count":38},"backend/src/b2b/b2b.service.ts":{"size":2379,"mtime_ns":1786799852214009300,"indexed_at_ns":1787726729088349500,"word_count":243},"backend/src/banners/banners.controller.ts":{"size":1923,"mtime_ns":1786799852215010200,"indexed_at_ns":1787726729094382800,"word_count":169},"backend/src/banners/banners.module.ts":{"size":374,"mtime_ns":1786799852216010300,"indexed_at_ns":1787726729099954900,"word_count":38},"backend/src/banners/banners.service.ts":{"size":1394,"mtime_ns":1786799852216010300,"indexed_at_ns":1787726729105481900,"word_count":160},"backend/src/blogs/blogs.controller.ts":{"size":2761,"mtime_ns":1787740536662972400,"indexed_at_ns":1787741537392291100,"word_count":247},"backend/src/blogs/blogs.module.ts":{"size":248,"mtime_ns":1783764561665678100,"indexed_at_ns":1787726729117858700,"word_count":28},"backend/src/blogs/blogs.service.ts":{"size":10419,"mtime_ns":1787740536664029300,"indexed_at_ns":1787741537418975100,"word_count":1157},"backend/src/blogs/dto/create-blog.dto.ts":{"size":30,"mtime_ns":1783764561671557000,"indexed_at_ns":1787726729130858800,"word_count":4},"backend/src/blogs/dto/update-blog.dto.ts":{"size":164,"mtime_ns":1783764561673712400,"indexed_at_ns":1787726729137866600,"word_count":18},"backend/src/blogs/entities/blog.entity.ts":{"size":21,"mtime_ns":1783764561675101100,"indexed_at_ns":1787726729143865200,"word_count":4},"backend/src/cms/cms.controller.ts":{"size":3521,"mtime_ns":1785327951196913100,"indexed_at_ns":1787726729149268700,"word_count":280},"backend/src/cms/cms.module.ts":{"size":342,"mtime_ns":1785148022206298000,"indexed_at_ns":1787726729156414600,"word_count":38},"backend/src/cms/cms.service.ts":{"size":2501,"mtime_ns":1785327951197940400,"indexed_at_ns":1787726729162441900,"word_count":256},"backend/src/cms/dto/cms.dto.ts":{"size":2357,"mtime_ns":1785327951199995500,"indexed_at_ns":1787726729169380900,"word_count":203},"backend/src/common/decorators/roles.decorator.ts":{"size":157,"mtime_ns":1786799852220522400,"indexed_at_ns":1787726729174954700,"word_count":20},"backend/src/common/dto/pagination.dto.ts":{"size":1188,"mtime_ns":1785327951201988900,"indexed_at_ns":1787726729180990600,"word_count":121},"backend/src/common/env.validation.ts":{"size":1162,"mtime_ns":1787645037370646800,"indexed_at_ns":1787726729187990800,"word_count":109},"backend/src/common/filters/http-exception.filter.ts":{"size":4993,"mtime_ns":1787645037371739300,"indexed_at_ns":1787726729194260200,"word_count":500},"backend/src/common/filters/prisma-exception.filter.ts":{"size":2862,"mtime_ns":1787645037372254700,"indexed_at_ns":1787726729201199300,"word_count":280},"backend/src/common/guards/roles.guard.spec.ts":{"size":2426,"mtime_ns":1786799852225556800,"indexed_at_ns":1787726729208239500,"word_count":223},"backend/src/common/guards/roles.guard.ts":{"size":1285,"mtime_ns":1786799852226565200,"indexed_at_ns":1787726729214246900,"word_count":120},"backend/src/common/interceptors/decimal.interceptor.spec.ts":{"size":1677,"mtime_ns":1786799852227565700,"indexed_at_ns":1787726729220254800,"word_count":164},"backend/src/common/interceptors/decimal.interceptor.ts":{"size":1094,"mtime_ns":1786799852227565700,"indexed_at_ns":1787726729226825500,"word_count":118},"backend/src/common/metrics.controller.ts":{"size":2093,"mtime_ns":1786799852229073100,"indexed_at_ns":1787726729232447400,"word_count":206},"backend/src/common/revalidation/revalidation.module.ts":{"size":240,"mtime_ns":1787579631769582300,"indexed_at_ns":1787726729239087900,"word_count":24},"backend/src/common/revalidation/revalidation.service.ts":{"size":3410,"mtime_ns":1787579631770587500,"indexed_at_ns":1787726729246057400,"word_count":272},"backend/src/common/schemas/error-response.schema.ts":{"size":1680,"mtime_ns":1785330913144701500,"indexed_at_ns":1787726729252104800,"word_count":162},"backend/src/common/schemas/paginated-response.schema.ts":{"size":1108,"mtime_ns":1786799852230082200,"indexed_at_ns":1787726729258104400,"word_count":110},"backend/src/common/services/sms.service.ts":{"size":31964,"mtime_ns":1787072106396073600,"indexed_at_ns":1787726729265265900,"word_count":3028},"backend/src/common/sms.module.ts":{"size":204,"mtime_ns":1785330750996125100,"indexed_at_ns":1787726729274176800,"word_count":24},"backend/src/common/utils/phone.utils.ts":{"size":1089,"mtime_ns":1786883225801396000,"indexed_at_ns":1787726729280624000,"word_count":149},"backend/src/contact/contact.controller.ts":{"size":2088,"mtime_ns":1787645037373264000,"indexed_at_ns":1787726729286660600,"word_count":192},"backend/src/contact/contact.module.ts":{"size":365,"mtime_ns":1786799852236599000,"indexed_at_ns":1787726729292806800,"word_count":38},"backend/src/contact/contact.service.ts":{"size":4690,"mtime_ns":1787127978233104000,"indexed_at_ns":1787726729298791600,"word_count":451},"backend/src/doctors/doctors.controller.ts":{"size":1583,"mtime_ns":1787148092311692900,"indexed_at_ns":1787726729304627000,"word_count":148},"backend/src/doctors/doctors.module.ts":{"size":374,"mtime_ns":1786971396035575100,"indexed_at_ns":1787726729310709500,"word_count":38},"backend/src/doctors/doctors.service.ts":{"size":2336,"mtime_ns":1787148092312693100,"indexed_at_ns":1787726729316710800,"word_count":266},"backend/src/doctors/dto/doctor-query.dto.ts":{"size":1009,"mtime_ns":1787148092314699500,"indexed_at_ns":1787726729323711800,"word_count":116},"backend/src/faq/faq.controller.ts":{"size":2210,"mtime_ns":1787148092316694700,"indexed_at_ns":1787726729329710800,"word_count":199},"backend/src/faq/faq.module.ts":{"size":234,"mtime_ns":1787148092316694700,"indexed_at_ns":1787726729335913700,"word_count":28},"backend/src/faq/faq.service.ts":{"size":1541,"mtime_ns":1787148092319911700,"indexed_at_ns":1787726729341879200,"word_count":184},"backend/src/home/dto/create-home.dto.ts":{"size":30,"mtime_ns":1783764561682365300,"indexed_at_ns":1787726729348678200,"word_count":4},"backend/src/home/dto/update-home.dto.ts":{"size":164,"mtime_ns":1783764561682365300,"indexed_at_ns":1787726729354360200,"word_count":18},"backend/src/home/entities/home.entity.ts":{"size":21,"mtime_ns":1783764561684884800,"indexed_at_ns":1787726729360332100,"word_count":4},"backend/src/home/home.controller.ts":{"size":757,"mtime_ns":1785327951212087300,"indexed_at_ns":1787726729365692000,"word_count":69},"backend/src/home/home.module.ts":{"size":241,"mtime_ns":1783764561687108000,"indexed_at_ns":1787726729372815400,"word_count":28},"backend/src/home/home.service.ts":{"size":1372,"mtime_ns":1785327951214087300,"indexed_at_ns":1787726729378370200,"word_count":144},"backend/src/ingredients/ingredients.controller.ts":{"size":1952,"mtime_ns":1786799852237596500,"indexed_at_ns":1787726729384776300,"word_count":165},"backend/src/ingredients/ingredients.module.ts":{"size":406,"mtime_ns":1786799852238596500,"indexed_at_ns":1787726729391513400,"word_count":38},"backend/src/ingredients/ingredients.service.ts":{"size":1526,"mtime_ns":1786799852240108300,"indexed_at_ns":1787726729397517700,"word_count":162},"backend/src/main.ts":{"size":4089,"mtime_ns":1787645037374260500,"indexed_at_ns":1787726729404030400,"word_count":362},"backend/src/menu/menu.controller.ts":{"size":2920,"mtime_ns":1787564348681948800,"indexed_at_ns":1787726729410971900,"word_count":265},"backend/src/menu/menu.module.ts":{"size":267,"mtime_ns":1787148092323869500,"indexed_at_ns":1787726729418641500,"word_count":30},"backend/src/menu/menu.service.ts":{"size":7799,"mtime_ns":1787564362262172600,"indexed_at_ns":1787726729424116700,"word_count":799},"backend/src/orders/dto/create-order.dto.ts":{"size":1899,"mtime_ns":1785327951218626100,"indexed_at_ns":1787726729430534500,"word_count":162},"backend/src/orders/orders.controller.spec.ts":{"size":1910,"mtime_ns":1785327951219627700,"indexed_at_ns":1787726729437590400,"word_count":194},"backend/src/orders/orders.controller.ts":{"size":5930,"mtime_ns":1787072106398077200,"indexed_at_ns":1787726729444156500,"word_count":517},"backend/src/orders/orders.module.ts":{"size":255,"mtime_ns":1783764561697598200,"indexed_at_ns":1787726729449863600,"word_count":28},"backend/src/orders/orders.service.spec.ts":{"size":5121,"mtime_ns":1787729523436876800,"indexed_at_ns":1787729927751553500,"word_count":493},"backend/src/orders/orders.service.ts":{"size":17203,"mtime_ns":1787127978236103400,"indexed_at_ns":1787726729460936600,"word_count":1611},"backend/src/payment/dto/admin-transaction-filter.dto.ts":{"size":2060,"mtime_ns":1787072106401590500,"indexed_at_ns":1787726729467565100,"word_count":191},"backend/src/payment/dto/ebank-checkout.dto.ts":{"size":1378,"mtime_ns":1787394001603461200,"indexed_at_ns":1787726729473467400,"word_count":118},"backend/src/payment/dto/initiate-payment.dto.ts":{"size":775,"mtime_ns":1786870552874246400,"indexed_at_ns":1787726729479997200,"word_count":69},"backend/src/payment/dto/verify-payment.dto.ts":{"size":1421,"mtime_ns":1786894580126857900,"indexed_at_ns":1787726729487007600,"word_count":126},"backend/src/payment/interfaces/payment-gateway.interface.ts":{"size":1330,"mtime_ns":1786870552876751100,"indexed_at_ns":1787726729493007700,"word_count":128},"backend/src/payment/payment.controller.ts":{"size":19167,"mtime_ns":1787564362263176000,"indexed_at_ns":1787726729498694600,"word_count":1574},"backend/src/payment/payment.module.ts":{"size":608,"mtime_ns":1787394001605617900,"indexed_at_ns":1787726729505386600,"word_count":61},"backend/src/payment/payment.service.ts":{"size":30818,"mtime_ns":1787564362264174300,"indexed_at_ns":1787726729511641700,"word_count":2752},"backend/src/payment/zibal-ebank.service.ts":{"size":10087,"mtime_ns":1787461919452306600,"indexed_at_ns":1787726729518640700,"word_count":1006},"backend/src/payment/zibal.service.ts":{"size":25781,"mtime_ns":1787461919453309100,"indexed_at_ns":1787726729525641200,"word_count":2490},"backend/src/pets/dto/create-health-log.dto.ts":{"size":761,"mtime_ns":1785327951229443300,"indexed_at_ns":1787726729532595600,"word_count":69},"backend/src/pets/dto/create-pet.dto.ts":{"size":1143,"mtime_ns":1785327951230948800,"indexed_at_ns":1787726729539689500,"word_count":104},"backend/src/pets/dto/create-reminder.dto.ts":{"size":810,"mtime_ns":1785327951231958200,"indexed_at_ns":1787726729545689700,"word_count":71},"backend/src/pets/dto/update-pet.dto.ts":{"size":160,"mtime_ns":1783764561709557500,"indexed_at_ns":1787726729551201600,"word_count":18},"backend/src/pets/pets.controller.spec.ts":{"size":2544,"mtime_ns":1786799852248118800,"indexed_at_ns":1787726729556953000,"word_count":269},"backend/src/pets/pets.controller.ts":{"size":8427,"mtime_ns":1787461919454308900,"indexed_at_ns":1787726729563595800,"word_count":781},"backend/src/pets/pets.module.ts":{"size":241,"mtime_ns":1783764561714469800,"indexed_at_ns":1787726729570135400,"word_count":28},"backend/src/pets/pets.service.spec.ts":{"size":2961,"mtime_ns":1785327951238208000,"indexed_at_ns":1787726729576202600,"word_count":272},"backend/src/pets/pets.service.ts":{"size":6978,"mtime_ns":1786799852250117400,"indexed_at_ns":1787726729581853500,"word_count":710},"backend/src/prescriptions/prescriptions.controller.ts":{"size":2356,"mtime_ns":1786799852253748300,"indexed_at_ns":1787726729589105100,"word_count":232},"backend/src/prescriptions/prescriptions.module.ts":{"size":495,"mtime_ns":1786954681815809200,"indexed_at_ns":1787726729595362900,"word_count":45},"backend/src/prescriptions/prescriptions.service.ts":{"size":4666,"mtime_ns":1787072106408779000,"indexed_at_ns":1787726729601839800,"word_count":498},"backend/src/prisma/prisma.module.ts":{"size":210,"mtime_ns":1783764561718199800,"indexed_at_ns":1787726729608494400,"word_count":24},"backend/src/prisma/prisma.service.ts":{"size":4250,"mtime_ns":1787640806107781000,"indexed_at_ns":1787726729614499200,"word_count":425},"backend/src/products/dto/get-products.dto.ts":{"size":1320,"mtime_ns":1786799852260271600,"indexed_at_ns":1787726729621151100,"word_count":115},"backend/src/products/products.controller.spec.ts":{"size":1863,"mtime_ns":1785327951243280800,"indexed_at_ns":1787726729629866100,"word_count":166},"backend/src/products/products.controller.ts":{"size":2445,"mtime_ns":1786799852261281700,"indexed_at_ns":1787726729636530800,"word_count":209},"backend/src/products/products.module.ts":{"size":269,"mtime_ns":1783764561723672400,"indexed_at_ns":1787726729642530900,"word_count":28},"backend/src/products/products.service.spec.ts":{"size":1860,"mtime_ns":1787729523438446200,"indexed_at_ns":1787729927908082400,"word_count":175},"backend/src/products/products.service.ts":{"size":7828,"mtime_ns":1787740536665089600,"indexed_at_ns":1787741538144518800,"word_count":807},"backend/src/redis/redis.module.ts":{"size":205,"mtime_ns":1783764561727662100,"indexed_at_ns":1787726729660667100,"word_count":24},"backend/src/redis/redis.service.spec.ts":{"size":1525,"mtime_ns":1783764561728672300,"indexed_at_ns":1787726729667111900,"word_count":145},"backend/src/redis/redis.service.ts":{"size":1202,"mtime_ns":1786895436211834600,"indexed_at_ns":1787726729673119800,"word_count":132},"backend/src/reviews/dto/create-review.dto.ts":{"size":949,"mtime_ns":1787072106414306300,"indexed_at_ns":1787726729680066000,"word_count":92},"backend/src/reviews/dto/update-review.dto.ts":{"size":534,"mtime_ns":1787072106415805700,"indexed_at_ns":1787726729686118000,"word_count":53},"backend/src/reviews/reviews.controller.ts":{"size":3318,"mtime_ns":1787645037375268800,"indexed_at_ns":1787726729692109200,"word_count":329},"backend/src/reviews/reviews.module.ts":{"size":374,"mtime_ns":1786944769517310800,"indexed_at_ns":1787726729699837600,"word_count":38},"backend/src/reviews/reviews.service.ts":{"size":7013,"mtime_ns":1787579631775586600,"indexed_at_ns":1787726729706361600,"word_count":742},"backend/src/seo/seo.controller.ts":{"size":904,"mtime_ns":1785327951247283200,"indexed_at_ns":1787726729713027000,"word_count":85},"backend/src/seo/seo.module.ts":{"size":342,"mtime_ns":1785148022268580900,"indexed_at_ns":1787726729720026400,"word_count":38},"backend/src/seo/seo.service.ts":{"size":2023,"mtime_ns":1787127978249385200,"indexed_at_ns":1787726729726026200,"word_count":182},"backend/src/settings/default-ui-texts.ts":{"size":19291,"mtime_ns":1787564362266172200,"indexed_at_ns":1787726729732056900,"word_count":1538},"backend/src/settings/dto/sms-log-query.dto.ts":{"size":1343,"mtime_ns":1787072106421339300,"indexed_at_ns":1787726729739063400,"word_count":125},"backend/src/settings/settings.controller.spec.ts":{"size":2855,"mtime_ns":1787729523438446200,"indexed_at_ns":1787729927987436700,"word_count":239},"backend/src/settings/settings.controller.ts":{"size":8977,"mtime_ns":1787072106423347900,"indexed_at_ns":1787726729751701000,"word_count":708},"backend/src/settings/settings.module.ts":{"size":382,"mtime_ns":1783764561735515700,"indexed_at_ns":1787726729758697700,"word_count":38},"backend/src/settings/settings.service.spec.ts":{"size":3028,"mtime_ns":1787729523439452400,"indexed_at_ns":1787729928002596300,"word_count":279},"backend/src/settings/settings.service.ts":{"size":20225,"mtime_ns":1787461919455310100,"indexed_at_ns":1787726729769779600,"word_count":1589},"backend/src/smart-advisor/smart-advisor.controller.ts":{"size":1821,"mtime_ns":1786799852275441500,"indexed_at_ns":1787726729775867900,"word_count":152},"backend/src/smart-advisor/smart-advisor.module.ts":{"size":416,"mtime_ns":1786799852276441700,"indexed_at_ns":1787726729782878800,"word_count":38},"backend/src/smart-advisor/smart-advisor.service.ts":{"size":1241,"mtime_ns":1786799852277440400,"indexed_at_ns":1787726729788878100,"word_count":131},"backend/src/testimonials/testimonials.controller.ts":{"size":1905,"mtime_ns":1787148092329786500,"indexed_at_ns":1787726729795446100,"word_count":160},"backend/src/testimonials/testimonials.module.ts":{"size":414,"mtime_ns":1786799852279441800,"indexed_at_ns":1787726729801924900,"word_count":38},"backend/src/testimonials/testimonials.service.ts":{"size":1268,"mtime_ns":1787148092332501600,"indexed_at_ns":1787726729810241500,"word_count":140},"backend/src/tickets/dto/create-ticket.dto.ts":{"size":2374,"mtime_ns":1787072106430874900,"indexed_at_ns":1787726729816278100,"word_count":201},"backend/src/tickets/dto/ticket-query.dto.ts":{"size":1103,"mtime_ns":1787072106431871400,"indexed_at_ns":1787726729824281400,"word_count":106},"backend/src/tickets/tickets.controller.ts":{"size":3114,"mtime_ns":1787072106433878000,"indexed_at_ns":1787726729829734800,"word_count":293},"backend/src/tickets/tickets.module.ts":{"size":374,"mtime_ns":1786890779322296800,"indexed_at_ns":1787726729836741100,"word_count":38},"backend/src/tickets/tickets.service.ts":{"size":7310,"mtime_ns":1787072106434874300,"indexed_at_ns":1787726729844342200,"word_count":781},"backend/src/users/dto/address.dto.ts":{"size":1098,"mtime_ns":1783764561739871500,"indexed_at_ns":1787726729851866000,"word_count":99},"backend/src/users/dto/update-profile.dto.ts":{"size":1068,"mtime_ns":1786885876805472100,"indexed_at_ns":1787726729858986800,"word_count":98},"backend/src/users/users.controller.spec.ts":{"size":3333,"mtime_ns":1785327951253796500,"indexed_at_ns":1787726729865019600,"word_count":322},"backend/src/users/users.controller.ts":{"size":6854,"mtime_ns":1786799852282481500,"indexed_at_ns":1787726729871026300,"word_count":590},"backend/src/users/users.module.ts":{"size":275,"mtime_ns":1783764561748154400,"indexed_at_ns":1787726729878590100,"word_count":30},"backend/src/users/users.service.spec.ts":{"size":3844,"mtime_ns":1787729523440453600,"indexed_at_ns":1787729928098956400,"word_count":320},"backend/src/users/users.service.ts":{"size":8207,"mtime_ns":1787127978253040800,"indexed_at_ns":1787726729889415400,"word_count":782},"backend/src/videos/dto/create-video.dto.ts":{"size":1573,"mtime_ns":1786971396042093900,"indexed_at_ns":1787726729895417800,"word_count":127},"backend/src/videos/dto/get-videos-query.dto.ts":{"size":643,"mtime_ns":1786799852287643500,"indexed_at_ns":1787726729903314300,"word_count":77},"backend/src/videos/videos.controller.ts":{"size":1924,"mtime_ns":1786799852291153100,"indexed_at_ns":1787726729909344900,"word_count":173},"backend/src/videos/videos.module.ts":{"size":283,"mtime_ns":1785148022306583700,"indexed_at_ns":1787726729915346300,"word_count":30},"backend/src/videos/videos.service.ts":{"size":3030,"mtime_ns":1787740536666160500,"indexed_at_ns":1787741538478485800,"word_count":321},"backend/src/wholesale/dto/wholesale-apply.dto.ts":{"size":739,"mtime_ns":1785148022317622300,"indexed_at_ns":1787726729928834600,"word_count":66},"backend/src/wholesale/wholesale.controller.ts":{"size":2037,"mtime_ns":1786799852294177000,"indexed_at_ns":1787726729934839900,"word_count":160},"backend/src/wholesale/wholesale.module.ts":{"size":390,"mtime_ns":1785148022328746300,"indexed_at_ns":1787726729941840900,"word_count":38},"backend/src/wholesale/wholesale.service.ts":{"size":2627,"mtime_ns":1785330913149233300,"indexed_at_ns":1787726729946807300,"word_count":266},"backend/src/wiki/dto/create-wiki.dto.ts":{"size":30,"mtime_ns":1783764561752933200,"indexed_at_ns":1787726729953896900,"word_count":4},"backend/src/wiki/dto/update-wiki.dto.ts":{"size":164,"mtime_ns":1783764561753945200,"indexed_at_ns":1787726729959896600,"word_count":18},"backend/src/wiki/entities/wiki.entity.ts":{"size":21,"mtime_ns":1783764561755039400,"indexed_at_ns":1787726729966410900,"word_count":4},"backend/src/wiki/wiki.controller.ts":{"size":1219,"mtime_ns":1785327951272850400,"indexed_at_ns":1787726729972418600,"word_count":110},"backend/src/wiki/wiki.module.ts":{"size":241,"mtime_ns":1783764561756925000,"indexed_at_ns":1787726729978966700,"word_count":28},"backend/src/wiki/wiki.service.ts":{"size":1562,"mtime_ns":1786799852295173000,"indexed_at_ns":1787726729985599000,"word_count":174},"backend/test/app-audit-verification.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059109005600,"indexed_at_ns":1787726729992165500,"word_count":2},"backend/test/app-audit-verification.e2e-spec.js":{"size":8429,"mtime_ns":1787073059110516300,"indexed_at_ns":1787726729998303900,"word_count":714},"backend/test/app-audit-verification.e2e-spec.ts":{"size":6464,"mtime_ns":1786799852296174700,"indexed_at_ns":1787726730009127800,"word_count":569},"backend/test/app.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059112563300,"indexed_at_ns":1787726730014789500,"word_count":2},"backend/test/app.e2e-spec.js":{"size":1228,"mtime_ns":1787073059113572500,"indexed_at_ns":1787726730020887300,"word_count":97},"backend/test/app.e2e-spec.ts":{"size":981,"mtime_ns":1786799852297175000,"indexed_at_ns":1787726730030564200,"word_count":83},"backend/test/jest-e2e.json":{"size":183,"mtime_ns":1783764561762911800,"indexed_at_ns":1787726739771257900,"word_count":17,"hashes":{"backend/test/jest-e2e.json":"94091f560937212ad7027afcb77e62e6ac79e3e4cb401c3a16a56e7be4cac721"}},"backend/tsconfig.build.json":{"size":107,"mtime_ns":1783764561763447000,"indexed_at_ns":1787726739772258300,"word_count":10,"hashes":{"backend/tsconfig.build.json":"1f47c7dc3c8b5a15558654f45f21e0f553acc1680046f09dc24428e8538c4f9d"}},"backend/tsconfig.json":{"size":785,"mtime_ns":1787073059116167600,"indexed_at_ns":1787726739773257700,"word_count":56,"hashes":{"backend/tsconfig.json":"9b20fbca537d1e55f3a113fcee6683f0eb1f06752d3c8c52edf26eef8e2053f2"}},"backend/uploads/1781288429353-508765350.jpg":{"size":110246,"mtime_ns":1783764561766257000,"indexed_at_ns":1787726730057371500,"word_count":3882},"canina.md":{"size":21919,"mtime_ns":1786885876809472400,"indexed_at_ns":1787726730067353200,"word_count":1983},"canina.pdf":{"size":2858373,"mtime_ns":1785148022370811500,"indexed_at_ns":1787726730072352400,"word_count":0},"docker-compose.yml":{"size":2147,"mtime_ns":1787752951349742200,"indexed_at_ns":1787752967203975800,"word_count":125},"docs/01-introduction.md":{"size":5537,"mtime_ns":1786885876812474900,"indexed_at_ns":1787726730085575100,"word_count":523},"docs/02-user-guide.md":{"size":4303,"mtime_ns":1786885876813985900,"indexed_at_ns":1787726730091574900,"word_count":422},"docs/03-developer-guide.md":{"size":6717,"mtime_ns":1783764561771660500,"indexed_at_ns":1787726730099089600,"word_count":678},"docs/04-setup-and-deployment.md":{"size":4005,"mtime_ns":1787127978256847800,"indexed_at_ns":1787726739861230800,"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":1787726739862230700,"word_count":374,"hashes":{"docs/05-devops-and-monitoring.md":"53f1f45bbbdd3cf81cb4bc082ef4e49f506627f10f581d3c4b835028d02b5421"}},"docs/06-testing.md":{"size":4214,"mtime_ns":1783764561774967500,"indexed_at_ns":1787726739862740900,"word_count":457,"hashes":{"docs/06-testing.md":"69d50bd5e233f030d8076b55b69599cee201e1c393b7ee1beeb495c304fd4bd3"}},"docs/README.md":{"size":2740,"mtime_ns":1786885876816996700,"indexed_at_ns":1787726739864750200,"word_count":253,"hashes":{"docs/readme.md":"1b7ffde4b290e742802fc554f2dd2f7a2316fe25bd1cd328421ffa823b36f40f"}},"docs/audit/00-repository-map.md":{"size":3171,"mtime_ns":1786799852298174200,"indexed_at_ns":1787726739865750000,"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":1787726739866750300,"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":1787726739867750300,"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":1787726739868750300,"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":1787726739869750100,"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":1787726730169702300,"word_count":560},"docs/audit/06-storefront-audit.md":{"size":4191,"mtime_ns":1786799852303691400,"indexed_at_ns":1787726739871758800,"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":1787726739872758800,"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":1787726739873758600,"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":1787726739874758900,"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":1787726730204465900,"word_count":678},"docs/audit/11-code-quality-audit.md":{"size":3379,"mtime_ns":1786799852308957000,"indexed_at_ns":1787726739875758500,"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":1787726739877758700,"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":1787726739878758700,"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":1787726739879758400,"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":1787726739774686100,"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":1787726739880758700,"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":1787726739775692000,"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":1787726739881758500,"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":1787726739883758400,"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":1787726739777692600,"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":1787726739883758400,"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":1787726730289099900,"word_count":139},"docs/audit/23-untracked-first-party-files.txt":{"size":59,"mtime_ns":1786799852319066000,"indexed_at_ns":1787726730295099800,"word_count":7},"docs/audit/24-omitted-file-inspection-report.md":{"size":2462,"mtime_ns":1786799852320065700,"indexed_at_ns":1787726739885266400,"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":1787726739778692300,"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":1787726739887276800,"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":1787726730320693600,"word_count":148},"docs/audit/28-full-repository-classification.json":{"size":27913,"mtime_ns":1786799852324099500,"indexed_at_ns":1787726739779692400,"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":1787726739781691000,"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":1787726739783194500,"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":1787726739888276700,"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":1787726739784200700,"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":1787726739889276900,"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":1787726739785199000,"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":1787726739786706200,"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":1787726739787707200,"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":1787726730388254300,"word_count":398},"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md":{"size":2146,"mtime_ns":1786799852332642700,"indexed_at_ns":1787726730394794200,"word_count":239},"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md":{"size":15307,"mtime_ns":1787127978258848200,"indexed_at_ns":1787726730402390500,"word_count":1579},"docs/audit/MASTER-TASK-BACKLOG.md":{"size":30107,"mtime_ns":1786799852335470200,"indexed_at_ns":1787726730410947100,"word_count":3510},"docs/audit/audit-state.json":{"size":4135,"mtime_ns":1786799852337382200,"indexed_at_ns":1787726739788704900,"word_count":267,"hashes":{"docs/audit/audit-state.json":"4b804494570a2812170cb8dab35d15da659f57d6e637652328725e956f7d98aa"}},"docs/audit/build_manifest.js":{"size":4060,"mtime_ns":1786799852338393200,"indexed_at_ns":1787726730421985600,"word_count":348},"docs/audit/frontend-route-map.md":{"size":2558,"mtime_ns":1786799852339389800,"indexed_at_ns":1787726730429495100,"word_count":329},"docs/audit/generate_classification.js":{"size":2186,"mtime_ns":1786799852339389800,"indexed_at_ns":1787726730434093300,"word_count":204},"docs/audit/generate_evidence.js":{"size":3098,"mtime_ns":1786799852340390100,"indexed_at_ns":1787726730440532500,"word_count":253},"docs/audit/generate_ledger.js":{"size":7648,"mtime_ns":1786799852341897300,"indexed_at_ns":1787726730446281100,"word_count":620},"docs/audit/generate_manifest.js":{"size":6357,"mtime_ns":1786799852341897300,"indexed_at_ns":1787726730452526800,"word_count":489},"docs/audit/master-task-backlog.json":{"size":22336,"mtime_ns":1786799852342906700,"indexed_at_ns":1787726739790706500,"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":1787726730466602900,"word_count":736},"docs/audit/phase3-traceability-matrix.md":{"size":5237,"mtime_ns":1786799852344952800,"indexed_at_ns":1787726739890276800,"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":1787726739891276700,"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":1787726739893276700,"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":1787726739894276600,"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":1787726739895276700,"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":1787726730506440800,"word_count":559},"docs/audit/sync_honest_manifest.js":{"size":1213,"mtime_ns":1786799852349953100,"indexed_at_ns":1787726730513042200,"word_count":75},"docs/audit/sync_manifest.js":{"size":997,"mtime_ns":1786799852350953300,"indexed_at_ns":1787726730519090300,"word_count":62},"docs/audit/validate_evidence_grade.js":{"size":6141,"mtime_ns":1786799852351954100,"indexed_at_ns":1787726730524859000,"word_count":526},"docs/audit/validate_integrity.js":{"size":3408,"mtime_ns":1786799852352952400,"indexed_at_ns":1787726730530859600,"word_count":284},"docs/backlog.md":{"size":26175,"mtime_ns":1786799852356021600,"indexed_at_ns":1787726730538035500,"word_count":2834},"frontend/admin-panel/README.md":{"size":2425,"mtime_ns":1783764561778952800,"indexed_at_ns":1787726739896276700,"word_count":212,"hashes":{"frontend/admin-panel/readme.md":"3945c052249ebd020b013303d5921815b52d847bd36c748a03bfdc8eb2a390b8"}},"frontend/admin-panel/eslint.config.js":{"size":906,"mtime_ns":1787148092334501700,"indexed_at_ns":1787726730554130000,"word_count":69},"frontend/admin-panel/index.html":{"size":363,"mtime_ns":1783764561780558500,"indexed_at_ns":1787726730559871600,"word_count":28},"frontend/admin-panel/package.json":{"size":1072,"mtime_ns":1785570791953119000,"indexed_at_ns":1787726739792704600,"word_count":84,"hashes":{"frontend/admin-panel/package.json":"6d61fb108392e86320c75b42e69ba7138bdc47bba4883fafbeb6e661cc5f51e4"}},"frontend/admin-panel/postcss.config.js":{"size":91,"mtime_ns":1783764561796281900,"indexed_at_ns":1787726730571159000,"word_count":11},"frontend/admin-panel/public/favicon.svg":{"size":9522,"mtime_ns":1783764561797801500,"indexed_at_ns":1787726730577396200,"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":1787726730602607800,"word_count":15},"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856792445365000,"indexed_at_ns":1787726730626154600,"word_count":15},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856792454604400,"indexed_at_ns":1787726739897276800,"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":1787726739898786800,"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":1787726731162750800,"word_count":10881},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856792548005600,"indexed_at_ns":1787726739900396600,"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":1787726739901406500,"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":1787726731663450200,"word_count":2615},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856792646666000,"indexed_at_ns":1787726731673001900,"word_count":55},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856792647671700,"indexed_at_ns":1787726739903406700,"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":1787726731688185800,"word_count":671},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856792648669800,"indexed_at_ns":1787726739904406600,"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":1787726733915800800,"word_count":14},"frontend/admin-panel/public/icons.svg":{"size":5031,"mtime_ns":1783764561799320300,"indexed_at_ns":1787726733920800200,"word_count":382},"frontend/admin-panel/src/App.tsx":{"size":1088,"mtime_ns":1786799852365481100,"indexed_at_ns":1787726733931929300,"word_count":99},"frontend/admin-panel/src/assets/hero.png":{"size":13057,"mtime_ns":1783764561812863000,"indexed_at_ns":1787726733938940400,"word_count":437},"frontend/admin-panel/src/assets/react.svg":{"size":4126,"mtime_ns":1783764561813924700,"indexed_at_ns":1787726733944940500,"word_count":366},"frontend/admin-panel/src/assets/vite.svg":{"size":8709,"mtime_ns":1783764561814995700,"indexed_at_ns":1787726733951568000,"word_count":439},"frontend/admin-panel/src/components/Layout.tsx":{"size":726,"mtime_ns":1784621786958594800,"indexed_at_ns":1787726733957572200,"word_count":69},"frontend/admin-panel/src/components/ProtectedRoute.tsx":{"size":2336,"mtime_ns":1786799852369164100,"indexed_at_ns":1787726733964577700,"word_count":210},"frontend/admin-panel/src/components/RouteErrorBoundary.tsx":{"size":4042,"mtime_ns":1787062174623011100,"indexed_at_ns":1787726733970575200,"word_count":350},"frontend/admin-panel/src/components/Sidebar.tsx":{"size":13111,"mtime_ns":1787461920842084500,"indexed_at_ns":1787726733977661300,"word_count":1198},"frontend/admin-panel/src/components/Topbar.tsx":{"size":19016,"mtime_ns":1787466234964385700,"indexed_at_ns":1787726733983181100,"word_count":1586},"frontend/admin-panel/src/components/TransactionReceiptModal.tsx":{"size":9674,"mtime_ns":1787405554804618300,"indexed_at_ns":1787726733989180000,"word_count":738},"frontend/admin-panel/src/components/ui/Badge.tsx":{"size":1554,"mtime_ns":1787461920844094000,"indexed_at_ns":1787726733997180400,"word_count":158},"frontend/admin-panel/src/components/ui/Button.tsx":{"size":3591,"mtime_ns":1787467799871536000,"indexed_at_ns":1787726734004723300,"word_count":338},"frontend/admin-panel/src/components/ui/ConfirmModal.tsx":{"size":2294,"mtime_ns":1786972191359099700,"indexed_at_ns":1787726734011333000,"word_count":192},"frontend/admin-panel/src/components/ui/FormField.tsx":{"size":1683,"mtime_ns":1786954681823527000,"indexed_at_ns":1787726734018369200,"word_count":148},"frontend/admin-panel/src/components/ui/IconPickerModal.tsx":{"size":4853,"mtime_ns":1787071159959928200,"indexed_at_ns":1787726734024338100,"word_count":397},"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx":{"size":3351,"mtime_ns":1786954681824534900,"indexed_at_ns":1787726734032842500,"word_count":270},"frontend/admin-panel/src/components/ui/Input.tsx":{"size":1747,"mtime_ns":1786954681825535900,"indexed_at_ns":1787726734038847900,"word_count":147},"frontend/admin-panel/src/components/ui/MaskableField.tsx":{"size":3246,"mtime_ns":1787405554805712000,"indexed_at_ns":1787726734045422000,"word_count":310},"frontend/admin-panel/src/components/ui/MediaSelector.tsx":{"size":21604,"mtime_ns":1787038450536696800,"indexed_at_ns":1787726734051928800,"word_count":1686},"frontend/admin-panel/src/components/ui/Modal.tsx":{"size":3381,"mtime_ns":1787461920845094300,"indexed_at_ns":1787726734060570900,"word_count":324},"frontend/admin-panel/src/components/ui/Pagination.tsx":{"size":5510,"mtime_ns":1786799852387442100,"indexed_at_ns":1787726734066608900,"word_count":447},"frontend/admin-panel/src/components/ui/PriceInput.tsx":{"size":2633,"mtime_ns":1786948119771162400,"indexed_at_ns":1787726734074127900,"word_count":267},"frontend/admin-panel/src/components/ui/RichTextEditor.tsx":{"size":36574,"mtime_ns":1787980615563542500,"indexed_at_ns":1787981098348418200,"word_count":2767},"frontend/admin-panel/src/components/ui/Select.tsx":{"size":1881,"mtime_ns":1786954681828537500,"indexed_at_ns":1787726734087116300,"word_count":160},"frontend/admin-panel/src/components/ui/Skeleton.tsx":{"size":178,"mtime_ns":1783856792977535800,"indexed_at_ns":1787726734092926500,"word_count":22},"frontend/admin-panel/src/components/ui/Spinner.tsx":{"size":650,"mtime_ns":1783856792979049200,"indexed_at_ns":1787726734100568500,"word_count":67},"frontend/admin-panel/src/components/ui/Textarea.tsx":{"size":1287,"mtime_ns":1786954681828537500,"indexed_at_ns":1787726734107173200,"word_count":110},"frontend/admin-panel/src/components/ui/ThSort.tsx":{"size":1478,"mtime_ns":1787461920845094300,"indexed_at_ns":1787726734113136300,"word_count":148},"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx":{"size":1623,"mtime_ns":1786954681830044900,"indexed_at_ns":1787726734120391600,"word_count":143},"frontend/admin-panel/src/main.tsx":{"size":1055,"mtime_ns":1787062325395038600,"indexed_at_ns":1787726734130217700,"word_count":106},"frontend/admin-panel/src/pages/B2BManager.tsx":{"size":24689,"mtime_ns":1787729527927391700,"indexed_at_ns":1787729932214362700,"word_count":1682},"frontend/admin-panel/src/pages/BannersManager.tsx":{"size":19583,"mtime_ns":1787467799874171700,"indexed_at_ns":1787726734145966800,"word_count":1396},"frontend/admin-panel/src/pages/Blogs.tsx":{"size":82294,"mtime_ns":1787729527928391800,"indexed_at_ns":1787729932225892600,"word_count":5654},"frontend/admin-panel/src/pages/CMS.tsx":{"size":10114,"mtime_ns":1787467933664259800,"indexed_at_ns":1787726734157997900,"word_count":791},"frontend/admin-panel/src/pages/Categories.tsx":{"size":16242,"mtime_ns":1787469989141511600,"indexed_at_ns":1787726734164506500,"word_count":1174},"frontend/admin-panel/src/pages/ContactSubmissions.tsx":{"size":12346,"mtime_ns":1787467799877343800,"indexed_at_ns":1787726734172638600,"word_count":842},"frontend/admin-panel/src/pages/Coupons.tsx":{"size":27812,"mtime_ns":1787469989144204800,"indexed_at_ns":1787726734179658200,"word_count":2147},"frontend/admin-panel/src/pages/Dashboard.tsx":{"size":6006,"mtime_ns":1786885876829510000,"indexed_at_ns":1787726734186274700,"word_count":534},"frontend/admin-panel/src/pages/DoctorsManager.tsx":{"size":23282,"mtime_ns":1787467799879923800,"indexed_at_ns":1787726734193275100,"word_count":1666},"frontend/admin-panel/src/pages/FAQManager.tsx":{"size":12625,"mtime_ns":1787467799881924800,"indexed_at_ns":1787726734201784400,"word_count":937},"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx":{"size":13303,"mtime_ns":1787467799882925200,"indexed_at_ns":1787726734207782600,"word_count":928},"frontend/admin-panel/src/pages/IngredientsManager.tsx":{"size":17943,"mtime_ns":1787467933669934500,"indexed_at_ns":1787726734213391200,"word_count":1254},"frontend/admin-panel/src/pages/Login.tsx":{"size":11545,"mtime_ns":1787127978262361000,"indexed_at_ns":1787726734221391500,"word_count":838},"frontend/admin-panel/src/pages/Media.tsx":{"size":29374,"mtime_ns":1787467799885925200,"indexed_at_ns":1787726734227390500,"word_count":2304},"frontend/admin-panel/src/pages/MenuManager.tsx":{"size":19625,"mtime_ns":1787469989146215000,"indexed_at_ns":1787726734240896100,"word_count":1512},"frontend/admin-panel/src/pages/MonitoringPage.tsx":{"size":16455,"mtime_ns":1787466234965980200,"indexed_at_ns":1787726734246489100,"word_count":1289},"frontend/admin-panel/src/pages/Orders.tsx":{"size":55864,"mtime_ns":1787729527929396100,"indexed_at_ns":1787729932305956500,"word_count":4169},"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx":{"size":37893,"mtime_ns":1787467799889939500,"indexed_at_ns":1787726734259598900,"word_count":2521},"frontend/admin-panel/src/pages/Pets.tsx":{"size":16631,"mtime_ns":1787467799891938300,"indexed_at_ns":1787726734268435300,"word_count":1209},"frontend/admin-panel/src/pages/PrescriptionsManager.tsx":{"size":19424,"mtime_ns":1787467799892935800,"indexed_at_ns":1787726734275434500,"word_count":1419},"frontend/admin-panel/src/pages/Products.tsx":{"size":133306,"mtime_ns":1787991371769749800,"indexed_at_ns":1787992959715004900,"word_count":8756},"frontend/admin-panel/src/pages/Reports.tsx":{"size":24050,"mtime_ns":1787729523442451300,"indexed_at_ns":1787729932336128900,"word_count":1832},"frontend/admin-panel/src/pages/Reviews.tsx":{"size":30539,"mtime_ns":1787740536670948600,"indexed_at_ns":1787741544010232200,"word_count":2140},"frontend/admin-panel/src/pages/SeoSettingsPage.tsx":{"size":15089,"mtime_ns":1787467799899934200,"indexed_at_ns":1787726734302505600,"word_count":1137},"frontend/admin-panel/src/pages/Settings.tsx":{"size":24256,"mtime_ns":1787468615457819400,"indexed_at_ns":1787726734308156100,"word_count":1701},"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx":{"size":7615,"mtime_ns":1787467799901935300,"indexed_at_ns":1787726734314725100,"word_count":585},"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx":{"size":13745,"mtime_ns":1787467799902933600,"indexed_at_ns":1787726734320253400,"word_count":1014},"frontend/admin-panel/src/pages/SmsSettingsPage.tsx":{"size":78907,"mtime_ns":1787467799904439000,"indexed_at_ns":1787726734327410400,"word_count":5444},"frontend/admin-panel/src/pages/SslSettingsPage.tsx":{"size":25502,"mtime_ns":1787467799905446700,"indexed_at_ns":1787726734336379700,"word_count":1847},"frontend/admin-panel/src/pages/SystemSettingsPage.tsx":{"size":18951,"mtime_ns":1787742160542543900,"indexed_at_ns":1787742226362423500,"word_count":1264},"frontend/admin-panel/src/pages/TestimonialsManager.tsx":{"size":18547,"mtime_ns":1787467799908955400,"indexed_at_ns":1787726734348881900,"word_count":1297},"frontend/admin-panel/src/pages/Tickets.tsx":{"size":20254,"mtime_ns":1787467799909962900,"indexed_at_ns":1787726734355478000,"word_count":1455},"frontend/admin-panel/src/pages/Transactions.tsx":{"size":45136,"mtime_ns":1787471434872188300,"indexed_at_ns":1787726734362406800,"word_count":3213},"frontend/admin-panel/src/pages/UITexts.tsx":{"size":70758,"mtime_ns":1787564362267171200,"indexed_at_ns":1787726734368359700,"word_count":5750},"frontend/admin-panel/src/pages/Users.tsx":{"size":41959,"mtime_ns":1787740536672949600,"indexed_at_ns":1787741544087414700,"word_count":2823},"frontend/admin-panel/src/pages/Videos.tsx":{"size":25920,"mtime_ns":1787740536675689700,"indexed_at_ns":1787741544096497300,"word_count":1845},"frontend/admin-panel/src/pages/WholesaleApplications.tsx":{"size":6713,"mtime_ns":1787467799916852500,"indexed_at_ns":1787726734390128300,"word_count":505},"frontend/admin-panel/src/pages/Wiki.tsx":{"size":15651,"mtime_ns":1787469989158212800,"indexed_at_ns":1787726734396025400,"word_count":1221},"frontend/admin-panel/src/pages/ZibalPortalPage.tsx":{"size":55699,"mtime_ns":1787570438155805200,"indexed_at_ns":1787726734402122900,"word_count":3753},"frontend/admin-panel/src/routes/adminRoutes.tsx":{"size":6245,"mtime_ns":1787461920854097100,"indexed_at_ns":1787726734408451000,"word_count":603},"frontend/admin-panel/src/services/api.ts":{"size":5190,"mtime_ns":1787997569001313500,"indexed_at_ns":1787997622990545700,"word_count":479},"frontend/admin-panel/src/store/adminAuthStore.ts":{"size":666,"mtime_ns":1786799852469037000,"indexed_at_ns":1787726734421659400,"word_count":65},"frontend/admin-panel/src/types/admin.ts":{"size":4146,"mtime_ns":1787139270957407700,"indexed_at_ns":1787726734427790900,"word_count":454},"frontend/admin-panel/src/utils/lazyWithRetry.ts":{"size":1129,"mtime_ns":1787062174626227900,"indexed_at_ns":1787726734435357300,"word_count":114},"frontend/admin-panel/src/utils/useTableParams.ts":{"size":4060,"mtime_ns":1787461920855096000,"indexed_at_ns":1787726734441273300,"word_count":441},"frontend/admin-panel/tailwind.config.js":{"size":182,"mtime_ns":1783764561861721300,"indexed_at_ns":1787726734447096600,"word_count":20},"frontend/admin-panel/tsconfig.app.json":{"size":633,"mtime_ns":1787055476779566300,"indexed_at_ns":1787726739794704700,"word_count":48,"hashes":{"frontend/admin-panel/tsconfig.app.json":"2d9838ee1119342fd03bf7644781b8b6aced2cbdc908ff186cdd6ab7ab9ba1c4"}},"frontend/admin-panel/tsconfig.json":{"size":119,"mtime_ns":1783764561863393600,"indexed_at_ns":1787726739795705100,"word_count":15,"hashes":{"frontend/admin-panel/tsconfig.json":"7a6c2e21b6eaa2355b4e2ed29db2a767499a88498bde745cdccf3ba8c7f64f2b"}},"frontend/admin-panel/tsconfig.node.json":{"size":591,"mtime_ns":1783764561863923100,"indexed_at_ns":1787726739796704600,"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":1787726734467280600,"word_count":18},"frontend/application/AGENTS.md":{"size":717,"mtime_ns":1787127978268943700,"indexed_at_ns":1787726734477280500,"word_count":88},"frontend/application/CLAUDE.md":{"size":11,"mtime_ns":1783764561866744500,"indexed_at_ns":1787726739905406700,"word_count":1,"hashes":{"frontend/application/claude.md":"0776fbbe8c29c6dc861efa70683090a370ab56dc77c22cb9de74895b4c783320"}},"frontend/application/README.md":{"size":1450,"mtime_ns":1783764561867354300,"indexed_at_ns":1787726739906406500,"word_count":155,"hashes":{"frontend/application/readme.md":"dd829cdf325092d859080ac1db3cbf2cca3198e72834f0f228495ef3c49a2240"}},"frontend/application/app/ClientLayout.tsx":{"size":7677,"mtime_ns":1787729523443454500,"indexed_at_ns":1787729932508942000,"word_count":698},"frontend/application/app/HomeClient.tsx":{"size":13521,"mtime_ns":1787729995237438500,"indexed_at_ns":1787733017668598600,"word_count":876},"frontend/application/app/about/page.tsx":{"size":5706,"mtime_ns":1787139270959412500,"indexed_at_ns":1787726734506477700,"word_count":474},"frontend/application/app/api/revalidate/route.ts":{"size":1889,"mtime_ns":1787579631780106700,"indexed_at_ns":1787726734514149300,"word_count":220},"frontend/application/app/b2b/error.tsx":{"size":380,"mtime_ns":1787645037377262000,"indexed_at_ns":1787726734520148500,"word_count":50},"frontend/application/app/b2b/page.tsx":{"size":1506,"mtime_ns":1787644197141618200,"indexed_at_ns":1787726734526117900,"word_count":135},"frontend/application/app/blog/[slug]/page.tsx":{"size":8201,"mtime_ns":1787641161057694000,"indexed_at_ns":1787726734533148700,"word_count":767},"frontend/application/app/blog/error.tsx":{"size":382,"mtime_ns":1787645037378268200,"indexed_at_ns":1787726734540186900,"word_count":50},"frontend/application/app/blog/loading.tsx":{"size":1293,"mtime_ns":1787645037379262800,"indexed_at_ns":1787726734546152600,"word_count":115},"frontend/application/app/blog/page.tsx":{"size":3378,"mtime_ns":1787993003772568700,"indexed_at_ns":1787997305789060800,"word_count":346},"frontend/application/app/blog/rss.xml/route.ts":{"size":3076,"mtime_ns":1787577523710351300,"indexed_at_ns":1787726734558947600,"word_count":280},"frontend/application/app/catalog/CatalogClient.tsx":{"size":1389,"mtime_ns":1786872121566485100,"indexed_at_ns":1787726734564982500,"word_count":129},"frontend/application/app/catalog/page.tsx":{"size":671,"mtime_ns":1787139270965525300,"indexed_at_ns":1787726734570982600,"word_count":66},"frontend/application/app/checkout/page.tsx":{"size":604,"mtime_ns":1787139270967535500,"indexed_at_ns":1787726734576551900,"word_count":60},"frontend/application/app/checkout/success/[id]/page.tsx":{"size":231,"mtime_ns":1783764561878668300,"indexed_at_ns":1787726734582122000,"word_count":31},"frontend/application/app/contact/page.tsx":{"size":2655,"mtime_ns":1787644197143198500,"indexed_at_ns":1787726734588729900,"word_count":214},"frontend/application/app/dashboard/page.tsx":{"size":903,"mtime_ns":1787394935318217400,"indexed_at_ns":1787726734595730700,"word_count":83},"frontend/application/app/error.tsx":{"size":383,"mtime_ns":1785148022478709000,"indexed_at_ns":1787726734601792600,"word_count":50},"frontend/application/app/layout.tsx":{"size":5152,"mtime_ns":1787997529828964000,"indexed_at_ns":1787997623204456700,"word_count":423},"frontend/application/app/loading.tsx":{"size":1373,"mtime_ns":1785148022487650000,"indexed_at_ns":1787726734623432900,"word_count":122},"frontend/application/app/not-found.tsx":{"size":124,"mtime_ns":1783764561891411400,"indexed_at_ns":1787726734629416600,"word_count":15},"frontend/application/app/page.tsx":{"size":1003,"mtime_ns":1787139270974959500,"indexed_at_ns":1787726734635909300,"word_count":114},"frontend/application/app/payment/verify/page.tsx":{"size":14338,"mtime_ns":1786891855356078600,"indexed_at_ns":1787726734641507800,"word_count":1094},"frontend/application/app/privacy/page.tsx":{"size":4098,"mtime_ns":1787139270976563700,"indexed_at_ns":1787726734648804500,"word_count":336},"frontend/application/app/profile/page.tsx":{"size":623,"mtime_ns":1787139270978803200,"indexed_at_ns":1787726734655771200,"word_count":63},"frontend/application/app/robots.ts":{"size":825,"mtime_ns":1787578481501464000,"indexed_at_ns":1787726734660416500,"word_count":72},"frontend/application/app/search/page.tsx":{"size":786,"mtime_ns":1787139270979946700,"indexed_at_ns":1787726734667451100,"word_count":82},"frontend/application/app/shop/[slug]/page.tsx":{"size":8722,"mtime_ns":1787579631787104400,"indexed_at_ns":1787726734672932300,"word_count":786},"frontend/application/app/shop/error.tsx":{"size":382,"mtime_ns":1787645037380267900,"indexed_at_ns":1787726734679433600,"word_count":50},"frontend/application/app/shop/feed.xml/route.ts":{"size":3391,"mtime_ns":1787578481506463600,"indexed_at_ns":1787726734685442300,"word_count":301},"frontend/application/app/shop/loading.tsx":{"size":1596,"mtime_ns":1787645037380267900,"indexed_at_ns":1787726734691441600,"word_count":144},"frontend/application/app/shop/page.tsx":{"size":2715,"mtime_ns":1787644197146199100,"indexed_at_ns":1787726734698441300,"word_count":295},"frontend/application/app/sitemap-categories.xml/route.ts":{"size":1797,"mtime_ns":1787578481507462100,"indexed_at_ns":1787726734703951500,"word_count":179},"frontend/application/app/sitemap-products.xml/route.ts":{"size":1980,"mtime_ns":1787578481508464300,"indexed_at_ns":1787726734710719000,"word_count":186},"frontend/application/app/sitemap.ts":{"size":3510,"mtime_ns":1787578481510463300,"indexed_at_ns":1787726734715717900,"word_count":350},"frontend/application/app/track/page.tsx":{"size":612,"mtime_ns":1787139270984213600,"indexed_at_ns":1787726734723190300,"word_count":60},"frontend/application/app/trust-seals/page.tsx":{"size":7155,"mtime_ns":1787394001609306700,"indexed_at_ns":1787726734729188900,"word_count":566},"frontend/application/app/videos/page.tsx":{"size":2822,"mtime_ns":1787644197147196700,"indexed_at_ns":1787726734735191600,"word_count":266},"frontend/application/app/wiki/[slug]/page.tsx":{"size":8912,"mtime_ns":1787644197149197300,"indexed_at_ns":1787726734743193100,"word_count":702},"frontend/application/app/wiki/page.tsx":{"size":910,"mtime_ns":1787139270987830800,"indexed_at_ns":1787726734749703000,"word_count":85},"frontend/application/components/AddressModal.tsx":{"size":16470,"mtime_ns":1787739535190383900,"indexed_at_ns":1787739632847264500,"word_count":1146},"frontend/application/components/ArchivePage.tsx":{"size":38309,"mtime_ns":1787742267305491700,"indexed_at_ns":1787748387065149500,"word_count":2982},"frontend/application/components/AuthModal.tsx":{"size":55557,"mtime_ns":1787741599341881000,"indexed_at_ns":1787741688145548900,"word_count":3610},"frontend/application/components/B2BLandingClient.tsx":{"size":25866,"mtime_ns":1787645037381267600,"indexed_at_ns":1787726734774269600,"word_count":1824},"frontend/application/components/B2BPortal.tsx":{"size":14014,"mtime_ns":1786894580156857600,"indexed_at_ns":1787726734780287600,"word_count":1094},"frontend/application/components/BackButton.tsx":{"size":1120,"mtime_ns":1786965281357277800,"indexed_at_ns":1787726734786847300,"word_count":117},"frontend/application/components/BannerPlacement.tsx":{"size":7703,"mtime_ns":1787564348689902000,"indexed_at_ns":1787726734793846300,"word_count":527},"frontend/application/components/BlogPage.tsx":{"size":21976,"mtime_ns":1787729523446453700,"indexed_at_ns":1787729932775425100,"word_count":1583},"frontend/application/components/BlogPostClient.tsx":{"size":20329,"mtime_ns":1787740536679696900,"indexed_at_ns":1787741544522017800,"word_count":1361},"frontend/application/components/BlogPreviewSection.tsx":{"size":7847,"mtime_ns":1787729995238555000,"indexed_at_ns":1787733017937261500,"word_count":564},"frontend/application/components/BrandLogo.tsx":{"size":3307,"mtime_ns":1787564348690862200,"indexed_at_ns":1787726734819682600,"word_count":287},"frontend/application/components/CartDrawer.tsx":{"size":22052,"mtime_ns":1787733215548980400,"indexed_at_ns":1787737992400541400,"word_count":1448},"frontend/application/components/CheckoutPage.tsx":{"size":46418,"mtime_ns":1787739535191459100,"indexed_at_ns":1787739632909693500,"word_count":3127},"frontend/application/components/ContactFormClient.tsx":{"size":10833,"mtime_ns":1787729527935396400,"indexed_at_ns":1787729932808029300,"word_count":784},"frontend/application/components/DeleteConfirmModal.tsx":{"size":2328,"mtime_ns":1786799852608752300,"indexed_at_ns":1787726734845321800,"word_count":195},"frontend/application/components/EnamadBadge.tsx":{"size":1516,"mtime_ns":1786799852612361900,"indexed_at_ns":1787726734850835400,"word_count":114},"frontend/application/components/ErrorBoundary.tsx":{"size":2617,"mtime_ns":1786799852614549600,"indexed_at_ns":1787726734857066500,"word_count":235},"frontend/application/components/ErrorPages.tsx":{"size":2809,"mtime_ns":1787661485945074600,"indexed_at_ns":1787726734862654700,"word_count":243},"frontend/application/components/FAQSection.tsx":{"size":5086,"mtime_ns":1787729995239614600,"indexed_at_ns":1787733017983672300,"word_count":414},"frontend/application/components/FeaturedProducts.tsx":{"size":11788,"mtime_ns":1787981163242375700,"indexed_at_ns":1787981250217404700,"word_count":1018},"frontend/application/components/Footer.tsx":{"size":14803,"mtime_ns":1787740536681697800,"indexed_at_ns":1787741544612462800,"word_count":986},"frontend/application/components/Header.tsx":{"size":32865,"mtime_ns":1787980615566908100,"indexed_at_ns":1787981099215255000,"word_count":2219},"frontend/application/components/HeaderButton.tsx":{"size":2242,"mtime_ns":1786799852637156100,"indexed_at_ns":1787726734893172700,"word_count":208},"frontend/application/components/Hero.tsx":{"size":19224,"mtime_ns":1787729995241796300,"indexed_at_ns":1787733018008184500,"word_count":1617},"frontend/application/components/IngredientWiki.tsx":{"size":20337,"mtime_ns":1786965281374206800,"indexed_at_ns":1787726734906680500,"word_count":1496},"frontend/application/components/LoginModal.tsx":{"size":13846,"mtime_ns":1786885876932267500,"indexed_at_ns":1787726734914249200,"word_count":1121},"frontend/application/components/MaintenancePage.tsx":{"size":3686,"mtime_ns":1786946249984693000,"indexed_at_ns":1787726734921249900,"word_count":313},"frontend/application/components/NetworkBanner.tsx":{"size":2350,"mtime_ns":1786799852662138900,"indexed_at_ns":1787726734928082300,"word_count":214},"frontend/application/components/OrderDetailsModal.tsx":{"size":36149,"mtime_ns":1787564348694929900,"indexed_at_ns":1787726734935086200,"word_count":2477},"frontend/application/components/OrderSuccess.tsx":{"size":6396,"mtime_ns":1786799852665542300,"indexed_at_ns":1787726734947087000,"word_count":521},"frontend/application/components/OrderTracking.tsx":{"size":9269,"mtime_ns":1787729527937447000,"indexed_at_ns":1787729932896464500,"word_count":681},"frontend/application/components/PetProfile.tsx":{"size":83314,"mtime_ns":1787564348695930500,"indexed_at_ns":1787726734959758100,"word_count":5882},"frontend/application/components/PodcastInlinePlayer.tsx":{"size":18123,"mtime_ns":1787993003774220500,"indexed_at_ns":1787997306151429500,"word_count":1464},"frontend/application/components/PodcastPlayerModal.tsx":{"size":18105,"mtime_ns":1787748657155136900,"indexed_at_ns":1787748748510048700,"word_count":1487},"frontend/application/components/PrescriptionUploadModal.tsx":{"size":19183,"mtime_ns":1787741735267947500,"indexed_at_ns":1787741779220211300,"word_count":1356},"frontend/application/components/ProductPage.tsx":{"size":90407,"mtime_ns":1787991371771377100,"indexed_at_ns":1787992960329006800,"word_count":6459},"frontend/application/components/ProductReviews.tsx":{"size":16108,"mtime_ns":1787048863691774800,"indexed_at_ns":1787726734999417900,"word_count":1194},"frontend/application/components/SafeImage.tsx":{"size":4189,"mtime_ns":1787993003774790400,"indexed_at_ns":1787997306183013800,"word_count":390},"frontend/application/components/SearchResultsPage.tsx":{"size":8335,"mtime_ns":1786799852701578200,"indexed_at_ns":1787726735012019400,"word_count":594},"frontend/application/components/SearchableSelect.tsx":{"size":4375,"mtime_ns":1785575516155554800,"indexed_at_ns":1787726735019020000,"word_count":336},"frontend/application/components/Skeleton.tsx":{"size":3084,"mtime_ns":1783764561943996900,"indexed_at_ns":1787726735026024900,"word_count":291},"frontend/application/components/SmartAdvisor.tsx":{"size":36898,"mtime_ns":1787729995242888100,"indexed_at_ns":1787733018101293500,"word_count":2820},"frontend/application/components/TestimonialsSection.tsx":{"size":6677,"mtime_ns":1787729995243926600,"indexed_at_ns":1787733018108759600,"word_count":516},"frontend/application/components/TickerBanner.tsx":{"size":1605,"mtime_ns":1786885876960835800,"indexed_at_ns":1787726735043649000,"word_count":140},"frontend/application/components/Tooltip.tsx":{"size":5075,"mtime_ns":1787738415318670300,"indexed_at_ns":1787739480324134500,"word_count":425},"frontend/application/components/TopUpModal.tsx":{"size":9381,"mtime_ns":1787406597303349300,"indexed_at_ns":1787726735057286900,"word_count":741},"frontend/application/components/UserDashboard.tsx":{"size":92697,"mtime_ns":1787394935320317600,"indexed_at_ns":1787726735063292200,"word_count":5939},"frontend/application/components/VetGallery.tsx":{"size":8392,"mtime_ns":1787729995244963400,"indexed_at_ns":1787733018135397500,"word_count":653},"frontend/application/components/VideoModalPlayer.tsx":{"size":24822,"mtime_ns":1787993003775855300,"indexed_at_ns":1787997306253976800,"word_count":1846},"frontend/application/components/VideosPage.tsx":{"size":8815,"mtime_ns":1787729523450452600,"indexed_at_ns":1787729932995147700,"word_count":672},"frontend/application/components/__tests__/CartDrawer.test.tsx":{"size":3197,"mtime_ns":1786799852761825800,"indexed_at_ns":1787726735089813300,"word_count":285},"frontend/application/components/__tests__/FeaturedProducts.test.tsx":{"size":2922,"mtime_ns":1787729523451454700,"indexed_at_ns":1787729933006280300,"word_count":246},"frontend/application/components/__tests__/Footer.test.tsx":{"size":1200,"mtime_ns":1787729523452453700,"indexed_at_ns":1787729933012281300,"word_count":97},"frontend/application/components/__tests__/Header.test.tsx":{"size":3336,"mtime_ns":1787729523452453700,"indexed_at_ns":1787729933018310200,"word_count":266},"frontend/application/components/__tests__/Hero.test.tsx":{"size":1980,"mtime_ns":1786799852776010800,"indexed_at_ns":1787726735115917200,"word_count":192},"frontend/application/components/__tests__/Tooltip.test.tsx":{"size":1508,"mtime_ns":1786799852784348900,"indexed_at_ns":1787726735121917300,"word_count":137},"frontend/application/components/catalog/CatalogPageSpread.tsx":{"size":26752,"mtime_ns":1787981163246124500,"indexed_at_ns":1787981250429547500,"word_count":2128},"frontend/application/components/catalog/FlipbookCatalog.tsx":{"size":36610,"mtime_ns":1787738052869335500,"indexed_at_ns":1787738361662030900,"word_count":3147},"frontend/application/components/catalog/ProductDetailModal.tsx":{"size":8265,"mtime_ns":1787981163247727400,"indexed_at_ns":1787981250441706300,"word_count":589},"frontend/application/eslint.config.mjs":{"size":747,"mtime_ns":1787148092358055900,"indexed_at_ns":1787726735150541200,"word_count":61},"frontend/application/lib/data/products.ts":{"size":104224,"mtime_ns":1787578481513988500,"indexed_at_ns":1787726735158143700,"word_count":9748},"frontend/application/lib/data/provinces.ts":{"size":2993,"mtime_ns":1785571725610676000,"indexed_at_ns":1787726735166169300,"word_count":203},"frontend/application/lib/data/scientificTerms.ts":{"size":18042,"mtime_ns":1786958978743097300,"indexed_at_ns":1787726735173169300,"word_count":1756},"frontend/application/lib/fonts.ts":{"size":683,"mtime_ns":1787579631802834900,"indexed_at_ns":1787726735179751500,"word_count":59},"frontend/application/lib/hooks/useNetworkStatus.ts":{"size":610,"mtime_ns":1786799852793488000,"indexed_at_ns":1787726735185762100,"word_count":59},"frontend/application/lib/schema.ts":{"size":7336,"mtime_ns":1787644197156205400,"indexed_at_ns":1787726735192345800,"word_count":609},"frontend/application/lib/seo.ts":{"size":8046,"mtime_ns":1787139270988834800,"indexed_at_ns":1787726735198345500,"word_count":737},"frontend/application/lib/services/api.ts":{"size":3694,"mtime_ns":1787997573677364300,"indexed_at_ns":1787997623694798900,"word_count":391},"frontend/application/lib/services/authService.ts":{"size":4524,"mtime_ns":1786885876986184800,"indexed_at_ns":1787726735211416700,"word_count":509},"frontend/application/lib/services/orderService.ts":{"size":2428,"mtime_ns":1786799852810726500,"indexed_at_ns":1787726735217187400,"word_count":279},"frontend/application/lib/services/productService.ts":{"size":13196,"mtime_ns":1787993003778461200,"indexed_at_ns":1787997306384003400,"word_count":1231},"frontend/application/lib/services/ticketService.ts":{"size":1569,"mtime_ns":1786890779340901800,"indexed_at_ns":1787726735230632600,"word_count":170},"frontend/application/lib/services/videoService.ts":{"size":1867,"mtime_ns":1787993003779460300,"indexed_at_ns":1787997306396146000,"word_count":210},"frontend/application/lib/store/__tests__/cartStore.test.ts":{"size":4430,"mtime_ns":1786799852822036900,"indexed_at_ns":1787726735244738400,"word_count":386},"frontend/application/lib/store/__tests__/settingsStore.test.ts":{"size":1949,"mtime_ns":1783856793043803200,"indexed_at_ns":1787726735251871200,"word_count":194},"frontend/application/lib/store/__tests__/userStore.test.ts":{"size":3639,"mtime_ns":1786799852825547700,"indexed_at_ns":1787726735257815200,"word_count":289},"frontend/application/lib/store/cartStore.ts":{"size":6972,"mtime_ns":1787660831220289700,"indexed_at_ns":1787726735265091600,"word_count":697},"frontend/application/lib/store/settingsStore.ts":{"size":3630,"mtime_ns":1786948119787096800,"indexed_at_ns":1787726735271091300,"word_count":371},"frontend/application/lib/store/uiStore.ts":{"size":872,"mtime_ns":1786799852833588000,"indexed_at_ns":1787726735277092600,"word_count":100},"frontend/application/lib/store/usePetStore.ts":{"size":8680,"mtime_ns":1786954681845300600,"indexed_at_ns":1787726735283172200,"word_count":850},"frontend/application/lib/store/userStore.ts":{"size":10320,"mtime_ns":1787729523453454600,"indexed_at_ns":1787729933162841900,"word_count":894},"frontend/application/lib/types.ts":{"size":2222,"mtime_ns":1787729527940443900,"indexed_at_ns":1787729933167879300,"word_count":239},"frontend/application/lib/utils.ts":{"size":478,"mtime_ns":1786799852847284000,"indexed_at_ns":1787726735301154500,"word_count":61},"frontend/application/next.config.ts":{"size":2274,"mtime_ns":1787579631805387200,"indexed_at_ns":1787726735310154400,"word_count":208},"frontend/application/package.json":{"size":879,"mtime_ns":1787997511791966700,"indexed_at_ns":1787997627890020000,"word_count":74,"hashes":{"frontend/application/package.json":"f5809a3eb73a2bc8f3909feb577499a8244cb0d1916cdbfed6753f6a6c7538fc"}},"frontend/application/postcss.config.mjs":{"size":94,"mtime_ns":1783764561988252100,"indexed_at_ns":1787726735322173300,"word_count":13},"frontend/application/public/assets/images/canina-product-placeholder.png":{"size":6990105,"mtime_ns":1787461919505024400,"indexed_at_ns":1787726735328171600,"word_count":267685},"frontend/application/public/assets/images/hero-section-image.png":{"size":6990105,"mtime_ns":1783856793095044200,"indexed_at_ns":1787726735461222100,"word_count":267685},"frontend/application/public/assets/images/regenerated_image_1779109861747.png":{"size":2269101,"mtime_ns":1783764562014110300,"indexed_at_ns":1787726735596033500,"word_count":84979},"frontend/application/public/file.svg":{"size":391,"mtime_ns":1783764562016213600,"indexed_at_ns":1787726735643616000,"word_count":50},"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856793098052000,"indexed_at_ns":1787726735668659800,"word_count":15},"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856793107660400,"indexed_at_ns":1787726735694207900,"word_count":15},"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856793113660500,"indexed_at_ns":1787726739908406400,"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":1787726739909406300,"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":1787726736213031900,"word_count":10881},"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856793230118600,"indexed_at_ns":1787726736225832200,"word_count":951},"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856793279542700,"indexed_at_ns":1787726736475009300,"word_count":283},"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856793315146800,"indexed_at_ns":1787726736717303100,"word_count":2615},"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856793316155600,"indexed_at_ns":1787726736727313200,"word_count":55},"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856793317690100,"indexed_at_ns":1787726736736959200,"word_count":5086},"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856793319422000,"indexed_at_ns":1787726736744957500,"word_count":671},"frontend/application/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856793320489000,"indexed_at_ns":1787726736753050400,"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":1787726738964542200,"word_count":14},"frontend/application/public/globe.svg":{"size":1035,"mtime_ns":1783764562016720700,"indexed_at_ns":1787726738969546300,"word_count":154},"frontend/application/public/images/vets/vet1.webp":{"size":6990105,"mtime_ns":1787461919541761600,"indexed_at_ns":1787726738988845300,"word_count":267685},"frontend/application/public/next.svg":{"size":1375,"mtime_ns":1783764562018238900,"indexed_at_ns":1787726739135424800,"word_count":183},"frontend/application/public/vercel.svg":{"size":128,"mtime_ns":1783764562019253000,"indexed_at_ns":1787726739141424700,"word_count":12},"frontend/application/public/window.svg":{"size":385,"mtime_ns":1783764562019253000,"indexed_at_ns":1787726739147423800,"word_count":63},"frontend/application/tsconfig.json":{"size":750,"mtime_ns":1786799852865640000,"indexed_at_ns":1787726739800717100,"word_count":61,"hashes":{"frontend/application/tsconfig.json":"adcade0f962ec5888be99b4b1402d98812cfd570b0c5669bda73142b2cb9210d"}},"frontend/application/vitest.config.ts":{"size":244,"mtime_ns":1786799852868652900,"indexed_at_ns":1787726739161997600,"word_count":25},"frontend/application/vitest.setup.ts":{"size":1237,"mtime_ns":1787729523454452000,"indexed_at_ns":1787729936531670400,"word_count":141},"manual-test-scenarios.md":{"size":0,"mtime_ns":1787729528073006400,"indexed_at_ns":1787729937354455500,"word_count":0,"hashes":{"manual-test-scenarios.md":"c6e53ad8216c7ae7d9e1449511caca4c768d1c68b0b859ae24f0add4afe8e502"}},"metadata.json":{"size":334,"mtime_ns":1783856793672137200,"indexed_at_ns":1787726739801716800,"word_count":35,"hashes":{"metadata.json":"c44b4c4ba60752554ceae65e2f22bddb756cbeb25a4a31ee79160b6eb182255a"}},"package.json":{"size":1237,"mtime_ns":1787729528076005200,"indexed_at_ns":1787729937137155800,"word_count":136,"hashes":{"package.json":"3ca5b265c68cc5660e5fd57b0aeb13de7eb49732740eafe405f6f0804671ceeb"}},"playwright.config.ts":{"size":2710,"mtime_ns":1787729528077005300,"indexed_at_ns":1787729936552986300,"word_count":270},"prometheus.yml":{"size":164,"mtime_ns":1783764562027779300,"indexed_at_ns":1787726739197125100,"word_count":13},"scripts/backup_db.sh":{"size":1362,"mtime_ns":1786799852876784600,"indexed_at_ns":1787726739803716600,"word_count":134,"hashes":{"scripts/backup_db.sh":"f90cf2d0c954f3eaca83566ccb365bff62fd97a2af0225816c19902ee4dfdd6c"}},"scripts/compose.prod.yml":{"size":2191,"mtime_ns":1787752951350797400,"indexed_at_ns":1787752975797706300,"word_count":122},"scripts/compose.stage.yml":{"size":2557,"mtime_ns":1787077093991779700,"indexed_at_ns":1787726739215476500,"word_count":137},"scripts/deploy.sh":{"size":3346,"mtime_ns":1787136904559094200,"indexed_at_ns":1787726739805264300,"word_count":351,"hashes":{"scripts/deploy.sh":"64d276bb6eb6cfb83690c529b9d1c0c71fa46aa912a458f684dfcf842fab2aea"}},"scripts/open-browsers.js":{"size":1551,"mtime_ns":1787997554596197000,"indexed_at_ns":1787997627318998100,"word_count":202},"scripts/start-dev.js":{"size":1689,"mtime_ns":1787997547494772600,"indexed_at_ns":1787997627322996000,"word_count":186},"start.sh":{"size":26,"mtime_ns":1784033954813080300,"indexed_at_ns":1787726739806268200,"word_count":4,"hashes":{"start.sh":"694c258b963c309734a3316c770f5fef29703bc6f24754b04155fd8db94cf862"}},"swagger.yml":{"size":95785,"mtime_ns":1786799852892091600,"indexed_at_ns":1787726739249239800,"word_count":7031},"test-coverage-map.md":{"size":13899,"mtime_ns":1787729528078006200,"indexed_at_ns":1787729937356455600,"word_count":1524,"hashes":{"test-coverage-map.md":"970d0bc2af7773ce27006da7c642991e3f094e71838201680fca7d9dfe809746"}},"tests/e2e/admin/admin-b2b-submissions.spec.ts":{"size":8979,"mtime_ns":1787729528080005900,"indexed_at_ns":1787729936612960300,"word_count":742},"tests/e2e/admin/admin-blogs-crud.spec.ts":{"size":5540,"mtime_ns":1787729528080005900,"indexed_at_ns":1787729936618959100,"word_count":490},"tests/e2e/admin/admin-crud.spec.ts":{"size":6485,"mtime_ns":1787729528081005800,"indexed_at_ns":1787729936623995800,"word_count":569},"tests/e2e/admin/admin-orders-flow.spec.ts":{"size":4130,"mtime_ns":1787729528082005000,"indexed_at_ns":1787729936630000900,"word_count":352},"tests/e2e/admin/admin-rbac-roles.spec.ts":{"size":4011,"mtime_ns":1787729528083005700,"indexed_at_ns":1787729936634530400,"word_count":327},"tests/e2e/security/xss-ratelimit.spec.ts":{"size":5646,"mtime_ns":1787729528085005800,"indexed_at_ns":1787729936640566600,"word_count":491},"tests/e2e/storefront/auth-otp-recovery.spec.ts":{"size":4540,"mtime_ns":1787729528086009200,"indexed_at_ns":1787729936646208300,"word_count":384},"tests/e2e/storefront/b2b-flow.spec.ts":{"size":3521,"mtime_ns":1787729528086516700,"indexed_at_ns":1787729936650784800,"word_count":288},"tests/e2e/storefront/blog-wiki.spec.ts":{"size":2107,"mtime_ns":1787729528087532400,"indexed_at_ns":1787729936656754300,"word_count":185},"tests/e2e/storefront/cart-operations.spec.ts":{"size":3910,"mtime_ns":1787729528089034600,"indexed_at_ns":1787729936662399200,"word_count":332},"tests/e2e/storefront/checkout-flow.spec.ts":{"size":2766,"mtime_ns":1787729528089034600,"indexed_at_ns":1787729936667403000,"word_count":251},"tests/e2e/storefront/concurrency-stock.spec.ts":{"size":5868,"mtime_ns":1787729528090041700,"indexed_at_ns":1787729936673410700,"word_count":537},"tests/e2e/storefront/contact.spec.ts":{"size":2899,"mtime_ns":1787729528091042800,"indexed_at_ns":1787729936678440900,"word_count":238},"tests/e2e/storefront/error-pages-404-500.spec.ts":{"size":1238,"mtime_ns":1787729528092042000,"indexed_at_ns":1787729936683435600,"word_count":121},"tests/e2e/storefront/order-tracking.spec.ts":{"size":3125,"mtime_ns":1787729528093041900,"indexed_at_ns":1787729936689592900,"word_count":282},"tests/e2e/storefront/shop-filter-search.spec.ts":{"size":2151,"mtime_ns":1787729528094048800,"indexed_at_ns":1787729936695374800,"word_count":187},"tests/fixtures/admin-auth.setup.ts":{"size":1950,"mtime_ns":1787729528095047800,"indexed_at_ns":1787729936700406800,"word_count":195},"tests/fixtures/index.ts":{"size":194,"mtime_ns":1787729528095047800,"indexed_at_ns":1787729936705408800,"word_count":32},"tsconfig.json":{"size":439,"mtime_ns":1787729528096047500,"indexed_at_ns":1787729937145762700,"word_count":37,"hashes":{"tsconfig.json":"12f2e30da1a34da7d06440370b7d1930cd5a3c3293f485789f5cfa2434aeea6f"}},"frontend/application/app/smart-advisor/page.tsx":{"size":2634,"mtime_ns":1787740536678699600,"indexed_at_ns":1787741544436016800,"word_count":232},"frontend/application/app/dashboard/orders/page.tsx":{"size":132,"mtime_ns":1787741941302806200,"indexed_at_ns":1787741982449356000,"word_count":13},"frontend/application/app/dashboard/pets/page.tsx":{"size":128,"mtime_ns":1787741941303809300,"indexed_at_ns":1787741982462112200,"word_count":13},"frontend/application/components/ProductImageZoomModal.tsx":{"size":12538,"mtime_ns":1787749751969854000,"indexed_at_ns":1787751879393552300,"word_count":1136},"frontend/application/app/api/media/[...path]/route.ts":{"size":5142,"mtime_ns":1787997353198709800,"indexed_at_ns":1787997623085929100,"word_count":462},"frontend/application/app/api/uploads/[...path]/route.ts":{"size":5283,"mtime_ns":1787997353200376400,"indexed_at_ns":1787997623097965500,"word_count":480},"frontend/application/lib/media.ts":{"size":1817,"mtime_ns":1787993003776450300,"indexed_at_ns":1787997306348537000,"word_count":201}} \ No newline at end of file +{".agents/rules/graphify.md":{"size":933,"mtime_ns":1786870552830271100,"indexed_at_ns":1787726739808807000,"word_count":127,"hashes":{".agents/rules/graphify.md":"26f2577a68d808f7f33ec3e418b95b635aec180d93b22b975e9ae67c47e361c8"}},".agents/workflows/graphify.md":{"size":229,"mtime_ns":1786870552832398300,"indexed_at_ns":1787726739809809700,"word_count":37,"hashes":{".agents/workflows/graphify.md":"a81e2d017e0669c71099362b20854e4d9ed68753f1c240d0682120bdb9aa3c72"}},".ai_agency/AGENCY.md":{"size":8757,"mtime_ns":1785148021979607300,"indexed_at_ns":1787726739810808600,"word_count":1161,"hashes":{".ai_agency/agency.md":"88c7c13583a91fc7e41ce055fede9dce20f181e8d264557808989965e83a9030"}},".ai_agency/agents/00_intake.md":{"size":3819,"mtime_ns":1785148021984319000,"indexed_at_ns":1787726739811809900,"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":1787726739813809800,"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":1787726739814809500,"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":1787726739815810200,"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":1787726739816809500,"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":1787726739817810300,"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":1787726739819343800,"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":1787726739820379800,"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":1787726739821353800,"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":1787726739822379900,"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":1787726739824378500,"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":1787726739825379700,"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":1787726739826379900,"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":1787726728366347600,"word_count":34},".ai_agency/memory/backlog.json":{"size":10711,"mtime_ns":1785330750958890900,"indexed_at_ns":1787726739730126300,"word_count":981,"hashes":{".ai_agency/memory/backlog.json":"6bf3150a1877d03d03b368df21b84071381b1bb8cd03e3721fa9f8e6c38355be"}},".ai_agency/memory/scratchpad.md":{"size":1879,"mtime_ns":1785148022065114400,"indexed_at_ns":1787726739827380200,"word_count":249,"hashes":{".ai_agency/memory/scratchpad.md":"9d0f687cf8e95c6335f1efb070da8029878417c28117e3b89aa8536ad70a5b95"}},".ai_agency/memory/state.json":{"size":3654,"mtime_ns":1785330750963913800,"indexed_at_ns":1787726739754651600,"word_count":254,"hashes":{".ai_agency/memory/state.json":"1204676f8f295d89733888bb87936061b7a700df0cc936fbf08fd5269b534e8d"}},".ai_agency/orchestrate.py":{"size":6800,"mtime_ns":1785148022072662500,"indexed_at_ns":1787726739755649500,"word_count":644,"hashes":{".ai_agency/orchestrate.py":"90ec787fdd4c71f5203c56b6899aadcc26e6e0bad0cc576d2f982aa42eed42e1"}},".ai_agency/specs/api_contract.md":{"size":1515,"mtime_ns":1785148022077664900,"indexed_at_ns":1787726739828380100,"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":1787726739829380100,"word_count":99,"hashes":{".ai_agency/specs/architecture_spec.md":"6269043f6a144e8ac86ff1db7e014075185e5675a4a0ee23e99e70d88253b8af"}},".ai_agency/specs/prd.md":{"size":724,"mtime_ns":1785148022087251600,"indexed_at_ns":1787726739830914500,"word_count":96,"hashes":{".ai_agency/specs/prd.md":"1c6d5a0ec8a709a2b3aed28225f5fe148ad2d75851d45699187678d055947b11"}},".ai_agency/specs/project_health.md":{"size":444,"mtime_ns":1785148022098314600,"indexed_at_ns":1787726739831950800,"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":1787726739832950700,"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":1787726739834457300,"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":1787726739835467400,"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":1787726739837467800,"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":1787726739838331800,"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":1787726739839755700,"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":1787726739840765700,"word_count":150,"hashes":{".ai_agency/specs/reviews/ux_review.md":"b8a52f324e36fcc2d046cc903a05903057098a67a397ae6442d6c825091f4513"}},".antigravity/instructions.md":{"size":226,"mtime_ns":1786870552833405800,"indexed_at_ns":1787726739842276100,"word_count":29,"hashes":{".antigravity/instructions.md":"8d8f5c1bbdbb7b8045e02b06a50e68d3fcfabfb2d65f8ac1cd86168dc8a8cc96"}},".antigravity/workflows/graphify.md":{"size":43292,"mtime_ns":1786870552837921500,"indexed_at_ns":1787726739843281500,"word_count":5442,"hashes":{".antigravity/workflows/graphify.md":"0c16b701a50d64f741f6de107c49584012a8dd7f5e922af9f79754540629e2fe"}},".claude/CLAUDE.md":{"size":226,"mtime_ns":1786870552838920200,"indexed_at_ns":1787726739845281600,"word_count":29,"hashes":{".claude/claude.md":"c6f7fc2f062904d246b700d446ba3ad03e77f41809b12eccfb5e090a11f4fad2"}},".claude/settings.json":{"size":479,"mtime_ns":1786870552841922800,"indexed_at_ns":1787726739757648600,"word_count":38,"hashes":{".claude/settings.json":"0aaafba2cbd7dd67f7d69fa2f01b747c9a72f56ee421a40825521f937caec82b"}},".claude/skills/graphify/SKILL.md":{"size":43292,"mtime_ns":1786870552845041000,"indexed_at_ns":1787726739846281500,"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":1787726739847281400,"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":1787726739848281300,"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":1787726739849713100,"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":1787726739850713300,"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":1787726739852220900,"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":1787726739853231100,"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":1787726739855230800,"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":1787726739856230800,"word_count":1196,"hashes":{".claude/skills/graphify/references/update.md":"0249cd6ceae6effdfc7371b51d00c462f51d95700101dcedd36255bab1b4ce7a"}},".gemini/config/mcp_config.json":{"size":146,"mtime_ns":1787729527922392700,"indexed_at_ns":1787729937075859600,"word_count":15,"hashes":{".gemini/config/mcp_config.json":"5350ccca14cfd0cb47901b879636407765ead90ade58684cbe3bca634580cbd7"}},".gitea/scripts/with-vpn.sh":{"size":1794,"mtime_ns":1786799852126316200,"indexed_at_ns":1787726739759255200,"word_count":208,"hashes":{".gitea/scripts/with-vpn.sh":"9ec013d142e3cf5d7e5f09778fcb06b4b8ea7b394688f9f40b5e74298c76bcf0"}},".gitea/workflows/deploy.yml":{"size":993,"mtime_ns":1787078454762471500,"indexed_at_ns":1787726728591851200,"word_count":84},".gitea/workflows/e2e.yml":{"size":980,"mtime_ns":1787729527923391900,"indexed_at_ns":1787729927042405700,"word_count":98},".vscode/extensions.json":{"size":74,"mtime_ns":1787461919449307400,"indexed_at_ns":1787726739761255600,"word_count":6,"hashes":{".vscode/extensions.json":"57518c36999b5176c9e8617cf937f6e35b54ddd015305005d4611729d1d69177"}},"AGENTS.md":{"size":226,"mtime_ns":1786870552862708600,"indexed_at_ns":1787726739857230800,"word_count":29,"hashes":{"agents.md":"b664c2bb6d85e009d7495bcd9c3d52c419176473cd4e19362fd4256616076151"}},"BACKEND_INTEGRATION.md":{"size":15568,"mtime_ns":1786885876768825200,"indexed_at_ns":1787726728620874500,"word_count":1521},"CLAUDE.md":{"size":772,"mtime_ns":1786870552863710100,"indexed_at_ns":1787726739858230900,"word_count":106,"hashes":{"claude.md":"3612256e7473a2e5f67ef4778d4edeefb44794ef22bac5529bee9c87dc5d8f3d"}},"DATABASE_SCHEMA.md":{"size":15399,"mtime_ns":1786885876771342200,"indexed_at_ns":1787726728633463600,"word_count":1566},"README.md":{"size":13117,"mtime_ns":1786885876775371800,"indexed_at_ns":1787726728645776100,"word_count":1310},"backend/README.md":{"size":5028,"mtime_ns":1783764561601382400,"indexed_at_ns":1787726739859230700,"word_count":472,"hashes":{"backend/readme.md":"c3edfd26252566ef2ddee12c91a874b59e03a1656894d3db25209a0e4031010a"}},"backend/eslint.config.mjs":{"size":1649,"mtime_ns":1787073059105361700,"indexed_at_ns":1787726728676723300,"word_count":104},"backend/nest-cli.json":{"size":172,"mtime_ns":1787072106370561300,"indexed_at_ns":1787726739762253100,"word_count":13,"hashes":{"backend/nest-cli.json":"64fe2904203985aa0acb9b67d7ade489f2362ac8730283fb11d6a764d1cb3878"}},"backend/package.json":{"size":2903,"mtime_ns":1787644197137104200,"indexed_at_ns":1787726739763253000,"word_count":214,"hashes":{"backend/package.json":"164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5"}},"backend/prisma/migrations/20260526145407_init/migration.sql":{"size":8963,"mtime_ns":1783764561612007600,"indexed_at_ns":1787726739764254000,"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":1787726739765254200,"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":1787726728717813800,"word_count":2294},"backend/prisma/seed-blogs.ts":{"size":6950,"mtime_ns":1786885876777374000,"indexed_at_ns":1787726728724742400,"word_count":620},"backend/prisma/seed-custom.ts":{"size":3836,"mtime_ns":1786799852144902000,"indexed_at_ns":1787726728731289500,"word_count":371},"backend/prisma/seed-home.ts":{"size":3870,"mtime_ns":1786885876779371100,"indexed_at_ns":1787726728738323600,"word_count":374},"backend/prisma/seed-products-data.json":{"size":59220,"mtime_ns":1786885876782371300,"indexed_at_ns":1787726739767253200,"word_count":5730,"hashes":{"backend/prisma/seed-products-data.json":"9d1262f8264478eb43ec48f073f817d46fc193d666cd9364f3bb95c1629f25c7"}},"backend/prisma/seed-products.ts":{"size":28268,"mtime_ns":1787127978219270600,"indexed_at_ns":1787726728749556400,"word_count":2063},"backend/prisma/seed-ui-texts.ts":{"size":9191,"mtime_ns":1787127978221789800,"indexed_at_ns":1787726728757558800,"word_count":755},"backend/prisma/seed-wiki.ts":{"size":24019,"mtime_ns":1786961195297596000,"indexed_at_ns":1787726728762216000,"word_count":2292},"backend/prisma/seed.ts":{"size":30480,"mtime_ns":1787127978225587600,"indexed_at_ns":1787726728769733300,"word_count":2636},"backend/prisma/tsconfig.json":{"size":194,"mtime_ns":1786961195300236300,"indexed_at_ns":1787726739768256500,"word_count":17,"hashes":{"backend/prisma/tsconfig.json":"0308b15b67bad714ff5f1b6b73f64ae46f98d5190cd6092abb1fb67885d67be1"}},"backend/prisma/tsconfig.seed.json":{"size":194,"mtime_ns":1786955870751259200,"indexed_at_ns":1787726739769256400,"word_count":17,"hashes":{"backend/prisma/tsconfig.seed.json":"e178d23a09563a7a9b348d905bc70322115514c78a7afcc5a53db7d18e511583"}},"backend/scripts/generate-openapi.d.ts":{"size":11,"mtime_ns":1786883225777483700,"indexed_at_ns":1787726728788027700,"word_count":2},"backend/scripts/generate-openapi.js":{"size":2965,"mtime_ns":1786883225779120000,"indexed_at_ns":1787726728794115400,"word_count":309},"backend/scripts/generate-openapi.ts":{"size":1421,"mtime_ns":1787729527925391800,"indexed_at_ns":1787729927210338500,"word_count":132},"backend/scripts/seo-backfill.ts":{"size":4551,"mtime_ns":1787729527925391800,"indexed_at_ns":1787729927215335400,"word_count":464},"backend/src/admin/admin.controller.spec.ts":{"size":593,"mtime_ns":1786799852157399700,"indexed_at_ns":1787726728816339600,"word_count":59},"backend/src/admin/admin.controller.ts":{"size":9712,"mtime_ns":1787564362261174000,"indexed_at_ns":1787726728822736900,"word_count":966},"backend/src/admin/admin.module.ts":{"size":1420,"mtime_ns":1786877667005008400,"indexed_at_ns":1787726728829614400,"word_count":145},"backend/src/admin/admin.service.spec.ts":{"size":903,"mtime_ns":1787729523434852600,"indexed_at_ns":1787729927236681900,"word_count":89},"backend/src/admin/admin.service.ts":{"size":31167,"mtime_ns":1787740536661367300,"indexed_at_ns":1787741537065111400,"word_count":3140},"backend/src/admin/blogs.controller.ts":{"size":5204,"mtime_ns":1787579631758177800,"indexed_at_ns":1787726728849039400,"word_count":532},"backend/src/admin/blogs.service.ts":{"size":9542,"mtime_ns":1787579631760177700,"indexed_at_ns":1787726728855138400,"word_count":1070},"backend/src/admin/categories.controller.ts":{"size":2187,"mtime_ns":1786799852174192500,"indexed_at_ns":1787726728862149600,"word_count":204},"backend/src/admin/categories.service.ts":{"size":2005,"mtime_ns":1786799852175194300,"indexed_at_ns":1787726728869148700,"word_count":223},"backend/src/admin/dto/admin-query.dto.ts":{"size":634,"mtime_ns":1786799852178706400,"indexed_at_ns":1787726728875856900,"word_count":60},"backend/src/admin/dto/product.dto.ts":{"size":6434,"mtime_ns":1787579631762178300,"indexed_at_ns":1787726728882424900,"word_count":521},"backend/src/admin/dto/user.dto.ts":{"size":2839,"mtime_ns":1787072106381989700,"indexed_at_ns":1787726728889404100,"word_count":259},"backend/src/admin/media.controller.ts":{"size":2339,"mtime_ns":1786876983648866300,"indexed_at_ns":1787726728895408700,"word_count":226},"backend/src/admin/media.service.ts":{"size":3596,"mtime_ns":1787748438701533500,"indexed_at_ns":1787748507167881200,"word_count":373},"backend/src/admin/pets.controller.ts":{"size":1195,"mtime_ns":1786799852186217200,"indexed_at_ns":1787726728908565800,"word_count":117},"backend/src/admin/pets.service.ts":{"size":1731,"mtime_ns":1786954681814243000,"indexed_at_ns":1787726728915489100,"word_count":193},"backend/src/admin/reports.controller.ts":{"size":1079,"mtime_ns":1787729523434852600,"indexed_at_ns":1787729927304516400,"word_count":107},"backend/src/admin/reports.service.ts":{"size":6497,"mtime_ns":1787729523434852600,"indexed_at_ns":1787729927310486400,"word_count":729},"backend/src/admin/ssl.controller.ts":{"size":3371,"mtime_ns":1787072106382979000,"indexed_at_ns":1787726728933458100,"word_count":296},"backend/src/admin/ssl.service.ts":{"size":6502,"mtime_ns":1787072106383978900,"indexed_at_ns":1787726728940536700,"word_count":612},"backend/src/admin/wiki.controller.ts":{"size":1814,"mtime_ns":1786799852191732300,"indexed_at_ns":1787726728947315900,"word_count":179},"backend/src/admin/wiki.service.ts":{"size":1767,"mtime_ns":1786799852193324200,"indexed_at_ns":1787726728953886100,"word_count":195},"backend/src/app.controller.spec.ts":{"size":617,"mtime_ns":1783764561644839700,"indexed_at_ns":1787726728959886100,"word_count":61},"backend/src/app.controller.ts":{"size":274,"mtime_ns":1783764561645849100,"indexed_at_ns":1787726728965475600,"word_count":31},"backend/src/app.module.ts":{"size":4052,"mtime_ns":1787579631764695400,"indexed_at_ns":1787726728971183900,"word_count":382},"backend/src/app.service.ts":{"size":142,"mtime_ns":1783764561648840500,"indexed_at_ns":1787726728977275800,"word_count":19},"backend/src/auth/auth.constants.ts":{"size":456,"mtime_ns":1787072106385980100,"indexed_at_ns":1787726728983890000,"word_count":32},"backend/src/auth/auth.controller.spec.ts":{"size":1528,"mtime_ns":1785327951179468000,"indexed_at_ns":1787726728988890000,"word_count":149},"backend/src/auth/auth.controller.ts":{"size":4304,"mtime_ns":1787645037368025500,"indexed_at_ns":1787726728996333500,"word_count":410},"backend/src/auth/auth.module.ts":{"size":724,"mtime_ns":1787072106388501600,"indexed_at_ns":1787726729002365400,"word_count":80},"backend/src/auth/auth.service.spec.ts":{"size":4306,"mtime_ns":1787729523436876800,"indexed_at_ns":1787729927377157300,"word_count":381},"backend/src/auth/auth.service.ts":{"size":9713,"mtime_ns":1787127978228589700,"indexed_at_ns":1787726729014017400,"word_count":933},"backend/src/auth/dto/admin-login.dto.ts":{"size":766,"mtime_ns":1787127978229587400,"indexed_at_ns":1787726729021017300,"word_count":82},"backend/src/auth/dto/login.dto.ts":{"size":587,"mtime_ns":1783764561659109000,"indexed_at_ns":1787726729027109900,"word_count":63},"backend/src/auth/dto/register.dto.ts":{"size":1197,"mtime_ns":1785327951186476900,"indexed_at_ns":1787726729033385300,"word_count":115},"backend/src/auth/dto/send-otp.dto.ts":{"size":374,"mtime_ns":1783764561661106500,"indexed_at_ns":1787726729039417400,"word_count":39},"backend/src/auth/dto/verify-otp.dto.ts":{"size":594,"mtime_ns":1783764561662112100,"indexed_at_ns":1787726729045971800,"word_count":64},"backend/src/auth/jwt-auth.guard.ts":{"size":494,"mtime_ns":1786799852205862700,"indexed_at_ns":1787726729051550300,"word_count":58},"backend/src/auth/jwt.strategy.ts":{"size":1122,"mtime_ns":1786883225794343300,"indexed_at_ns":1787726729058027000,"word_count":116},"backend/src/auth/roles.decorator.ts":{"size":54,"mtime_ns":1786799852208379600,"indexed_at_ns":1787726729064059300,"word_count":4},"backend/src/auth/roles.guard.ts":{"size":46,"mtime_ns":1786799852209003400,"indexed_at_ns":1787726729070031800,"word_count":4},"backend/src/b2b/b2b.controller.ts":{"size":2782,"mtime_ns":1787645037369065300,"indexed_at_ns":1787726729075540200,"word_count":261},"backend/src/b2b/b2b.module.ts":{"size":342,"mtime_ns":1786799852212013200,"indexed_at_ns":1787726729082375900,"word_count":38},"backend/src/b2b/b2b.service.ts":{"size":2379,"mtime_ns":1786799852214009300,"indexed_at_ns":1787726729088349500,"word_count":243},"backend/src/banners/banners.controller.ts":{"size":1923,"mtime_ns":1786799852215010200,"indexed_at_ns":1787726729094382800,"word_count":169},"backend/src/banners/banners.module.ts":{"size":374,"mtime_ns":1786799852216010300,"indexed_at_ns":1787726729099954900,"word_count":38},"backend/src/banners/banners.service.ts":{"size":1394,"mtime_ns":1786799852216010300,"indexed_at_ns":1787726729105481900,"word_count":160},"backend/src/blogs/blogs.controller.ts":{"size":2761,"mtime_ns":1787740536662972400,"indexed_at_ns":1787741537392291100,"word_count":247},"backend/src/blogs/blogs.module.ts":{"size":248,"mtime_ns":1783764561665678100,"indexed_at_ns":1787726729117858700,"word_count":28},"backend/src/blogs/blogs.service.ts":{"size":10419,"mtime_ns":1787740536664029300,"indexed_at_ns":1787741537418975100,"word_count":1157},"backend/src/blogs/dto/create-blog.dto.ts":{"size":30,"mtime_ns":1783764561671557000,"indexed_at_ns":1787726729130858800,"word_count":4},"backend/src/blogs/dto/update-blog.dto.ts":{"size":164,"mtime_ns":1783764561673712400,"indexed_at_ns":1787726729137866600,"word_count":18},"backend/src/blogs/entities/blog.entity.ts":{"size":21,"mtime_ns":1783764561675101100,"indexed_at_ns":1787726729143865200,"word_count":4},"backend/src/cms/cms.controller.ts":{"size":3521,"mtime_ns":1785327951196913100,"indexed_at_ns":1787726729149268700,"word_count":280},"backend/src/cms/cms.module.ts":{"size":342,"mtime_ns":1785148022206298000,"indexed_at_ns":1787726729156414600,"word_count":38},"backend/src/cms/cms.service.ts":{"size":2501,"mtime_ns":1785327951197940400,"indexed_at_ns":1787726729162441900,"word_count":256},"backend/src/cms/dto/cms.dto.ts":{"size":2357,"mtime_ns":1785327951199995500,"indexed_at_ns":1787726729169380900,"word_count":203},"backend/src/common/decorators/roles.decorator.ts":{"size":157,"mtime_ns":1786799852220522400,"indexed_at_ns":1787726729174954700,"word_count":20},"backend/src/common/dto/pagination.dto.ts":{"size":1188,"mtime_ns":1785327951201988900,"indexed_at_ns":1787726729180990600,"word_count":121},"backend/src/common/env.validation.ts":{"size":1162,"mtime_ns":1787645037370646800,"indexed_at_ns":1787726729187990800,"word_count":109},"backend/src/common/filters/http-exception.filter.ts":{"size":4993,"mtime_ns":1787645037371739300,"indexed_at_ns":1787726729194260200,"word_count":500},"backend/src/common/filters/prisma-exception.filter.ts":{"size":2862,"mtime_ns":1787645037372254700,"indexed_at_ns":1787726729201199300,"word_count":280},"backend/src/common/guards/roles.guard.spec.ts":{"size":2426,"mtime_ns":1786799852225556800,"indexed_at_ns":1787726729208239500,"word_count":223},"backend/src/common/guards/roles.guard.ts":{"size":1285,"mtime_ns":1786799852226565200,"indexed_at_ns":1787726729214246900,"word_count":120},"backend/src/common/interceptors/decimal.interceptor.spec.ts":{"size":1677,"mtime_ns":1786799852227565700,"indexed_at_ns":1787726729220254800,"word_count":164},"backend/src/common/interceptors/decimal.interceptor.ts":{"size":1094,"mtime_ns":1786799852227565700,"indexed_at_ns":1787726729226825500,"word_count":118},"backend/src/common/metrics.controller.ts":{"size":2093,"mtime_ns":1786799852229073100,"indexed_at_ns":1787726729232447400,"word_count":206},"backend/src/common/revalidation/revalidation.module.ts":{"size":240,"mtime_ns":1787579631769582300,"indexed_at_ns":1787726729239087900,"word_count":24},"backend/src/common/revalidation/revalidation.service.ts":{"size":3410,"mtime_ns":1787579631770587500,"indexed_at_ns":1787726729246057400,"word_count":272},"backend/src/common/schemas/error-response.schema.ts":{"size":1680,"mtime_ns":1785330913144701500,"indexed_at_ns":1787726729252104800,"word_count":162},"backend/src/common/schemas/paginated-response.schema.ts":{"size":1108,"mtime_ns":1786799852230082200,"indexed_at_ns":1787726729258104400,"word_count":110},"backend/src/common/services/sms.service.ts":{"size":31964,"mtime_ns":1787072106396073600,"indexed_at_ns":1787726729265265900,"word_count":3028},"backend/src/common/sms.module.ts":{"size":204,"mtime_ns":1785330750996125100,"indexed_at_ns":1787726729274176800,"word_count":24},"backend/src/common/utils/phone.utils.ts":{"size":1089,"mtime_ns":1786883225801396000,"indexed_at_ns":1787726729280624000,"word_count":149},"backend/src/contact/contact.controller.ts":{"size":2088,"mtime_ns":1787645037373264000,"indexed_at_ns":1787726729286660600,"word_count":192},"backend/src/contact/contact.module.ts":{"size":365,"mtime_ns":1786799852236599000,"indexed_at_ns":1787726729292806800,"word_count":38},"backend/src/contact/contact.service.ts":{"size":4690,"mtime_ns":1787127978233104000,"indexed_at_ns":1787726729298791600,"word_count":451},"backend/src/doctors/doctors.controller.ts":{"size":1583,"mtime_ns":1787148092311692900,"indexed_at_ns":1787726729304627000,"word_count":148},"backend/src/doctors/doctors.module.ts":{"size":374,"mtime_ns":1786971396035575100,"indexed_at_ns":1787726729310709500,"word_count":38},"backend/src/doctors/doctors.service.ts":{"size":2336,"mtime_ns":1787148092312693100,"indexed_at_ns":1787726729316710800,"word_count":266},"backend/src/doctors/dto/doctor-query.dto.ts":{"size":1009,"mtime_ns":1787148092314699500,"indexed_at_ns":1787726729323711800,"word_count":116},"backend/src/faq/faq.controller.ts":{"size":2210,"mtime_ns":1787148092316694700,"indexed_at_ns":1787726729329710800,"word_count":199},"backend/src/faq/faq.module.ts":{"size":234,"mtime_ns":1787148092316694700,"indexed_at_ns":1787726729335913700,"word_count":28},"backend/src/faq/faq.service.ts":{"size":1541,"mtime_ns":1787148092319911700,"indexed_at_ns":1787726729341879200,"word_count":184},"backend/src/home/dto/create-home.dto.ts":{"size":30,"mtime_ns":1783764561682365300,"indexed_at_ns":1787726729348678200,"word_count":4},"backend/src/home/dto/update-home.dto.ts":{"size":164,"mtime_ns":1783764561682365300,"indexed_at_ns":1787726729354360200,"word_count":18},"backend/src/home/entities/home.entity.ts":{"size":21,"mtime_ns":1783764561684884800,"indexed_at_ns":1787726729360332100,"word_count":4},"backend/src/home/home.controller.ts":{"size":757,"mtime_ns":1785327951212087300,"indexed_at_ns":1787726729365692000,"word_count":69},"backend/src/home/home.module.ts":{"size":241,"mtime_ns":1783764561687108000,"indexed_at_ns":1787726729372815400,"word_count":28},"backend/src/home/home.service.ts":{"size":1372,"mtime_ns":1785327951214087300,"indexed_at_ns":1787726729378370200,"word_count":144},"backend/src/ingredients/ingredients.controller.ts":{"size":1952,"mtime_ns":1786799852237596500,"indexed_at_ns":1787726729384776300,"word_count":165},"backend/src/ingredients/ingredients.module.ts":{"size":406,"mtime_ns":1786799852238596500,"indexed_at_ns":1787726729391513400,"word_count":38},"backend/src/ingredients/ingredients.service.ts":{"size":1526,"mtime_ns":1786799852240108300,"indexed_at_ns":1787726729397517700,"word_count":162},"backend/src/main.ts":{"size":4115,"mtime_ns":1787997958694483300,"indexed_at_ns":1787998029784660300,"word_count":364},"backend/src/menu/menu.controller.ts":{"size":2920,"mtime_ns":1787564348681948800,"indexed_at_ns":1787726729410971900,"word_count":265},"backend/src/menu/menu.module.ts":{"size":267,"mtime_ns":1787148092323869500,"indexed_at_ns":1787726729418641500,"word_count":30},"backend/src/menu/menu.service.ts":{"size":7799,"mtime_ns":1787564362262172600,"indexed_at_ns":1787726729424116700,"word_count":799},"backend/src/orders/dto/create-order.dto.ts":{"size":1899,"mtime_ns":1785327951218626100,"indexed_at_ns":1787726729430534500,"word_count":162},"backend/src/orders/orders.controller.spec.ts":{"size":1910,"mtime_ns":1785327951219627700,"indexed_at_ns":1787726729437590400,"word_count":194},"backend/src/orders/orders.controller.ts":{"size":5930,"mtime_ns":1787072106398077200,"indexed_at_ns":1787726729444156500,"word_count":517},"backend/src/orders/orders.module.ts":{"size":255,"mtime_ns":1783764561697598200,"indexed_at_ns":1787726729449863600,"word_count":28},"backend/src/orders/orders.service.spec.ts":{"size":5121,"mtime_ns":1787729523436876800,"indexed_at_ns":1787729927751553500,"word_count":493},"backend/src/orders/orders.service.ts":{"size":17203,"mtime_ns":1787127978236103400,"indexed_at_ns":1787726729460936600,"word_count":1611},"backend/src/payment/dto/admin-transaction-filter.dto.ts":{"size":2060,"mtime_ns":1787072106401590500,"indexed_at_ns":1787726729467565100,"word_count":191},"backend/src/payment/dto/ebank-checkout.dto.ts":{"size":1378,"mtime_ns":1787394001603461200,"indexed_at_ns":1787726729473467400,"word_count":118},"backend/src/payment/dto/initiate-payment.dto.ts":{"size":775,"mtime_ns":1786870552874246400,"indexed_at_ns":1787726729479997200,"word_count":69},"backend/src/payment/dto/verify-payment.dto.ts":{"size":1421,"mtime_ns":1786894580126857900,"indexed_at_ns":1787726729487007600,"word_count":126},"backend/src/payment/interfaces/payment-gateway.interface.ts":{"size":1330,"mtime_ns":1786870552876751100,"indexed_at_ns":1787726729493007700,"word_count":128},"backend/src/payment/payment.controller.ts":{"size":19167,"mtime_ns":1787564362263176000,"indexed_at_ns":1787726729498694600,"word_count":1574},"backend/src/payment/payment.module.ts":{"size":608,"mtime_ns":1787394001605617900,"indexed_at_ns":1787726729505386600,"word_count":61},"backend/src/payment/payment.service.ts":{"size":30818,"mtime_ns":1787564362264174300,"indexed_at_ns":1787726729511641700,"word_count":2752},"backend/src/payment/zibal-ebank.service.ts":{"size":10087,"mtime_ns":1787461919452306600,"indexed_at_ns":1787726729518640700,"word_count":1006},"backend/src/payment/zibal.service.ts":{"size":25781,"mtime_ns":1787461919453309100,"indexed_at_ns":1787726729525641200,"word_count":2490},"backend/src/pets/dto/create-health-log.dto.ts":{"size":761,"mtime_ns":1785327951229443300,"indexed_at_ns":1787726729532595600,"word_count":69},"backend/src/pets/dto/create-pet.dto.ts":{"size":1143,"mtime_ns":1785327951230948800,"indexed_at_ns":1787726729539689500,"word_count":104},"backend/src/pets/dto/create-reminder.dto.ts":{"size":810,"mtime_ns":1785327951231958200,"indexed_at_ns":1787726729545689700,"word_count":71},"backend/src/pets/dto/update-pet.dto.ts":{"size":160,"mtime_ns":1783764561709557500,"indexed_at_ns":1787726729551201600,"word_count":18},"backend/src/pets/pets.controller.spec.ts":{"size":2544,"mtime_ns":1786799852248118800,"indexed_at_ns":1787726729556953000,"word_count":269},"backend/src/pets/pets.controller.ts":{"size":8427,"mtime_ns":1787461919454308900,"indexed_at_ns":1787726729563595800,"word_count":781},"backend/src/pets/pets.module.ts":{"size":241,"mtime_ns":1783764561714469800,"indexed_at_ns":1787726729570135400,"word_count":28},"backend/src/pets/pets.service.spec.ts":{"size":2961,"mtime_ns":1785327951238208000,"indexed_at_ns":1787726729576202600,"word_count":272},"backend/src/pets/pets.service.ts":{"size":6978,"mtime_ns":1786799852250117400,"indexed_at_ns":1787726729581853500,"word_count":710},"backend/src/prescriptions/prescriptions.controller.ts":{"size":2356,"mtime_ns":1786799852253748300,"indexed_at_ns":1787726729589105100,"word_count":232},"backend/src/prescriptions/prescriptions.module.ts":{"size":495,"mtime_ns":1786954681815809200,"indexed_at_ns":1787726729595362900,"word_count":45},"backend/src/prescriptions/prescriptions.service.ts":{"size":4666,"mtime_ns":1787072106408779000,"indexed_at_ns":1787726729601839800,"word_count":498},"backend/src/prisma/prisma.module.ts":{"size":210,"mtime_ns":1783764561718199800,"indexed_at_ns":1787726729608494400,"word_count":24},"backend/src/prisma/prisma.service.ts":{"size":4250,"mtime_ns":1787640806107781000,"indexed_at_ns":1787726729614499200,"word_count":425},"backend/src/products/dto/get-products.dto.ts":{"size":1320,"mtime_ns":1786799852260271600,"indexed_at_ns":1787726729621151100,"word_count":115},"backend/src/products/products.controller.spec.ts":{"size":1863,"mtime_ns":1785327951243280800,"indexed_at_ns":1787726729629866100,"word_count":166},"backend/src/products/products.controller.ts":{"size":2445,"mtime_ns":1786799852261281700,"indexed_at_ns":1787726729636530800,"word_count":209},"backend/src/products/products.module.ts":{"size":269,"mtime_ns":1783764561723672400,"indexed_at_ns":1787726729642530900,"word_count":28},"backend/src/products/products.service.spec.ts":{"size":1860,"mtime_ns":1787729523438446200,"indexed_at_ns":1787729927908082400,"word_count":175},"backend/src/products/products.service.ts":{"size":7828,"mtime_ns":1787740536665089600,"indexed_at_ns":1787741538144518800,"word_count":807},"backend/src/redis/redis.module.ts":{"size":205,"mtime_ns":1783764561727662100,"indexed_at_ns":1787726729660667100,"word_count":24},"backend/src/redis/redis.service.spec.ts":{"size":1525,"mtime_ns":1783764561728672300,"indexed_at_ns":1787726729667111900,"word_count":145},"backend/src/redis/redis.service.ts":{"size":1202,"mtime_ns":1786895436211834600,"indexed_at_ns":1787726729673119800,"word_count":132},"backend/src/reviews/dto/create-review.dto.ts":{"size":949,"mtime_ns":1787072106414306300,"indexed_at_ns":1787726729680066000,"word_count":92},"backend/src/reviews/dto/update-review.dto.ts":{"size":534,"mtime_ns":1787072106415805700,"indexed_at_ns":1787726729686118000,"word_count":53},"backend/src/reviews/reviews.controller.ts":{"size":3318,"mtime_ns":1787645037375268800,"indexed_at_ns":1787726729692109200,"word_count":329},"backend/src/reviews/reviews.module.ts":{"size":374,"mtime_ns":1786944769517310800,"indexed_at_ns":1787726729699837600,"word_count":38},"backend/src/reviews/reviews.service.ts":{"size":7013,"mtime_ns":1787579631775586600,"indexed_at_ns":1787726729706361600,"word_count":742},"backend/src/seo/seo.controller.ts":{"size":904,"mtime_ns":1785327951247283200,"indexed_at_ns":1787726729713027000,"word_count":85},"backend/src/seo/seo.module.ts":{"size":342,"mtime_ns":1785148022268580900,"indexed_at_ns":1787726729720026400,"word_count":38},"backend/src/seo/seo.service.ts":{"size":2023,"mtime_ns":1787127978249385200,"indexed_at_ns":1787726729726026200,"word_count":182},"backend/src/settings/default-ui-texts.ts":{"size":19291,"mtime_ns":1787564362266172200,"indexed_at_ns":1787726729732056900,"word_count":1538},"backend/src/settings/dto/sms-log-query.dto.ts":{"size":1343,"mtime_ns":1787072106421339300,"indexed_at_ns":1787726729739063400,"word_count":125},"backend/src/settings/settings.controller.spec.ts":{"size":2855,"mtime_ns":1787729523438446200,"indexed_at_ns":1787729927987436700,"word_count":239},"backend/src/settings/settings.controller.ts":{"size":8977,"mtime_ns":1787072106423347900,"indexed_at_ns":1787726729751701000,"word_count":708},"backend/src/settings/settings.module.ts":{"size":382,"mtime_ns":1783764561735515700,"indexed_at_ns":1787726729758697700,"word_count":38},"backend/src/settings/settings.service.spec.ts":{"size":3028,"mtime_ns":1787729523439452400,"indexed_at_ns":1787729928002596300,"word_count":279},"backend/src/settings/settings.service.ts":{"size":20225,"mtime_ns":1787461919455310100,"indexed_at_ns":1787726729769779600,"word_count":1589},"backend/src/smart-advisor/smart-advisor.controller.ts":{"size":1821,"mtime_ns":1786799852275441500,"indexed_at_ns":1787726729775867900,"word_count":152},"backend/src/smart-advisor/smart-advisor.module.ts":{"size":416,"mtime_ns":1786799852276441700,"indexed_at_ns":1787726729782878800,"word_count":38},"backend/src/smart-advisor/smart-advisor.service.ts":{"size":1241,"mtime_ns":1786799852277440400,"indexed_at_ns":1787726729788878100,"word_count":131},"backend/src/testimonials/testimonials.controller.ts":{"size":1905,"mtime_ns":1787148092329786500,"indexed_at_ns":1787726729795446100,"word_count":160},"backend/src/testimonials/testimonials.module.ts":{"size":414,"mtime_ns":1786799852279441800,"indexed_at_ns":1787726729801924900,"word_count":38},"backend/src/testimonials/testimonials.service.ts":{"size":1268,"mtime_ns":1787148092332501600,"indexed_at_ns":1787726729810241500,"word_count":140},"backend/src/tickets/dto/create-ticket.dto.ts":{"size":2374,"mtime_ns":1787072106430874900,"indexed_at_ns":1787726729816278100,"word_count":201},"backend/src/tickets/dto/ticket-query.dto.ts":{"size":1103,"mtime_ns":1787072106431871400,"indexed_at_ns":1787726729824281400,"word_count":106},"backend/src/tickets/tickets.controller.ts":{"size":3114,"mtime_ns":1787072106433878000,"indexed_at_ns":1787726729829734800,"word_count":293},"backend/src/tickets/tickets.module.ts":{"size":374,"mtime_ns":1786890779322296800,"indexed_at_ns":1787726729836741100,"word_count":38},"backend/src/tickets/tickets.service.ts":{"size":7310,"mtime_ns":1787072106434874300,"indexed_at_ns":1787726729844342200,"word_count":781},"backend/src/users/dto/address.dto.ts":{"size":1098,"mtime_ns":1783764561739871500,"indexed_at_ns":1787726729851866000,"word_count":99},"backend/src/users/dto/update-profile.dto.ts":{"size":1068,"mtime_ns":1786885876805472100,"indexed_at_ns":1787726729858986800,"word_count":98},"backend/src/users/users.controller.spec.ts":{"size":3333,"mtime_ns":1785327951253796500,"indexed_at_ns":1787726729865019600,"word_count":322},"backend/src/users/users.controller.ts":{"size":6854,"mtime_ns":1786799852282481500,"indexed_at_ns":1787726729871026300,"word_count":590},"backend/src/users/users.module.ts":{"size":275,"mtime_ns":1783764561748154400,"indexed_at_ns":1787726729878590100,"word_count":30},"backend/src/users/users.service.spec.ts":{"size":3844,"mtime_ns":1787729523440453600,"indexed_at_ns":1787729928098956400,"word_count":320},"backend/src/users/users.service.ts":{"size":8207,"mtime_ns":1787127978253040800,"indexed_at_ns":1787726729889415400,"word_count":782},"backend/src/videos/dto/create-video.dto.ts":{"size":1573,"mtime_ns":1786971396042093900,"indexed_at_ns":1787726729895417800,"word_count":127},"backend/src/videos/dto/get-videos-query.dto.ts":{"size":643,"mtime_ns":1786799852287643500,"indexed_at_ns":1787726729903314300,"word_count":77},"backend/src/videos/videos.controller.ts":{"size":1924,"mtime_ns":1786799852291153100,"indexed_at_ns":1787726729909344900,"word_count":173},"backend/src/videos/videos.module.ts":{"size":283,"mtime_ns":1785148022306583700,"indexed_at_ns":1787726729915346300,"word_count":30},"backend/src/videos/videos.service.ts":{"size":3030,"mtime_ns":1787740536666160500,"indexed_at_ns":1787741538478485800,"word_count":321},"backend/src/wholesale/dto/wholesale-apply.dto.ts":{"size":739,"mtime_ns":1785148022317622300,"indexed_at_ns":1787726729928834600,"word_count":66},"backend/src/wholesale/wholesale.controller.ts":{"size":2037,"mtime_ns":1786799852294177000,"indexed_at_ns":1787726729934839900,"word_count":160},"backend/src/wholesale/wholesale.module.ts":{"size":390,"mtime_ns":1785148022328746300,"indexed_at_ns":1787726729941840900,"word_count":38},"backend/src/wholesale/wholesale.service.ts":{"size":2627,"mtime_ns":1785330913149233300,"indexed_at_ns":1787726729946807300,"word_count":266},"backend/src/wiki/dto/create-wiki.dto.ts":{"size":30,"mtime_ns":1783764561752933200,"indexed_at_ns":1787726729953896900,"word_count":4},"backend/src/wiki/dto/update-wiki.dto.ts":{"size":164,"mtime_ns":1783764561753945200,"indexed_at_ns":1787726729959896600,"word_count":18},"backend/src/wiki/entities/wiki.entity.ts":{"size":21,"mtime_ns":1783764561755039400,"indexed_at_ns":1787726729966410900,"word_count":4},"backend/src/wiki/wiki.controller.ts":{"size":1219,"mtime_ns":1785327951272850400,"indexed_at_ns":1787726729972418600,"word_count":110},"backend/src/wiki/wiki.module.ts":{"size":241,"mtime_ns":1783764561756925000,"indexed_at_ns":1787726729978966700,"word_count":28},"backend/src/wiki/wiki.service.ts":{"size":1562,"mtime_ns":1786799852295173000,"indexed_at_ns":1787726729985599000,"word_count":174},"backend/test/app-audit-verification.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059109005600,"indexed_at_ns":1787726729992165500,"word_count":2},"backend/test/app-audit-verification.e2e-spec.js":{"size":8429,"mtime_ns":1787073059110516300,"indexed_at_ns":1787726729998303900,"word_count":714},"backend/test/app-audit-verification.e2e-spec.ts":{"size":6464,"mtime_ns":1786799852296174700,"indexed_at_ns":1787726730009127800,"word_count":569},"backend/test/app.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059112563300,"indexed_at_ns":1787726730014789500,"word_count":2},"backend/test/app.e2e-spec.js":{"size":1228,"mtime_ns":1787073059113572500,"indexed_at_ns":1787726730020887300,"word_count":97},"backend/test/app.e2e-spec.ts":{"size":981,"mtime_ns":1786799852297175000,"indexed_at_ns":1787726730030564200,"word_count":83},"backend/test/jest-e2e.json":{"size":183,"mtime_ns":1783764561762911800,"indexed_at_ns":1787726739771257900,"word_count":17,"hashes":{"backend/test/jest-e2e.json":"94091f560937212ad7027afcb77e62e6ac79e3e4cb401c3a16a56e7be4cac721"}},"backend/tsconfig.build.json":{"size":107,"mtime_ns":1783764561763447000,"indexed_at_ns":1787726739772258300,"word_count":10,"hashes":{"backend/tsconfig.build.json":"1f47c7dc3c8b5a15558654f45f21e0f553acc1680046f09dc24428e8538c4f9d"}},"backend/tsconfig.json":{"size":785,"mtime_ns":1787073059116167600,"indexed_at_ns":1787726739773257700,"word_count":56,"hashes":{"backend/tsconfig.json":"9b20fbca537d1e55f3a113fcee6683f0eb1f06752d3c8c52edf26eef8e2053f2"}},"backend/uploads/1781288429353-508765350.jpg":{"size":110246,"mtime_ns":1783764561766257000,"indexed_at_ns":1787726730057371500,"word_count":3882},"canina.md":{"size":21919,"mtime_ns":1786885876809472400,"indexed_at_ns":1787726730067353200,"word_count":1983},"canina.pdf":{"size":2858373,"mtime_ns":1785148022370811500,"indexed_at_ns":1787726730072352400,"word_count":0},"docker-compose.yml":{"size":2147,"mtime_ns":1787752951349742200,"indexed_at_ns":1787752967203975800,"word_count":125},"docs/01-introduction.md":{"size":5537,"mtime_ns":1786885876812474900,"indexed_at_ns":1787726730085575100,"word_count":523},"docs/02-user-guide.md":{"size":4303,"mtime_ns":1786885876813985900,"indexed_at_ns":1787726730091574900,"word_count":422},"docs/03-developer-guide.md":{"size":6717,"mtime_ns":1783764561771660500,"indexed_at_ns":1787726730099089600,"word_count":678},"docs/04-setup-and-deployment.md":{"size":4005,"mtime_ns":1787127978256847800,"indexed_at_ns":1787726739861230800,"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":1787726739862230700,"word_count":374,"hashes":{"docs/05-devops-and-monitoring.md":"53f1f45bbbdd3cf81cb4bc082ef4e49f506627f10f581d3c4b835028d02b5421"}},"docs/06-testing.md":{"size":4214,"mtime_ns":1783764561774967500,"indexed_at_ns":1787726739862740900,"word_count":457,"hashes":{"docs/06-testing.md":"69d50bd5e233f030d8076b55b69599cee201e1c393b7ee1beeb495c304fd4bd3"}},"docs/README.md":{"size":2740,"mtime_ns":1786885876816996700,"indexed_at_ns":1787726739864750200,"word_count":253,"hashes":{"docs/readme.md":"1b7ffde4b290e742802fc554f2dd2f7a2316fe25bd1cd328421ffa823b36f40f"}},"docs/audit/00-repository-map.md":{"size":3171,"mtime_ns":1786799852298174200,"indexed_at_ns":1787726739865750000,"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":1787726739866750300,"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":1787726739867750300,"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":1787726739868750300,"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":1787726739869750100,"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":1787726730169702300,"word_count":560},"docs/audit/06-storefront-audit.md":{"size":4191,"mtime_ns":1786799852303691400,"indexed_at_ns":1787726739871758800,"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":1787726739872758800,"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":1787726739873758600,"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":1787726739874758900,"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":1787726730204465900,"word_count":678},"docs/audit/11-code-quality-audit.md":{"size":3379,"mtime_ns":1786799852308957000,"indexed_at_ns":1787726739875758500,"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":1787726739877758700,"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":1787726739878758700,"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":1787726739879758400,"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":1787726739774686100,"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":1787726739880758700,"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":1787726739775692000,"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":1787726739881758500,"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":1787726739883758400,"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":1787726739777692600,"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":1787726739883758400,"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":1787726730289099900,"word_count":139},"docs/audit/23-untracked-first-party-files.txt":{"size":59,"mtime_ns":1786799852319066000,"indexed_at_ns":1787726730295099800,"word_count":7},"docs/audit/24-omitted-file-inspection-report.md":{"size":2462,"mtime_ns":1786799852320065700,"indexed_at_ns":1787726739885266400,"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":1787726739778692300,"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":1787726739887276800,"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":1787726730320693600,"word_count":148},"docs/audit/28-full-repository-classification.json":{"size":27913,"mtime_ns":1786799852324099500,"indexed_at_ns":1787726739779692400,"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":1787726739781691000,"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":1787726739783194500,"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":1787726739888276700,"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":1787726739784200700,"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":1787726739889276900,"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":1787726739785199000,"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":1787726739786706200,"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":1787726739787707200,"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":1787726730388254300,"word_count":398},"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md":{"size":2146,"mtime_ns":1786799852332642700,"indexed_at_ns":1787726730394794200,"word_count":239},"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md":{"size":15307,"mtime_ns":1787127978258848200,"indexed_at_ns":1787726730402390500,"word_count":1579},"docs/audit/MASTER-TASK-BACKLOG.md":{"size":30107,"mtime_ns":1786799852335470200,"indexed_at_ns":1787726730410947100,"word_count":3510},"docs/audit/audit-state.json":{"size":4135,"mtime_ns":1786799852337382200,"indexed_at_ns":1787726739788704900,"word_count":267,"hashes":{"docs/audit/audit-state.json":"4b804494570a2812170cb8dab35d15da659f57d6e637652328725e956f7d98aa"}},"docs/audit/build_manifest.js":{"size":4060,"mtime_ns":1786799852338393200,"indexed_at_ns":1787726730421985600,"word_count":348},"docs/audit/frontend-route-map.md":{"size":2558,"mtime_ns":1786799852339389800,"indexed_at_ns":1787726730429495100,"word_count":329},"docs/audit/generate_classification.js":{"size":2186,"mtime_ns":1786799852339389800,"indexed_at_ns":1787726730434093300,"word_count":204},"docs/audit/generate_evidence.js":{"size":3098,"mtime_ns":1786799852340390100,"indexed_at_ns":1787726730440532500,"word_count":253},"docs/audit/generate_ledger.js":{"size":7648,"mtime_ns":1786799852341897300,"indexed_at_ns":1787726730446281100,"word_count":620},"docs/audit/generate_manifest.js":{"size":6357,"mtime_ns":1786799852341897300,"indexed_at_ns":1787726730452526800,"word_count":489},"docs/audit/master-task-backlog.json":{"size":22336,"mtime_ns":1786799852342906700,"indexed_at_ns":1787726739790706500,"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":1787726730466602900,"word_count":736},"docs/audit/phase3-traceability-matrix.md":{"size":5237,"mtime_ns":1786799852344952800,"indexed_at_ns":1787726739890276800,"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":1787726739891276700,"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":1787726739893276700,"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":1787726739894276600,"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":1787726739895276700,"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":1787726730506440800,"word_count":559},"docs/audit/sync_honest_manifest.js":{"size":1213,"mtime_ns":1786799852349953100,"indexed_at_ns":1787726730513042200,"word_count":75},"docs/audit/sync_manifest.js":{"size":997,"mtime_ns":1786799852350953300,"indexed_at_ns":1787726730519090300,"word_count":62},"docs/audit/validate_evidence_grade.js":{"size":6141,"mtime_ns":1786799852351954100,"indexed_at_ns":1787726730524859000,"word_count":526},"docs/audit/validate_integrity.js":{"size":3408,"mtime_ns":1786799852352952400,"indexed_at_ns":1787726730530859600,"word_count":284},"docs/backlog.md":{"size":26175,"mtime_ns":1786799852356021600,"indexed_at_ns":1787726730538035500,"word_count":2834},"frontend/admin-panel/README.md":{"size":2425,"mtime_ns":1783764561778952800,"indexed_at_ns":1787726739896276700,"word_count":212,"hashes":{"frontend/admin-panel/readme.md":"3945c052249ebd020b013303d5921815b52d847bd36c748a03bfdc8eb2a390b8"}},"frontend/admin-panel/eslint.config.js":{"size":906,"mtime_ns":1787148092334501700,"indexed_at_ns":1787726730554130000,"word_count":69},"frontend/admin-panel/index.html":{"size":363,"mtime_ns":1783764561780558500,"indexed_at_ns":1787726730559871600,"word_count":28},"frontend/admin-panel/package.json":{"size":1072,"mtime_ns":1787997946105886900,"indexed_at_ns":1787998040038220500,"word_count":84,"hashes":{"frontend/admin-panel/package.json":"3b2ae80de1d233920eff8c5aea65be5bc5938b22e3fe1b834e3e341293ab1b4d"}},"frontend/admin-panel/postcss.config.js":{"size":91,"mtime_ns":1783764561796281900,"indexed_at_ns":1787726730571159000,"word_count":11},"frontend/admin-panel/public/favicon.svg":{"size":9522,"mtime_ns":1783764561797801500,"indexed_at_ns":1787726730577396200,"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":1787726730602607800,"word_count":15},"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856792445365000,"indexed_at_ns":1787726730626154600,"word_count":15},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856792454604400,"indexed_at_ns":1787726739897276800,"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":1787726739898786800,"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":1787726731162750800,"word_count":10881},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856792548005600,"indexed_at_ns":1787726739900396600,"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":1787726739901406500,"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":1787726731663450200,"word_count":2615},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856792646666000,"indexed_at_ns":1787726731673001900,"word_count":55},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856792647671700,"indexed_at_ns":1787726739903406700,"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":1787726731688185800,"word_count":671},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856792648669800,"indexed_at_ns":1787726739904406600,"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":1787726733915800800,"word_count":14},"frontend/admin-panel/public/icons.svg":{"size":5031,"mtime_ns":1783764561799320300,"indexed_at_ns":1787726733920800200,"word_count":382},"frontend/admin-panel/src/App.tsx":{"size":1088,"mtime_ns":1786799852365481100,"indexed_at_ns":1787726733931929300,"word_count":99},"frontend/admin-panel/src/assets/hero.png":{"size":13057,"mtime_ns":1783764561812863000,"indexed_at_ns":1787726733938940400,"word_count":437},"frontend/admin-panel/src/assets/react.svg":{"size":4126,"mtime_ns":1783764561813924700,"indexed_at_ns":1787726733944940500,"word_count":366},"frontend/admin-panel/src/assets/vite.svg":{"size":8709,"mtime_ns":1783764561814995700,"indexed_at_ns":1787726733951568000,"word_count":439},"frontend/admin-panel/src/components/Layout.tsx":{"size":726,"mtime_ns":1784621786958594800,"indexed_at_ns":1787726733957572200,"word_count":69},"frontend/admin-panel/src/components/ProtectedRoute.tsx":{"size":2336,"mtime_ns":1786799852369164100,"indexed_at_ns":1787726733964577700,"word_count":210},"frontend/admin-panel/src/components/RouteErrorBoundary.tsx":{"size":4042,"mtime_ns":1787062174623011100,"indexed_at_ns":1787726733970575200,"word_count":350},"frontend/admin-panel/src/components/Sidebar.tsx":{"size":13111,"mtime_ns":1787461920842084500,"indexed_at_ns":1787726733977661300,"word_count":1198},"frontend/admin-panel/src/components/Topbar.tsx":{"size":19016,"mtime_ns":1787466234964385700,"indexed_at_ns":1787726733983181100,"word_count":1586},"frontend/admin-panel/src/components/TransactionReceiptModal.tsx":{"size":9674,"mtime_ns":1787405554804618300,"indexed_at_ns":1787726733989180000,"word_count":738},"frontend/admin-panel/src/components/ui/Badge.tsx":{"size":1554,"mtime_ns":1787461920844094000,"indexed_at_ns":1787726733997180400,"word_count":158},"frontend/admin-panel/src/components/ui/Button.tsx":{"size":3591,"mtime_ns":1787467799871536000,"indexed_at_ns":1787726734004723300,"word_count":338},"frontend/admin-panel/src/components/ui/ConfirmModal.tsx":{"size":2294,"mtime_ns":1786972191359099700,"indexed_at_ns":1787726734011333000,"word_count":192},"frontend/admin-panel/src/components/ui/FormField.tsx":{"size":1683,"mtime_ns":1786954681823527000,"indexed_at_ns":1787726734018369200,"word_count":148},"frontend/admin-panel/src/components/ui/IconPickerModal.tsx":{"size":4853,"mtime_ns":1787071159959928200,"indexed_at_ns":1787726734024338100,"word_count":397},"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx":{"size":3351,"mtime_ns":1786954681824534900,"indexed_at_ns":1787726734032842500,"word_count":270},"frontend/admin-panel/src/components/ui/Input.tsx":{"size":1747,"mtime_ns":1786954681825535900,"indexed_at_ns":1787726734038847900,"word_count":147},"frontend/admin-panel/src/components/ui/MaskableField.tsx":{"size":3246,"mtime_ns":1787405554805712000,"indexed_at_ns":1787726734045422000,"word_count":310},"frontend/admin-panel/src/components/ui/MediaSelector.tsx":{"size":21604,"mtime_ns":1787038450536696800,"indexed_at_ns":1787726734051928800,"word_count":1686},"frontend/admin-panel/src/components/ui/Modal.tsx":{"size":3381,"mtime_ns":1787461920845094300,"indexed_at_ns":1787726734060570900,"word_count":324},"frontend/admin-panel/src/components/ui/Pagination.tsx":{"size":5510,"mtime_ns":1786799852387442100,"indexed_at_ns":1787726734066608900,"word_count":447},"frontend/admin-panel/src/components/ui/PriceInput.tsx":{"size":2633,"mtime_ns":1786948119771162400,"indexed_at_ns":1787726734074127900,"word_count":267},"frontend/admin-panel/src/components/ui/RichTextEditor.tsx":{"size":36574,"mtime_ns":1787980615563542500,"indexed_at_ns":1787981098348418200,"word_count":2767},"frontend/admin-panel/src/components/ui/Select.tsx":{"size":1881,"mtime_ns":1786954681828537500,"indexed_at_ns":1787726734087116300,"word_count":160},"frontend/admin-panel/src/components/ui/Skeleton.tsx":{"size":178,"mtime_ns":1783856792977535800,"indexed_at_ns":1787726734092926500,"word_count":22},"frontend/admin-panel/src/components/ui/Spinner.tsx":{"size":650,"mtime_ns":1783856792979049200,"indexed_at_ns":1787726734100568500,"word_count":67},"frontend/admin-panel/src/components/ui/Textarea.tsx":{"size":1287,"mtime_ns":1786954681828537500,"indexed_at_ns":1787726734107173200,"word_count":110},"frontend/admin-panel/src/components/ui/ThSort.tsx":{"size":1478,"mtime_ns":1787461920845094300,"indexed_at_ns":1787726734113136300,"word_count":148},"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx":{"size":1623,"mtime_ns":1786954681830044900,"indexed_at_ns":1787726734120391600,"word_count":143},"frontend/admin-panel/src/main.tsx":{"size":1055,"mtime_ns":1787062325395038600,"indexed_at_ns":1787726734130217700,"word_count":106},"frontend/admin-panel/src/pages/B2BManager.tsx":{"size":24689,"mtime_ns":1787729527927391700,"indexed_at_ns":1787729932214362700,"word_count":1682},"frontend/admin-panel/src/pages/BannersManager.tsx":{"size":19583,"mtime_ns":1787467799874171700,"indexed_at_ns":1787726734145966800,"word_count":1396},"frontend/admin-panel/src/pages/Blogs.tsx":{"size":82294,"mtime_ns":1787729527928391800,"indexed_at_ns":1787729932225892600,"word_count":5654},"frontend/admin-panel/src/pages/CMS.tsx":{"size":10114,"mtime_ns":1787467933664259800,"indexed_at_ns":1787726734157997900,"word_count":791},"frontend/admin-panel/src/pages/Categories.tsx":{"size":16242,"mtime_ns":1787469989141511600,"indexed_at_ns":1787726734164506500,"word_count":1174},"frontend/admin-panel/src/pages/ContactSubmissions.tsx":{"size":12346,"mtime_ns":1787467799877343800,"indexed_at_ns":1787726734172638600,"word_count":842},"frontend/admin-panel/src/pages/Coupons.tsx":{"size":27812,"mtime_ns":1787469989144204800,"indexed_at_ns":1787726734179658200,"word_count":2147},"frontend/admin-panel/src/pages/Dashboard.tsx":{"size":6006,"mtime_ns":1786885876829510000,"indexed_at_ns":1787726734186274700,"word_count":534},"frontend/admin-panel/src/pages/DoctorsManager.tsx":{"size":23282,"mtime_ns":1787467799879923800,"indexed_at_ns":1787726734193275100,"word_count":1666},"frontend/admin-panel/src/pages/FAQManager.tsx":{"size":12625,"mtime_ns":1787467799881924800,"indexed_at_ns":1787726734201784400,"word_count":937},"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx":{"size":13303,"mtime_ns":1787467799882925200,"indexed_at_ns":1787726734207782600,"word_count":928},"frontend/admin-panel/src/pages/IngredientsManager.tsx":{"size":17943,"mtime_ns":1787467933669934500,"indexed_at_ns":1787726734213391200,"word_count":1254},"frontend/admin-panel/src/pages/Login.tsx":{"size":11545,"mtime_ns":1787127978262361000,"indexed_at_ns":1787726734221391500,"word_count":838},"frontend/admin-panel/src/pages/Media.tsx":{"size":29374,"mtime_ns":1787467799885925200,"indexed_at_ns":1787726734227390500,"word_count":2304},"frontend/admin-panel/src/pages/MenuManager.tsx":{"size":19625,"mtime_ns":1787469989146215000,"indexed_at_ns":1787726734240896100,"word_count":1512},"frontend/admin-panel/src/pages/MonitoringPage.tsx":{"size":16455,"mtime_ns":1787466234965980200,"indexed_at_ns":1787726734246489100,"word_count":1289},"frontend/admin-panel/src/pages/Orders.tsx":{"size":55864,"mtime_ns":1787729527929396100,"indexed_at_ns":1787729932305956500,"word_count":4169},"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx":{"size":37893,"mtime_ns":1787467799889939500,"indexed_at_ns":1787726734259598900,"word_count":2521},"frontend/admin-panel/src/pages/Pets.tsx":{"size":16631,"mtime_ns":1787467799891938300,"indexed_at_ns":1787726734268435300,"word_count":1209},"frontend/admin-panel/src/pages/PrescriptionsManager.tsx":{"size":19424,"mtime_ns":1787467799892935800,"indexed_at_ns":1787726734275434500,"word_count":1419},"frontend/admin-panel/src/pages/Products.tsx":{"size":133306,"mtime_ns":1787991371769749800,"indexed_at_ns":1787992959715004900,"word_count":8756},"frontend/admin-panel/src/pages/Reports.tsx":{"size":24050,"mtime_ns":1787729523442451300,"indexed_at_ns":1787729932336128900,"word_count":1832},"frontend/admin-panel/src/pages/Reviews.tsx":{"size":30539,"mtime_ns":1787740536670948600,"indexed_at_ns":1787741544010232200,"word_count":2140},"frontend/admin-panel/src/pages/SeoSettingsPage.tsx":{"size":15089,"mtime_ns":1787467799899934200,"indexed_at_ns":1787726734302505600,"word_count":1137},"frontend/admin-panel/src/pages/Settings.tsx":{"size":24256,"mtime_ns":1787468615457819400,"indexed_at_ns":1787726734308156100,"word_count":1701},"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx":{"size":7615,"mtime_ns":1787467799901935300,"indexed_at_ns":1787726734314725100,"word_count":585},"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx":{"size":13745,"mtime_ns":1787467799902933600,"indexed_at_ns":1787726734320253400,"word_count":1014},"frontend/admin-panel/src/pages/SmsSettingsPage.tsx":{"size":78907,"mtime_ns":1787467799904439000,"indexed_at_ns":1787726734327410400,"word_count":5444},"frontend/admin-panel/src/pages/SslSettingsPage.tsx":{"size":25502,"mtime_ns":1787467799905446700,"indexed_at_ns":1787726734336379700,"word_count":1847},"frontend/admin-panel/src/pages/SystemSettingsPage.tsx":{"size":18951,"mtime_ns":1787742160542543900,"indexed_at_ns":1787742226362423500,"word_count":1264},"frontend/admin-panel/src/pages/TestimonialsManager.tsx":{"size":18547,"mtime_ns":1787467799908955400,"indexed_at_ns":1787726734348881900,"word_count":1297},"frontend/admin-panel/src/pages/Tickets.tsx":{"size":20254,"mtime_ns":1787467799909962900,"indexed_at_ns":1787726734355478000,"word_count":1455},"frontend/admin-panel/src/pages/Transactions.tsx":{"size":45136,"mtime_ns":1787471434872188300,"indexed_at_ns":1787726734362406800,"word_count":3213},"frontend/admin-panel/src/pages/UITexts.tsx":{"size":70758,"mtime_ns":1787564362267171200,"indexed_at_ns":1787726734368359700,"word_count":5750},"frontend/admin-panel/src/pages/Users.tsx":{"size":41959,"mtime_ns":1787740536672949600,"indexed_at_ns":1787741544087414700,"word_count":2823},"frontend/admin-panel/src/pages/Videos.tsx":{"size":25920,"mtime_ns":1787740536675689700,"indexed_at_ns":1787741544096497300,"word_count":1845},"frontend/admin-panel/src/pages/WholesaleApplications.tsx":{"size":6713,"mtime_ns":1787467799916852500,"indexed_at_ns":1787726734390128300,"word_count":505},"frontend/admin-panel/src/pages/Wiki.tsx":{"size":15651,"mtime_ns":1787469989158212800,"indexed_at_ns":1787726734396025400,"word_count":1221},"frontend/admin-panel/src/pages/ZibalPortalPage.tsx":{"size":55699,"mtime_ns":1787570438155805200,"indexed_at_ns":1787726734402122900,"word_count":3753},"frontend/admin-panel/src/routes/adminRoutes.tsx":{"size":6245,"mtime_ns":1787461920854097100,"indexed_at_ns":1787726734408451000,"word_count":603},"frontend/admin-panel/src/services/api.ts":{"size":5190,"mtime_ns":1787997670262225000,"indexed_at_ns":1787998034950007400,"word_count":479},"frontend/admin-panel/src/store/adminAuthStore.ts":{"size":666,"mtime_ns":1786799852469037000,"indexed_at_ns":1787726734421659400,"word_count":65},"frontend/admin-panel/src/types/admin.ts":{"size":4146,"mtime_ns":1787139270957407700,"indexed_at_ns":1787726734427790900,"word_count":454},"frontend/admin-panel/src/utils/lazyWithRetry.ts":{"size":1129,"mtime_ns":1787062174626227900,"indexed_at_ns":1787726734435357300,"word_count":114},"frontend/admin-panel/src/utils/useTableParams.ts":{"size":4060,"mtime_ns":1787461920855096000,"indexed_at_ns":1787726734441273300,"word_count":441},"frontend/admin-panel/tailwind.config.js":{"size":182,"mtime_ns":1783764561861721300,"indexed_at_ns":1787726734447096600,"word_count":20},"frontend/admin-panel/tsconfig.app.json":{"size":633,"mtime_ns":1787055476779566300,"indexed_at_ns":1787726739794704700,"word_count":48,"hashes":{"frontend/admin-panel/tsconfig.app.json":"2d9838ee1119342fd03bf7644781b8b6aced2cbdc908ff186cdd6ab7ab9ba1c4"}},"frontend/admin-panel/tsconfig.json":{"size":119,"mtime_ns":1783764561863393600,"indexed_at_ns":1787726739795705100,"word_count":15,"hashes":{"frontend/admin-panel/tsconfig.json":"7a6c2e21b6eaa2355b4e2ed29db2a767499a88498bde745cdccf3ba8c7f64f2b"}},"frontend/admin-panel/tsconfig.node.json":{"size":591,"mtime_ns":1783764561863923100,"indexed_at_ns":1787726739796704600,"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":1787726734467280600,"word_count":18},"frontend/application/AGENTS.md":{"size":717,"mtime_ns":1787127978268943700,"indexed_at_ns":1787726734477280500,"word_count":88},"frontend/application/CLAUDE.md":{"size":11,"mtime_ns":1783764561866744500,"indexed_at_ns":1787726739905406700,"word_count":1,"hashes":{"frontend/application/claude.md":"0776fbbe8c29c6dc861efa70683090a370ab56dc77c22cb9de74895b4c783320"}},"frontend/application/README.md":{"size":1450,"mtime_ns":1783764561867354300,"indexed_at_ns":1787726739906406500,"word_count":155,"hashes":{"frontend/application/readme.md":"dd829cdf325092d859080ac1db3cbf2cca3198e72834f0f228495ef3c49a2240"}},"frontend/application/app/ClientLayout.tsx":{"size":7140,"mtime_ns":1787997933631103700,"indexed_at_ns":1787998035052645400,"word_count":652},"frontend/application/app/HomeClient.tsx":{"size":13521,"mtime_ns":1787729995237438500,"indexed_at_ns":1787733017668598600,"word_count":876},"frontend/application/app/about/page.tsx":{"size":5706,"mtime_ns":1787139270959412500,"indexed_at_ns":1787726734506477700,"word_count":474},"frontend/application/app/api/revalidate/route.ts":{"size":1889,"mtime_ns":1787579631780106700,"indexed_at_ns":1787726734514149300,"word_count":220},"frontend/application/app/b2b/error.tsx":{"size":380,"mtime_ns":1787645037377262000,"indexed_at_ns":1787726734520148500,"word_count":50},"frontend/application/app/b2b/page.tsx":{"size":1506,"mtime_ns":1787644197141618200,"indexed_at_ns":1787726734526117900,"word_count":135},"frontend/application/app/blog/[slug]/page.tsx":{"size":8201,"mtime_ns":1787641161057694000,"indexed_at_ns":1787726734533148700,"word_count":767},"frontend/application/app/blog/error.tsx":{"size":382,"mtime_ns":1787645037378268200,"indexed_at_ns":1787726734540186900,"word_count":50},"frontend/application/app/blog/loading.tsx":{"size":1293,"mtime_ns":1787645037379262800,"indexed_at_ns":1787726734546152600,"word_count":115},"frontend/application/app/blog/page.tsx":{"size":3378,"mtime_ns":1787993003772568700,"indexed_at_ns":1787997305789060800,"word_count":346},"frontend/application/app/blog/rss.xml/route.ts":{"size":3076,"mtime_ns":1787577523710351300,"indexed_at_ns":1787726734558947600,"word_count":280},"frontend/application/app/catalog/CatalogClient.tsx":{"size":1389,"mtime_ns":1786872121566485100,"indexed_at_ns":1787726734564982500,"word_count":129},"frontend/application/app/catalog/page.tsx":{"size":671,"mtime_ns":1787139270965525300,"indexed_at_ns":1787726734570982600,"word_count":66},"frontend/application/app/checkout/page.tsx":{"size":604,"mtime_ns":1787139270967535500,"indexed_at_ns":1787726734576551900,"word_count":60},"frontend/application/app/checkout/success/[id]/page.tsx":{"size":231,"mtime_ns":1783764561878668300,"indexed_at_ns":1787726734582122000,"word_count":31},"frontend/application/app/contact/page.tsx":{"size":2655,"mtime_ns":1787644197143198500,"indexed_at_ns":1787726734588729900,"word_count":214},"frontend/application/app/dashboard/page.tsx":{"size":903,"mtime_ns":1787394935318217400,"indexed_at_ns":1787726734595730700,"word_count":83},"frontend/application/app/error.tsx":{"size":383,"mtime_ns":1785148022478709000,"indexed_at_ns":1787726734601792600,"word_count":50},"frontend/application/app/layout.tsx":{"size":5152,"mtime_ns":1787997670264398500,"indexed_at_ns":1787998035193125800,"word_count":423},"frontend/application/app/loading.tsx":{"size":1373,"mtime_ns":1785148022487650000,"indexed_at_ns":1787726734623432900,"word_count":122},"frontend/application/app/not-found.tsx":{"size":124,"mtime_ns":1783764561891411400,"indexed_at_ns":1787726734629416600,"word_count":15},"frontend/application/app/page.tsx":{"size":1003,"mtime_ns":1787139270974959500,"indexed_at_ns":1787726734635909300,"word_count":114},"frontend/application/app/payment/verify/page.tsx":{"size":14338,"mtime_ns":1786891855356078600,"indexed_at_ns":1787726734641507800,"word_count":1094},"frontend/application/app/privacy/page.tsx":{"size":4098,"mtime_ns":1787139270976563700,"indexed_at_ns":1787726734648804500,"word_count":336},"frontend/application/app/profile/page.tsx":{"size":623,"mtime_ns":1787139270978803200,"indexed_at_ns":1787726734655771200,"word_count":63},"frontend/application/app/robots.ts":{"size":825,"mtime_ns":1787578481501464000,"indexed_at_ns":1787726734660416500,"word_count":72},"frontend/application/app/search/page.tsx":{"size":786,"mtime_ns":1787139270979946700,"indexed_at_ns":1787726734667451100,"word_count":82},"frontend/application/app/shop/[slug]/page.tsx":{"size":8722,"mtime_ns":1787579631787104400,"indexed_at_ns":1787726734672932300,"word_count":786},"frontend/application/app/shop/error.tsx":{"size":382,"mtime_ns":1787645037380267900,"indexed_at_ns":1787726734679433600,"word_count":50},"frontend/application/app/shop/feed.xml/route.ts":{"size":3391,"mtime_ns":1787578481506463600,"indexed_at_ns":1787726734685442300,"word_count":301},"frontend/application/app/shop/loading.tsx":{"size":1596,"mtime_ns":1787645037380267900,"indexed_at_ns":1787726734691441600,"word_count":144},"frontend/application/app/shop/page.tsx":{"size":2715,"mtime_ns":1787644197146199100,"indexed_at_ns":1787726734698441300,"word_count":295},"frontend/application/app/sitemap-categories.xml/route.ts":{"size":1797,"mtime_ns":1787578481507462100,"indexed_at_ns":1787726734703951500,"word_count":179},"frontend/application/app/sitemap-products.xml/route.ts":{"size":1980,"mtime_ns":1787578481508464300,"indexed_at_ns":1787726734710719000,"word_count":186},"frontend/application/app/sitemap.ts":{"size":3510,"mtime_ns":1787578481510463300,"indexed_at_ns":1787726734715717900,"word_count":350},"frontend/application/app/track/page.tsx":{"size":612,"mtime_ns":1787139270984213600,"indexed_at_ns":1787726734723190300,"word_count":60},"frontend/application/app/trust-seals/page.tsx":{"size":7155,"mtime_ns":1787394001609306700,"indexed_at_ns":1787726734729188900,"word_count":566},"frontend/application/app/videos/page.tsx":{"size":2822,"mtime_ns":1787644197147196700,"indexed_at_ns":1787726734735191600,"word_count":266},"frontend/application/app/wiki/[slug]/page.tsx":{"size":8912,"mtime_ns":1787644197149197300,"indexed_at_ns":1787726734743193100,"word_count":702},"frontend/application/app/wiki/page.tsx":{"size":910,"mtime_ns":1787139270987830800,"indexed_at_ns":1787726734749703000,"word_count":85},"frontend/application/components/AddressModal.tsx":{"size":16470,"mtime_ns":1787739535190383900,"indexed_at_ns":1787739632847264500,"word_count":1146},"frontend/application/components/ArchivePage.tsx":{"size":38309,"mtime_ns":1787742267305491700,"indexed_at_ns":1787748387065149500,"word_count":2982},"frontend/application/components/AuthModal.tsx":{"size":55557,"mtime_ns":1787741599341881000,"indexed_at_ns":1787741688145548900,"word_count":3610},"frontend/application/components/B2BLandingClient.tsx":{"size":25866,"mtime_ns":1787645037381267600,"indexed_at_ns":1787726734774269600,"word_count":1824},"frontend/application/components/B2BPortal.tsx":{"size":14014,"mtime_ns":1786894580156857600,"indexed_at_ns":1787726734780287600,"word_count":1094},"frontend/application/components/BackButton.tsx":{"size":1120,"mtime_ns":1786965281357277800,"indexed_at_ns":1787726734786847300,"word_count":117},"frontend/application/components/BannerPlacement.tsx":{"size":7703,"mtime_ns":1787564348689902000,"indexed_at_ns":1787726734793846300,"word_count":527},"frontend/application/components/BlogPage.tsx":{"size":21976,"mtime_ns":1787729523446453700,"indexed_at_ns":1787729932775425100,"word_count":1583},"frontend/application/components/BlogPostClient.tsx":{"size":20329,"mtime_ns":1787740536679696900,"indexed_at_ns":1787741544522017800,"word_count":1361},"frontend/application/components/BlogPreviewSection.tsx":{"size":7847,"mtime_ns":1787729995238555000,"indexed_at_ns":1787733017937261500,"word_count":564},"frontend/application/components/BrandLogo.tsx":{"size":3307,"mtime_ns":1787564348690862200,"indexed_at_ns":1787726734819682600,"word_count":287},"frontend/application/components/CartDrawer.tsx":{"size":22052,"mtime_ns":1787733215548980400,"indexed_at_ns":1787737992400541400,"word_count":1448},"frontend/application/components/CheckoutPage.tsx":{"size":46418,"mtime_ns":1787739535191459100,"indexed_at_ns":1787739632909693500,"word_count":3127},"frontend/application/components/ContactFormClient.tsx":{"size":10833,"mtime_ns":1787729527935396400,"indexed_at_ns":1787729932808029300,"word_count":784},"frontend/application/components/DeleteConfirmModal.tsx":{"size":2328,"mtime_ns":1786799852608752300,"indexed_at_ns":1787726734845321800,"word_count":195},"frontend/application/components/EnamadBadge.tsx":{"size":1516,"mtime_ns":1786799852612361900,"indexed_at_ns":1787726734850835400,"word_count":114},"frontend/application/components/ErrorBoundary.tsx":{"size":2617,"mtime_ns":1786799852614549600,"indexed_at_ns":1787726734857066500,"word_count":235},"frontend/application/components/ErrorPages.tsx":{"size":2809,"mtime_ns":1787661485945074600,"indexed_at_ns":1787726734862654700,"word_count":243},"frontend/application/components/FAQSection.tsx":{"size":5086,"mtime_ns":1787729995239614600,"indexed_at_ns":1787733017983672300,"word_count":414},"frontend/application/components/FeaturedProducts.tsx":{"size":11788,"mtime_ns":1787981163242375700,"indexed_at_ns":1787981250217404700,"word_count":1018},"frontend/application/components/Footer.tsx":{"size":14803,"mtime_ns":1787740536681697800,"indexed_at_ns":1787741544612462800,"word_count":986},"frontend/application/components/Header.tsx":{"size":32865,"mtime_ns":1787980615566908100,"indexed_at_ns":1787981099215255000,"word_count":2219},"frontend/application/components/HeaderButton.tsx":{"size":2242,"mtime_ns":1786799852637156100,"indexed_at_ns":1787726734893172700,"word_count":208},"frontend/application/components/Hero.tsx":{"size":19294,"mtime_ns":1787997905649793600,"indexed_at_ns":1787998035459134700,"word_count":1623},"frontend/application/components/IngredientWiki.tsx":{"size":20337,"mtime_ns":1786965281374206800,"indexed_at_ns":1787726734906680500,"word_count":1496},"frontend/application/components/LoginModal.tsx":{"size":13846,"mtime_ns":1786885876932267500,"indexed_at_ns":1787726734914249200,"word_count":1121},"frontend/application/components/MaintenancePage.tsx":{"size":3686,"mtime_ns":1786946249984693000,"indexed_at_ns":1787726734921249900,"word_count":313},"frontend/application/components/NetworkBanner.tsx":{"size":2350,"mtime_ns":1786799852662138900,"indexed_at_ns":1787726734928082300,"word_count":214},"frontend/application/components/OrderDetailsModal.tsx":{"size":36149,"mtime_ns":1787564348694929900,"indexed_at_ns":1787726734935086200,"word_count":2477},"frontend/application/components/OrderSuccess.tsx":{"size":6396,"mtime_ns":1786799852665542300,"indexed_at_ns":1787726734947087000,"word_count":521},"frontend/application/components/OrderTracking.tsx":{"size":9269,"mtime_ns":1787729527937447000,"indexed_at_ns":1787729932896464500,"word_count":681},"frontend/application/components/PetProfile.tsx":{"size":83314,"mtime_ns":1787564348695930500,"indexed_at_ns":1787726734959758100,"word_count":5882},"frontend/application/components/PodcastInlinePlayer.tsx":{"size":18123,"mtime_ns":1787993003774220500,"indexed_at_ns":1787997306151429500,"word_count":1464},"frontend/application/components/PodcastPlayerModal.tsx":{"size":18105,"mtime_ns":1787748657155136900,"indexed_at_ns":1787748748510048700,"word_count":1487},"frontend/application/components/PrescriptionUploadModal.tsx":{"size":19183,"mtime_ns":1787741735267947500,"indexed_at_ns":1787741779220211300,"word_count":1356},"frontend/application/components/ProductPage.tsx":{"size":90407,"mtime_ns":1787991371771377100,"indexed_at_ns":1787992960329006800,"word_count":6459},"frontend/application/components/ProductReviews.tsx":{"size":16108,"mtime_ns":1787048863691774800,"indexed_at_ns":1787726734999417900,"word_count":1194},"frontend/application/components/SafeImage.tsx":{"size":4361,"mtime_ns":1787997912865417500,"indexed_at_ns":1787998035542951500,"word_count":403},"frontend/application/components/SearchResultsPage.tsx":{"size":8335,"mtime_ns":1786799852701578200,"indexed_at_ns":1787726735012019400,"word_count":594},"frontend/application/components/SearchableSelect.tsx":{"size":4375,"mtime_ns":1785575516155554800,"indexed_at_ns":1787726735019020000,"word_count":336},"frontend/application/components/Skeleton.tsx":{"size":3084,"mtime_ns":1783764561943996900,"indexed_at_ns":1787726735026024900,"word_count":291},"frontend/application/components/SmartAdvisor.tsx":{"size":36898,"mtime_ns":1787729995242888100,"indexed_at_ns":1787733018101293500,"word_count":2820},"frontend/application/components/TestimonialsSection.tsx":{"size":6677,"mtime_ns":1787729995243926600,"indexed_at_ns":1787733018108759600,"word_count":516},"frontend/application/components/TickerBanner.tsx":{"size":1605,"mtime_ns":1786885876960835800,"indexed_at_ns":1787726735043649000,"word_count":140},"frontend/application/components/Tooltip.tsx":{"size":5075,"mtime_ns":1787738415318670300,"indexed_at_ns":1787739480324134500,"word_count":425},"frontend/application/components/TopUpModal.tsx":{"size":9381,"mtime_ns":1787406597303349300,"indexed_at_ns":1787726735057286900,"word_count":741},"frontend/application/components/UserDashboard.tsx":{"size":92697,"mtime_ns":1787394935320317600,"indexed_at_ns":1787726735063292200,"word_count":5939},"frontend/application/components/VetGallery.tsx":{"size":8392,"mtime_ns":1787729995244963400,"indexed_at_ns":1787733018135397500,"word_count":653},"frontend/application/components/VideoModalPlayer.tsx":{"size":24822,"mtime_ns":1787993003775855300,"indexed_at_ns":1787997306253976800,"word_count":1846},"frontend/application/components/VideosPage.tsx":{"size":8815,"mtime_ns":1787729523450452600,"indexed_at_ns":1787729932995147700,"word_count":672},"frontend/application/components/__tests__/CartDrawer.test.tsx":{"size":3197,"mtime_ns":1786799852761825800,"indexed_at_ns":1787726735089813300,"word_count":285},"frontend/application/components/__tests__/FeaturedProducts.test.tsx":{"size":2922,"mtime_ns":1787729523451454700,"indexed_at_ns":1787729933006280300,"word_count":246},"frontend/application/components/__tests__/Footer.test.tsx":{"size":1200,"mtime_ns":1787729523452453700,"indexed_at_ns":1787729933012281300,"word_count":97},"frontend/application/components/__tests__/Header.test.tsx":{"size":3336,"mtime_ns":1787729523452453700,"indexed_at_ns":1787729933018310200,"word_count":266},"frontend/application/components/__tests__/Hero.test.tsx":{"size":1980,"mtime_ns":1786799852776010800,"indexed_at_ns":1787726735115917200,"word_count":192},"frontend/application/components/__tests__/Tooltip.test.tsx":{"size":1508,"mtime_ns":1786799852784348900,"indexed_at_ns":1787726735121917300,"word_count":137},"frontend/application/components/catalog/CatalogPageSpread.tsx":{"size":26752,"mtime_ns":1787981163246124500,"indexed_at_ns":1787981250429547500,"word_count":2128},"frontend/application/components/catalog/FlipbookCatalog.tsx":{"size":36610,"mtime_ns":1787738052869335500,"indexed_at_ns":1787738361662030900,"word_count":3147},"frontend/application/components/catalog/ProductDetailModal.tsx":{"size":8265,"mtime_ns":1787981163247727400,"indexed_at_ns":1787981250441706300,"word_count":589},"frontend/application/eslint.config.mjs":{"size":747,"mtime_ns":1787148092358055900,"indexed_at_ns":1787726735150541200,"word_count":61},"frontend/application/lib/data/products.ts":{"size":104224,"mtime_ns":1787578481513988500,"indexed_at_ns":1787726735158143700,"word_count":9748},"frontend/application/lib/data/provinces.ts":{"size":2993,"mtime_ns":1785571725610676000,"indexed_at_ns":1787726735166169300,"word_count":203},"frontend/application/lib/data/scientificTerms.ts":{"size":18042,"mtime_ns":1786958978743097300,"indexed_at_ns":1787726735173169300,"word_count":1756},"frontend/application/lib/fonts.ts":{"size":683,"mtime_ns":1787579631802834900,"indexed_at_ns":1787726735179751500,"word_count":59},"frontend/application/lib/hooks/useNetworkStatus.ts":{"size":610,"mtime_ns":1786799852793488000,"indexed_at_ns":1787726735185762100,"word_count":59},"frontend/application/lib/schema.ts":{"size":7336,"mtime_ns":1787644197156205400,"indexed_at_ns":1787726735192345800,"word_count":609},"frontend/application/lib/seo.ts":{"size":8046,"mtime_ns":1787139270988834800,"indexed_at_ns":1787726735198345500,"word_count":737},"frontend/application/lib/services/api.ts":{"size":3694,"mtime_ns":1787997670265470700,"indexed_at_ns":1787998035733091300,"word_count":391},"frontend/application/lib/services/authService.ts":{"size":4524,"mtime_ns":1786885876986184800,"indexed_at_ns":1787726735211416700,"word_count":509},"frontend/application/lib/services/orderService.ts":{"size":2428,"mtime_ns":1786799852810726500,"indexed_at_ns":1787726735217187400,"word_count":279},"frontend/application/lib/services/productService.ts":{"size":13196,"mtime_ns":1787993003778461200,"indexed_at_ns":1787997306384003400,"word_count":1231},"frontend/application/lib/services/ticketService.ts":{"size":1569,"mtime_ns":1786890779340901800,"indexed_at_ns":1787726735230632600,"word_count":170},"frontend/application/lib/services/videoService.ts":{"size":1867,"mtime_ns":1787993003779460300,"indexed_at_ns":1787997306396146000,"word_count":210},"frontend/application/lib/store/__tests__/cartStore.test.ts":{"size":4430,"mtime_ns":1786799852822036900,"indexed_at_ns":1787726735244738400,"word_count":386},"frontend/application/lib/store/__tests__/settingsStore.test.ts":{"size":1949,"mtime_ns":1783856793043803200,"indexed_at_ns":1787726735251871200,"word_count":194},"frontend/application/lib/store/__tests__/userStore.test.ts":{"size":3639,"mtime_ns":1786799852825547700,"indexed_at_ns":1787726735257815200,"word_count":289},"frontend/application/lib/store/cartStore.ts":{"size":6972,"mtime_ns":1787660831220289700,"indexed_at_ns":1787726735265091600,"word_count":697},"frontend/application/lib/store/settingsStore.ts":{"size":3630,"mtime_ns":1786948119787096800,"indexed_at_ns":1787726735271091300,"word_count":371},"frontend/application/lib/store/uiStore.ts":{"size":872,"mtime_ns":1786799852833588000,"indexed_at_ns":1787726735277092600,"word_count":100},"frontend/application/lib/store/usePetStore.ts":{"size":8680,"mtime_ns":1786954681845300600,"indexed_at_ns":1787726735283172200,"word_count":850},"frontend/application/lib/store/userStore.ts":{"size":10320,"mtime_ns":1787729523453454600,"indexed_at_ns":1787729933162841900,"word_count":894},"frontend/application/lib/types.ts":{"size":2222,"mtime_ns":1787729527940443900,"indexed_at_ns":1787729933167879300,"word_count":239},"frontend/application/lib/utils.ts":{"size":478,"mtime_ns":1786799852847284000,"indexed_at_ns":1787726735301154500,"word_count":61},"frontend/application/next.config.ts":{"size":2344,"mtime_ns":1787997921819963300,"indexed_at_ns":1787998035832737800,"word_count":215},"frontend/application/package.json":{"size":879,"mtime_ns":1787997941675982900,"indexed_at_ns":1787998040050726700,"word_count":74,"hashes":{"frontend/application/package.json":"8444df027534d7af7044ea32f9a3fad953719e7568389178e9e4c64b92a77b3a"}},"frontend/application/postcss.config.mjs":{"size":94,"mtime_ns":1783764561988252100,"indexed_at_ns":1787726735322173300,"word_count":13},"frontend/application/public/assets/images/canina-product-placeholder.png":{"size":6990105,"mtime_ns":1787461919505024400,"indexed_at_ns":1787726735328171600,"word_count":267685},"frontend/application/public/assets/images/hero-section-image.png":{"size":6990105,"mtime_ns":1783856793095044200,"indexed_at_ns":1787726735461222100,"word_count":267685},"frontend/application/public/assets/images/regenerated_image_1779109861747.png":{"size":2269101,"mtime_ns":1783764562014110300,"indexed_at_ns":1787726735596033500,"word_count":84979},"frontend/application/public/file.svg":{"size":391,"mtime_ns":1783764562016213600,"indexed_at_ns":1787726735643616000,"word_count":50},"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856793098052000,"indexed_at_ns":1787726735668659800,"word_count":15},"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856793107660400,"indexed_at_ns":1787726735694207900,"word_count":15},"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856793113660500,"indexed_at_ns":1787726739908406400,"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":1787726739909406300,"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":1787726736213031900,"word_count":10881},"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856793230118600,"indexed_at_ns":1787726736225832200,"word_count":951},"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856793279542700,"indexed_at_ns":1787726736475009300,"word_count":283},"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856793315146800,"indexed_at_ns":1787726736717303100,"word_count":2615},"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856793316155600,"indexed_at_ns":1787726736727313200,"word_count":55},"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856793317690100,"indexed_at_ns":1787726736736959200,"word_count":5086},"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856793319422000,"indexed_at_ns":1787726736744957500,"word_count":671},"frontend/application/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856793320489000,"indexed_at_ns":1787726736753050400,"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":1787726738964542200,"word_count":14},"frontend/application/public/globe.svg":{"size":1035,"mtime_ns":1783764562016720700,"indexed_at_ns":1787726738969546300,"word_count":154},"frontend/application/public/images/vets/vet1.webp":{"size":6990105,"mtime_ns":1787461919541761600,"indexed_at_ns":1787726738988845300,"word_count":267685},"frontend/application/public/next.svg":{"size":1375,"mtime_ns":1783764562018238900,"indexed_at_ns":1787726739135424800,"word_count":183},"frontend/application/public/vercel.svg":{"size":128,"mtime_ns":1783764562019253000,"indexed_at_ns":1787726739141424700,"word_count":12},"frontend/application/public/window.svg":{"size":385,"mtime_ns":1783764562019253000,"indexed_at_ns":1787726739147423800,"word_count":63},"frontend/application/tsconfig.json":{"size":750,"mtime_ns":1786799852865640000,"indexed_at_ns":1787726739800717100,"word_count":61,"hashes":{"frontend/application/tsconfig.json":"adcade0f962ec5888be99b4b1402d98812cfd570b0c5669bda73142b2cb9210d"}},"frontend/application/vitest.config.ts":{"size":244,"mtime_ns":1786799852868652900,"indexed_at_ns":1787726739161997600,"word_count":25},"frontend/application/vitest.setup.ts":{"size":1237,"mtime_ns":1787729523454452000,"indexed_at_ns":1787729936531670400,"word_count":141},"manual-test-scenarios.md":{"size":0,"mtime_ns":1787729528073006400,"indexed_at_ns":1787729937354455500,"word_count":0,"hashes":{"manual-test-scenarios.md":"c6e53ad8216c7ae7d9e1449511caca4c768d1c68b0b859ae24f0add4afe8e502"}},"metadata.json":{"size":334,"mtime_ns":1783856793672137200,"indexed_at_ns":1787726739801716800,"word_count":35,"hashes":{"metadata.json":"c44b4c4ba60752554ceae65e2f22bddb756cbeb25a4a31ee79160b6eb182255a"}},"package.json":{"size":1237,"mtime_ns":1787729528076005200,"indexed_at_ns":1787729937137155800,"word_count":136,"hashes":{"package.json":"3ca5b265c68cc5660e5fd57b0aeb13de7eb49732740eafe405f6f0804671ceeb"}},"playwright.config.ts":{"size":2710,"mtime_ns":1787729528077005300,"indexed_at_ns":1787729936552986300,"word_count":270},"prometheus.yml":{"size":164,"mtime_ns":1783764562027779300,"indexed_at_ns":1787726739197125100,"word_count":13},"scripts/backup_db.sh":{"size":1362,"mtime_ns":1786799852876784600,"indexed_at_ns":1787726739803716600,"word_count":134,"hashes":{"scripts/backup_db.sh":"f90cf2d0c954f3eaca83566ccb365bff62fd97a2af0225816c19902ee4dfdd6c"}},"scripts/compose.prod.yml":{"size":2248,"mtime_ns":1787997968685783200,"indexed_at_ns":1787998039430620000,"word_count":126},"scripts/compose.stage.yml":{"size":2557,"mtime_ns":1787077093991779700,"indexed_at_ns":1787726739215476500,"word_count":137},"scripts/deploy.sh":{"size":3346,"mtime_ns":1787136904559094200,"indexed_at_ns":1787726739805264300,"word_count":351,"hashes":{"scripts/deploy.sh":"64d276bb6eb6cfb83690c529b9d1c0c71fa46aa912a458f684dfcf842fab2aea"}},"scripts/open-browsers.js":{"size":1551,"mtime_ns":1787997950602327000,"indexed_at_ns":1787998039453652800,"word_count":202},"scripts/start-dev.js":{"size":1689,"mtime_ns":1787997670335055900,"indexed_at_ns":1787998039460221000,"word_count":186},"start.sh":{"size":26,"mtime_ns":1784033954813080300,"indexed_at_ns":1787726739806268200,"word_count":4,"hashes":{"start.sh":"694c258b963c309734a3316c770f5fef29703bc6f24754b04155fd8db94cf862"}},"swagger.yml":{"size":95785,"mtime_ns":1786799852892091600,"indexed_at_ns":1787726739249239800,"word_count":7031},"test-coverage-map.md":{"size":13899,"mtime_ns":1787729528078006200,"indexed_at_ns":1787729937356455600,"word_count":1524,"hashes":{"test-coverage-map.md":"970d0bc2af7773ce27006da7c642991e3f094e71838201680fca7d9dfe809746"}},"tests/e2e/admin/admin-b2b-submissions.spec.ts":{"size":8979,"mtime_ns":1787729528080005900,"indexed_at_ns":1787729936612960300,"word_count":742},"tests/e2e/admin/admin-blogs-crud.spec.ts":{"size":5540,"mtime_ns":1787729528080005900,"indexed_at_ns":1787729936618959100,"word_count":490},"tests/e2e/admin/admin-crud.spec.ts":{"size":6485,"mtime_ns":1787729528081005800,"indexed_at_ns":1787729936623995800,"word_count":569},"tests/e2e/admin/admin-orders-flow.spec.ts":{"size":4130,"mtime_ns":1787729528082005000,"indexed_at_ns":1787729936630000900,"word_count":352},"tests/e2e/admin/admin-rbac-roles.spec.ts":{"size":4011,"mtime_ns":1787729528083005700,"indexed_at_ns":1787729936634530400,"word_count":327},"tests/e2e/security/xss-ratelimit.spec.ts":{"size":5646,"mtime_ns":1787729528085005800,"indexed_at_ns":1787729936640566600,"word_count":491},"tests/e2e/storefront/auth-otp-recovery.spec.ts":{"size":4540,"mtime_ns":1787729528086009200,"indexed_at_ns":1787729936646208300,"word_count":384},"tests/e2e/storefront/b2b-flow.spec.ts":{"size":3521,"mtime_ns":1787729528086516700,"indexed_at_ns":1787729936650784800,"word_count":288},"tests/e2e/storefront/blog-wiki.spec.ts":{"size":2107,"mtime_ns":1787729528087532400,"indexed_at_ns":1787729936656754300,"word_count":185},"tests/e2e/storefront/cart-operations.spec.ts":{"size":3910,"mtime_ns":1787729528089034600,"indexed_at_ns":1787729936662399200,"word_count":332},"tests/e2e/storefront/checkout-flow.spec.ts":{"size":2766,"mtime_ns":1787729528089034600,"indexed_at_ns":1787729936667403000,"word_count":251},"tests/e2e/storefront/concurrency-stock.spec.ts":{"size":5868,"mtime_ns":1787729528090041700,"indexed_at_ns":1787729936673410700,"word_count":537},"tests/e2e/storefront/contact.spec.ts":{"size":2899,"mtime_ns":1787729528091042800,"indexed_at_ns":1787729936678440900,"word_count":238},"tests/e2e/storefront/error-pages-404-500.spec.ts":{"size":1238,"mtime_ns":1787729528092042000,"indexed_at_ns":1787729936683435600,"word_count":121},"tests/e2e/storefront/order-tracking.spec.ts":{"size":3125,"mtime_ns":1787729528093041900,"indexed_at_ns":1787729936689592900,"word_count":282},"tests/e2e/storefront/shop-filter-search.spec.ts":{"size":2151,"mtime_ns":1787729528094048800,"indexed_at_ns":1787729936695374800,"word_count":187},"tests/fixtures/admin-auth.setup.ts":{"size":1950,"mtime_ns":1787729528095047800,"indexed_at_ns":1787729936700406800,"word_count":195},"tests/fixtures/index.ts":{"size":194,"mtime_ns":1787729528095047800,"indexed_at_ns":1787729936705408800,"word_count":32},"tsconfig.json":{"size":439,"mtime_ns":1787729528096047500,"indexed_at_ns":1787729937145762700,"word_count":37,"hashes":{"tsconfig.json":"12f2e30da1a34da7d06440370b7d1930cd5a3c3293f485789f5cfa2434aeea6f"}},"frontend/application/app/smart-advisor/page.tsx":{"size":2634,"mtime_ns":1787740536678699600,"indexed_at_ns":1787741544436016800,"word_count":232},"frontend/application/app/dashboard/orders/page.tsx":{"size":132,"mtime_ns":1787741941302806200,"indexed_at_ns":1787741982449356000,"word_count":13},"frontend/application/app/dashboard/pets/page.tsx":{"size":128,"mtime_ns":1787741941303809300,"indexed_at_ns":1787741982462112200,"word_count":13},"frontend/application/components/ProductImageZoomModal.tsx":{"size":12538,"mtime_ns":1787749751969854000,"indexed_at_ns":1787751879393552300,"word_count":1136},"frontend/application/app/api/media/[...path]/route.ts":{"size":5142,"mtime_ns":1787997353198709800,"indexed_at_ns":1787997623085929100,"word_count":462},"frontend/application/app/api/uploads/[...path]/route.ts":{"size":5283,"mtime_ns":1787997353200376400,"indexed_at_ns":1787997623097965500,"word_count":480},"frontend/application/lib/media.ts":{"size":1817,"mtime_ns":1787993003776450300,"indexed_at_ns":1787997306348537000,"word_count":201}} \ No newline at end of file diff --git a/graphify-out/graph.html b/graphify-out/graph.html index 87fb968..6df2855 100644 --- a/graphify-out/graph.html +++ b/graphify-out/graph.html @@ -63,12 +63,12 @@
-
4153 nodes · 7489 edges · 312 communities
+
4153 nodes · 7492 edges · 335 communities