From 204350eff8f6fae004eff3b66f33596bc5158c84 Mon Sep 17 00:00:00 2001 From: parsa aghaei Date: Sun, 13 Sep 2026 09:41:56 +0330 Subject: [PATCH] feat(financial): add enable/disable toggle for shelter animal charity and round-up donation --- backend/src/settings/default-ui-texts.ts | 1 + backend/src/settings/settings.service.ts | 15 + .../src/pages/FinancialSettingsPage.tsx | 142 +- frontend/admin-panel/src/types/admin.ts | 1 + .../application/components/CheckoutPage.tsx | 56 +- .../application/components/PetProfile.tsx | 79 +- frontend/application/lib/useCatalogMode.ts | 13 +- graphify-out/.graphify_labels.json | 63 +- graphify-out/.graphify_labels.json.sig | 2 +- graphify-out/2026-09-13/.graphify_labels.json | 37 +- graphify-out/2026-09-13/GRAPH_REPORT.md | 257 +- graphify-out/2026-09-13/graph.json | 8696 +++++++------- graphify-out/2026-09-13/manifest.json | 1292 +-- graphify-out/GRAPH_REPORT.md | 307 +- graphify-out/cache/stat-index.json | 2 +- graphify-out/graph.html | 8 +- graphify-out/graph.json | 9998 +++++++++-------- graphify-out/manifest.json | 1300 +-- 18 files changed, 11235 insertions(+), 11034 deletions(-) diff --git a/backend/src/settings/default-ui-texts.ts b/backend/src/settings/default-ui-texts.ts index 2048bce..ca03dc7 100644 --- a/backend/src/settings/default-ui-texts.ts +++ b/backend/src/settings/default-ui-texts.ts @@ -20,6 +20,7 @@ export const DEFAULT_UI_TEXTS: Record = { CATALOG_SHOW_ORDERS: 'false', CATALOG_SHOW_WALLET: 'false', CATALOG_SHOW_CHARITY: 'false', + CHARITY_DONATION_ENABLED: 'true', PRESCRIPTION_UPLOAD_ENABLED: 'true', ORDER_DISABLED_TITLE: 'امکان ثبت سفارش آنلاین موقتاً غیرفعال است', ORDER_DISABLED_MESSAGE: diff --git a/backend/src/settings/settings.service.ts b/backend/src/settings/settings.service.ts index 34a94a9..6e47353 100644 --- a/backend/src/settings/settings.service.ts +++ b/backend/src/settings/settings.service.ts @@ -100,6 +100,10 @@ export const CANONICAL_ALIASES: Record = { charity_round_step: ['CHARITY_ROUND_STEP', 'charityRoundStep'], charityRoundStep: ['CHARITY_ROUND_STEP', 'charity_round_step'], + CHARITY_DONATION_ENABLED: ['charity_donation_enabled', 'charityDonationEnabled'], + charity_donation_enabled: ['CHARITY_DONATION_ENABLED', 'charityDonationEnabled'], + charityDonationEnabled: ['CHARITY_DONATION_ENABLED', 'charity_donation_enabled'], + // Zibal Gateway & Tokens ZIBAL_EBANK_TOKEN: [ 'zibal_ebank_token', @@ -344,6 +348,10 @@ export class SettingsService implements OnModuleInit { map.get('charityRoundStep') || '10000', ); + const charityDonationEnabled = + map.get('CHARITY_DONATION_ENABLED') !== 'false' && + map.get('charity_donation_enabled') !== 'false' && + map.get('charityDonationEnabled') !== 'false'; const walletWithdrawalEnabled = map.get('walletWithdrawalEnabled') === 'true'; @@ -354,6 +362,7 @@ export class SettingsService implements OnModuleInit { taxPercentage, b2bDiscountPercent, charityRoundStep, + charityDonationEnabled, charityDonationOptions: [10000, 20000, 50000], walletWithdrawalEnabled, }; @@ -397,6 +406,12 @@ export class SettingsService implements OnModuleInit { updates['charity_round_step'] = String(data.charityRoundStep); updates['charityRoundStep'] = String(data.charityRoundStep); } + if (data.charityDonationEnabled !== undefined) { + const boolStr = String(data.charityDonationEnabled); + updates['CHARITY_DONATION_ENABLED'] = boolStr; + updates['charity_donation_enabled'] = boolStr; + updates['charityDonationEnabled'] = boolStr; + } if (data.walletWithdrawalEnabled !== undefined) { updates['walletWithdrawalEnabled'] = String(data.walletWithdrawalEnabled); } diff --git a/frontend/admin-panel/src/pages/FinancialSettingsPage.tsx b/frontend/admin-panel/src/pages/FinancialSettingsPage.tsx index b788daf..c729c1b 100644 --- a/frontend/admin-panel/src/pages/FinancialSettingsPage.tsx +++ b/frontend/admin-panel/src/pages/FinancialSettingsPage.tsx @@ -18,6 +18,7 @@ export default function FinancialSettingsPage() { walletWithdrawalEnabled: false, }); const [charityStep, setCharityStep] = useState('10000'); + const [charityEnabled, setCharityEnabled] = useState(true); const [refillEnabled, setRefillEnabled] = useState(false); const [refillPercent, setRefillPercent] = useState('5'); @@ -53,11 +54,18 @@ export default function FinancialSettingsPage() { charityDonationOptions: Array.isArray(data.charityDonationOptions) ? data.charityDonationOptions.map(Number) : [10000, 20000, 50000], + charityDonationEnabled: Boolean(data.charityDonationEnabled ?? true), walletWithdrawalEnabled: Boolean(data.walletWithdrawalEnabled ?? false), }); + if (data.charityDonationEnabled !== undefined) { + setCharityEnabled(Boolean(data.charityDonationEnabled)); + } } if (resAdmin.data?.success) { setCharityStep(resAdmin.data.data.CHARITY_ROUND_STEP || '10000'); + if (resAdmin.data.data.CHARITY_DONATION_ENABLED !== undefined) { + setCharityEnabled(resAdmin.data.data.CHARITY_DONATION_ENABLED !== 'false'); + } setRefillEnabled(resAdmin.data.data.REFILL_SUBSCRIPTION_ENABLED === 'true'); setRefillPercent(resAdmin.data.data.REFILL_REWARD_PERCENT || '5'); } @@ -87,10 +95,14 @@ export default function FinancialSettingsPage() { try { setIsSaving(true); const [, , resPricing] = await Promise.all([ - api.patch('/settings/financial', financial), + api.patch('/settings/financial', { + ...financial, + charityDonationEnabled: charityEnabled, + }), api.put('/admin/settings', { TAX_PERCENTAGE: String(financial.taxPercentage), CHARITY_ROUND_STEP: charityStep, + CHARITY_DONATION_ENABLED: charityEnabled ? 'true' : 'false', REFILL_SUBSCRIPTION_ENABLED: refillEnabled ? 'true' : 'false', REFILL_REWARD_PERCENT: refillPercent, }), @@ -168,63 +180,91 @@ export default function FinancialSettingsPage() {

درصد قانونی محاسبه مالیات بر ارزش افزوده در فاکتور نهایی سفارشات.

- {/* Charity Round Step */} -
-
)} - {charityDonation > 0 && ( + {isCharityEnabled && charityDonation > 0 && (
ردپای مهربانی {toPersian(charityDonation.toLocaleString())} تومان+ diff --git a/frontend/application/components/PetProfile.tsx b/frontend/application/components/PetProfile.tsx index 4c75313..9dc4abb 100644 --- a/frontend/application/components/PetProfile.tsx +++ b/frontend/application/components/PetProfile.tsx @@ -30,6 +30,7 @@ import { } from "lucide-react"; import { usePetStore, PetProfile as GlobalPetProfile, Reminder, HealthLog } from "../lib/store/usePetStore"; import { useCartStore } from "../lib/store/cartStore"; +import { useSettingsStore } from "../lib/store/settingsStore"; import SmartAdvisor from "./SmartAdvisor"; import OrderDetailsModal from "./OrderDetailsModal"; import { toast } from "sonner"; @@ -47,6 +48,12 @@ export default function PetProfile({ initialView, advisorNeed, embedded = false const searchParams = useSearchParams(); const { pets, addPet, removePet, setActivePet, getActivePet, updatePet, addReminder, toggleReminder, addHealthLog } = usePetStore(); const { orders } = useCartStore(); + const isCharityEnabled = useSettingsStore( + (state) => + state.getBoolean("CHARITY_DONATION_ENABLED", true) && + state.getBoolean("charity_donation_enabled", true) && + state.getBoolean("charityDonationEnabled", true) + ); const activePet = getActivePet(); const [isLoading, setIsLoading] = useState(true); const [products, setProducts] = useState([]); @@ -855,7 +862,7 @@ export default function PetProfile({ initialView, advisorNeed, embedded = false
{/* Profile Card */} -
+
@@ -899,7 +906,7 @@ export default function PetProfile({ initialView, advisorNeed, embedded = false
-
+
@@ -921,43 +928,45 @@ export default function PetProfile({ initialView, advisorNeed, embedded = false
{/* Kindness Footprint Widget for Pet */} -
-
- -
-
-
- + {isCharityEnabled && ( +
+
+
-
-

ردپای مهربانی {activePet.name}

-

سفیر مهربانی: {activePet.name}

-
-
-
-
-
- کمک اهدایی با نام {activePet.name}: - - {toPersian(petCharityTotal.toLocaleString())} تومان - +
+
+ +
+
+

ردپای مهربانی {activePet.name}

+

سفیر مهربانی: {activePet.name}

- {allCharityTotal > 0 && ( -
- مجموع مهربانی کل حساب: - {toPersian(allCharityTotal.toLocaleString())} تومان -
- )}
-

- {petCharityTotal > 0 ? ( - <>«{activePet.name}» با خریدهای مکمل خود تا کنون {toPersian(petCharityTotal.toLocaleString())} تومان به درمان و تغذیه حیوانات نیازمند پناهگاهی کمک کرده است. - ) : ( - <>با هر خرید برای «{activePet.name}» می‌توانید با انتخاب گزینه ردپای مهربانی، مبلغی را به نام او به پناهگاه‌های حیوانات اختصاص دهید. - )} -

+
+
+
+ کمک اهدایی با نام {activePet.name}: + + {toPersian(petCharityTotal.toLocaleString())} تومان + +
+ {allCharityTotal > 0 && ( +
+ مجموع مهربانی کل حساب: + {toPersian(allCharityTotal.toLocaleString())} تومان +
+ )} +
+

+ {petCharityTotal > 0 ? ( + <>«{activePet.name}» با خریدهای مکمل خود تا کنون {toPersian(petCharityTotal.toLocaleString())} تومان به درمان و تغذیه حیوانات نیازمند پناهگاهی کمک کرده است. + ) : ( + <>با هر خرید برای «{activePet.name}» می‌توانید با انتخاب گزینه ردپای مهربانی، مبلغی را به نام او به پناهگاه‌های حیوانات اختصاص دهید. + )} +

+
-
+ )}
{/* Refill & Stock Tracking */} diff --git a/frontend/application/lib/useCatalogMode.ts b/frontend/application/lib/useCatalogMode.ts index 65218df..0cd9e49 100644 --- a/frontend/application/lib/useCatalogMode.ts +++ b/frontend/application/lib/useCatalogMode.ts @@ -32,9 +32,16 @@ export function useCatalogMode() { ? getBoolean("CATALOG_SHOW_WALLET", false) || getBoolean("catalog_show_wallet", false) : true; - const showCharity = isCatalogOnly - ? getBoolean("CATALOG_SHOW_CHARITY", false) || getBoolean("catalog_show_charity", false) - : true; + const isCharityGlobalEnabled = + getBoolean("CHARITY_DONATION_ENABLED", true) && + getBoolean("charity_donation_enabled", true) && + getBoolean("charityDonationEnabled", true); + + const showCharity = isCharityGlobalEnabled && ( + isCatalogOnly + ? getBoolean("CATALOG_SHOW_CHARITY", false) || getBoolean("catalog_show_charity", false) + : true + ); const orderDisabledTitle = getText( "ORDER_DISABLED_TITLE", diff --git a/graphify-out/.graphify_labels.json b/graphify-out/.graphify_labels.json index 0447a12..69c0be9 100644 --- a/graphify-out/.graphify_labels.json +++ b/graphify-out/.graphify_labels.json @@ -1,13 +1,13 @@ { "0": "Roles", "1": "app.module.ts", - "2": "ApiKeysService", + "2": "ApiResponse", "3": "productService.ts", "4": "HomeClient.tsx", "5": "CmsController", "6": "tickets.controller.ts", "7": "SmsSettingsPage.tsx", - "8": "SettingsService", + "8": "SmsService", "9": "devDependencies", "10": "CreateReviewDto", "11": "UsersService", @@ -18,7 +18,7 @@ "16": "DoctorQueryDto", "17": "schema.ts", "18": "JwtAuthGuard", - "19": "BulkPriceAdjustmentDto", + "19": "admin.service.ts", "20": "CreateVideoDto", "21": "useSettingsStore", "22": "AdminService", @@ -32,7 +32,7 @@ "30": "DEVOPS-001", "31": "DOC-001", "32": "adminRoutes.tsx", - "33": "WholesaleApplyDto", + "33": "WholesaleService", "34": "B2BService", "35": "ContactService", "36": "FaqService", @@ -45,7 +45,7 @@ "43": "BannersService", "44": "TestimonialsService", "45": "What You Must Do When Invoked", - "46": "sms.service.ts", + "46": "HomeController", "47": "IngredientsService", "48": "Button.tsx", "49": "devDependencies", @@ -55,18 +55,18 @@ "53": "SmartAdvisorService", "54": "Modal.tsx", "55": "UITexts.tsx", - "56": "Orders.tsx", + "56": "PrescriptionsManager.tsx", "57": "Role & Core Objective", - "58": "ConfirmModal.tsx", + "58": "Orders.tsx", "59": "compilerOptions", "60": "admin.controller.ts", "61": "ProductPage.tsx", "62": "admin.module.ts", "63": "dependencies", "64": "compilerOptions", - "65": "admin.service.ts", + "65": "CreateApiKeyDto", "66": "AdminController", - "67": "SmsService", + "67": "ApiKeysService", "68": "components/Skeleton.tsx", "69": "Required Review Group Closures", "70": "compilerOptions", @@ -75,7 +75,7 @@ "73": "Operational Rules & Boundaries", "74": "WikiController", "75": "PetsController", - "76": "ProductsService", + "76": "RevalidationService", "77": "seo.module.ts", "78": "rss.xml/route.ts", "79": "🏢 AI Software Agency — Master Orchestration Protocol v3", @@ -87,7 +87,7 @@ "85": "app.e2e-spec.js", "86": "zibal.service.ts", "87": "dependencies", - "88": "payment.controller.ts", + "88": "CreateEBankCheckoutDto", "89": "seed-products.ts", "90": "20260526145407_init/migration.sql", "91": "Reconciled Audit Roles & Assignments", @@ -105,16 +105,16 @@ "103": "Comprehensive Change Log", "104": "Products.tsx", "105": "Operational Rules & Boundaries", - "106": "PaymentService", - "107": "BlogsService", + "106": "InitiatePaymentDto", + "107": "PaginationDto", "108": "PrismaService", "109": "1. Summary of Integrity Repairs Performed", "110": "Operational Rules & Boundaries", "111": "Operational Rules & Boundaries", "112": "Operational Rules & Boundaries", - "113": "lib/services/api.ts", + "113": "settingsStore.ts", "114": "AppService", - "115": "Media.tsx", + "115": "MediaSelector.tsx", "116": "Vazirmatn Changelog", "117": "Vazirmatn Font فونت وزیرمتن", "118": "Operational Rules & Boundaries", @@ -127,7 +127,7 @@ "125": "validate_integrity.js", "126": "admin-panel/package.json", "127": "Sahel-Font", - "128": "auth.module.ts", + "128": "MetricsController", "129": "WikiController", "130": "Sahel-Font", "131": "Role & Core Objective", @@ -144,13 +144,13 @@ "142": "start-dev.js", "143": "generate-openapi.js", "144": "SafeImage.tsx", - "145": "PaginationDto", + "145": "WholesaleApplyDto", "146": "System Discovery", "147": "torob.controller.ts", "148": "ProductDto", - "149": "PetsController", + "149": "class-transformer", "150": "Product Requirement Document (PRD)", - "151": "SmsLogQueryDto", + "151": "helmet", "152": "@eslint/js", "153": "exclude", "154": "Baseline Command Plan & Reconciled Command History", @@ -203,7 +203,7 @@ "201": "deploy.sh", "202": "🔒 Security & Performance Review (09_devops_security)", "203": "👁️ UX & Persona Interface Review (08_visual_qa)", - "204": "RevalidationService", + "204": "reviews.service.ts", "205": "prisma/scientificTerms.ts", "206": "seed-blogs.ts", "207": "seed-custom.ts", @@ -219,7 +219,7 @@ "217": "sync_honest_manifest.js", "218": "sync_manifest.js", "219": "FormField.tsx", - "220": "AdminQueryDto", + "220": "js-yaml", "221": "Textarea.tsx", "222": "admin-panel/tsconfig.json", "223": "tailwindcss", @@ -231,8 +231,8 @@ "229": ".agents/workflows/graphify.md", "230": "instructions.md", "231": "20260526160916_add_ui_texts_and_scientific_terms/migration.sql", - "232": "@types/node", - "233": "typescript", + "232": "@nestjs/core", + "233": "@nestjs/jwt", "234": "source-map-support", "235": "ts-loader", "236": "ts-node", @@ -264,10 +264,11 @@ "262": "User Logout API", "263": "generate-openapi.d.ts", "264": "@types/compression", - "265": "tailwindcss", + "265": "@nestjs/swagger", "266": "@types/express", "267": "@types/jest", "268": "@types/multer", + "269": "@nestjs/throttler", "270": "app-audit-verification.e2e-spec.d.ts", "271": "app.e2e-spec.d.ts", "272": "Canina Pharma GmbH", @@ -293,22 +294,36 @@ "292": "Production Docker Compose", "293": "Staging Docker Compose", "294": "ZibalService", + "295": "passport", + "296": "reflect-metadata", "297": "ZibalEBankService", "298": ".initiateOrderPayment", "299": "@tailwindcss/postcss", "300": "typescript", + "301": "swagger-ui-express", "302": "typescript-eslint", "303": "@nestjs/schematics", + "304": "@eslint/eslintrc", + "305": "eslint-plugin-prettier", "306": "eslint-plugin-react-hooks", + "307": "globals", + "308": "@nestjs/cli", "309": "axios", "310": "tailwindcss", "311": "jest", "312": "@types/passport-jwt", + "313": "@nestjs/testing", + "314": "prettier", "315": "typescript", + "316": "ts-jest", "317": "revalidate/route.ts", "318": "MaskableField.tsx", + "319": "@types/js-yaml", + "320": "@types/supertest", "321": "orders/page.tsx", "322": "pets/page.tsx", + "323": "typescript-eslint", + "324": "@tailwindcss/postcss", "325": "@types/react-dom", "327": "eslint-plugin-react-refresh" } diff --git a/graphify-out/.graphify_labels.json.sig b/graphify-out/.graphify_labels.json.sig index 61e8bed..35a985c 100644 --- a/graphify-out/.graphify_labels.json.sig +++ b/graphify-out/.graphify_labels.json.sig @@ -1 +1 @@ -{"0": "b0118f68a3e7f0ad", "1": "b40f8b1a43132568", "2": "80440f657bae7b34", "3": "ede6ed7f79dcf18e", "4": "8f06ed8a8f0a6dd1", "5": "f34c872571e8a774", "6": "81b67391b0b87cab", "7": "1597e994e0482093", "8": "1729bb15e74d86eb", "9": "5755748a15e41acd", "10": "5a1618e6d5eb21af", "11": "2c672b860631f0d7", "12": "0f987d4c17ae1a5e", "13": "85d482ba1c55c7df", "14": "5fd962a309f26845", "15": "4519a363a510a585", "16": "bbaf7539ddd300b0", "17": "690dc63010f5642d", "18": "3279fb630f8bc538", "19": "ccef4af5b535750a", "20": "b8abf3d4ac15fc65", "21": "064eb0ae91121fad", "22": "4ca4f52a448e14bd", "23": "b64d81a71800bd4b", "24": "4eda46a5b0695ef6", "25": "90b79d6027d60d30", "26": "6bd6f2633370820c", "27": "7664e56213a29331", "28": "942c4f9928c60a45", "29": "0614b98d9013b5f5", "30": "53ff49b3d54f0fba", "31": "2153ddcd7477dfb7", "32": "8a7e9f575a80debf", "33": "8c213a62d97de6b1", "34": "e89579446dcd5c0b", "35": "533f2d32c60dd4b3", "36": "b73994254301dd0e", "37": "1c9a1f4c72613346", "38": "36b404feec840d46", "39": "f38c905c9af9edc0", "40": "2078e6143c52e5cc", "41": "7abb5bc6a0e4f65f", "42": "e6a9e884d8c67c3c", "43": "7478d6755ca2248a", "44": "b4c82af1f2f566f7", "45": "7dd5c61562c827a8", "46": "76460fae6fbd2a3c", "47": "65e41c1c22dcd058", "48": "b618f44ff17161b7", "49": "841013681f4e6e8c", "50": "14f7a9ad3f077af0", "51": "91d7f3d12813e4ff", "52": "73df605d6eec20d9", "53": "cb17af4eb831480f", "54": "24eeed014cae0716", "55": "e22b2950855427f9", "56": "ebe74c19555899b6", "57": "0f62727f3b4907c0", "58": "90a6550526a955c5", "59": "7369e85febb97f1a", "60": "8506e67efa3666a3", "61": "b43112666fc46879", "62": "b34a0148a3e5a487", "63": "2b0ee366d6136717", "64": "3b9521f7d7986eaa", "65": "6fad98450aae2312", "66": "4f2e1dc11a17a05a", "67": "1644e54aab6695ce", "68": "786e8fa6c5801242", "69": "31a5a53f1fe77e46", "70": "01d4f9d6d9f3b08a", "71": "6c3a2e56988da9a2", "72": "69d0f8b228227690", "73": "22456307ff273d80", "74": "d9e74b032c5b8440", "75": "ca4d94b36734b0d0", "76": "0f40b6600aa6a15a", "77": "62430df45afa65b5", "78": "0273bbf045eb1528", "79": "ba7bc17581366c9a", "80": "0727bb53199085fc", "81": "91393683c97d1773", "82": "36d253e9d0d7547b", "83": "71d2ce6fb684bc0e", "84": "70497658d0e0cea6", "85": "c35e392f1594d14e", "86": "e3d13e2060945d3f", "87": "59fc058419aa2d03", "88": "59123834c779a243", "89": "656f816eb51f2ab1", "90": "bf5a253cc5340107", "91": "25a6695f5783d2be", "92": "4c8707f8ae22b09d", "93": "4c613615c4fd913d", "94": "f7a706f5fcb260c3", "95": "3749725fd98d8f5d", "96": "3fef84a1b6832b0b", "97": "5404a2dafca5cc88", "98": "5bbc8944b2ba2d8f", "99": "9531a7faa4f8e585", "100": "3c1d9844d072bd2a", "101": "b3c5433df880f335", "102": "e036dbd1de0f8b38", "103": "ac7cb5ec7d5c0802", "104": "c9ebbbfac60d175b", "105": "622f83f2eb300a25", "106": "754165a7a556bbb2", "107": "7d6e023c51d640e9", "108": "3e61df94c43a4aad", "109": "6d16ccde1291c9d4", "110": "d228746e85ead3af", "111": "b55ba9125ffb5729", "112": "5f50a360f18a880b", "113": "5c23c9c22c7290c1", "114": "c6b57d78299a27b3", "115": "eb327607dc7b6860", "116": "db70db08c00162df", "117": "9a1080686fc7c39b", "118": "77fd76193df9f573", "119": "28355f848c862b6e", "120": "25f77f5455bdc96a", "121": "9141a0ede9461fd5", "122": "b977309ea11e65f3", "123": "0324493d78d61d28", "124": "3ceda88239910d9a", "125": "9409b3b8a334f51d", "126": "ac95a9f152e3d1c4", "127": "a7299f20633c0236", "128": "3b88e5b5e7e1e2ce", "129": "6e67e4bc78994a71", "130": "7f405315686459b9", "131": "44c7924c829cc215", "132": "17ecb7325285cf7a", "133": "4487fd85ddc13c93", "134": "73382a9ef9d08673", "135": "c4abf0eb38ef740d", "136": "07d37aeefbe50e21", "137": "70b58e32c2890fdd", "138": "f2c7afb0c277c4b7", "139": "e38672923e0d0be7", "140": "167643bcbbc26244", "141": "dcffd9ad7a1f7df6", "142": "f47469d48b3776b5", "143": "1b0ef1cf87b53de3", "144": "3dfa9a8d551d6d2a", "145": "1b80bf573ccea44d", "146": "c7ddffce8605b65b", "147": "a466f315705201bc", "148": "94a621126f7ba89f", "149": "e2bda4d8806cbe01", "150": "5910eeefe2f97a20", "151": "8ffb30447853a689", "152": "b0b81cfb9e11502e", "153": "6cfdd09a6fdd9ff9", "154": "66efafa1e86d8081", "155": "562a328c3cebc9b1", "156": "4a8bdc6821207fa3", "157": "dd5f624dc488c627", "158": "c1015ad9e25cb1a2", "159": "a2fe690317aef2ee", "160": "e30004421d79ffeb", "161": "cd66a5f43cd3407d", "162": "fa2d7dcf52348095", "163": "75efc6457f7fce22", "164": "8375a4fbf0573a52", "165": "edb079558c6f3d59", "166": "1d80b74f885d6716", "167": "3cd15de82f23093a", "168": "7a77349497fcdf37", "169": "85cd9ca1246dc437", "170": "3e93071fc4a80e95", "171": "6114ccb7b9036e33", "172": "f3d92800d756dd79", "173": "2aa85a497fd142d7", "174": "35d3a2679371e9a4", "175": "b8f35a499b36a57a", "176": "634af67d3b759da3", "177": "f6ddba6f531d6b96", "178": "4a0995c91344bedb", "179": "bddcc43a56a2787b", "180": "4ac5f9965007617d", "181": "cff999497d56b512", "182": "06b38ffa6f58195d", "183": "ee705c178d6958bb", "184": "f6f85b389abb3f1e", "185": "c966b582050fe08e", "186": "867babdd40f0c3fc", "187": "298144d1548a7dee", "188": "00d275127a7e435e", "189": "2942a9d30dae4a29", "190": "3e21e2fb50e12670", "191": "be62daa7d5bc336a", "192": "47c3e1a9d4bb7e67", "193": "82ff39c105ae3090", "194": "6747ecf936cb0400", "195": "ebc0087e3400009c", "196": "51d4e15c7e10decf", "197": "241c08ddff25ce03", "198": "0dd5439f11354ec2", "199": "fc778d7a22e550eb", "200": "162b36508e5879f3", "201": "6256958a9b817133", "202": "ab06e01c9caa9f90", "203": "204b3a83ef62f360", "204": "54a4b52244949bd6", "205": "67b5cef27d55952d", "206": "10b2996179aaaf2e", "207": "39031f751fb2d42f", "208": "54f53e5e0cc8c385", "209": "821696b1ff49347b", "210": "00739b5480732bdc", "211": "2434b1a28b16557f", "212": "cb3fe87c920b0cb3", "213": "ddb9c95db6575999", "214": "e2250667e3a77089", "215": "9069d5dda9013eee", "216": "0077975cffee54dc", "217": "e6fcd0aec85fac92", "218": "9590124db1601a96", "219": "e077f384ad6b18ad", "220": "b149ce95fecb37dd", "221": "6d0322fa3d03fa10", "222": "3be2a9ccdc6668cc", "223": "7a7f04630a11cc2b", "224": "8c439a265a9c4341", "225": "703a4a9860d7ed16", "226": "85fd4a84b5393d0e", "227": "97ec841e4f367258", "228": "4654167fd211d027", "229": "8176a164778526f9", "230": "a74925b45b279d6f", "231": "7c65a1f3c4f1b858", "232": "6ddbf62ac93920e1", "233": "d0fc47de7f8bcf41", "234": "4865e180c0694458", "235": "e24cf60bcf607797", "236": "bbcea5ec9d046ac0", "237": "fd158611e3227271", "238": "c67be0f483e0da2e", "239": "ecfb692b6f7a1014", "240": "8d1aad761b4c839d", "241": "e66a941c60456b44", "242": "a7cf02106e992a23", "243": "88604333ff6aa860", "244": "8365b02889fa6cfc", "245": "6e7b82d0387bf16d", "246": "2eef246ebb269184", "247": "f5edd0761d024ff0", "248": "1e833ee596b5ca23", "249": "9fd8a4abf0eb00a3", "250": "e9728eefddbaed5b", "251": "fe8ad8aaa5b6f652", "252": "be78134816511eaf", "253": "4737624cd139d117", "254": "5fcab665dcd75a7d", "255": "33b1870821fb012a", "256": "f379c891e179d45a", "257": "cef806733796b489", "258": "76578e90353475ed", "259": "04d938f720c1db19", "260": "57931ddf408ceeeb", "261": "b4fbbd4b7a13369e", "262": "d64c6d160a7faed4", "263": "2d1c86501cdb42dd", "264": "47fc05295105c312", "265": "46606f6daab10d34", "266": "5eb83040a203bd16", "267": "20a2080eac259e2b", "268": "0598c15fa2a12fad", "270": "ef2d2abc6e491968", "271": "a1e0a3465632c13a", "272": "e6273a4f9b65952b", "273": "38a03e32ab28113e", "274": "400d2883ce278be7", "275": "a13f9628796dc16a", "276": "6e3ce4714f76f2f9", "277": "de2233c73c628824", "278": "a144dcdc61af17a5", "279": "672ba0ee4d6993c2", "280": "daf108b14eb1d2d5", "281": "a618b7b467aa2c0c", "282": "60a2d42e0373376c", "283": "934bee98555c5f5b", "284": "3a30dd7bf2ececaa", "285": "23c1a365d72c9b86", "286": "3323cd7407922799", "287": "9050a3ebe80326e5", "288": "10d7c8f3898b68e5", "289": "2ce5bbc30db985b5", "290": "2a963843e9a8e153", "291": "28537a0c0fbd566f", "292": "3659ed0b62c213c5", "293": "912cf03978233ef7", "294": "64fce0b4c8f81fd1", "297": "69f2014dab3c4a93", "298": "cc5f6b26358d30f3", "299": "5a4d1c1ef8bed9bb", "300": "b1d204e97a3c45dc", "302": "1c69dcee9405ce47", "303": "b796283dc9729998", "306": "88e82bb9fffbe642", "309": "768db8a3a299f590", "310": "321732baccae846b", "311": "c7de3fe21e2e53b4", "312": "05f1ad1f29e435ff", "315": "a0fdc688ac30f227", "317": "31eb2ccb16c5af0f", "318": "2491d05d8bb29ad7", "321": "482dcf1e6b7ebe00", "322": "f622408f14c9177e", "325": "4ab8ffab1d51ca61", "327": "60ce4fcea460e0a6"} \ No newline at end of file +{"0": "b0118f68a3e7f0ad", "1": "fa90465d93453385", "2": "5893700a98516261", "3": "ede6ed7f79dcf18e", "4": "8f06ed8a8f0a6dd1", "5": "f34c872571e8a774", "6": "81b67391b0b87cab", "7": "1597e994e0482093", "8": "849ae0f64c5b71a0", "9": "23ffcb2f5682d0bc", "10": "2b2a645c8e5423b3", "11": "83129c353bfc2ea4", "12": "0f987d4c17ae1a5e", "13": "85d482ba1c55c7df", "14": "e9615d380f2a22c1", "15": "aa17a9c9f790d096", "16": "bbaf7539ddd300b0", "17": "690dc63010f5642d", "18": "843aac8cb20a123a", "19": "0576b96f791618cb", "20": "b8abf3d4ac15fc65", "21": "064eb0ae91121fad", "22": "df63b0888a23ef4b", "23": "b64d81a71800bd4b", "24": "4eda46a5b0695ef6", "25": "90b79d6027d60d30", "26": "6bd6f2633370820c", "27": "7664e56213a29331", "28": "942c4f9928c60a45", "29": "0614b98d9013b5f5", "30": "53ff49b3d54f0fba", "31": "2153ddcd7477dfb7", "32": "ace525845cffc155", "33": "5499104e9ca4fdad", "34": "e89579446dcd5c0b", "35": "533f2d32c60dd4b3", "36": "b73994254301dd0e", "37": "1c9a1f4c72613346", "38": "58fe18c423dae025", "39": "f38c905c9af9edc0", "40": "2078e6143c52e5cc", "41": "7abb5bc6a0e4f65f", "42": "cbaa20536db72d3e", "43": "7478d6755ca2248a", "44": "b4c82af1f2f566f7", "45": "7dd5c61562c827a8", "46": "4ece6985263357c4", "47": "65e41c1c22dcd058", "48": "171a7b2ec6584813", "49": "841013681f4e6e8c", "50": "a58248a849289b31", "51": "91d7f3d12813e4ff", "52": "73df605d6eec20d9", "53": "cb17af4eb831480f", "54": "3a1b3cda3b3eaa44", "55": "3263b5a4cf3b3739", "56": "dafd76f0d8b501d7", "57": "0f62727f3b4907c0", "58": "7e37174e4656e8e8", "59": "7369e85febb97f1a", "60": "1e1af2853e788420", "61": "b43112666fc46879", "62": "ca7c8d303e1c4b06", "63": "0b962a47d1b049e5", "64": "3b9521f7d7986eaa", "65": "6e825224b20ca046", "66": "44a2b8559c9132b3", "67": "ce8bfe090ea12e2e", "68": "786e8fa6c5801242", "69": "31a5a53f1fe77e46", "70": "01d4f9d6d9f3b08a", "71": "6c3a2e56988da9a2", "72": "69d0f8b228227690", "73": "22456307ff273d80", "74": "d9e74b032c5b8440", "75": "ca4d94b36734b0d0", "76": "cad95da1b5c33485", "77": "62430df45afa65b5", "78": "0273bbf045eb1528", "79": "ba7bc17581366c9a", "80": "0727bb53199085fc", "81": "91393683c97d1773", "82": "36d253e9d0d7547b", "83": "71d2ce6fb684bc0e", "84": "70497658d0e0cea6", "85": "c35e392f1594d14e", "86": "e3d13e2060945d3f", "87": "59fc058419aa2d03", "88": "c4acedd7472cf7cb", "89": "656f816eb51f2ab1", "90": "bf5a253cc5340107", "91": "25a6695f5783d2be", "92": "4c8707f8ae22b09d", "93": "4c613615c4fd913d", "94": "f7a706f5fcb260c3", "95": "3749725fd98d8f5d", "96": "3fef84a1b6832b0b", "97": "5404a2dafca5cc88", "98": "5bbc8944b2ba2d8f", "99": "9531a7faa4f8e585", "100": "3c1d9844d072bd2a", "101": "b3c5433df880f335", "102": "e036dbd1de0f8b38", "103": "ac7cb5ec7d5c0802", "104": "cb4d9aff34fa7615", "105": "622f83f2eb300a25", "106": "34581929891cefb2", "107": "bb8d929eee04fb57", "108": "04ab384d4f5cbe7a", "109": "6d16ccde1291c9d4", "110": "d228746e85ead3af", "111": "b55ba9125ffb5729", "112": "5f50a360f18a880b", "113": "8d8bcd58295632e5", "114": "c6b57d78299a27b3", "115": "02dbc0283b2e01f1", "116": "db70db08c00162df", "117": "9a1080686fc7c39b", "118": "77fd76193df9f573", "119": "28355f848c862b6e", "120": "25f77f5455bdc96a", "121": "9141a0ede9461fd5", "122": "59b47a600da96661", "123": "ff58bd064c5d932f", "124": "3ceda88239910d9a", "125": "9409b3b8a334f51d", "126": "ac95a9f152e3d1c4", "127": "a7299f20633c0236", "128": "038915bd030e573c", "129": "f17c5fbca8a8e41e", "130": "7f405315686459b9", "131": "44c7924c829cc215", "132": "17ecb7325285cf7a", "133": "4487fd85ddc13c93", "134": "73382a9ef9d08673", "135": "c4abf0eb38ef740d", "136": "07d37aeefbe50e21", "137": "70b58e32c2890fdd", "138": "f2c7afb0c277c4b7", "139": "e38672923e0d0be7", "140": "167643bcbbc26244", "141": "dcffd9ad7a1f7df6", "142": "f47469d48b3776b5", "143": "1b0ef1cf87b53de3", "144": "3dfa9a8d551d6d2a", "145": "69c8cbfb6992b123", "146": "c7ddffce8605b65b", "147": "a466f315705201bc", "148": "94a621126f7ba89f", "149": "959e76250dbacbad", "150": "5910eeefe2f97a20", "151": "3a6753a80123a0f4", "152": "b0b81cfb9e11502e", "153": "6cfdd09a6fdd9ff9", "154": "66efafa1e86d8081", "155": "562a328c3cebc9b1", "156": "4a8bdc6821207fa3", "157": "dd5f624dc488c627", "158": "c1015ad9e25cb1a2", "159": "a2fe690317aef2ee", "160": "e30004421d79ffeb", "161": "cd66a5f43cd3407d", "162": "fa2d7dcf52348095", "163": "75efc6457f7fce22", "164": "8375a4fbf0573a52", "165": "edb079558c6f3d59", "166": "1d80b74f885d6716", "167": "3cd15de82f23093a", "168": "7a77349497fcdf37", "169": "85cd9ca1246dc437", "170": "3e93071fc4a80e95", "171": "6114ccb7b9036e33", "172": "f3d92800d756dd79", "173": "2aa85a497fd142d7", "174": "35d3a2679371e9a4", "175": "b8f35a499b36a57a", "176": "634af67d3b759da3", "177": "f6ddba6f531d6b96", "178": "4a0995c91344bedb", "179": "bddcc43a56a2787b", "180": "4ac5f9965007617d", "181": "cff999497d56b512", "182": "06b38ffa6f58195d", "183": "ee705c178d6958bb", "184": "f6f85b389abb3f1e", "185": "c966b582050fe08e", "186": "867babdd40f0c3fc", "187": "298144d1548a7dee", "188": "00d275127a7e435e", "189": "2942a9d30dae4a29", "190": "3e21e2fb50e12670", "191": "be62daa7d5bc336a", "192": "47c3e1a9d4bb7e67", "193": "82ff39c105ae3090", "194": "6747ecf936cb0400", "195": "ebc0087e3400009c", "196": "51d4e15c7e10decf", "197": "241c08ddff25ce03", "198": "0dd5439f11354ec2", "199": "fc778d7a22e550eb", "200": "162b36508e5879f3", "201": "6256958a9b817133", "202": "ab06e01c9caa9f90", "203": "204b3a83ef62f360", "204": "1d5a285b82178bd6", "205": "67b5cef27d55952d", "206": "10b2996179aaaf2e", "207": "39031f751fb2d42f", "208": "54f53e5e0cc8c385", "209": "821696b1ff49347b", "210": "00739b5480732bdc", "211": "2434b1a28b16557f", "212": "cb3fe87c920b0cb3", "213": "ddb9c95db6575999", "214": "e2250667e3a77089", "215": "9069d5dda9013eee", "216": "0077975cffee54dc", "217": "e6fcd0aec85fac92", "218": "9590124db1601a96", "219": "e077f384ad6b18ad", "220": "ca950b47c628b81a", "221": "6d0322fa3d03fa10", "222": "3be2a9ccdc6668cc", "223": "7a7f04630a11cc2b", "224": "8c439a265a9c4341", "225": "703a4a9860d7ed16", "226": "85fd4a84b5393d0e", "227": "97ec841e4f367258", "228": "4654167fd211d027", "229": "8176a164778526f9", "230": "a74925b45b279d6f", "231": "7c65a1f3c4f1b858", "232": "255a8a95e2a3df67", "233": "47e08912fd6cd296", "234": "4865e180c0694458", "235": "e24cf60bcf607797", "236": "bbcea5ec9d046ac0", "237": "fd158611e3227271", "238": "c67be0f483e0da2e", "239": "ecfb692b6f7a1014", "240": "8d1aad761b4c839d", "241": "e66a941c60456b44", "242": "a7cf02106e992a23", "243": "88604333ff6aa860", "244": "8365b02889fa6cfc", "245": "6e7b82d0387bf16d", "246": "2eef246ebb269184", "247": "f5edd0761d024ff0", "248": "1e833ee596b5ca23", "249": "9fd8a4abf0eb00a3", "250": "e9728eefddbaed5b", "251": "fe8ad8aaa5b6f652", "252": "be78134816511eaf", "253": "4737624cd139d117", "254": "5fcab665dcd75a7d", "255": "33b1870821fb012a", "256": "f379c891e179d45a", "257": "cef806733796b489", "258": "76578e90353475ed", "259": "04d938f720c1db19", "260": "57931ddf408ceeeb", "261": "b4fbbd4b7a13369e", "262": "d64c6d160a7faed4", "263": "2d1c86501cdb42dd", "264": "47fc05295105c312", "265": "3528c4c8a0e2db61", "266": "5eb83040a203bd16", "267": "20a2080eac259e2b", "268": "0598c15fa2a12fad", "269": "3a8a257d1f54b2ae", "270": "ef2d2abc6e491968", "271": "a1e0a3465632c13a", "272": "e6273a4f9b65952b", "273": "38a03e32ab28113e", "274": "400d2883ce278be7", "275": "a13f9628796dc16a", "276": "6e3ce4714f76f2f9", "277": "de2233c73c628824", "278": "a144dcdc61af17a5", "279": "672ba0ee4d6993c2", "280": "daf108b14eb1d2d5", "281": "a618b7b467aa2c0c", "282": "60a2d42e0373376c", "283": "934bee98555c5f5b", "284": "3a30dd7bf2ececaa", "285": "23c1a365d72c9b86", "286": "3323cd7407922799", "287": "9050a3ebe80326e5", "288": "10d7c8f3898b68e5", "289": "2ce5bbc30db985b5", "290": "2a963843e9a8e153", "291": "28537a0c0fbd566f", "292": "3659ed0b62c213c5", "293": "912cf03978233ef7", "294": "731bbd16463d7ad6", "295": "2ed3af4b96bcf920", "296": "7fde599bf90ee0bf", "297": "69f2014dab3c4a93", "298": "9372bf2b2a6a0b97", "299": "5a4d1c1ef8bed9bb", "300": "b1d204e97a3c45dc", "301": "65d822bbba496dee", "302": "1c69dcee9405ce47", "303": "b796283dc9729998", "304": "0bd7ed52b69464bf", "305": "578638c4278d00c6", "306": "88e82bb9fffbe642", "307": "c556ac339be4aba5", "308": "d7cad630fb1d1414", "309": "768db8a3a299f590", "310": "321732baccae846b", "311": "c7de3fe21e2e53b4", "312": "05f1ad1f29e435ff", "313": "9a7b4968676954d7", "314": "78aa95566e86b57f", "315": "a0fdc688ac30f227", "316": "c24925d361d1eb6f", "317": "31eb2ccb16c5af0f", "318": "2491d05d8bb29ad7", "319": "d2a7888a77082d4c", "320": "bfcc583da029935c", "321": "482dcf1e6b7ebe00", "322": "f622408f14c9177e", "323": "6c1a09679076ea89", "324": "3b89350265b5abe7", "325": "4ab8ffab1d51ca61", "327": "60ce4fcea460e0a6"} \ No newline at end of file diff --git a/graphify-out/2026-09-13/.graphify_labels.json b/graphify-out/2026-09-13/.graphify_labels.json index 9141385..0447a12 100644 --- a/graphify-out/2026-09-13/.graphify_labels.json +++ b/graphify-out/2026-09-13/.graphify_labels.json @@ -7,7 +7,7 @@ "5": "CmsController", "6": "tickets.controller.ts", "7": "SmsSettingsPage.tsx", - "8": "SmsService", + "8": "SettingsService", "9": "devDependencies", "10": "CreateReviewDto", "11": "UsersService", @@ -32,7 +32,7 @@ "30": "DEVOPS-001", "31": "DOC-001", "32": "adminRoutes.tsx", - "33": "WholesaleService", + "33": "WholesaleApplyDto", "34": "B2BService", "35": "ContactService", "36": "FaqService", @@ -45,7 +45,7 @@ "43": "BannersService", "44": "TestimonialsService", "45": "What You Must Do When Invoked", - "46": "WholesaleApplyDto", + "46": "sms.service.ts", "47": "IngredientsService", "48": "Button.tsx", "49": "devDependencies", @@ -55,9 +55,9 @@ "53": "SmartAdvisorService", "54": "Modal.tsx", "55": "UITexts.tsx", - "56": "PrescriptionsManager.tsx", + "56": "Orders.tsx", "57": "Role & Core Objective", - "58": "MetricsController", + "58": "ConfirmModal.tsx", "59": "compilerOptions", "60": "admin.controller.ts", "61": "ProductPage.tsx", @@ -66,7 +66,7 @@ "64": "compilerOptions", "65": "admin.service.ts", "66": "AdminController", - "67": "OrdersController", + "67": "SmsService", "68": "components/Skeleton.tsx", "69": "Required Review Group Closures", "70": "compilerOptions", @@ -75,7 +75,7 @@ "73": "Operational Rules & Boundaries", "74": "WikiController", "75": "PetsController", - "76": "RevalidationService", + "76": "ProductsService", "77": "seo.module.ts", "78": "rss.xml/route.ts", "79": "🏢 AI Software Agency — Master Orchestration Protocol v3", @@ -87,11 +87,11 @@ "85": "app.e2e-spec.js", "86": "zibal.service.ts", "87": "dependencies", - "88": "CreateEBankCheckoutDto", + "88": "payment.controller.ts", "89": "seed-products.ts", "90": "20260526145407_init/migration.sql", "91": "Reconciled Audit Roles & Assignments", - "92": ".retryPayment", + "92": "OrdersService", "93": "auth.controller.ts", "94": "Phase 3.1 — Human Review Preparation and Master Backlog Critique", "95": "wiki/[slug]/page.tsx", @@ -105,8 +105,8 @@ "103": "Comprehensive Change Log", "104": "Products.tsx", "105": "Operational Rules & Boundaries", - "106": "InitiatePaymentDto", - "107": "PaginationDto", + "106": "PaymentService", + "107": "BlogsService", "108": "PrismaService", "109": "1. Summary of Integrity Repairs Performed", "110": "Operational Rules & Boundaries", @@ -114,7 +114,7 @@ "112": "Operational Rules & Boundaries", "113": "lib/services/api.ts", "114": "AppService", - "115": "MediaSelector.tsx", + "115": "Media.tsx", "116": "Vazirmatn Changelog", "117": "Vazirmatn Font فونت وزیرمتن", "118": "Operational Rules & Boundaries", @@ -127,7 +127,7 @@ "125": "validate_integrity.js", "126": "admin-panel/package.json", "127": "Sahel-Font", - "128": "HomeController", + "128": "auth.module.ts", "129": "WikiController", "130": "Sahel-Font", "131": "Role & Core Objective", @@ -144,13 +144,13 @@ "142": "start-dev.js", "143": "generate-openapi.js", "144": "SafeImage.tsx", - "145": "Orders.tsx", + "145": "PaginationDto", "146": "System Discovery", "147": "torob.controller.ts", "148": "ProductDto", - "149": "CreateOrderDto", + "149": "PetsController", "150": "Product Requirement Document (PRD)", - "151": "OrdersService", + "151": "SmsLogQueryDto", "152": "@eslint/js", "153": "exclude", "154": "Baseline Command Plan & Reconciled Command History", @@ -178,7 +178,7 @@ "176": "uploads/[...path]/route.ts", "177": "eslint-config-prettier", "178": "نقشه جامع پوشش تست‌های سرتاسری (E2E Test Coverage Map) — پروژه Canina", - "179": "CreateApiKeyDto", + "179": "eslint-config-next", "180": "API Contract Specification", "181": "⚙️ Backend Technical Review (05_dev_backend)", "182": "🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)", @@ -203,7 +203,7 @@ "201": "deploy.sh", "202": "🔒 Security & Performance Review (09_devops_security)", "203": "👁️ UX & Persona Interface Review (08_visual_qa)", - "204": "reviews.service.ts", + "204": "RevalidationService", "205": "prisma/scientificTerms.ts", "206": "seed-blogs.ts", "207": "seed-custom.ts", @@ -307,7 +307,6 @@ "315": "typescript", "317": "revalidate/route.ts", "318": "MaskableField.tsx", - "319": "@tailwindcss/postcss", "321": "orders/page.tsx", "322": "pets/page.tsx", "325": "@types/react-dom", diff --git a/graphify-out/2026-09-13/GRAPH_REPORT.md b/graphify-out/2026-09-13/GRAPH_REPORT.md index c37db10..dd8a5da 100644 --- a/graphify-out/2026-09-13/GRAPH_REPORT.md +++ b/graphify-out/2026-09-13/GRAPH_REPORT.md @@ -1,16 +1,16 @@ # Graph Report - canina (2026-09-13) ## Corpus Check -- 609 files · ~1,125,316 words +- 609 files · ~1,125,530 words - Verdict: corpus is large enough that graph structure adds value. ## Summary -- 4304 nodes · 7945 edges · 313 communities (217 shown, 96 thin omitted) +- 4304 nodes · 7950 edges · 312 communities (215 shown, 97 thin omitted) - Extraction: 96% EXTRACTED · 4% INFERRED · 0% AMBIGUOUS · INFERRED: 303 edges (avg confidence: 0.79) - Token cost: 0 input · 0 output ## Graph Freshness -- Built from commit: `8e4ee984` +- Built from commit: `ef0731ff` - Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `graphify update .` after code changes (no API cost). @@ -23,7 +23,7 @@ - CmsController - tickets.controller.ts - SmsSettingsPage.tsx -- SmsService +- SettingsService - devDependencies - CreateReviewDto - UsersService @@ -48,7 +48,7 @@ - DEVOPS-001 - DOC-001 - adminRoutes.tsx -- WholesaleService +- WholesaleApplyDto - B2BService - ContactService - FaqService @@ -61,7 +61,7 @@ - BannersService - TestimonialsService - What You Must Do When Invoked -- WholesaleApplyDto +- sms.service.ts - IngredientsService - Button.tsx - devDependencies @@ -71,9 +71,9 @@ - SmartAdvisorService - Modal.tsx - UITexts.tsx -- PrescriptionsManager.tsx +- Orders.tsx - Role & Core Objective -- MetricsController +- ConfirmModal.tsx - compilerOptions - admin.controller.ts - ProductPage.tsx @@ -82,7 +82,7 @@ - compilerOptions - admin.service.ts - AdminController -- OrdersController +- SmsService - components/Skeleton.tsx - Required Review Group Closures - compilerOptions @@ -91,7 +91,7 @@ - Operational Rules & Boundaries - WikiController - PetsController -- RevalidationService +- ProductsService - seo.module.ts - rss.xml/route.ts - 🏢 AI Software Agency — Master Orchestration Protocol v3 @@ -103,11 +103,11 @@ - app.e2e-spec.js - zibal.service.ts - dependencies -- CreateEBankCheckoutDto +- payment.controller.ts - seed-products.ts - 20260526145407_init/migration.sql - Reconciled Audit Roles & Assignments -- .retryPayment +- OrdersService - auth.controller.ts - Phase 3.1 — Human Review Preparation and Master Backlog Critique - wiki/[slug]/page.tsx @@ -121,8 +121,8 @@ - Comprehensive Change Log - Products.tsx - Operational Rules & Boundaries -- InitiatePaymentDto -- PaginationDto +- PaymentService +- BlogsService - PrismaService - 1. Summary of Integrity Repairs Performed - Operational Rules & Boundaries @@ -130,7 +130,7 @@ - Operational Rules & Boundaries - lib/services/api.ts - AppService -- MediaSelector.tsx +- Media.tsx - Vazirmatn Changelog - Vazirmatn Font فونت وزیرمتن - Operational Rules & Boundaries @@ -143,7 +143,7 @@ - validate_integrity.js - admin-panel/package.json - Sahel-Font -- HomeController +- auth.module.ts - WikiController - Sahel-Font - Role & Core Objective @@ -160,13 +160,13 @@ - start-dev.js - generate-openapi.js - SafeImage.tsx -- Orders.tsx +- PaginationDto - System Discovery - torob.controller.ts - ProductDto -- CreateOrderDto +- PetsController - Product Requirement Document (PRD) -- OrdersService +- SmsLogQueryDto - @eslint/js - exclude - Baseline Command Plan & Reconciled Command History @@ -193,7 +193,7 @@ - uploads/[...path]/route.ts - eslint-config-prettier - نقشه جامع پوشش تست‌های سرتاسری (E2E Test Coverage Map) — پروژه Canina -- CreateApiKeyDto +- eslint-config-next - API Contract Specification - ⚙️ Backend Technical Review (05_dev_backend) - 🎨 Frontend & Admin Panel Technical Review (06_dev_frontend) @@ -218,7 +218,7 @@ - deploy.sh - 🔒 Security & Performance Review (09_devops_security) - 👁️ UX & Persona Interface Review (08_visual_qa) -- reviews.service.ts +- RevalidationService - prisma/scientificTerms.ts - seed-blogs.ts - seed-custom.ts @@ -305,7 +305,6 @@ - typescript - revalidate/route.ts - MaskableField.tsx -- @tailwindcss/postcss - @types/react-dom - eslint-plugin-react-refresh @@ -328,29 +327,29 @@ backend/src/auth/auth.controller.ts → frontend/admin-panel/src/types/admin.ts - `BlogsController` --references--> `ApiResponse` [EXTRACTED] backend/src/blogs/blogs.controller.ts → frontend/admin-panel/src/types/admin.ts -- `HomeController` --references--> `ApiResponse` [EXTRACTED] - backend/src/home/home.controller.ts → frontend/admin-panel/src/types/admin.ts - `OrdersController` --references--> `ApiResponse` [EXTRACTED] backend/src/orders/orders.controller.ts → frontend/admin-panel/src/types/admin.ts +- `PetsController` --references--> `ApiResponse` [EXTRACTED] + backend/src/pets/pets.controller.ts → frontend/admin-panel/src/types/admin.ts ## Import Cycles -- 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` - 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/services/authService.ts -> frontend/application/lib/services/api.ts` +- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/api.ts` - 4-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/orderService.ts -> frontend/application/lib/services/api.ts` -## Communities (313 total, 96 thin omitted) +## Communities (312 total, 97 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.07 -Nodes (38): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+30 more) +Cohesion: 0.06 +Nodes (34): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+26 more) ### Community 2 - "ApiKeysService" -Cohesion: 0.09 -Nodes (16): ApiKeysController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more) +Cohesion: 0.05 +Nodes (33): ApiKeysController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+25 more) ### Community 3 - "productService.ts" Cohesion: 0.06 @@ -372,21 +371,21 @@ Nodes (29): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, Cohesion: 0.20 Nodes (10): PatternItem, SmsConfigState, SmsEventDefinition, SmsEventVariable, SmsLogItem, SmsLogStats, SmsRule, SmsSettingsPage() (+2 more) -### Community 8 - "SmsService" -Cohesion: 0.05 -Nodes (28): SmsEventDefinition, SmsLogQuery, SmsService, Injectable, SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber (+20 more) +### Community 8 - "SettingsService" +Cohesion: 0.09 +Nodes (17): SettingsController, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller, Delete (+9 more) ### Community 9 - "devDependencies" Cohesion: 0.08 Nodes (25): devDependencies, eslint, @eslint/eslintrc, eslint-plugin-prettier, globals, @nestjs/cli, @nestjs/testing, prettier (+17 more) ### Community 10 - "CreateReviewDto" -Cohesion: 0.08 -Nodes (25): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ReviewsController (+17 more) +Cohesion: 0.07 +Nodes (30): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+22 more) ### Community 11 - "UsersService" -Cohesion: 0.06 -Nodes (38): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), JwtPayload, JwtStrategy, Injectable, AddressDto, ApiProperty (+30 more) +Cohesion: 0.08 +Nodes (31): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+23 more) ### Community 12 - "index.ts" Cohesion: 0.06 @@ -402,7 +401,7 @@ Nodes (35): B2BPortal, VerifyContent(), AddressFormData, AddressModal(), Address ### Community 15 - "src/services/api.ts" Cohesion: 0.08 -Nodes (32): Layout(), ProtectedRoute(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES (+24 more) +Nodes (30): Layout(), ProtectedRoute(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES (+22 more) ### Community 16 - "DoctorQueryDto" Cohesion: 0.09 @@ -413,8 +412,8 @@ Cohesion: 0.14 Nodes (18): B2BPage(), generateMetadata(), ContactPage(), generateMetadata(), generateMetadata(), getInitialVideos(), Videos(), ContactFormClient() (+10 more) ### Community 18 - "JwtAuthGuard" -Cohesion: 0.20 -Nodes (7): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload +Cohesion: 0.16 +Nodes (8): JwtAuthGuard, Injectable, ROLES_KEY, SortOrder, RequestWithUser, RolesGuard, Injectable, UserReqPayload ### Community 19 - "BulkPriceAdjustmentDto" Cohesion: 0.30 @@ -425,8 +424,8 @@ Cohesion: 0.07 Nodes (31): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+23 more) ### Community 21 - "useSettingsStore" -Cohesion: 0.08 -Nodes (29): ClientLayout(), MobileBottomNav, PrescriptionUploadModal, metadata, B2BLandingClient(), BrandLogo(), BrandLogoProps, Footer() (+21 more) +Cohesion: 0.09 +Nodes (26): CartDrawer, ClientLayout(), MobileBottomNav, PrescriptionUploadModal, metadata, B2BLandingClient(), BrandLogo(), BrandLogoProps (+18 more) ### Community 23 - "MenuService" Cohesion: 0.12 @@ -465,12 +464,12 @@ 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.07 -Nodes (17): App(), Props, RouteErrorBoundary, State, CategoryDist, DashboardData, BestSellerItem, CategoryDistItem (+9 more) +Cohesion: 0.11 +Nodes (10): App(), Props, RouteErrorBoundary, State, CategoryDist, DashboardData, AdminRouteConfig, Dashboard (+2 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 @@ -489,8 +488,8 @@ Cohesion: 0.07 Nodes (25): اجرای بک‌اند, اجرای فرانت‌اند, اجرای پروژه در سرور با PM2, برای راه‌اندازی بک‌اند:, برای راه‌اندازی فرانت‌اند Next.js:, بیلد کردن پروژه (Building), ذخیره پروسه‌ها تا پس از ری‌استارت سرور قطع نشوند:, راه‌اندازی و انتشار سیستم (Setup & Deployment) (+17 more) ### Community 38 - "Button" -Cohesion: 0.16 -Nodes (13): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Button(), ThSort(), ThSortProps, GatewayHealth, Stats (+5 more) +Cohesion: 0.10 +Nodes (20): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Badge(), BadgeProps, BadgeVariant, variantStyles, Button() (+12 more) ### Community 39 - "CategoriesController" Cohesion: 0.10 @@ -505,8 +504,8 @@ 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 @@ -520,17 +519,17 @@ Nodes (14): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Cohesion: 0.07 Nodes (26): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+18 more) -### Community 46 - "WholesaleApplyDto" -Cohesion: 0.29 -Nodes (6): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto +### Community 46 - "sms.service.ts" +Cohesion: 0.09 +Nodes (16): DEFAULT_SMS_RULES, SMS_EVENT_DEFINITIONS, SmsEventDefinition, SmsEventVariable, SmsRule, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions (+8 more) ### Community 47 - "IngredientsService" Cohesion: 0.13 Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 48 - "Button.tsx" -Cohesion: 0.10 -Nodes (15): ButtonProps, ButtonSize, ButtonVariant, Spinner(), FAQ, SslStatus, BannersManager, FAQManager (+7 more) +Cohesion: 0.09 +Nodes (17): ButtonProps, ButtonSize, ButtonVariant, Spinner(), BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps (+9 more) ### Community 49 - "devDependencies" Cohesion: 0.11 @@ -538,7 +537,7 @@ Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, glo ### Community 50 - "devDependencies" Cohesion: 0.12 -Nodes (17): eslint-config-next, devDependencies, eslint, eslint-config-next, jsdom, @testing-library/jest-dom, @testing-library/react, @types/node (+9 more) +Nodes (17): devDependencies, eslint, jsdom, @tailwindcss/postcss, @testing-library/jest-dom, @testing-library/react, @types/node, @types/react (+9 more) ### Community 51 - "BlogsController" Cohesion: 0.07 @@ -553,24 +552,24 @@ Cohesion: 0.13 Nodes (14): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 54 - "Modal.tsx" -Cohesion: 0.07 -Nodes (21): maxWidthClasses, Modal(), ModalProps, ContactInfoItem, ContactSubmission, MENU_TABS, MenuItem, MenuType (+13 more) +Cohesion: 0.09 +Nodes (17): maxWidthClasses, Modal(), ModalProps, ContactInfoItem, ContactSubmission, FAQ, BlogCommentItem, ProductReview (+9 more) ### Community 55 - "UITexts.tsx" -Cohesion: 0.14 -Nodes (12): ICON_REGISTRY, IconPickerModal(), IconPickerModalProps, ToggleSwitch(), ToggleSwitchProps, AppSitePage, PageSection, SectionField (+4 more) +Cohesion: 0.05 +Nodes (35): ICON_REGISTRY, IconPickerModal(), IconPickerModalProps, ImagePreviewModal(), ImagePreviewModalProps, getFileType(), Media, MediaSelector() (+27 more) -### Community 56 - "PrescriptionsManager.tsx" -Cohesion: 0.12 -Nodes (14): Badge(), BadgeProps, BadgeVariant, variantStyles, Skeleton(), MonitoringStats, ProductItem, UserRecord (+6 more) +### Community 56 - "Orders.tsx" +Cohesion: 0.11 +Nodes (15): Skeleton(), MonitoringStats, getPaymentMethodLabel(), Order, ORDER_STATUS_MAP, OrderItem, Orders(), PaymentTx (+7 more) ### Community 57 - "Role & Core Objective" Cohesion: 0.09 Nodes (22): CREATE MODE — Normal Operation, Expected JSON Output Schema, File Scope Boundary, Forbidden Actions, MODE 1: REVIEW (called during Review Phase), MODE 2: CONTENT CREATION (standalone task from backlog), Operating Modes, Operational Rules & Boundaries (+14 more) -### Community 58 - "MetricsController" -Cohesion: 0.29 -Nodes (5): ApiExcludeController, MetricsController, Controller, Get, Res +### Community 58 - "ConfirmModal.tsx" +Cohesion: 0.09 +Nodes (15): ConfirmModal(), ConfirmModalProps, HeroBanner, VetTestimonial, Doctor, MENU_TABS, MenuItem, MenuType (+7 more) ### Community 59 - "compilerOptions" Cohesion: 0.06 @@ -582,11 +581,11 @@ Nodes (11): CreateUserDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty ### Community 61 - "ProductPage.tsx" Cohesion: 0.11 -Nodes (39): ArchiveProductCard(), ArchiveProductListItem(), CATEGORY_MAP, ICON_MAP, FeaturedProducts(), ProductCard(), Header(), MobileBottomNav() (+31 more) +Nodes (40): ArchiveProductCard(), ArchiveProductListItem(), CATEGORY_MAP, ICON_MAP, FeaturedProducts(), ProductCard(), Header(), MobileBottomNav() (+32 more) ### Community 62 - "admin.module.ts" -Cohesion: 0.04 -Nodes (34): AdminModule, Module, PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller (+26 more) +Cohesion: 0.08 +Nodes (17): ReportsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Get, Query (+9 more) ### Community 63 - "dependencies" Cohesion: 0.05 @@ -604,9 +603,9 @@ Nodes (7): CouponTargetInput, PaginationQuery, applyRounding(), calculateSelling Cohesion: 0.10 Nodes (12): AdminController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+4 more) -### Community 67 - "OrdersController" -Cohesion: 0.15 -Nodes (11): OrdersController, ApiBearerAuth, ApiTags, Controller, IsNotEmpty, IsNumber, IsString, UseGuards (+3 more) +### Community 67 - "SmsService" +Cohesion: 0.20 +Nodes (3): SmsService, Injectable, Optional ### Community 68 - "components/Skeleton.tsx" Cohesion: 0.21 @@ -640,9 +639,9 @@ Nodes (14): ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, De Cohesion: 0.05 Nodes (47): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, CreatePetDto, ApiProperty (+39 more) -### Community 76 - "RevalidationService" -Cohesion: 0.07 -Nodes (25): Optional, RevalidationModule, Global, Module, RevalidationService, Injectable, GetProductsDto, ApiPropertyOptional (+17 more) +### Community 76 - "ProductsService" +Cohesion: 0.11 +Nodes (14): ProductsController, ApiOperation, ApiTags, Body, Controller, Get, Param, Patch (+6 more) ### Community 77 - "seo.module.ts" Cohesion: 0.16 @@ -688,9 +687,9 @@ Nodes (9): GatewayHealthResult, IPaymentGateway, PaymentInquiryResult, PaymentRe Cohesion: 0.11 Nodes (19): dependencies, axios, lucide-react, motion, next, nextjs-toploader, react, react-dom (+11 more) -### Community 88 - "CreateEBankCheckoutDto" -Cohesion: 0.22 -Nodes (8): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsNumber, IsOptional, IsString, Min +### Community 88 - "payment.controller.ts" +Cohesion: 0.12 +Nodes (19): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsNumber, IsOptional, IsString, Min (+11 more) ### Community 89 - "seed-products.ts" Cohesion: 0.17 @@ -704,9 +703,9 @@ Nodes (14): "coupons", "health_logs", "order_items", "orders", "pet_medical_cond Cohesion: 0.12 Nodes (15): 10. Documentation Engineer, 1. Lead Architect / Orchestrator, 2. React / Vite Storefront Auditor, 3. NestJS Backend Auditor, 4. Admin Features Auditor, 5. Database & Data Integrity Auditor, 6. Security Auditor, 7. TypeScript & Code Quality Auditor (+7 more) -### Community 92 - ".retryPayment" -Cohesion: 0.19 -Nodes (11): ApiBadRequestResponse, ApiCreatedResponse, ApiNotFoundResponse, ApiOkResponse, ApiOperation, Body, Get, Param (+3 more) +### Community 92 - "OrdersService" +Cohesion: 0.06 +Nodes (35): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+27 more) ### Community 93 - "auth.controller.ts" Cohesion: 0.06 @@ -753,24 +752,20 @@ Cohesion: 0.15 Nodes (12): 10. `TASK-VERIFY-001`, 1. `TASK-SEC-001`, 2. `TASK-SEC-002`, 3. `TASK-SEC-003`, 4. `TASK-FIN-001`, 5. `TASK-BUILD-001`, 6. `TASK-AUTH-001`, 7. `TASK-FE-001` (+4 more) ### Community 104 - "Products.tsx" -Cohesion: 0.10 -Nodes (24): Input, InputProps, formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData (+16 more) +Cohesion: 0.09 +Nodes (25): Input, InputProps, formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData (+17 more) ### Community 105 - "Operational Rules & Boundaries" Cohesion: 0.17 Nodes (11): 1. Detect Test Runner from Tech Stack, 2. Execution Output Capture (Mandatory), 3. Acceptance Criteria Verification, 4. Failure Routing Protocol, 5. Success Routing Protocol, 6. Forbidden Actions, Expected JSON Output Schema, Operational Rules & Boundaries (+3 more) -### Community 106 - "InitiatePaymentDto" -Cohesion: 0.43 -Nodes (7): InitiatePaymentDto, InitiateWalletTopupDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString - -### Community 107 - "PaginationDto" -Cohesion: 0.07 -Nodes (18): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional (+10 more) +### Community 107 - "BlogsService" +Cohesion: 0.13 +Nodes (5): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable ### Community 108 - "PrismaService" Cohesion: 0.06 -Nodes (25): CategoryQuery, DEFAULT_SMS_RULES, SMS_EVENT_DEFINITIONS, SmsEventVariable, SmsRule, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions (+17 more) +Nodes (23): ApiExcludeController, CategoryQuery, PetQuery, PetsService, Injectable, MetricsController, Controller, Get (+15 more) ### Community 109 - "1. Summary of Integrity Repairs Performed" Cohesion: 0.17 @@ -789,16 +784,16 @@ 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 - "lib/services/api.ts" -Cohesion: 0.08 -Nodes (22): BlogPost, ContactInfoItem, FAQItem, OrderDetailsModalProps, ProductReviews, ProductReviews(), ProductReviewsProps, ReviewItem (+14 more) +Cohesion: 0.06 +Nodes (26): BlogPost, ContactInfoItem, FAQItem, OrderDetailsModalProps, ProductReviews, ProductReviews(), ProductReviewsProps, ReviewItem (+18 more) ### Community 114 - "AppService" Cohesion: 0.29 Nodes (5): AppController, Controller, Get, AppService, Injectable -### Community 115 - "MediaSelector.tsx" -Cohesion: 0.05 -Nodes (45): ConfirmModal(), ConfirmModalProps, ImagePreviewModal(), ImagePreviewModalProps, getFileType(), Media, MediaSelector(), MediaSelectorProps (+37 more) +### Community 115 - "Media.tsx" +Cohesion: 0.10 +Nodes (17): Pagination(), PaginationProps, Category, getFileType(), Media, MediaManager(), Pet, DoctorOption (+9 more) ### Community 116 - "Vazirmatn Changelog" Cohesion: 0.18 @@ -829,8 +824,8 @@ Cohesion: 0.17 Nodes (3): Body, Post, CouponInput ### Community 123 - "auth.service.ts" -Cohesion: 0.07 -Nodes (13): AppModule, Module, AuthModule, Module, AdminLoginInput, AuthService, LoginInput, RegisterInput (+5 more) +Cohesion: 0.08 +Nodes (9): AppModule, Module, AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, RedisService (+1 more) ### Community 124 - "Repository Map" Cohesion: 0.20 @@ -848,13 +843,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 - "HomeController" -Cohesion: 0.16 -Nodes (10): HomeController, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, HomeModule, Module (+2 more) +### Community 128 - "auth.module.ts" +Cohesion: 0.15 +Nodes (12): AdminModule, Module, DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload (+4 more) ### Community 129 - "WikiController" -Cohesion: 0.21 -Nodes (9): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+1 more) +Cohesion: 0.13 +Nodes (13): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+5 more) ### Community 130 - "Sahel-Font" Cohesion: 0.20 @@ -913,12 +908,12 @@ Cohesion: 0.25 Nodes (6): app_module_1, core_1, fs, path, swagger_1, yaml ### Community 144 - "SafeImage.tsx" -Cohesion: 0.09 -Nodes (25): buildTorobProductSpec(), buildTorobProductTitle(), dynamic, GET(), revalidate, BlogPostClientProps, PLAYBACK_RATES, PodcastInlinePlayer() (+17 more) +Cohesion: 0.10 +Nodes (24): buildTorobProductSpec(), buildTorobProductTitle(), dynamic, GET(), revalidate, BlogPostClientProps, PLAYBACK_RATES, PodcastInlinePlayer() (+16 more) -### Community 145 - "Orders.tsx" -Cohesion: 0.22 -Nodes (8): getPaymentMethodLabel(), Order, ORDER_STATUS_MAP, OrderItem, Orders(), PaymentTx, toPersianDigits(), Orders +### Community 145 - "PaginationDto" +Cohesion: 0.15 +Nodes (13): PaginationDto, ApiPropertyOptional, IsEnum, IsInt, IsOptional, IsString, Min, Type (+5 more) ### Community 146 - "System Discovery" Cohesion: 0.25 @@ -932,14 +927,18 @@ Nodes (8): buildTorobProductSpec(), buildTorobProductTitle(), TorobController, A Cohesion: 0.16 Nodes (7): ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber, IsOptional, IsString -### Community 149 - "CreateOrderDto" -Cohesion: 0.22 -Nodes (11): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+3 more) +### Community 149 - "PetsController" +Cohesion: 0.15 +Nodes (11): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+3 more) ### Community 150 - "Product Requirement Document (PRD)" Cohesion: 0.29 Nodes (6): 1. Executive Vision, 2. Target Audience, 3. Functional Requirements, 4. Non-Functional Requirements (Performance, Security), 5. Epic / Feature Breakdown, Product Requirement Document (PRD) +### Community 151 - "SmsLogQueryDto" +Cohesion: 0.25 +Nodes (7): SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type + ### Community 153 - "exclude" Cohesion: 0.22 Nodes (8): exclude, extends, dist, node_modules, prisma, **/*spec.ts, test, ./tsconfig.json @@ -1032,10 +1031,6 @@ Nodes (5): dynamic, GET(), getCandidateUrls(), getMimeType(), HEAD() 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 - "CreateApiKeyDto" -Cohesion: 0.27 -Nodes (7): CreateApiKeyDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsOptional, IsString - ### Community 180 - "API Contract Specification" Cohesion: 0.50 Nodes (3): 1. OpenAPI 3.0 (Swagger) Specification, 2. Endpoint Definitions & Data Types, API Contract Specification @@ -1053,8 +1048,8 @@ Cohesion: 0.50 Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO & Content Strategy Review (12_seo_content) ### Community 185 - "CartDrawer.tsx" -Cohesion: 0.32 -Nodes (5): CartDrawer, CartDrawer(), DeleteConfirmModal(), DeleteConfirmModalProps, mockProduct +Cohesion: 0.36 +Nodes (4): CartDrawer(), DeleteConfirmModal(), DeleteConfirmModalProps, mockProduct ### Community 191 - "graphify reference: add a URL and watch a folder" Cohesion: 0.50 @@ -1096,9 +1091,9 @@ Nodes (3): Deploy on Vercel, Getting Started, Learn More Cohesion: 0.50 Nodes (3): COMPOSE_DOCKER_CLI_BUILD, DOCKER_BUILDKIT, deploy.sh script -### Community 204 - "reviews.service.ts" -Cohesion: 0.33 -Nodes (5): ApiProperty, IsIn, IsOptional, IsString, UpdateReviewDto +### Community 204 - "RevalidationService" +Cohesion: 0.16 +Nodes (6): Optional, RevalidationModule, Global, Module, RevalidationService, Injectable ### Community 211 - "Master Task Backlog (Phase 3.3)" Cohesion: 0.67 @@ -1116,13 +1111,9 @@ Nodes (3): generateMetadata(), formatIngredientDisplayName(), IngredientWiki() Cohesion: 0.67 Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font -### 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 @@ -1131,22 +1122,22 @@ Nodes (3): GET(), handleRevalidate(), POST() ## Knowledge Gaps - **1356 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1351 more) These have ≤1 connection - possible missing edges or undocumented components. -- **96 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. +- **97 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 `ApiKeysService` to `HomeController`, `WikiController`, `OrdersController`, `BlogsController`, `PetsController`, `RevalidationService`, `UsersService`, `src/services/api.ts`, `auth.controller.ts`?** +- **Why does `ApiResponse` connect `ApiKeysService` to `WikiController`, `BlogsController`, `PetsController`, `ProductsService`, `UsersService`, `src/services/api.ts`, `OrdersService`, `auth.controller.ts`?** _High betweenness centrality (0.076) - this node is a cross-community bridge._ -- **Why does `Roles()` connect `Roles` to `WholesaleService`, `B2BService`, `ContactService`, `FaqService`, `CmsController`, `tickets.controller.ts`, `SmsService`, `SslController`, `BannersService`, `RevalidationService`, `CreateReviewDto`, `TestimonialsService`, `IngredientsService`, `JwtAuthGuard`, `PrescriptionsService`, `SmartAdvisorService`, `MenuService`?** +- **Why does `Roles()` connect `Roles` to `CmsController`, `tickets.controller.ts`, `SettingsService`, `CreateReviewDto`, `PaginationDto`, `JwtAuthGuard`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `ContactService`, `FaqService`, `SslController`, `BannersService`, `TestimonialsService`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `ProductsService`, `payment.controller.ts`?** _High betweenness centrality (0.066) - this node is a cross-community bridge._ -- **Why does `PrismaService` connect `PrismaService` to `HomeController`, `app.module.ts`, `ApiKeysService`, `CmsController`, `tickets.controller.ts`, `SmsService`, `UsersService`, `DoctorQueryDto`, `torob.controller.ts`, `CreateVideoDto`, `MenuService`, `OrdersService`, `WholesaleService`, `B2BService`, `ContactService`, `FaqService`, `ZibalService`, `CategoriesController`, `MediaController`, `ZibalEBankService`, `BannersService`, `TestimonialsService`, `IngredientsService`, `CreateApiKeyDto`, `PrescriptionsService`, `SmartAdvisorService`, `MetricsController`, `admin.module.ts`, `admin.service.ts`, `OrdersController`, `PetsController`, `RevalidationService`, `reviews.service.ts`, `seo.module.ts`, `zibal.service.ts`, `PaginationDto`, `auth.service.ts`?** +- **Why does `PrismaService` connect `PrismaService` to `app.module.ts`, `ApiKeysService`, `WikiController`, `CmsController`, `tickets.controller.ts`, `SettingsService`, `DoctorQueryDto`, `torob.controller.ts`, `CreateVideoDto`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `ContactService`, `FaqService`, `ZibalService`, `CategoriesController`, `MediaController`, `ZibalEBankService`, `BannersService`, `TestimonialsService`, `sms.service.ts`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `admin.module.ts`, `admin.service.ts`, `SmsService`, `PetsController`, `RevalidationService`, `ProductsService`, `seo.module.ts`, `zibal.service.ts`, `OrdersService`, `PaymentService`, `BlogsService`, `auth.service.ts`?** _High betweenness centrality (0.031) - this node is a cross-community bridge._ - **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?** _1356 weakly-connected nodes found - possible documentation gaps or missing edges._ - **Should `app.module.ts` be split into smaller, more focused modules?** - _Cohesion score 0.06516290726817042 - nodes in this community are weakly interconnected._ + _Cohesion score 0.06265664160401002 - nodes in this community are weakly interconnected._ - **Should `ApiKeysService` be split into smaller, more focused modules?** - _Cohesion score 0.09195402298850575 - nodes in this community are weakly interconnected._ + _Cohesion score 0.05012531328320802 - nodes in this community are weakly interconnected._ - **Should `productService.ts` be split into smaller, more focused modules?** _Cohesion score 0.06187202538339503 - nodes in this community are weakly interconnected._ \ No newline at end of file diff --git a/graphify-out/2026-09-13/graph.json b/graphify-out/2026-09-13/graph.json index a76c7f6..8491cd9 100644 --- a/graphify-out/2026-09-13/graph.json +++ b/graphify-out/2026-09-13/graph.json @@ -94,19 +94,6 @@ "community_name": "app.module.ts", "norm_label": "doctorsmodule" }, - { - "label": "FaqModule", - "file_type": "code", - "source_file": "backend/src/faq/faq.module.ts", - "source_location": "L9", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_faq_faq_module_faqmodule", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "faqmodule" - }, { "label": "IngredientsModule", "file_type": "code", @@ -146,19 +133,6 @@ "community_name": "app.module.ts", "norm_label": "paymentmodule" }, - { - "label": "PrescriptionsModule", - "file_type": "code", - "source_file": "backend/src/prescriptions/prescriptions.module.ts", - "source_location": "L13", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_prescriptions_prescriptions_module_prescriptionsmodule", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "prescriptionsmodule" - }, { "label": "PrismaModule", "file_type": "code", @@ -263,6 +237,19 @@ "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", @@ -446,30 +433,17 @@ "norm_label": "roundingmode" }, { - "label": "InitiatePaymentDto", + "label": "PaymentService", "file_type": "code", - "source_file": "backend/src/payment/dto/initiate-payment.dto.ts", - "source_location": "L4", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L19", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_initiatepaymentdto", + "id": "backend_src_payment_payment_service_paymentservice", "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "initiatepaymentdto" - }, - { - "label": "InitiateWalletTopupDto", - "file_type": "code", - "source_file": "backend/src/payment/dto/initiate-payment.dto.ts", - "source_location": "L16", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_initiatewallettopupdto", - "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "initiatewallettopupdto" + "community_name": "PaymentService", + "norm_label": "paymentservice" }, { "label": "BlogsModule", @@ -481,7 +455,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_module_blogsmodule", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "blogsmodule" }, { @@ -494,7 +468,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogfilterdto", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "blogfilterdto" }, { @@ -507,61 +481,9 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "blogsservice" }, - { - "label": "PaginationDto", - "file_type": "code", - "source_file": "backend/src/common/dto/pagination.dto.ts", - "source_location": "L10", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_paginationdto", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "paginationdto" - }, - { - "label": "SortOrder", - "file_type": "code", - "source_file": "backend/src/common/dto/pagination.dto.ts", - "source_location": "L5", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_sortorder", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "sortorder" - }, - { - "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", @@ -576,95 +498,43 @@ "norm_label": "categoryquery" }, { - "label": "SmsEventVariable", + "label": "PetQuery", "file_type": "code", - "source_file": "backend/src/common/services/sms-events.constants.ts", - "source_location": "L13", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L5", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_common_services_sms_events_constants_smseventvariable", + "id": "backend_src_admin_pets_service_petquery", "community": 108, "community_name": "PrismaService", - "norm_label": "smseventvariable" + "norm_label": "petquery" }, { - "label": "SmsRule", + "label": "PetsService", "file_type": "code", - "source_file": "backend/src/common/services/sms-events.constants.ts", - "source_location": "L1", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L12", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_common_services_sms_events_constants_smsrule", + "id": "backend_src_admin_pets_service_petsservice", "community": 108, "community_name": "PrismaService", - "norm_label": "smsrule" + "norm_label": "petsservice" }, { - "label": "MeliPayamakPattern", + "label": "MetricsController", "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L44", + "source_file": "backend/src/common/metrics.controller.ts", + "source_location": "L8", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_common_services_sms_service_melipayamakpattern", + "id": "backend_src_common_metrics_controller_metricscontroller", "community": 108, "community_name": "PrismaService", - "norm_label": "melipayamakpattern" - }, - { - "label": "MeliPayamakResponse", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L63", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_melipayamakresponse", - "community": 108, - "community_name": "PrismaService", - "norm_label": "melipayamakresponse" - }, - { - "label": "SendPatternSmsOptions", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L11", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_sendpatternsmsoptions", - "community": 108, - "community_name": "PrismaService", - "norm_label": "sendpatternsmsoptions" - }, - { - "label": "SmsConfig", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L30", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsconfig", - "community": 108, - "community_name": "PrismaService", - "norm_label": "smsconfig" - }, - { - "label": "SmsRule", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L18", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsrule", - "community": 108, - "community_name": "PrismaService", - "norm_label": "smsrule" + "norm_label": "metricscontroller" }, { "label": "CreateContactSubmissionDto", @@ -692,6 +562,19 @@ "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", @@ -783,19 +666,6 @@ "community_name": "PrismaService", "norm_label": "prismaservice" }, - { - "label": "ScientificTermData", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L7", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_scientifictermdata", - "community": 108, - "community_name": "PrismaService", - "norm_label": "scientifictermdata" - }, { "label": "UserAddressInput", "file_type": "code", @@ -822,32 +692,6 @@ "community_name": "PrismaService", "norm_label": "videoquery" }, - { - "label": "JwtPayload", - "file_type": "code", - "source_file": "backend/src/auth/jwt.strategy.ts", - "source_location": "L7", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_auth_jwt_strategy_jwtpayload", - "community": 11, - "community_name": "UsersService", - "norm_label": "jwtpayload" - }, - { - "label": "JwtStrategy", - "file_type": "code", - "source_file": "backend/src/auth/jwt.strategy.ts", - "source_location": "L15", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_auth_jwt_strategy_jwtstrategy", - "community": 11, - "community_name": "UsersService", - "norm_label": "jwtstrategy" - }, { "label": "AddressDto", "file_type": "code", @@ -991,6 +835,32 @@ "community_name": "lib/services/api.ts", "norm_label": "testimonial" }, + { + "label": "TooltipProps", + "file_type": "code", + "source_file": "frontend/application/components/Tooltip.tsx", + "source_location": "L8", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_application_components_tooltip_tooltipprops", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "tooltipprops" + }, + { + "label": "ScientificTerm", + "file_type": "code", + "source_file": "frontend/application/lib/data/scientificTerms.ts", + "source_location": "L1", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_application_lib_data_scientificterms_scientificterm", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "scientificterm" + }, { "label": "ApiErrorPayload", "file_type": "code", @@ -1134,58 +1004,6 @@ "community_name": "AppService", "norm_label": "appservice" }, - { - "label": "ConfirmModalProps", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/ConfirmModal.tsx", - "source_location": "L3", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_confirmmodal_confirmmodalprops", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "confirmmodalprops" - }, - { - "label": "ImagePreviewModalProps", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_imagepreviewmodal_imagepreviewmodalprops", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "imagepreviewmodalprops" - }, - { - "label": "Media", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", - "source_location": "L10", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_mediaselector_media", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "media" - }, - { - "label": "MediaSelectorProps", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", - "source_location": "L18", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_mediaselector_mediaselectorprops", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "mediaselectorprops" - }, { "label": "PaginationProps", "file_type": "code", @@ -1196,100 +1014,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_components_ui_pagination_paginationprops", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "paginationprops" }, - { - "label": "ActiveStates", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", - "source_location": "L61", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_richtexteditor_activestates", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "activestates" - }, - { - "label": "RichTextEditorProps", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", - "source_location": "L33", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditorprops", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "richtexteditorprops" - }, - { - "label": "AuthorUser", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L54", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs_authoruser", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "authoruser" - }, - { - "label": "BlogCategory", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L39", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs_blogcategory", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "blogcategory" - }, - { - "label": "BlogPost", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L70", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs_blogpost", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "blogpost" - }, - { - "label": "BlogTag", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L48", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs_blogtag", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "blogtag" - }, - { - "label": "ProductSimple", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L62", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs_productsimple", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "productsimple" - }, { "label": "Category", "file_type": "code", @@ -1300,48 +1027,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_categories_category", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "category" }, - { - "label": "HeroBanner", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/CMS.tsx", - "source_location": "L8", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_cms_herobanner", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "herobanner" - }, - { - "label": "VetTestimonial", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/CMS.tsx", - "source_location": "L16", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_cms_vettestimonial", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "vettestimonial" - }, - { - "label": "Doctor", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/DoctorsManager.tsx", - "source_location": "L12", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_doctorsmanager_doctor", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "doctor" - }, { "label": "Media", "file_type": "code", @@ -1352,7 +1040,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_media_media", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "media" }, { @@ -1365,7 +1053,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_pets_pet", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "pet" }, { @@ -1378,7 +1066,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_videos_doctoroption", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "doctoroption" }, { @@ -1391,22 +1079,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_videos_video", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "video" }, - { - "label": "WholesaleRequest", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/WholesaleApplications.tsx", - "source_location": "L8", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_wholesaleapplications_wholesalerequest", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "wholesalerequest" - }, { "label": "ProductItem", "file_type": "code", @@ -1417,7 +1092,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_wiki_productitem", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "productitem" }, { @@ -1430,22 +1105,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_wiki_wikiterm", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "wikiterm" }, - { - "label": "Testimonial", - "file_type": "code", - "source_file": "frontend/admin-panel/src/types/admin.ts", - "source_location": "L97", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_types_admin_testimonial", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "testimonial" - }, { "label": "CouponInput", "file_type": "code", @@ -1472,19 +1134,6 @@ "community_name": "auth.service.ts", "norm_label": "appmodule" }, - { - "label": "AuthModule", - "file_type": "code", - "source_file": "backend/src/auth/auth.module.ts", - "source_location": "L27", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_auth_auth_module_authmodule", - "community": 123, - "community_name": "auth.service.ts", - "norm_label": "authmodule" - }, { "label": "AdminLoginInput", "file_type": "code", @@ -1550,6 +1199,58 @@ "community_name": "auth.service.ts", "norm_label": "redisservice" }, + { + "label": "AdminModule", + "file_type": "code", + "source_file": "backend/src/admin/admin.module.ts", + "source_location": "L50", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_admin_admin_module_adminmodule", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "adminmodule" + }, + { + "label": "AuthModule", + "file_type": "code", + "source_file": "backend/src/auth/auth.module.ts", + "source_location": "L27", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_auth_auth_module_authmodule", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "authmodule" + }, + { + "label": "JwtPayload", + "file_type": "code", + "source_file": "backend/src/auth/jwt.strategy.ts", + "source_location": "L7", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_auth_jwt_strategy_jwtpayload", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "jwtpayload" + }, + { + "label": "JwtStrategy", + "file_type": "code", + "source_file": "backend/src/auth/jwt.strategy.ts", + "source_location": "L15", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_auth_jwt_strategy_jwtstrategy", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "jwtstrategy" + }, { "label": "UsersModule", "file_type": "code", @@ -1559,49 +1260,10 @@ "_callable_class": true, "_origin": "ast", "id": "backend_src_users_users_module_usersmodule", - "community": 123, - "community_name": "auth.service.ts", + "community": 128, + "community_name": "auth.module.ts", "norm_label": "usersmodule" }, - { - "label": "HomeController", - "file_type": "code", - "source_file": "backend/src/home/home.controller.ts", - "source_location": "L16", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_home_home_controller_homecontroller", - "community": 128, - "community_name": "HomeController", - "norm_label": "homecontroller" - }, - { - "label": "HomeModule", - "file_type": "code", - "source_file": "backend/src/home/home.module.ts", - "source_location": "L9", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_home_home_module_homemodule", - "community": 128, - "community_name": "HomeController", - "norm_label": "homemodule" - }, - { - "label": "HomeService", - "file_type": "code", - "source_file": "backend/src/home/home.service.ts", - "source_location": "L5", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_home_home_service_homeservice", - "community": 128, - "community_name": "HomeController", - "norm_label": "homeservice" - }, { "label": "WikiController", "file_type": "code", @@ -1615,6 +1277,32 @@ "community_name": "WikiController", "norm_label": "wikicontroller" }, + { + "label": "WikiModule", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.module.ts", + "source_location": "L9", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_wiki_wiki_module_wikimodule", + "community": 129, + "community_name": "WikiController", + "norm_label": "wikimodule" + }, + { + "label": "WikiService", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L7", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_wiki_wiki_service_wikiservice", + "community": 129, + "community_name": "WikiController", + "norm_label": "wikiservice" + }, { "label": "EnvironmentVariables", "file_type": "code", @@ -2058,43 +1746,30 @@ "norm_label": "video" }, { - "label": "Order", + "label": "PaginationDto", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L67", + "source_file": "backend/src/common/dto/pagination.dto.ts", + "source_location": "L10", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_order", + "id": "backend_src_common_dto_pagination_dto_paginationdto", "community": 145, - "community_name": "Orders.tsx", - "norm_label": "order" + "community_name": "PaginationDto", + "norm_label": "paginationdto" }, { - "label": "OrderItem", + "label": "GetProductsDto", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L38", + "source_file": "backend/src/products/dto/get-products.dto.ts", + "source_location": "L5", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_orderitem", + "id": "backend_src_products_dto_get_products_dto_getproductsdto", "community": 145, - "community_name": "Orders.tsx", - "norm_label": "orderitem" - }, - { - "label": "PaymentTx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L54", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_paymenttx", - "community": 145, - "community_name": "Orders.tsx", - "norm_label": "paymenttx" + "community_name": "PaginationDto", + "norm_label": "getproductsdto" }, { "label": "TorobController", @@ -2123,30 +1798,17 @@ "norm_label": "productdto" }, { - "label": "CreateOrderDto", + "label": "PetsController", "file_type": "code", - "source_file": "backend/src/orders/dto/create-order.dto.ts", + "source_file": "backend/src/admin/pets.controller.ts", "source_location": "L24", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_createorderdto", + "id": "backend_src_admin_pets_controller_petscontroller", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "createorderdto" - }, - { - "label": "OrderItemDto", - "file_type": "code", - "source_file": "backend/src/orders/dto/create-order.dto.ts", - "source_location": "L12", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_orderitemdto", - "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "orderitemdto" + "community_name": "PetsController", + "norm_label": "petscontroller" }, { "label": "MenuGroup", @@ -2369,19 +2031,6 @@ "community_name": "src/services/api.ts", "norm_label": "smartadvisorrule" }, - { - "label": "SystemSettings", - "file_type": "code", - "source_file": "frontend/admin-panel/src/types/admin.ts", - "source_location": "L204", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_types_admin_systemsettings", - "community": 15, - "community_name": "src/services/api.ts", - "norm_label": "systemsettings" - }, { "label": "VerifyOtpPayload", "file_type": "code", @@ -2396,17 +2045,17 @@ "norm_label": "verifyotppayload" }, { - "label": "OrdersService", + "label": "SmsLogQueryDto", "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L14", + "source_file": "backend/src/settings/dto/sms-log-query.dto.ts", + "source_location": "L5", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice", + "id": "backend_src_settings_dto_sms_log_query_dto_smslogquerydto", "community": 151, - "community_name": "OrdersService", - "norm_label": "ordersservice" + "community_name": "SmsLogQueryDto", + "norm_label": "smslogquerydto" }, { "label": "DoctorsController", @@ -2538,19 +2187,6 @@ "community_name": "schema.ts", "norm_label": "videoobjectschemaoptions" }, - { - "label": "CreateApiKeyDto", - "file_type": "code", - "source_file": "backend/src/admin/dto/api-key.dto.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_createapikeydto", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "createapikeydto" - }, { "label": "JwtAuthGuard", "file_type": "code", @@ -2564,6 +2200,19 @@ "community_name": "JwtAuthGuard", "norm_label": "jwtauthguard" }, + { + "label": "SortOrder", + "file_type": "code", + "source_file": "backend/src/common/dto/pagination.dto.ts", + "source_location": "L5", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_sortorder", + "community": 18, + "community_name": "JwtAuthGuard", + "norm_label": "sortorder" + }, { "label": "RequestWithUser", "file_type": "code", @@ -2837,6 +2486,58 @@ "community_name": "ApiKeysService", "norm_label": "apikeysservice" }, + { + "label": "CreateApiKeyDto", + "file_type": "code", + "source_file": "backend/src/admin/dto/api-key.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_createapikeydto", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "createapikeydto" + }, + { + "label": "HomeController", + "file_type": "code", + "source_file": "backend/src/home/home.controller.ts", + "source_location": "L16", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_home_home_controller_homecontroller", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "homecontroller" + }, + { + "label": "HomeModule", + "file_type": "code", + "source_file": "backend/src/home/home.module.ts", + "source_location": "L9", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_home_home_module_homemodule", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "homemodule" + }, + { + "label": "HomeService", + "file_type": "code", + "source_file": "backend/src/home/home.service.ts", + "source_location": "L5", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_home_home_service_homeservice", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "homeservice" + }, { "label": "ApiResponse", "file_type": "code", @@ -2929,17 +2630,30 @@ "norm_label": "videosservice" }, { - "label": "UpdateReviewDto", + "label": "RevalidationModule", "file_type": "code", - "source_file": "backend/src/reviews/dto/update-review.dto.ts", + "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": 204, + "community_name": "RevalidationService", + "norm_label": "revalidationmodule" + }, + { + "label": "RevalidationService", + "file_type": "code", + "source_file": "backend/src/common/revalidation/revalidation.service.ts", "source_location": "L4", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_updatereviewdto", + "id": "backend_src_common_revalidation_revalidation_service_revalidationservice", "community": 204, - "community_name": "reviews.service.ts", - "norm_label": "updatereviewdto" + "community_name": "RevalidationService", + "norm_label": "revalidationservice" }, { "label": "ScientificTerm", @@ -2993,32 +2707,6 @@ "community_name": "useSettingsStore", "norm_label": "smartadvisorprops" }, - { - "label": "TooltipProps", - "file_type": "code", - "source_file": "frontend/application/components/Tooltip.tsx", - "source_location": "L8", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_application_components_tooltip_tooltipprops", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "tooltipprops" - }, - { - "label": "ScientificTerm", - "file_type": "code", - "source_file": "frontend/application/lib/data/scientificTerms.ts", - "source_location": "L1", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_application_lib_data_scientificterms_scientificterm", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "scientificterm" - }, { "label": "UIState", "file_type": "code", @@ -3188,19 +2876,6 @@ "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", @@ -3227,19 +2902,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", @@ -3500,71 +3162,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "dashboarddata" }, - { - "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", @@ -3578,6 +3175,19 @@ "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", @@ -3588,7 +3198,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "wholesalecontroller" }, { @@ -3601,7 +3211,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "wholesaleservice" }, { @@ -3721,6 +3331,32 @@ "community_name": "Button", "norm_label": "transactionreceiptmodalprops" }, + { + "label": "BadgeProps", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", + "source_location": "L14", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_badge_badgeprops", + "community": 38, + "community_name": "Button", + "norm_label": "badgeprops" + }, + { + "label": "BadgeVariant", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", + "source_location": "L3", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_badge_badgevariant", + "community": 38, + "community_name": "Button", + "norm_label": "badgevariant" + }, { "label": "ThSortProps", "file_type": "code", @@ -3734,6 +3370,19 @@ "community_name": "Button", "norm_label": "thsortprops" }, + { + "label": "ProductItem", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/PrescriptionsManager.tsx", + "source_location": "L13", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_prescriptionsmanager_productitem", + "community": 38, + "community_name": "Button", + "norm_label": "productitem" + }, { "label": "GatewayHealth", "file_type": "code", @@ -3773,6 +3422,19 @@ "community_name": "Button", "norm_label": "transaction" }, + { + "label": "Prescription", + "file_type": "code", + "source_file": "frontend/admin-panel/src/types/admin.ts", + "source_location": "L124", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_types_admin_prescription", + "community": 38, + "community_name": "Button", + "norm_label": "prescription" + }, { "label": "UseTableParamsOptions", "file_type": "code", @@ -4007,6 +3669,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", @@ -4073,17 +3748,147 @@ "norm_label": "testimonialsservice" }, { - "label": "WholesaleApplyDto", + "label": "SmsEventDefinition", "file_type": "code", - "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts", - "source_location": "L4", + "source_file": "backend/src/common/services/sms-events.constants.ts", + "source_location": "L19", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_wholesaleapplydto", + "id": "backend_src_common_services_sms_events_constants_smseventdefinition", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "wholesaleapplydto" + "community_name": "sms.service.ts", + "norm_label": "smseventdefinition" + }, + { + "label": "SmsEventVariable", + "file_type": "code", + "source_file": "backend/src/common/services/sms-events.constants.ts", + "source_location": "L13", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_events_constants_smseventvariable", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "smseventvariable" + }, + { + "label": "SmsRule", + "file_type": "code", + "source_file": "backend/src/common/services/sms-events.constants.ts", + "source_location": "L1", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_events_constants_smsrule", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "smsrule" + }, + { + "label": "MeliPayamakPattern", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L44", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_melipayamakpattern", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "melipayamakpattern" + }, + { + "label": "MeliPayamakResponse", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L63", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_melipayamakresponse", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "melipayamakresponse" + }, + { + "label": "SendPatternSmsOptions", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L11", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_sendpatternsmsoptions", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "sendpatternsmsoptions" + }, + { + "label": "SmsConfig", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L30", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsconfig", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "smsconfig" + }, + { + "label": "SmsLogQuery", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L53", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smslogquery", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "smslogquery" + }, + { + "label": "SmsRule", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L18", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsrule", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "smsrule" + }, + { + "label": "PrescriptionsModule", + "file_type": "code", + "source_file": "backend/src/prescriptions/prescriptions.module.ts", + "source_location": "L13", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_prescriptions_prescriptions_module_prescriptionsmodule", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "prescriptionsmodule" + }, + { + "label": "ScientificTermData", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L7", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_scientifictermdata", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "scientifictermdata" }, { "label": "IngredientsController", @@ -4151,17 +3956,69 @@ "norm_label": "buttonvariant" }, { - "label": "FAQ", + "label": "BestSellerItem", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/FAQManager.tsx", - "source_location": "L11", + "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_faqmanager_faq", + "id": "frontend_admin_panel_src_pages_reports_bestselleritem", "community": 48, "community_name": "Button.tsx", - "norm_label": "faq" + "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": 48, + "community_name": "Button.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": 48, + "community_name": "Button.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": 48, + "community_name": "Button.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": 48, + "community_name": "Button.tsx", + "norm_label": "topcouponitem" }, { "label": "SslStatus", @@ -4177,30 +4034,17 @@ "norm_label": "sslstatus" }, { - "label": "Banner", + "label": "SystemSettings", "file_type": "code", "source_file": "frontend/admin-panel/src/types/admin.ts", - "source_location": "L70", + "source_location": "L204", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_types_admin_banner", + "id": "frontend_admin_panel_src_types_admin_systemsettings", "community": 48, "community_name": "Button.tsx", - "norm_label": "banner" - }, - { - "label": "SeoSettings", - "file_type": "code", - "source_file": "frontend/admin-panel/src/types/admin.ts", - "source_location": "L178", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_types_admin_seosettings", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "seosettings" + "norm_label": "systemsettings" }, { "label": "CmsController", @@ -4385,30 +4229,17 @@ "norm_label": "contactsubmission" }, { - "label": "MenuItem", + "label": "FAQ", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", - "source_location": "L15", + "source_file": "frontend/admin-panel/src/pages/FAQManager.tsx", + "source_location": "L11", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_menumanager_menuitem", + "id": "frontend_admin_panel_src_pages_faqmanager_faq", "community": 54, "community_name": "Modal.tsx", - "norm_label": "menuitem" - }, - { - "label": "MenuType", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", - "source_location": "L29", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_menumanager_menutype", - "community": 54, - "community_name": "Modal.tsx", - "norm_label": "menutype" + "norm_label": "faq" }, { "label": "BlogCommentItem", @@ -4462,19 +4293,6 @@ "community_name": "Modal.tsx", "norm_label": "ticketmessage" }, - { - "label": "Ingredient", - "file_type": "code", - "source_file": "frontend/admin-panel/src/types/admin.ts", - "source_location": "L111", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_types_admin_ingredient", - "community": 54, - "community_name": "Modal.tsx", - "norm_label": "ingredient" - }, { "label": "IconPickerModalProps", "file_type": "code", @@ -4488,6 +4306,71 @@ "community_name": "UITexts.tsx", "norm_label": "iconpickermodalprops" }, + { + "label": "ImagePreviewModalProps", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_imagepreviewmodal_imagepreviewmodalprops", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "imagepreviewmodalprops" + }, + { + "label": "Media", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", + "source_location": "L10", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_mediaselector_media", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "media" + }, + { + "label": "MediaSelectorProps", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", + "source_location": "L18", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_mediaselector_mediaselectorprops", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "mediaselectorprops" + }, + { + "label": "ActiveStates", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", + "source_location": "L61", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_richtexteditor_activestates", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "activestates" + }, + { + "label": "RichTextEditorProps", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", + "source_location": "L33", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditorprops", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "richtexteditorprops" + }, { "label": "ToggleSwitchProps", "file_type": "code", @@ -4501,6 +4384,71 @@ "community_name": "UITexts.tsx", "norm_label": "toggleswitchprops" }, + { + "label": "AuthorUser", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L54", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs_authoruser", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "authoruser" + }, + { + "label": "BlogCategory", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L39", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs_blogcategory", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "blogcategory" + }, + { + "label": "BlogPost", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L70", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs_blogpost", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "blogpost" + }, + { + "label": "BlogTag", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L48", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs_blogtag", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "blogtag" + }, + { + "label": "ProductSimple", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L62", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs_productsimple", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "productsimple" + }, { "label": "AppSitePage", "file_type": "code", @@ -4541,30 +4489,43 @@ "norm_label": "sectionfield" }, { - "label": "BadgeProps", + "label": "Banner", "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", - "source_location": "L14", + "source_file": "frontend/admin-panel/src/types/admin.ts", + "source_location": "L70", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_badge_badgeprops", - "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "badgeprops" + "id": "frontend_admin_panel_src_types_admin_banner", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "banner" }, { - "label": "BadgeVariant", + "label": "Ingredient", "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", - "source_location": "L3", + "source_file": "frontend/admin-panel/src/types/admin.ts", + "source_location": "L111", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_badge_badgevariant", - "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "badgevariant" + "id": "frontend_admin_panel_src_types_admin_ingredient", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "ingredient" + }, + { + "label": "SeoSettings", + "file_type": "code", + "source_file": "frontend/admin-panel/src/types/admin.ts", + "source_location": "L178", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_types_admin_seosettings", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "seosettings" }, { "label": "MonitoringStats", @@ -4576,21 +4537,47 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_monitoringpage_monitoringstats", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "monitoringstats" }, { - "label": "ProductItem", + "label": "Order", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/PrescriptionsManager.tsx", - "source_location": "L13", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L67", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_prescriptionsmanager_productitem", + "id": "frontend_admin_panel_src_pages_orders_order", "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "productitem" + "community_name": "Orders.tsx", + "norm_label": "order" + }, + { + "label": "OrderItem", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L38", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_orderitem", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "orderitem" + }, + { + "label": "PaymentTx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L54", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_paymenttx", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "paymenttx" }, { "label": "UserRecord", @@ -4602,7 +4589,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_users_userrecord", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "userrecord" }, { @@ -4615,22 +4602,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_types_admin_petsummary", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "petsummary" }, - { - "label": "Prescription", - "file_type": "code", - "source_file": "frontend/admin-panel/src/types/admin.ts", - "source_location": "L124", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_types_admin_prescription", - "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "prescription" - }, { "label": "UserAddress", "file_type": "code", @@ -4641,21 +4615,112 @@ "_origin": "ast", "id": "frontend_admin_panel_src_types_admin_useraddress", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "useraddress" }, { - "label": "MetricsController", + "label": "ConfirmModalProps", "file_type": "code", - "source_file": "backend/src/common/metrics.controller.ts", + "source_file": "frontend/admin-panel/src/components/ui/ConfirmModal.tsx", + "source_location": "L3", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_confirmmodal_confirmmodalprops", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "confirmmodalprops" + }, + { + "label": "HeroBanner", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/CMS.tsx", "source_location": "L8", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_common_metrics_controller_metricscontroller", + "id": "frontend_admin_panel_src_pages_cms_herobanner", "community": 58, - "community_name": "MetricsController", - "norm_label": "metricscontroller" + "community_name": "ConfirmModal.tsx", + "norm_label": "herobanner" + }, + { + "label": "VetTestimonial", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/CMS.tsx", + "source_location": "L16", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_cms_vettestimonial", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "vettestimonial" + }, + { + "label": "Doctor", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/DoctorsManager.tsx", + "source_location": "L12", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_doctorsmanager_doctor", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "doctor" + }, + { + "label": "MenuItem", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", + "source_location": "L15", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_menumanager_menuitem", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "menuitem" + }, + { + "label": "MenuType", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", + "source_location": "L29", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_menumanager_menutype", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "menutype" + }, + { + "label": "WholesaleRequest", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/WholesaleApplications.tsx", + "source_location": "L8", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_wholesaleapplications_wholesalerequest", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "wholesalerequest" + }, + { + "label": "Testimonial", + "file_type": "code", + "source_file": "frontend/admin-panel/src/types/admin.ts", + "source_location": "L97", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_types_admin_testimonial", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "testimonial" }, { "label": "AdminUpdateTicketDto", @@ -4904,58 +4969,6 @@ "community_name": "ProductPage.tsx", "norm_label": "reminder" }, - { - "label": "AdminModule", - "file_type": "code", - "source_file": "backend/src/admin/admin.module.ts", - "source_location": "L50", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_admin_admin_module_adminmodule", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "adminmodule" - }, - { - "label": "PetsController", - "file_type": "code", - "source_file": "backend/src/admin/pets.controller.ts", - "source_location": "L24", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_admin_pets_controller_petscontroller", - "community": 62, - "community_name": "admin.module.ts", - "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": 62, - "community_name": "admin.module.ts", - "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": 62, - "community_name": "admin.module.ts", - "norm_label": "petsservice" - }, { "label": "ReportsController", "file_type": "code", @@ -4982,19 +4995,6 @@ "community_name": "admin.module.ts", "norm_label": "reportsservice" }, - { - "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": 62, - "community_name": "admin.module.ts", - "norm_label": "sslcertinfo" - }, { "label": "WikiQuery", "file_type": "code", @@ -5100,43 +5100,17 @@ "norm_label": "admincontroller" }, { - "label": "OrdersController", + "label": "SmsService", "file_type": "code", - "source_file": "backend/src/orders/orders.controller.ts", - "source_location": "L54", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L70", "_callable": true, "_callable_class": true, "_origin": "ast", - "id": "backend_src_orders_orders_controller_orderscontroller", + "id": "backend_src_common_services_sms_service_smsservice", "community": 67, - "community_name": "OrdersController", - "norm_label": "orderscontroller" - }, - { - "label": "ValidateCouponDto", - "file_type": "code", - "source_file": "backend/src/orders/orders.controller.ts", - "source_location": "L29", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_orders_orders_controller_validatecoupondto", - "community": 67, - "community_name": "OrdersController", - "norm_label": "validatecoupondto" - }, - { - "label": "OrdersModule", - "file_type": "code", - "source_file": "backend/src/orders/orders.module.ts", - "source_location": "L9", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_orders_orders_module_ordersmodule", - "community": 67, - "community_name": "OrdersController", - "norm_label": "ordersmodule" + "community_name": "SmsService", + "norm_label": "smsservice" }, { "label": "SkeletonProps", @@ -5398,45 +5372,6 @@ "community_name": "PetsController", "norm_label": "reminderinput" }, - { - "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": 76, - "community_name": "RevalidationService", - "norm_label": "revalidationmodule" - }, - { - "label": "RevalidationService", - "file_type": "code", - "source_file": "backend/src/common/revalidation/revalidation.service.ts", - "source_location": "L4", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_service_revalidationservice", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "revalidationservice" - }, - { - "label": "GetProductsDto", - "file_type": "code", - "source_file": "backend/src/products/dto/get-products.dto.ts", - "source_location": "L5", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_products_dto_get_products_dto_getproductsdto", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "getproductsdto" - }, { "label": "ProductsController", "file_type": "code", @@ -5447,7 +5382,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "productscontroller" }, { @@ -5460,7 +5395,7 @@ "_origin": "ast", "id": "backend_src_products_products_module_productsmodule", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "productsmodule" }, { @@ -5473,7 +5408,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "productsservice" }, { @@ -5515,58 +5450,6 @@ "community_name": "seo.module.ts", "norm_label": "seoservice" }, - { - "label": "SmsEventDefinition", - "file_type": "code", - "source_file": "backend/src/common/services/sms-events.constants.ts", - "source_location": "L19", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_events_constants_smseventdefinition", - "community": 8, - "community_name": "SmsService", - "norm_label": "smseventdefinition" - }, - { - "label": "SmsLogQuery", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L53", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smslogquery", - "community": 8, - "community_name": "SmsService", - "norm_label": "smslogquery" - }, - { - "label": "SmsService", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L70", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice", - "community": 8, - "community_name": "SmsService", - "norm_label": "smsservice" - }, - { - "label": "SmsLogQueryDto", - "file_type": "code", - "source_file": "backend/src/settings/dto/sms-log-query.dto.ts", - "source_location": "L5", - "_callable": true, - "_callable_class": true, - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_smslogquerydto", - "community": 8, - "community_name": "SmsService", - "norm_label": "smslogquerydto" - }, { "label": "SettingsController", "file_type": "code", @@ -5577,7 +5460,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "settingscontroller" }, { @@ -5590,7 +5473,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "settingsservice" }, { @@ -5720,9 +5603,126 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_createebankcheckoutdto", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "createebankcheckoutdto" }, + { + "label": "InitiatePaymentDto", + "file_type": "code", + "source_file": "backend/src/payment/dto/initiate-payment.dto.ts", + "source_location": "L4", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_initiatepaymentdto", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "initiatepaymentdto" + }, + { + "label": "InitiateWalletTopupDto", + "file_type": "code", + "source_file": "backend/src/payment/dto/initiate-payment.dto.ts", + "source_location": "L16", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_initiatewallettopupdto", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "initiatewallettopupdto" + }, + { + "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": 88, + "community_name": "payment.controller.ts", + "norm_label": "zibalcallbackquerydto" + }, + { + "label": "CreateOrderDto", + "file_type": "code", + "source_file": "backend/src/orders/dto/create-order.dto.ts", + "source_location": "L24", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_createorderdto", + "community": 92, + "community_name": "OrdersService", + "norm_label": "createorderdto" + }, + { + "label": "OrderItemDto", + "file_type": "code", + "source_file": "backend/src/orders/dto/create-order.dto.ts", + "source_location": "L12", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_orderitemdto", + "community": 92, + "community_name": "OrdersService", + "norm_label": "orderitemdto" + }, + { + "label": "OrdersController", + "file_type": "code", + "source_file": "backend/src/orders/orders.controller.ts", + "source_location": "L54", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_orders_orders_controller_orderscontroller", + "community": 92, + "community_name": "OrdersService", + "norm_label": "orderscontroller" + }, + { + "label": "ValidateCouponDto", + "file_type": "code", + "source_file": "backend/src/orders/orders.controller.ts", + "source_location": "L29", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_orders_orders_controller_validatecoupondto", + "community": 92, + "community_name": "OrdersService", + "norm_label": "validatecoupondto" + }, + { + "label": "OrdersModule", + "file_type": "code", + "source_file": "backend/src/orders/orders.module.ts", + "source_location": "L9", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_orders_orders_module_ordersmodule", + "community": 92, + "community_name": "OrdersService", + "norm_label": "ordersmodule" + }, + { + "label": "OrdersService", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L14", + "_callable": true, + "_callable_class": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice", + "community": 92, + "community_name": "OrdersService", + "norm_label": "ordersservice" + }, { "label": "AuthController", "file_type": "code", @@ -6379,6 +6379,18 @@ "community_name": "Products.tsx", "norm_label": "products()" }, + { + "label": "ShippingSettingsPage()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/ShippingSettingsPage.tsx", + "source_location": "L11", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_shippingsettingspage_shippingsettingspage", + "community": 104, + "community_name": "Products.tsx", + "norm_label": "shippingsettingspage()" + }, { "label": "applyRounding()", "file_type": "code", @@ -6403,6 +6415,258 @@ "community_name": "Products.tsx", "norm_label": "calculatesellingprice()" }, + { + "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": 106, + "community_name": "PaymentService", + "norm_label": ".constructor()" + }, + { + "label": ".adminLiveInquiry()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L978", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_adminliveinquiry", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".adminliveinquiry()" + }, + { + "label": ".adminManualReject()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1154", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_adminmanualreject", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".adminmanualreject()" + }, + { + "label": ".adminManualVerify()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1058", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_adminmanualverify", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".adminmanualverify()" + }, + { + "label": ".checkGatewayHealth()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1180", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_checkgatewayhealth", + "community": 106, + "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": 106, + "community_name": "PaymentService", + "norm_label": ".constructor()" + }, + { + "label": ".getAdminTransactionStats()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L931", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_getadmintransactionstats", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".getadmintransactionstats()" + }, + { + "label": ".getTransaction()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L768", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_gettransaction", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".gettransaction()" + }, + { + "label": ".getTransactionByTrackId()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1029", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_gettransactionbytrackid", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".gettransactionbytrackid()" + }, + { + "label": ".handleAdminGatewayRefund()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1187", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_handleadmingatewayrefund", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".handleadmingatewayrefund()" + }, + { + "label": ".initiateOrderPayment()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L31", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_initiateorderpayment", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".initiateorderpayment()" + }, + { + "label": ".initiateWalletTopup()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L139", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_initiatewallettopup", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".initiatewallettopup()" + }, + { + "label": ".inquiryDirectZibal()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L1035", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_inquirydirectzibal", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".inquirydirectzibal()" + }, + { + "label": ".reconcilePendingTransactions()", + "file_type": "code", + "source_file": "backend/src/payment/payment.service.ts", + "source_location": "L673", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_payment_service_paymentservice_reconcilependingtransactions", + "community": 106, + "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": 106, + "community_name": "PaymentService", + "norm_label": ".verifyandprocess()" + }, + { + "label": ".getBackendUrl()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L130", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_getbackendurl", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".getbackendurl()" + }, + { + "label": ".getFrontendUrl()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L111", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_getfrontendurl", + "community": 106, + "community_name": "PaymentService", + "norm_label": ".getfrontendurl()" + }, + { + "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": 106, + "community_name": "PaymentService", + "norm_label": ".getresultmessage()" + }, + { + "label": ".getStartUrl()", + "file_type": "code", + "source_file": "backend/src/payment/zibal.service.ts", + "source_location": "L211", + "_callable": true, + "_origin": "ast", + "id": "backend_src_payment_zibal_service_zibalservice_getstarturl", + "community": 106, + "community_name": "PaymentService", + "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": 106, + "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": 106, + "community_name": "PaymentService", + "norm_label": ".inquirypayment()" + }, { "label": ".addComment()", "file_type": "code", @@ -6412,7 +6676,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_addcomment", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".addcomment()" }, { @@ -6424,7 +6688,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_constructor", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".constructor()" }, { @@ -6436,7 +6700,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_findall", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".findall()" }, { @@ -6448,7 +6712,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_findcommentsbyslug", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".findcommentsbyslug()" }, { @@ -6460,7 +6724,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_findhomepage", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".findhomepage()" }, { @@ -6472,7 +6736,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_findonebyslug", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".findonebyslug()" }, { @@ -6484,7 +6748,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_getcategories", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".getcategories()" }, { @@ -6496,7 +6760,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_gettags", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".gettags()" }, { @@ -6508,44 +6772,80 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_blogsservice_incrementview", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": ".incrementview()" }, { "label": ".constructor()", "file_type": "code", - "source_file": "backend/src/wiki/wiki.service.ts", - "source_location": "L8", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L13", "_callable": true, "_origin": "ast", - "id": "backend_src_wiki_wiki_service_wikiservice_constructor", - "community": 107, - "community_name": "PaginationDto", + "id": "backend_src_admin_pets_service_petsservice_constructor", + "community": 108, + "community_name": "PrismaService", "norm_label": ".constructor()" }, { - "label": ".findAll()", + "label": ".deletePet()", "file_type": "code", - "source_file": "backend/src/wiki/wiki.service.ts", - "source_location": "L10", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L65", "_callable": true, "_origin": "ast", - "id": "backend_src_wiki_wiki_service_wikiservice_findall", - "community": 107, - "community_name": "PaginationDto", - "norm_label": ".findall()" + "id": "backend_src_admin_pets_service_petsservice_deletepet", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".deletepet()" }, { - "label": ".findOneByKey()", + "label": ".getPets()", "file_type": "code", - "source_file": "backend/src/wiki/wiki.service.ts", - "source_location": "L52", + "source_file": "backend/src/admin/pets.service.ts", + "source_location": "L15", "_callable": true, "_origin": "ast", - "id": "backend_src_wiki_wiki_service_wikiservice_findonebykey", - "community": 107, - "community_name": "PaginationDto", - "norm_label": ".findonebykey()" + "id": "backend_src_admin_pets_service_petsservice_getpets", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".getpets()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/common/metrics.controller.ts", + "source_location": "L11", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_metrics_controller_metricscontroller_constructor", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".constructor()" + }, + { + "label": ".getMetrics()", + "file_type": "code", + "source_file": "backend/src/common/metrics.controller.ts", + "source_location": "L18", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_metrics_controller_metricscontroller_getmetrics", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".getmetrics()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L73", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_constructor", + "community": 108, + "community_name": "PrismaService", + "norm_label": ".constructor()" }, { "label": ".ensureTablesExist()", @@ -6583,42 +6883,6 @@ "community_name": "PrismaService", "norm_label": ".onmoduleinit()" }, - { - "label": "getJwtRefreshSecret()", - "file_type": "code", - "source_file": "backend/src/auth/auth.constants.ts", - "source_location": "L10", - "_callable": true, - "_origin": "ast", - "id": "backend_src_auth_auth_constants_getjwtrefreshsecret", - "community": 11, - "community_name": "UsersService", - "norm_label": "getjwtrefreshsecret()" - }, - { - "label": "getJwtSecret()", - "file_type": "code", - "source_file": "backend/src/auth/auth.constants.ts", - "source_location": "L7", - "_callable": true, - "_origin": "ast", - "id": "backend_src_auth_auth_constants_getjwtsecret", - "community": 11, - "community_name": "UsersService", - "norm_label": "getjwtsecret()" - }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/auth/jwt.strategy.ts", - "source_location": "L16", - "_callable": true, - "_origin": "ast", - "id": "backend_src_auth_jwt_strategy_jwtstrategy_constructor", - "community": 11, - "community_name": "UsersService", - "norm_label": ".constructor()" - }, { "label": ".validate()", "file_type": "code", @@ -6739,18 +7003,6 @@ "community_name": "UsersService", "norm_label": ".addaddress()" }, - { - "label": ".constructor()", - "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_constructor", - "community": 11, - "community_name": "UsersService", - "norm_label": ".constructor()" - }, { "label": ".deleteAddress()", "file_type": "code", @@ -6847,6 +7099,18 @@ "community_name": "lib/services/api.ts", "norm_label": "productreviews()" }, + { + "label": "Tooltip()", + "file_type": "code", + "source_file": "frontend/application/components/Tooltip.tsx", + "source_location": "L14", + "_callable": true, + "_origin": "ast", + "id": "frontend_application_components_tooltip_tooltip", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "tooltip()" + }, { "label": "getBaseURL()", "file_type": "code", @@ -6955,54 +7219,6 @@ "community_name": "AppService", "norm_label": ".gethello()" }, - { - "label": "ConfirmModal()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/ConfirmModal.tsx", - "source_location": "L15", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_confirmmodal_confirmmodal", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "confirmmodal()" - }, - { - "label": "ImagePreviewModal()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx", - "source_location": "L11", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_imagepreviewmodal_imagepreviewmodal", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "imagepreviewmodal()" - }, - { - "label": "getFileType()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", - "source_location": "L27", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_mediaselector_getfiletype", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "getfiletype()" - }, - { - "label": "MediaSelector()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", - "source_location": "L36", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_mediaselector_mediaselector", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "mediaselector()" - }, { "label": "Pagination()", "file_type": "code", @@ -7012,33 +7228,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_components_ui_pagination_pagination", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "pagination()" }, - { - "label": "RichTextEditor()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", - "source_location": "L76", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditor", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "richtexteditor()" - }, - { - "label": "Blogs()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L113", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs_blogs", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "blogs()" - }, { "label": "Categories()", "file_type": "code", @@ -7048,33 +7240,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_categories_categories", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "categories()" }, - { - "label": "CMS()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/CMS.tsx", - "source_location": "L23", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_cms_cms", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "cms()" - }, - { - "label": "DoctorsManager()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/DoctorsManager.tsx", - "source_location": "L31", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_doctorsmanager_doctorsmanager", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "doctorsmanager()" - }, { "label": "getFileType()", "file_type": "code", @@ -7084,7 +7252,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_media_getfiletype", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "getfiletype()" }, { @@ -7096,7 +7264,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_media_mediamanager", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "mediamanager()" }, { @@ -7108,21 +7276,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_pets_pets", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "pets()" }, - { - "label": "TestimonialsManager()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/TestimonialsManager.tsx", - "source_location": "L13", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_testimonialsmanager_testimonialsmanager", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "testimonialsmanager()" - }, { "label": "Videos()", "file_type": "code", @@ -7132,21 +7288,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_videos_videos", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "videos()" }, - { - "label": "WholesaleApplications()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/WholesaleApplications.tsx", - "source_location": "L18", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_wholesaleapplications_wholesaleapplications", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "wholesaleapplications()" - }, { "label": "Wiki()", "file_type": "code", @@ -7156,7 +7300,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_wiki_wiki", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "wiki()" }, { @@ -7544,53 +7688,41 @@ "norm_label": ".ttl()" }, { - "label": ".constructor()", + "label": "getJwtRefreshSecret()", "file_type": "code", - "source_file": "backend/src/home/home.controller.ts", - "source_location": "L17", + "source_file": "backend/src/auth/auth.constants.ts", + "source_location": "L10", "_callable": true, "_origin": "ast", - "id": "backend_src_home_home_controller_homecontroller_constructor", + "id": "backend_src_auth_auth_constants_getjwtrefreshsecret", "community": 128, - "community_name": "HomeController", - "norm_label": ".constructor()" + "community_name": "auth.module.ts", + "norm_label": "getjwtrefreshsecret()" }, { - "label": ".getHomeData()", + "label": "getJwtSecret()", "file_type": "code", - "source_file": "backend/src/home/home.controller.ts", - "source_location": "L24", + "source_file": "backend/src/auth/auth.constants.ts", + "source_location": "L7", "_callable": true, "_origin": "ast", - "id": "backend_src_home_home_controller_homecontroller_gethomedata", + "id": "backend_src_auth_auth_constants_getjwtsecret", "community": 128, - "community_name": "HomeController", - "norm_label": ".gethomedata()" + "community_name": "auth.module.ts", + "norm_label": "getjwtsecret()" }, { "label": ".constructor()", "file_type": "code", - "source_file": "backend/src/home/home.service.ts", - "source_location": "L6", + "source_file": "backend/src/auth/jwt.strategy.ts", + "source_location": "L16", "_callable": true, "_origin": "ast", - "id": "backend_src_home_home_service_homeservice_constructor", + "id": "backend_src_auth_jwt_strategy_jwtstrategy_constructor", "community": 128, - "community_name": "HomeController", + "community_name": "auth.module.ts", "norm_label": ".constructor()" }, - { - "label": ".getHomeData()", - "file_type": "code", - "source_file": "backend/src/home/home.service.ts", - "source_location": "L8", - "_callable": true, - "_origin": "ast", - "id": "backend_src_home_home_service_homeservice_gethomedata", - "community": 128, - "community_name": "HomeController", - "norm_label": ".gethomedata()" - }, { "label": ".constructor()", "file_type": "code", @@ -7627,6 +7759,42 @@ "community_name": "WikiController", "norm_label": ".findone()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L8", + "_callable": true, + "_origin": "ast", + "id": "backend_src_wiki_wiki_service_wikiservice_constructor", + "community": 129, + "community_name": "WikiController", + "norm_label": ".constructor()" + }, + { + "label": ".findAll()", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L10", + "_callable": true, + "_origin": "ast", + "id": "backend_src_wiki_wiki_service_wikiservice_findall", + "community": 129, + "community_name": "WikiController", + "norm_label": ".findall()" + }, + { + "label": ".findOneByKey()", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L52", + "_callable": true, + "_origin": "ast", + "id": "backend_src_wiki_wiki_service_wikiservice_findonebykey", + "community": 129, + "community_name": "WikiController", + "norm_label": ".findonebykey()" + }, { "label": "validateEnv()", "file_type": "code", @@ -8383,66 +8551,6 @@ "community_name": "SafeImage.tsx", "norm_label": "normalizevideo()" }, - { - "label": "getPaymentMethodLabel()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L151", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_getpaymentmethodlabel", - "community": 145, - "community_name": "Orders.tsx", - "norm_label": "getpaymentmethodlabel()" - }, - { - "label": "getPaymentStatusBadge()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L121", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_getpaymentstatusbadge", - "community": 145, - "community_name": "Orders.tsx", - "norm_label": "getpaymentstatusbadge()" - }, - { - "label": "getShippingMethodLabel()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L138", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_getshippingmethodlabel", - "community": 145, - "community_name": "Orders.tsx", - "norm_label": "getshippingmethodlabel()" - }, - { - "label": "Orders()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L172", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_orders", - "community": 145, - "community_name": "Orders.tsx", - "norm_label": "orders()" - }, - { - "label": "toPersianDigits()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L166", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_topersiandigits", - "community": 145, - "community_name": "Orders.tsx", - "norm_label": "topersiandigits()" - }, { "label": "buildTorobProductSpec()", "file_type": "code", @@ -8587,6 +8695,42 @@ "community_name": "ProductDto", "norm_label": ".revalidatetag()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/admin/pets.controller.ts", + "source_location": "L25", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_pets_controller_petscontroller_constructor", + "community": 149, + "community_name": "PetsController", + "norm_label": ".constructor()" + }, + { + "label": ".deletePet()", + "file_type": "code", + "source_file": "backend/src/admin/pets.controller.ts", + "source_location": "L38", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_pets_controller_petscontroller_deletepet", + "community": 149, + "community_name": "PetsController", + "norm_label": ".deletepet()" + }, + { + "label": ".getPets()", + "file_type": "code", + "source_file": "backend/src/admin/pets.controller.ts", + "source_location": "L32", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_pets_controller_petscontroller_getpets", + "community": 149, + "community_name": "PetsController", + "norm_label": ".getpets()" + }, { "label": "Layout()", "file_type": "code", @@ -8683,18 +8827,6 @@ "community_name": "src/services/api.ts", "norm_label": "smartadvisormanager()" }, - { - "label": "SystemSettingsPage()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx", - "source_location": "L22", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_systemsettingspage_systemsettingspage", - "community": 15, - "community_name": "src/services/api.ts", - "norm_label": "systemsettingspage()" - }, { "label": "processQueue()", "file_type": "code", @@ -8707,114 +8839,6 @@ "community_name": "src/services/api.ts", "norm_label": "processqueue()" }, - { - "label": ".buildOrderEventData()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L310", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_buildordereventdata", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".buildordereventdata()" - }, - { - "label": ".checkAndSendRefillReminders()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L511", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_checkandsendrefillreminders", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".checkandsendrefillreminders()" - }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L17", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_constructor", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".constructor()" - }, - { - "label": ".create()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L101", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_create", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".create()" - }, - { - "label": ".generateTrackingNumber()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L22", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_generatetrackingnumber", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".generatetrackingnumber()" - }, - { - "label": ".releaseExpiredInventoryReservations()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L541", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_releaseexpiredinventoryreservations", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".releaseexpiredinventoryreservations()" - }, - { - "label": ".retryPayment()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L563", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_retrypayment", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".retrypayment()" - }, - { - "label": ".updateStatus()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L425", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_updatestatus", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".updatestatus()" - }, - { - "label": ".validateCoupon()", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L27", - "_callable": true, - "_origin": "ast", - "id": "backend_src_orders_orders_service_ordersservice_validatecoupon", - "community": 151, - "community_name": "OrdersService", - "norm_label": ".validatecoupon()" - }, { "label": "runSeoBackfill()", "file_type": "code", @@ -9443,7 +9467,7 @@ "label": "CartDrawer()", "file_type": "code", "source_file": "frontend/application/components/CartDrawer.tsx", - "source_location": "L16", + "source_location": "L17", "_callable": true, "_origin": "ast", "id": "frontend_application_components_cartdrawer_cartdrawer", @@ -9895,6 +9919,54 @@ "community_name": "ApiKeysService", "norm_label": ".constructor()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/home/home.controller.ts", + "source_location": "L17", + "_callable": true, + "_origin": "ast", + "id": "backend_src_home_home_controller_homecontroller_constructor", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": ".constructor()" + }, + { + "label": ".getHomeData()", + "file_type": "code", + "source_file": "backend/src/home/home.controller.ts", + "source_location": "L24", + "_callable": true, + "_origin": "ast", + "id": "backend_src_home_home_controller_homecontroller_gethomedata", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": ".gethomedata()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/home/home.service.ts", + "source_location": "L6", + "_callable": true, + "_origin": "ast", + "id": "backend_src_home_home_service_homeservice_constructor", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": ".constructor()" + }, + { + "label": ".getHomeData()", + "file_type": "code", + "source_file": "backend/src/home/home.service.ts", + "source_location": "L8", + "_callable": true, + "_origin": "ast", + "id": "backend_src_home_home_service_homeservice_gethomedata", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": ".gethomedata()" + }, { "label": ".constructor()", "file_type": "code", @@ -10039,6 +10111,66 @@ "community_name": "CreateVideoDto", "norm_label": ".update()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/admin/admin.service.ts", + "source_location": "L66", + "_callable": true, + "_origin": "ast", + "id": "backend_src_admin_admin_service_adminservice_constructor", + "community": 204, + "community_name": "RevalidationService", + "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": 204, + "community_name": "RevalidationService", + "norm_label": ".constructor()" + }, + { + "label": ".frontendUrl()", + "file_type": "code", + "source_file": "backend/src/common/revalidation/revalidation.service.ts", + "source_location": "L7", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_frontendurl", + "community": 204, + "community_name": "RevalidationService", + "norm_label": ".frontendurl()" + }, + { + "label": ".secret()", + "file_type": "code", + "source_file": "backend/src/common/revalidation/revalidation.service.ts", + "source_location": "L15", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_secret", + "community": 204, + "community_name": "RevalidationService", + "norm_label": ".secret()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/reviews/reviews.service.ts", + "source_location": "L16", + "_callable": true, + "_origin": "ast", + "id": "backend_src_reviews_reviews_service_reviewsservice_constructor", + "community": 204, + "community_name": "RevalidationService", + "norm_label": ".constructor()" + }, { "label": "main()", "file_type": "code", @@ -10207,18 +10339,6 @@ "community_name": "useSettingsStore", "norm_label": "tickerbanner()" }, - { - "label": "Tooltip()", - "file_type": "code", - "source_file": "frontend/application/components/Tooltip.tsx", - "source_location": "L14", - "_callable": true, - "_origin": "ast", - "id": "frontend_application_components_tooltip_tooltip", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "tooltip()" - }, { "label": "useNetworkStatus()", "file_type": "code", @@ -10615,186 +10735,6 @@ "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": "L978", - "_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": "L1154", - "_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": "L1058", - "_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": "L1180", - "_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": "L931", - "_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": "L768", - "_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": "L1029", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_gettransactionbytrackid", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".gettransactionbytrackid()" - }, - { - "label": ".handleAdminGatewayRefund()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L1187", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_handleadmingatewayrefund", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".handleadmingatewayrefund()" - }, - { - "label": ".initiateOrderPayment()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L31", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_initiateorderpayment", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".initiateorderpayment()" - }, - { - "label": ".initiateWalletTopup()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L139", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_payment_service_paymentservice_initiatewallettopup", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".initiatewallettopup()" - }, - { - "label": ".inquiryDirectZibal()", - "file_type": "code", - "source_file": "backend/src/payment/payment.service.ts", - "source_location": "L1035", - "_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": "L673", - "_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", @@ -10879,18 +10819,6 @@ "community_name": "ZibalService", "norm_label": ".getaccesstoken()" }, - { - "label": ".getBackendUrl()", - "file_type": "code", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L130", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_getbackendurl", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".getbackendurl()" - }, { "label": ".getCheckoutQueueReport()", "file_type": "code", @@ -10915,18 +10843,6 @@ "community_name": "ZibalService", "norm_label": ".getcheckoutreport()" }, - { - "label": ".getFrontendUrl()", - "file_type": "code", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L111", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_getfrontendurl", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".getfrontendurl()" - }, { "label": ".getGatewayName()", "file_type": "code", @@ -10975,42 +10891,6 @@ "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", - "source_file": "backend/src/payment/zibal.service.ts", - "source_location": "L211", - "_callable": true, - "_origin": "ast", - "id": "backend_src_payment_zibal_service_zibalservice_getstarturl", - "community": 294, - "community_name": "ZibalService", - "norm_label": ".getstarturl()" - }, - { - "label": ".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", @@ -11071,18 +10951,6 @@ "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", @@ -11791,30 +11659,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "dashboard()" }, - { - "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", @@ -11860,7 +11704,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_applyforwholesale", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".applyforwholesale()" }, { @@ -11872,7 +11716,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_approvewholesalerequest", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".approvewholesalerequest()" }, { @@ -11884,7 +11728,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_constructor", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".constructor()" }, { @@ -11896,7 +11740,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_getwholesalerequests", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".getwholesalerequests()" }, { @@ -11908,7 +11752,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_wholesalecontroller_rejectwholesalerequest", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".rejectwholesalerequest()" }, { @@ -11920,7 +11764,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_applyforwholesale", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".applyforwholesale()" }, { @@ -11932,7 +11776,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_approvewholesalerequest", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".approvewholesalerequest()" }, { @@ -11944,7 +11788,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_constructor", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".constructor()" }, { @@ -11956,7 +11800,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_getwholesalerequests", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".getwholesalerequests()" }, { @@ -11968,7 +11812,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_wholesaleservice_rejectwholesalerequest", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": ".rejectwholesalerequest()" }, { @@ -12463,6 +12307,18 @@ "community_name": "Button", "norm_label": "transactionreceiptmodal()" }, + { + "label": "Badge()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", + "source_location": "L34", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_badge_badge", + "community": 38, + "community_name": "Button", + "norm_label": "badge()" + }, { "label": "Button()", "file_type": "code", @@ -12487,6 +12343,18 @@ "community_name": "Button", "norm_label": "thsort()" }, + { + "label": "PrescriptionsManager()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/PrescriptionsManager.tsx", + "source_location": "L21", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_prescriptionsmanager_prescriptionsmanager", + "community": 38, + "community_name": "Button", + "norm_label": "prescriptionsmanager()" + }, { "label": "Transactions()", "file_type": "code", @@ -13375,6 +13243,54 @@ "community_name": "TestimonialsService", "norm_label": ".update()" }, + { + "label": ".getEventDefinitions()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L277", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_geteventdefinitions", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": ".geteventdefinitions()" + }, + { + "label": ".getSmsLogs()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L424", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_getsmslogs", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": ".getsmslogs()" + }, + { + "label": ".getSmsEvents()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L821", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_getsmsevents", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": ".getsmsevents()" + }, + { + "label": ".getSmsLogs()", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L841", + "_callable": true, + "_origin": "ast", + "id": "backend_src_settings_settings_service_settingsservice_getsmslogs", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": ".getsmslogs()" + }, { "label": ".constructor()", "file_type": "code", @@ -13531,30 +13447,6 @@ "community_name": "Button.tsx", "norm_label": "spinner()" }, - { - "label": "BannersManager()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/BannersManager.tsx", - "source_location": "L13", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_bannersmanager_bannersmanager", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "bannersmanager()" - }, - { - "label": "FAQManager()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/FAQManager.tsx", - "source_location": "L21", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_faqmanager_faqmanager", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "faqmanager()" - }, { "label": "PaymentGatewaysPage()", "file_type": "code", @@ -13568,16 +13460,28 @@ "norm_label": "paymentgatewayspage()" }, { - "label": "SeoSettingsPage()", + "label": "CustomTooltip()", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/SeoSettingsPage.tsx", - "source_location": "L15", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", + "source_location": "L32", "_callable": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_seosettingspage_seosettingspage", + "id": "frontend_admin_panel_src_pages_reports_customtooltip", "community": 48, "community_name": "Button.tsx", - "norm_label": "seosettingspage()" + "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": 48, + "community_name": "Button.tsx", + "norm_label": "reports()" }, { "label": "Settings()", @@ -13591,18 +13495,6 @@ "community_name": "Button.tsx", "norm_label": "settings()" }, - { - "label": "ShippingSettingsPage()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/ShippingSettingsPage.tsx", - "source_location": "L11", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_shippingsettingspage_shippingsettingspage", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "shippingsettingspage()" - }, { "label": "SslSettingsPage()", "file_type": "code", @@ -13615,6 +13507,18 @@ "community_name": "Button.tsx", "norm_label": "sslsettingspage()" }, + { + "label": "SystemSettingsPage()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx", + "source_location": "L22", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_systemsettingspage_systemsettingspage", + "community": 48, + "community_name": "Button.tsx", + "norm_label": "systemsettingspage()" + }, { "label": ".constructor()", "file_type": "code", @@ -14600,28 +14504,16 @@ "norm_label": "contactsubmissions()" }, { - "label": "IngredientsManager()", + "label": "FAQManager()", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/IngredientsManager.tsx", - "source_location": "L13", + "source_file": "frontend/admin-panel/src/pages/FAQManager.tsx", + "source_location": "L21", "_callable": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_ingredientsmanager_ingredientsmanager", + "id": "frontend_admin_panel_src_pages_faqmanager_faqmanager", "community": 54, "community_name": "Modal.tsx", - "norm_label": "ingredientsmanager()" - }, - { - "label": "MenuManager()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", - "source_location": "L40", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_menumanager_menumanager", - "community": 54, - "community_name": "Modal.tsx", - "norm_label": "menumanager()" + "norm_label": "faqmanager()" }, { "label": "Reviews()", @@ -14683,6 +14575,54 @@ "community_name": "UITexts.tsx", "norm_label": "iconpickermodal()" }, + { + "label": "ImagePreviewModal()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx", + "source_location": "L11", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_imagepreviewmodal_imagepreviewmodal", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "imagepreviewmodal()" + }, + { + "label": "getFileType()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", + "source_location": "L27", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_mediaselector_getfiletype", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "getfiletype()" + }, + { + "label": "MediaSelector()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", + "source_location": "L36", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_mediaselector_mediaselector", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "mediaselector()" + }, + { + "label": "RichTextEditor()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", + "source_location": "L76", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_richtexteditor_richtexteditor", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "richtexteditor()" + }, { "label": "ToggleSwitch()", "file_type": "code", @@ -14695,6 +14635,54 @@ "community_name": "UITexts.tsx", "norm_label": "toggleswitch()" }, + { + "label": "BannersManager()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/BannersManager.tsx", + "source_location": "L13", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_bannersmanager_bannersmanager", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "bannersmanager()" + }, + { + "label": "Blogs()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L113", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs_blogs", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "blogs()" + }, + { + "label": "IngredientsManager()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/IngredientsManager.tsx", + "source_location": "L13", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_ingredientsmanager_ingredientsmanager", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "ingredientsmanager()" + }, + { + "label": "SeoSettingsPage()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/SeoSettingsPage.tsx", + "source_location": "L15", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_seosettingspage_seosettingspage", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "seosettingspage()" + }, { "label": "createSeoSection()", "file_type": "code", @@ -14719,18 +14707,6 @@ "community_name": "UITexts.tsx", "norm_label": "uitexts()" }, - { - "label": "Badge()", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", - "source_location": "L34", - "_callable": true, - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_badge_badge", - "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "badge()" - }, { "label": "Skeleton()", "file_type": "code", @@ -14740,7 +14716,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_components_ui_skeleton_skeleton", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "skeleton()" }, { @@ -14752,20 +14728,68 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_monitoringpage_monitoringpage", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "monitoringpage()" }, { - "label": "PrescriptionsManager()", + "label": "getPaymentMethodLabel()", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/PrescriptionsManager.tsx", - "source_location": "L21", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L151", "_callable": true, "_origin": "ast", - "id": "frontend_admin_panel_src_pages_prescriptionsmanager_prescriptionsmanager", + "id": "frontend_admin_panel_src_pages_orders_getpaymentmethodlabel", "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "prescriptionsmanager()" + "community_name": "Orders.tsx", + "norm_label": "getpaymentmethodlabel()" + }, + { + "label": "getPaymentStatusBadge()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L121", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_getpaymentstatusbadge", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "getpaymentstatusbadge()" + }, + { + "label": "getShippingMethodLabel()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L138", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_getshippingmethodlabel", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "getshippingmethodlabel()" + }, + { + "label": "Orders()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L172", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_orders", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "orders()" + }, + { + "label": "toPersianDigits()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L166", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_topersiandigits", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "topersiandigits()" }, { "label": "Users()", @@ -14776,32 +14800,80 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_users_users", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "users()" }, { - "label": ".constructor()", + "label": "ConfirmModal()", "file_type": "code", - "source_file": "backend/src/common/metrics.controller.ts", - "source_location": "L11", + "source_file": "frontend/admin-panel/src/components/ui/ConfirmModal.tsx", + "source_location": "L15", "_callable": true, "_origin": "ast", - "id": "backend_src_common_metrics_controller_metricscontroller_constructor", + "id": "frontend_admin_panel_src_components_ui_confirmmodal_confirmmodal", "community": 58, - "community_name": "MetricsController", - "norm_label": ".constructor()" + "community_name": "ConfirmModal.tsx", + "norm_label": "confirmmodal()" }, { - "label": ".getMetrics()", + "label": "CMS()", "file_type": "code", - "source_file": "backend/src/common/metrics.controller.ts", + "source_file": "frontend/admin-panel/src/pages/CMS.tsx", + "source_location": "L23", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_cms_cms", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "cms()" + }, + { + "label": "DoctorsManager()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/DoctorsManager.tsx", + "source_location": "L31", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_doctorsmanager_doctorsmanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "doctorsmanager()" + }, + { + "label": "MenuManager()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", + "source_location": "L40", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_menumanager_menumanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "menumanager()" + }, + { + "label": "TestimonialsManager()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/TestimonialsManager.tsx", + "source_location": "L13", + "_callable": true, + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_testimonialsmanager_testimonialsmanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "testimonialsmanager()" + }, + { + "label": "WholesaleApplications()", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/WholesaleApplications.tsx", "source_location": "L18", "_callable": true, "_origin": "ast", - "id": "backend_src_common_metrics_controller_metricscontroller_getmetrics", + "id": "frontend_admin_panel_src_pages_wholesaleapplications_wholesaleapplications", "community": 58, - "community_name": "MetricsController", - "norm_label": ".getmetrics()" + "community_name": "ConfirmModal.tsx", + "norm_label": "wholesaleapplications()" }, { "label": ".constructor()", @@ -15307,78 +15379,6 @@ "community_name": "ProductPage.tsx", "norm_label": "usecatalogmode()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/admin/pets.controller.ts", - "source_location": "L25", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_pets_controller_petscontroller_constructor", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": ".constructor()" - }, - { - "label": ".deletePet()", - "file_type": "code", - "source_file": "backend/src/admin/pets.controller.ts", - "source_location": "L38", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_pets_controller_petscontroller_deletepet", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": ".deletepet()" - }, - { - "label": ".getPets()", - "file_type": "code", - "source_file": "backend/src/admin/pets.controller.ts", - "source_location": "L32", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_pets_controller_petscontroller_getpets", - "community": 62, - "community_name": "admin.module.ts", - "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": 62, - "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": 62, - "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": 62, - "community_name": "admin.module.ts", - "norm_label": ".getpets()" - }, { "label": ".constructor()", "file_type": "code", @@ -15884,15 +15884,267 @@ "norm_label": ".updateuserrole()" }, { - "label": ".constructor()", + "label": ".addPattern()", "file_type": "code", - "source_file": "backend/src/orders/orders.controller.ts", - "source_location": "L55", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L811", "_callable": true, "_origin": "ast", - "id": "backend_src_orders_orders_controller_orderscontroller_constructor", + "id": "backend_src_common_services_sms_service_smsservice_addpattern", "community": 67, - "community_name": "OrdersController", + "community_name": "SmsService", + "norm_label": ".addpattern()" + }, + { + "label": ".editPattern()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L890", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_editpattern", + "community": 67, + "community_name": "SmsService", + "norm_label": ".editpattern()" + }, + { + "label": ".getCredit()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L540", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_getcredit", + "community": 67, + "community_name": "SmsService", + "norm_label": ".getcredit()" + }, + { + "label": ".getPatterns()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L643", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_getpatterns", + "community": 67, + "community_name": "SmsService", + "norm_label": ".getpatterns()" + }, + { + "label": ".getSmsConfig()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L78", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_getsmsconfig", + "community": 67, + "community_name": "SmsService", + "norm_label": ".getsmsconfig()" + }, + { + "label": ".parsePatternsXml()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L495", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_parsepatternsxml", + "community": 67, + "community_name": "SmsService", + "norm_label": ".parsepatternsxml()" + }, + { + "label": ".postAsmx()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L356", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_postasmx", + "community": 67, + "community_name": "SmsService", + "norm_label": ".postasmx()" + }, + { + "label": ".recordLog()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L392", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_recordlog", + "community": 67, + "community_name": "SmsService", + "norm_label": ".recordlog()" + }, + { + "label": ".renderPatternMessage()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L610", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_renderpatternmessage", + "community": 67, + "community_name": "SmsService", + "norm_label": ".renderpatternmessage()" + }, + { + "label": ".saveLocalPattern()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L945", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_savelocalpattern", + "community": 67, + "community_name": "SmsService", + "norm_label": ".savelocalpattern()" + }, + { + "label": ".sendB2bNotification()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1334", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendb2bnotification", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendb2bnotification()" + }, + { + "label": ".sendOrderConfirmation()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1298", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendorderconfirmation", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendorderconfirmation()" + }, + { + "label": ".sendOtp()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1285", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendotp", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendotp()" + }, + { + "label": ".sendPatternSms()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1013", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendpatternsms", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendpatternsms()" + }, + { + "label": ".sendPetCareReminder()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1350", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendpetcarereminder", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendpetcarereminder()" + }, + { + "label": ".sendShippingNotification()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1317", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendshippingnotification", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendshippingnotification()" + }, + { + "label": ".sendSms()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1368", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_sendsms", + "community": 67, + "community_name": "SmsService", + "norm_label": ".sendsms()" + }, + { + "label": ".testRule()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L284", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_testrule", + "community": 67, + "community_name": "SmsService", + "norm_label": ".testrule()" + }, + { + "label": ".testSms()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1154", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_testsms", + "community": 67, + "community_name": "SmsService", + "norm_label": ".testsms()" + }, + { + "label": ".triggerEvent()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L151", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_triggerevent", + "community": 67, + "community_name": "SmsService", + "norm_label": ".triggerevent()" + }, + { + "label": ".updateLocalPattern()", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L973", + "_callable": true, + "_origin": "ast", + "id": "backend_src_common_services_sms_service_smsservice_updatelocalpattern", + "community": 67, + "community_name": "SmsService", + "norm_label": ".updatelocalpattern()" + }, + { + "label": ".constructor()", + "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_constructor", + "community": 67, + "community_name": "SmsService", "norm_label": ".constructor()" }, { @@ -16567,54 +16819,6 @@ "community_name": "PetsController", "norm_label": ".update()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.ts", - "source_location": "L66", - "_callable": true, - "_origin": "ast", - "id": "backend_src_admin_admin_service_adminservice_constructor", - "community": 76, - "community_name": "RevalidationService", - "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": 76, - "community_name": "RevalidationService", - "norm_label": ".constructor()" - }, - { - "label": ".frontendUrl()", - "file_type": "code", - "source_file": "backend/src/common/revalidation/revalidation.service.ts", - "source_location": "L7", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_frontendurl", - "community": 76, - "community_name": "RevalidationService", - "norm_label": ".frontendurl()" - }, - { - "label": ".secret()", - "file_type": "code", - "source_file": "backend/src/common/revalidation/revalidation.service.ts", - "source_location": "L15", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_service_revalidationservice_secret", - "community": 76, - "community_name": "RevalidationService", - "norm_label": ".secret()" - }, { "label": ".constructor()", "file_type": "code", @@ -16624,7 +16828,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_constructor", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".constructor()" }, { @@ -16636,7 +16840,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_findall", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".findall()" }, { @@ -16648,7 +16852,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_findone", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".findone()" }, { @@ -16660,7 +16864,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_getactivefilters", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".getactivefilters()" }, { @@ -16672,7 +16876,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_getdosageconfig", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".getdosageconfig()" }, { @@ -16684,7 +16888,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_getnavigationfilters", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".getnavigationfilters()" }, { @@ -16696,7 +16900,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_productscontroller_updatedosageconfig", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".updatedosageconfig()" }, { @@ -16708,7 +16912,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_constructor", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".constructor()" }, { @@ -16720,7 +16924,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_findall", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".findall()" }, { @@ -16732,7 +16936,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_findone", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".findone()" }, { @@ -16744,7 +16948,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_getactivefilters", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".getactivefilters()" }, { @@ -16756,7 +16960,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_getdosageconfig", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".getdosageconfig()" }, { @@ -16768,7 +16972,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_getnavigationfilters", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".getnavigationfilters()" }, { @@ -16780,21 +16984,9 @@ "_origin": "ast", "id": "backend_src_products_products_service_productsservice_updatedosageconfig", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": ".updatedosageconfig()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/reviews/reviews.service.ts", - "source_location": "L16", - "_callable": true, - "_origin": "ast", - "id": "backend_src_reviews_reviews_service_reviewsservice_constructor", - "community": 76, - "community_name": "RevalidationService", - "norm_label": ".constructor()" - }, { "label": ".constructor()", "file_type": "code", @@ -16891,18 +17083,6 @@ "community_name": "rss.xml/route.ts", "norm_label": "get()" }, - { - "label": ".addPattern()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L811", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_addpattern", - "community": 8, - "community_name": "SmsService", - "norm_label": ".addpattern()" - }, { "label": ".clearAllSmsLogs()", "file_type": "code", @@ -16912,21 +17092,9 @@ "_origin": "ast", "id": "backend_src_common_services_sms_service_smsservice_clearallsmslogs", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".clearallsmslogs()" }, - { - "label": ".constructor()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L73", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_constructor", - "community": 8, - "community_name": "SmsService", - "norm_label": ".constructor()" - }, { "label": ".deleteSmsLog()", "file_type": "code", @@ -16936,273 +17104,9 @@ "_origin": "ast", "id": "backend_src_common_services_sms_service_smsservice_deletesmslog", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".deletesmslog()" }, - { - "label": ".editPattern()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L890", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_editpattern", - "community": 8, - "community_name": "SmsService", - "norm_label": ".editpattern()" - }, - { - "label": ".getCredit()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L540", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_getcredit", - "community": 8, - "community_name": "SmsService", - "norm_label": ".getcredit()" - }, - { - "label": ".getEventDefinitions()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L277", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_geteventdefinitions", - "community": 8, - "community_name": "SmsService", - "norm_label": ".geteventdefinitions()" - }, - { - "label": ".getPatterns()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L643", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_getpatterns", - "community": 8, - "community_name": "SmsService", - "norm_label": ".getpatterns()" - }, - { - "label": ".getSmsConfig()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L78", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_getsmsconfig", - "community": 8, - "community_name": "SmsService", - "norm_label": ".getsmsconfig()" - }, - { - "label": ".getSmsLogs()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L424", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_getsmslogs", - "community": 8, - "community_name": "SmsService", - "norm_label": ".getsmslogs()" - }, - { - "label": ".parsePatternsXml()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L495", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_parsepatternsxml", - "community": 8, - "community_name": "SmsService", - "norm_label": ".parsepatternsxml()" - }, - { - "label": ".postAsmx()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L356", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_postasmx", - "community": 8, - "community_name": "SmsService", - "norm_label": ".postasmx()" - }, - { - "label": ".recordLog()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L392", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_recordlog", - "community": 8, - "community_name": "SmsService", - "norm_label": ".recordlog()" - }, - { - "label": ".renderPatternMessage()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L610", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_renderpatternmessage", - "community": 8, - "community_name": "SmsService", - "norm_label": ".renderpatternmessage()" - }, - { - "label": ".saveLocalPattern()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L945", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_savelocalpattern", - "community": 8, - "community_name": "SmsService", - "norm_label": ".savelocalpattern()" - }, - { - "label": ".sendB2bNotification()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1334", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendb2bnotification", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendb2bnotification()" - }, - { - "label": ".sendOrderConfirmation()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1298", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendorderconfirmation", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendorderconfirmation()" - }, - { - "label": ".sendOtp()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1285", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendotp", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendotp()" - }, - { - "label": ".sendPatternSms()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1013", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendpatternsms", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendpatternsms()" - }, - { - "label": ".sendPetCareReminder()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1350", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendpetcarereminder", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendpetcarereminder()" - }, - { - "label": ".sendShippingNotification()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1317", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendshippingnotification", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendshippingnotification()" - }, - { - "label": ".sendSms()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1368", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_sendsms", - "community": 8, - "community_name": "SmsService", - "norm_label": ".sendsms()" - }, - { - "label": ".testRule()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L284", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_testrule", - "community": 8, - "community_name": "SmsService", - "norm_label": ".testrule()" - }, - { - "label": ".testSms()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1154", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_testsms", - "community": 8, - "community_name": "SmsService", - "norm_label": ".testsms()" - }, - { - "label": ".triggerEvent()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L151", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_triggerevent", - "community": 8, - "community_name": "SmsService", - "norm_label": ".triggerevent()" - }, - { - "label": ".updateLocalPattern()", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L973", - "_callable": true, - "_origin": "ast", - "id": "backend_src_common_services_sms_service_smsservice_updatelocalpattern", - "community": 8, - "community_name": "SmsService", - "norm_label": ".updatelocalpattern()" - }, { "label": ".addPattern()", "file_type": "code", @@ -17212,7 +17116,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_addpattern", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".addpattern()" }, { @@ -17224,7 +17128,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_clearallsmslogs", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".clearallsmslogs()" }, { @@ -17236,7 +17140,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_constructor", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".constructor()" }, { @@ -17248,7 +17152,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_deletescientificterm", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".deletescientificterm()" }, { @@ -17260,7 +17164,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_deletesmslog", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".deletesmslog()" }, { @@ -17272,7 +17176,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_editpattern", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".editpattern()" }, { @@ -17284,7 +17188,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getfinancial", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getfinancial()" }, { @@ -17296,7 +17200,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getfinancialsettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getfinancialsettings()" }, { @@ -17308,7 +17212,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getpatterns", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getpatterns()" }, { @@ -17320,7 +17224,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getscientificterms", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getscientificterms()" }, { @@ -17332,7 +17236,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getseosettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getseosettings()" }, { @@ -17344,7 +17248,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getsmscredit", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsmscredit()" }, { @@ -17356,7 +17260,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getsmsevents", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsmsevents()" }, { @@ -17368,7 +17272,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getsmslogs", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsmslogs()" }, { @@ -17380,7 +17284,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getsmssettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsmssettings()" }, { @@ -17392,7 +17296,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getsystemsettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsystemsettings()" }, { @@ -17404,7 +17308,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_getuitexts", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getuitexts()" }, { @@ -17416,7 +17320,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_patchuitext", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".patchuitext()" }, { @@ -17428,7 +17332,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_putbulkuitexts", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".putbulkuitexts()" }, { @@ -17440,7 +17344,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_putuitext", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".putuitext()" }, { @@ -17452,7 +17356,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_testsms", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".testsms()" }, { @@ -17464,7 +17368,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_testsmsrule", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".testsmsrule()" }, { @@ -17476,7 +17380,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_updatefinancial", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatefinancial()" }, { @@ -17488,7 +17392,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_updatefinancialsettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatefinancialsettings()" }, { @@ -17500,7 +17404,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_updateseosettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updateseosettings()" }, { @@ -17512,7 +17416,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_updatesmssettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatesmssettings()" }, { @@ -17524,7 +17428,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_updatesystemsettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatesystemsettings()" }, { @@ -17536,7 +17440,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_settingscontroller_upsertscientificterm", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".upsertscientificterm()" }, { @@ -17548,7 +17452,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_addpattern", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".addpattern()" }, { @@ -17560,7 +17464,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_clearallsmslogs", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".clearallsmslogs()" }, { @@ -17572,7 +17476,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_constructor", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".constructor()" }, { @@ -17584,7 +17488,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_deletescientificterm", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".deletescientificterm()" }, { @@ -17596,7 +17500,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_deletesmslog", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".deletesmslog()" }, { @@ -17608,7 +17512,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_editpattern", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".editpattern()" }, { @@ -17620,7 +17524,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getcategorysetting", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getcategorysetting()" }, { @@ -17632,7 +17536,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getfinancialsettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getfinancialsettings()" }, { @@ -17644,7 +17548,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getpatterns", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getpatterns()" }, { @@ -17656,7 +17560,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getscientificterms", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getscientificterms()" }, { @@ -17668,33 +17572,9 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getsmscredit", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsmscredit()" }, - { - "label": ".getSmsEvents()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L821", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_getsmsevents", - "community": 8, - "community_name": "SmsService", - "norm_label": ".getsmsevents()" - }, - { - "label": ".getSmsLogs()", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L841", - "_callable": true, - "_origin": "ast", - "id": "backend_src_settings_settings_service_settingsservice_getsmslogs", - "community": 8, - "community_name": "SmsService", - "norm_label": ".getsmslogs()" - }, { "label": ".getSmsSettings()", "file_type": "code", @@ -17704,7 +17584,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getsmssettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getsmssettings()" }, { @@ -17716,7 +17596,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_getuitexts", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".getuitexts()" }, { @@ -17728,7 +17608,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_onmoduleinit", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".onmoduleinit()" }, { @@ -17740,7 +17620,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_seeddefaultuitexts", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".seeddefaultuitexts()" }, { @@ -17752,7 +17632,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_testsms", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".testsms()" }, { @@ -17764,7 +17644,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_testsmsrule", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".testsmsrule()" }, { @@ -17776,7 +17656,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_updatebulkuitexts", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatebulkuitexts()" }, { @@ -17788,7 +17668,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_updatecategorysetting", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatecategorysetting()" }, { @@ -17800,7 +17680,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_updatefinancialsettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatefinancialsettings()" }, { @@ -17812,7 +17692,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_updatesmssettings", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updatesmssettings()" }, { @@ -17824,7 +17704,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_updateuitext", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".updateuitext()" }, { @@ -17836,7 +17716,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_settingsservice_upsertscientificterm", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": ".upsertscientificterm()" }, { @@ -18007,6 +17887,18 @@ "community_name": "seed-products.ts", "norm_label": "slugify()" }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/orders/orders.controller.ts", + "source_location": "L55", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_controller_orderscontroller_constructor", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".constructor()" + }, { "label": ".create()", "file_type": "code", @@ -18016,7 +17908,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_orderscontroller_create", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".create()" }, { @@ -18028,7 +17920,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_orderscontroller_findall", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".findall()" }, { @@ -18040,7 +17932,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_orderscontroller_findone", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".findone()" }, { @@ -18052,7 +17944,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_orderscontroller_retrypayment", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".retrypayment()" }, { @@ -18064,9 +17956,57 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_orderscontroller_validatecoupon", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".validatecoupon()" }, + { + "label": ".buildOrderEventData()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L310", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_buildordereventdata", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".buildordereventdata()" + }, + { + "label": ".checkAndSendRefillReminders()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L511", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_checkandsendrefillreminders", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".checkandsendrefillreminders()" + }, + { + "label": ".constructor()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L17", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_constructor", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".constructor()" + }, + { + "label": ".create()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L101", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_create", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".create()" + }, { "label": ".findAllByUser()", "file_type": "code", @@ -18076,7 +18016,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_service_ordersservice_findallbyuser", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".findallbyuser()" }, { @@ -18088,9 +18028,69 @@ "_origin": "ast", "id": "backend_src_orders_orders_service_ordersservice_findone", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": ".findone()" }, + { + "label": ".generateTrackingNumber()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L22", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_generatetrackingnumber", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".generatetrackingnumber()" + }, + { + "label": ".releaseExpiredInventoryReservations()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L541", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_releaseexpiredinventoryreservations", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".releaseexpiredinventoryreservations()" + }, + { + "label": ".retryPayment()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L563", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_retrypayment", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".retrypayment()" + }, + { + "label": ".updateStatus()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L425", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_updatestatus", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".updatestatus()" + }, + { + "label": ".validateCoupon()", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L27", + "_callable": true, + "_origin": "ast", + "id": "backend_src_orders_orders_service_ordersservice_validatecoupon", + "community": 92, + "community_name": "OrdersService", + "norm_label": ".validatecoupon()" + }, { "label": ".adminLogin()", "file_type": "code", @@ -18641,6 +18641,17 @@ "community_name": "app.module.ts", "norm_label": "module" }, + { + "label": "b2b.service.ts", + "file_type": "code", + "source_file": "backend/src/b2b/b2b.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_b2b_b2b_service", + "community": 1, + "community_name": "app.module.ts", + "norm_label": "b2b.service.ts" + }, { "label": "banners.module.ts", "file_type": "code", @@ -18663,6 +18674,17 @@ "community_name": "app.module.ts", "norm_label": "module" }, + { + "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": 1, + "community_name": "app.module.ts", + "norm_label": "banners.service.ts" + }, { "label": "cms.module.ts", "file_type": "code", @@ -18762,28 +18784,6 @@ "community_name": "app.module.ts", "norm_label": "module" }, - { - "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": 1, - "community_name": "app.module.ts", - "norm_label": "faq.module.ts" - }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_faq_faq_module_ts_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "module" - }, { "label": "ingredients.module.ts", "file_type": "code", @@ -18806,6 +18806,17 @@ "community_name": "app.module.ts", "norm_label": "module" }, + { + "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": 1, + "community_name": "app.module.ts", + "norm_label": "ingredients.service.ts" + }, { "label": "menu.module.ts", "file_type": "code", @@ -18850,28 +18861,6 @@ "community_name": "app.module.ts", "norm_label": "module" }, - { - "label": "prescriptions.module.ts", - "file_type": "code", - "source_file": "backend/src/prescriptions/prescriptions.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_prescriptions_prescriptions_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "prescriptions.module.ts" - }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_prescriptions_prescriptions_module_ts_module", - "community": 1, - "community_name": "app.module.ts", - "norm_label": "module" - }, { "label": "prisma.module.ts", "file_type": "code", @@ -18971,6 +18960,17 @@ "community_name": "app.module.ts", "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": 1, + "community_name": "app.module.ts", + "norm_label": "smart-advisor.service.ts" + }, { "label": "testimonials.module.ts", "file_type": "code", @@ -18993,6 +18993,17 @@ "community_name": "app.module.ts", "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": 1, + "community_name": "app.module.ts", + "norm_label": "testimonials.service.ts" + }, { "label": "tickets.module.ts", "file_type": "code", @@ -19037,6 +19048,17 @@ "community_name": "app.module.ts", "norm_label": "module" }, + { + "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": 1, + "community_name": "app.module.ts", + "norm_label": "wholesale.service.ts" + }, { "label": "create-review.dto.ts", "file_type": "code", @@ -19114,6 +19136,61 @@ "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": 10, + "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": 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" + }, { "label": "ApiBearerAuth", "file_type": "code", @@ -19939,6 +20016,17 @@ "community_name": "Products.tsx", "norm_label": "products.tsx" }, + { + "label": "ShippingSettingsPage.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/ShippingSettingsPage.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_shippingsettingspage", + "community": 104, + "community_name": "Products.tsx", + "norm_label": "shippingsettingspage.tsx" + }, { "label": "Coupons", "file_type": "code", @@ -19972,6 +20060,17 @@ "community_name": "Products.tsx", "norm_label": "products" }, + { + "label": "ShippingSettingsPage", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L37", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_shippingsettingspage", + "community": 104, + "community_name": "Products.tsx", + "norm_label": "shippingsettingspage" + }, { "label": "pricing.ts", "file_type": "code", @@ -20127,103 +20226,15 @@ "norm_label": "strict input specifications (what files to read)" }, { - "label": "initiate-payment.dto.ts", - "file_type": "code", - "source_file": "backend/src/payment/dto/initiate-payment.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto", - "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "initiate-payment.dto.ts" - }, - { - "label": "ApiProperty", + "label": "Injectable", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_ts_apiproperty", + "id": "backend_src_payment_payment_service_ts_injectable", "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "apiproperty" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_ts_apipropertyoptional", - "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_ts_isnotempty", - "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "isnotempty" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_ts_isoptional", - "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_payment_dto_initiate_payment_dto_ts_isstring", - "community": 106, - "community_name": "InitiatePaymentDto", - "norm_label": "isstring" - }, - { - "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": 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": "blogs/blogs.controller.ts", - "file_type": "code", - "source_file": "backend/src/blogs/blogs.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_blogs_blogs_controller", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "blogs/blogs.controller.ts" + "community_name": "PaymentService", + "norm_label": "injectable" }, { "label": "blogs.module.ts", @@ -20233,7 +20244,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_module", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "blogs.module.ts" }, { @@ -20244,7 +20255,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_module_ts_module", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "module" }, { @@ -20255,7 +20266,7 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "blogs/blogs.service.ts" }, { @@ -20266,151 +20277,19 @@ "_origin": "ast", "id": "backend_src_blogs_blogs_service_ts_injectable", "community": 107, - "community_name": "PaginationDto", + "community_name": "BlogsService", "norm_label": "injectable" }, { - "label": "pagination.dto.ts", - "file_type": "code", - "source_file": "backend/src/common/dto/pagination.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "pagination.dto.ts" - }, - { - "label": "ApiPropertyOptional", + "label": "ApiExcludeController", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_apipropertyoptional", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsEnum", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_isenum", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "isenum" - }, - { - "label": "IsInt", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_isint", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "isint" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_isoptional", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_isstring", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "isstring" - }, - { - "label": "Min", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_min", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "min" - }, - { - "label": "Type", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_dto_pagination_dto_ts_type", - "community": 107, - "community_name": "PaginationDto", - "norm_label": "type" - }, - { - "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" + "id": "apiexcludecontroller", + "community": 108, + "community_name": "PrismaService", + "norm_label": "apiexcludecontroller" }, { "label": "categories.service.ts", @@ -20424,26 +20303,26 @@ "norm_label": "categories.service.ts" }, { - "label": "b2b.service.ts", + "label": "admin/pets.service.ts", "file_type": "code", - "source_file": "backend/src/b2b/b2b.service.ts", + "source_file": "backend/src/admin/pets.service.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_b2b_b2b_service", + "id": "backend_src_admin_pets_service", "community": 108, "community_name": "PrismaService", - "norm_label": "b2b.service.ts" + "norm_label": "admin/pets.service.ts" }, { - "label": "banners.service.ts", + "label": "Injectable", "file_type": "code", - "source_file": "backend/src/banners/banners.service.ts", - "source_location": "L1", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_src_banners_banners_service", + "id": "backend_src_admin_pets_service_ts_injectable", "community": 108, "community_name": "PrismaService", - "norm_label": "banners.service.ts" + "norm_label": "injectable" }, { "label": "metrics.controller.ts", @@ -20457,48 +20336,37 @@ "norm_label": "metrics.controller.ts" }, { - "label": "sms-events.constants.ts", + "label": "Controller", "file_type": "code", - "source_file": "backend/src/common/services/sms-events.constants.ts", - "source_location": "L1", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_src_common_services_sms_events_constants", + "id": "backend_src_common_metrics_controller_ts_controller", "community": 108, "community_name": "PrismaService", - "norm_label": "sms-events.constants.ts" + "norm_label": "controller" }, { - "label": "DEFAULT_SMS_RULES", + "label": "Get", "file_type": "code", - "source_file": "backend/src/common/services/sms-events.constants.ts", - "source_location": "L221", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_src_common_services_sms_events_constants_default_sms_rules", + "id": "backend_src_common_metrics_controller_ts_get", "community": 108, "community_name": "PrismaService", - "norm_label": "default_sms_rules" + "norm_label": "get" }, { - "label": "SMS_EVENT_DEFINITIONS", + "label": "Res", "file_type": "code", - "source_file": "backend/src/common/services/sms-events.constants.ts", - "source_location": "L26", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "backend_src_common_services_sms_events_constants_sms_event_definitions", + "id": "backend_src_common_metrics_controller_ts_res", "community": 108, "community_name": "PrismaService", - "norm_label": "sms_event_definitions" - }, - { - "label": "sms.service.ts", - "file_type": "code", - "source_file": "backend/src/common/services/sms.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_common_services_sms_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "sms.service.ts" + "norm_label": "res" }, { "label": "contact.service.ts", @@ -20511,6 +20379,28 @@ "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", @@ -20522,17 +20412,6 @@ "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", @@ -20544,17 +20423,6 @@ "community_name": "PrismaService", "norm_label": "menu.service.ts" }, - { - "label": "orders.service.spec.ts", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.spec.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_orders_orders_service_spec", - "community": 108, - "community_name": "PrismaService", - "norm_label": "orders.service.spec.ts" - }, { "label": "payment.service.ts", "file_type": "code", @@ -20588,17 +20456,6 @@ "community_name": "PrismaService", "norm_label": "pets.service.spec.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", @@ -20621,83 +20478,6 @@ "community_name": "PrismaService", "norm_label": "injectable" }, - { - "label": "default-ui-texts.ts", - "file_type": "code", - "source_file": "backend/src/settings/default-ui-texts.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_settings_default_ui_texts", - "community": 108, - "community_name": "PrismaService", - "norm_label": "default-ui-texts.ts" - }, - { - "label": "DEFAULT_UI_TEXTS", - "file_type": "code", - "source_file": "backend/src/settings/default-ui-texts.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_settings_default_ui_texts_default_ui_texts", - "community": 108, - "community_name": "PrismaService", - "norm_label": "default_ui_texts" - }, - { - "label": "settings.service.ts", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_settings_settings_service", - "community": 108, - "community_name": "PrismaService", - "norm_label": "settings.service.ts" - }, - { - "label": "CANONICAL_ALIASES", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.ts", - "source_location": "L13", - "_origin": "ast", - "id": "backend_src_settings_settings_service_canonical_aliases", - "community": 108, - "community_name": "PrismaService", - "norm_label": "canonical_aliases" - }, - { - "label": "settings.service.spec.ts", - "file_type": "code", - "source_file": "backend/src/settings/settings.service.spec.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_settings_settings_service_spec", - "community": 108, - "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.ts", "file_type": "code", @@ -20731,17 +20511,6 @@ "community_name": "PrismaService", "norm_label": "videos.service.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", @@ -20874,61 +20643,6 @@ "community_name": "1. Summary of Integrity Repairs Performed", "norm_label": "phase 2.6 integrity repair & audit quality gate report" }, - { - "label": "auth.constants.ts", - "file_type": "code", - "source_file": "backend/src/auth/auth.constants.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_auth_auth_constants", - "community": 11, - "community_name": "UsersService", - "norm_label": "auth.constants.ts" - }, - { - "label": "DEFAULT_JWT_REFRESH_SECRET", - "file_type": "code", - "source_file": "backend/src/auth/auth.constants.ts", - "source_location": "L4", - "_origin": "ast", - "id": "backend_src_auth_auth_constants_default_jwt_refresh_secret", - "community": 11, - "community_name": "UsersService", - "norm_label": "default_jwt_refresh_secret" - }, - { - "label": "DEFAULT_JWT_SECRET", - "file_type": "code", - "source_file": "backend/src/auth/auth.constants.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_auth_auth_constants_default_jwt_secret", - "community": 11, - "community_name": "UsersService", - "norm_label": "default_jwt_secret" - }, - { - "label": "jwt.strategy.ts", - "file_type": "code", - "source_file": "backend/src/auth/jwt.strategy.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_auth_jwt_strategy", - "community": 11, - "community_name": "UsersService", - "norm_label": "jwt.strategy.ts" - }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_jwt_strategy_ts_injectable", - "community": 11, - "community_name": "UsersService", - "norm_label": "injectable" - }, { "label": "address.dto.ts", "file_type": "code", @@ -21270,17 +20984,6 @@ "community_name": "UsersService", "norm_label": "injectable" }, - { - "label": "Optional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_users_service_ts_optional", - "community": 11, - "community_name": "UsersService", - "norm_label": "optional" - }, { "label": "01_auditor.md", "file_type": "document", @@ -21732,6 +21435,50 @@ "community_name": "lib/services/api.ts", "norm_label": "testimonialssection.tsx" }, + { + "label": "Tooltip.test.tsx", + "file_type": "code", + "source_file": "frontend/application/components/__tests__/Tooltip.test.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_application_components_tests_tooltip_test", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "tooltip.test.tsx" + }, + { + "label": "Tooltip.tsx", + "file_type": "code", + "source_file": "frontend/application/components/Tooltip.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_application_components_tooltip", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "tooltip.tsx" + }, + { + "label": "data/scientificTerms.ts", + "file_type": "code", + "source_file": "frontend/application/lib/data/scientificTerms.ts", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_application_lib_data_scientificterms", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "data/scientificterms.ts" + }, + { + "label": "SCIENTIFIC_TERMS", + "file_type": "code", + "source_file": "frontend/application/lib/data/scientificTerms.ts", + "source_location": "L7", + "_origin": "ast", + "id": "frontend_application_lib_data_scientificterms_scientific_terms", + "community": 113, + "community_name": "lib/services/api.ts", + "norm_label": "scientific_terms" + }, { "label": "lib/services/api.ts", "file_type": "code", @@ -21919,39 +21666,6 @@ "community_name": "AppService", "norm_label": "injectable" }, - { - "label": "ConfirmModal.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/ConfirmModal.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_confirmmodal", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "confirmmodal.tsx" - }, - { - "label": "ImagePreviewModal.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_imagepreviewmodal", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "imagepreviewmodal.tsx" - }, - { - "label": "MediaSelector.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_mediaselector", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "mediaselector.tsx" - }, { "label": "Pagination.tsx", "file_type": "code", @@ -21960,53 +21674,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_components_ui_pagination", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "pagination.tsx" }, - { - "label": "RichTextEditor.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_richtexteditor", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "richtexteditor.tsx" - }, - { - "label": "PRESET_BG_COLORS", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", - "source_location": "L51", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_bg_colors", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "preset_bg_colors" - }, - { - "label": "PRESET_COLORS", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", - "source_location": "L41", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_colors", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "preset_colors" - }, - { - "label": "Blogs.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_blogs", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "blogs.tsx" - }, { "label": "Categories.tsx", "file_type": "code", @@ -22015,31 +21685,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_categories", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "categories.tsx" }, - { - "label": "CMS.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/CMS.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_cms", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "cms.tsx" - }, - { - "label": "DoctorsManager.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/DoctorsManager.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_doctorsmanager", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "doctorsmanager.tsx" - }, { "label": "Media.tsx", "file_type": "code", @@ -22048,7 +21696,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_media", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "media.tsx" }, { @@ -22059,20 +21707,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_pets", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "pets.tsx" }, - { - "label": "TestimonialsManager.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/TestimonialsManager.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_testimonialsmanager", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "testimonialsmanager.tsx" - }, { "label": "Videos.tsx", "file_type": "code", @@ -22081,20 +21718,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_videos", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "videos.tsx" }, - { - "label": "WholesaleApplications.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/WholesaleApplications.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_wholesaleapplications", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "wholesaleapplications.tsx" - }, { "label": "Wiki.tsx", "file_type": "code", @@ -22103,20 +21729,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_wiki", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "wiki.tsx" }, - { - "label": "Blogs", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L18", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_blogs", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "blogs" - }, { "label": "Categories", "file_type": "code", @@ -22125,31 +21740,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_categories", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "categories" }, - { - "label": "CMS", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L23", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_cms", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "cms" - }, - { - "label": "DoctorsManager", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L45", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_doctorsmanager", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "doctorsmanager" - }, { "label": "Media", "file_type": "code", @@ -22158,7 +21751,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_media", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "media" }, { @@ -22169,20 +21762,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_pets", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "pets" }, - { - "label": "TestimonialsManager", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L29", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_testimonialsmanager", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "testimonialsmanager" - }, { "label": "Videos", "file_type": "code", @@ -22191,20 +21773,9 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_videos", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "videos" }, - { - "label": "WholesaleApplications", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L24", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_wholesaleapplications", - "community": 115, - "community_name": "MediaSelector.tsx", - "norm_label": "wholesaleapplications" - }, { "label": "Wiki", "file_type": "code", @@ -22213,7 +21784,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_wiki", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "wiki" }, { @@ -22224,7 +21795,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_services_api_base_domain", "community": 115, - "community_name": "MediaSelector.tsx", + "community_name": "Media.tsx", "norm_label": "base_domain" }, { @@ -23426,17 +22997,6 @@ "community_name": "auth.service.ts", "norm_label": "generate-openapi.ts" }, - { - "label": "admin.service.spec.ts", - "file_type": "code", - "source_file": "backend/src/admin/admin.service.spec.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_admin_admin_service_spec", - "community": 123, - "community_name": "auth.service.ts", - "norm_label": "admin.service.spec.ts" - }, { "label": "Module", "file_type": "code", @@ -23448,28 +23008,6 @@ "community_name": "auth.service.ts", "norm_label": "module" }, - { - "label": "auth.module.ts", - "file_type": "code", - "source_file": "backend/src/auth/auth.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_auth_auth_module", - "community": 123, - "community_name": "auth.service.ts", - "norm_label": "auth.module.ts" - }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_auth_auth_module_ts_module", - "community": 123, - "community_name": "auth.service.ts", - "norm_label": "module" - }, { "label": "auth.service.ts", "file_type": "code", @@ -23558,28 +23096,6 @@ "community_name": "auth.service.ts", "norm_label": "injectable" }, - { - "label": "users.module.ts", - "file_type": "code", - "source_file": "backend/src/users/users.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_users_users_module", - "community": 123, - "community_name": "auth.service.ts", - "norm_label": "users.module.ts" - }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_users_users_module_ts_module", - "community": 123, - "community_name": "auth.service.ts", - "norm_label": "module" - }, { "label": "app.e2e-spec.ts", "file_type": "code", @@ -24032,81 +23548,59 @@ "norm_label": "\u0637\u0631\u06cc\u0642\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062f\u0631 \u0635\u0641\u062d\u0627\u062a \u0648\u0628" }, { - "label": "home.controller.ts", + "label": "Module", "file_type": "code", - "source_file": "backend/src/home/home.controller.ts", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_admin_module_ts_module", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "module" + }, + { + "label": "auth.constants.ts", + "file_type": "code", + "source_file": "backend/src/auth/auth.constants.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_home_home_controller", + "id": "backend_src_auth_auth_constants", "community": 128, - "community_name": "HomeController", - "norm_label": "home.controller.ts" + "community_name": "auth.module.ts", + "norm_label": "auth.constants.ts" }, { - "label": "ApiOkResponse", + "label": "DEFAULT_JWT_REFRESH_SECRET", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/auth/auth.constants.ts", + "source_location": "L4", "_origin": "ast", - "id": "backend_src_home_home_controller_ts_apiokresponse", + "id": "backend_src_auth_auth_constants_default_jwt_refresh_secret", "community": 128, - "community_name": "HomeController", - "norm_label": "apiokresponse" + "community_name": "auth.module.ts", + "norm_label": "default_jwt_refresh_secret" }, { - "label": "ApiOperation", + "label": "DEFAULT_JWT_SECRET", "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_home_home_controller_ts_apioperation", - "community": 128, - "community_name": "HomeController", - "norm_label": "apioperation" - }, - { - "label": "ApiTags", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_home_home_controller_ts_apitags", - "community": 128, - "community_name": "HomeController", - "norm_label": "apitags" - }, - { - "label": "Controller", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_home_home_controller_ts_controller", - "community": 128, - "community_name": "HomeController", - "norm_label": "controller" - }, - { - "label": "Get", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_home_home_controller_ts_get", - "community": 128, - "community_name": "HomeController", - "norm_label": "get" - }, - { - "label": "home.module.ts", - "file_type": "code", - "source_file": "backend/src/home/home.module.ts", + "source_file": "backend/src/auth/auth.constants.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_home_home_module", + "id": "backend_src_auth_auth_constants_default_jwt_secret", "community": 128, - "community_name": "HomeController", - "norm_label": "home.module.ts" + "community_name": "auth.module.ts", + "norm_label": "default_jwt_secret" + }, + { + "label": "auth.module.ts", + "file_type": "code", + "source_file": "backend/src/auth/auth.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_auth_auth_module", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "auth.module.ts" }, { "label": "Module", @@ -24114,21 +23608,21 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_home_home_module_ts_module", + "id": "backend_src_auth_auth_module_ts_module", "community": 128, - "community_name": "HomeController", + "community_name": "auth.module.ts", "norm_label": "module" }, { - "label": "home.service.ts", + "label": "jwt.strategy.ts", "file_type": "code", - "source_file": "backend/src/home/home.service.ts", + "source_file": "backend/src/auth/jwt.strategy.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_home_home_service", + "id": "backend_src_auth_jwt_strategy", "community": 128, - "community_name": "HomeController", - "norm_label": "home.service.ts" + "community_name": "auth.module.ts", + "norm_label": "jwt.strategy.ts" }, { "label": "Injectable", @@ -24136,11 +23630,44 @@ "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_home_home_service_ts_injectable", + "id": "backend_src_auth_jwt_strategy_ts_injectable", "community": 128, - "community_name": "HomeController", + "community_name": "auth.module.ts", "norm_label": "injectable" }, + { + "label": "users.module.ts", + "file_type": "code", + "source_file": "backend/src/users/users.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_users_users_module", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "users.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_users_users_module_ts_module", + "community": 128, + "community_name": "auth.module.ts", + "norm_label": "module" + }, + { + "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": 129, + "community_name": "WikiController", + "norm_label": "wiki/wiki.controller.ts" + }, { "label": "ApiNotFoundResponse", "file_type": "code", @@ -24229,6 +23756,50 @@ "community_name": "WikiController", "norm_label": "query" }, + { + "label": "wiki.module.ts", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_wiki_wiki_module", + "community": 129, + "community_name": "WikiController", + "norm_label": "wiki.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_wiki_wiki_module_ts_module", + "community": 129, + "community_name": "WikiController", + "norm_label": "module" + }, + { + "label": "wiki/wiki.service.ts", + "file_type": "code", + "source_file": "backend/src/wiki/wiki.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_wiki_wiki_service", + "community": 129, + "community_name": "WikiController", + "norm_label": "wiki/wiki.service.ts" + }, + { + "label": "Injectable", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_wiki_wiki_service_ts_injectable", + "community": 129, + "community_name": "WikiController", + "norm_label": "injectable" + }, { "label": "env.validation.ts", "file_type": "code", @@ -25879,17 +25450,6 @@ "community_name": "SafeImage.tsx", "norm_label": "playback_rates" }, - { - "label": "VideoModalPlayer", - "file_type": "code", - "source_file": "frontend/application/components/ProductPage.tsx", - "source_location": "L82", - "_origin": "ast", - "id": "frontend_application_components_productpage_videomodalplayer", - "community": 144, - "community_name": "SafeImage.tsx", - "norm_label": "videomodalplayer" - }, { "label": "SafeImage.tsx", "file_type": "code", @@ -25990,37 +25550,147 @@ "norm_label": "videoservice" }, { - "label": "Orders.tsx", + "label": "ApiPropertyOptional", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_apipropertyoptional", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsEnum", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_isenum", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "isenum" + }, + { + "label": "IsInt", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_isint", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "isint" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_isoptional", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_isstring", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "isstring" + }, + { + "label": "Min", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_min", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "min" + }, + { + "label": "Type", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto_ts_type", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "type" + }, + { + "label": "get-products.dto.ts", + "file_type": "code", + "source_file": "backend/src/products/dto/get-products.dto.ts", "source_location": "L1", "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders", + "id": "backend_src_products_dto_get_products_dto", "community": 145, - "community_name": "Orders.tsx", - "norm_label": "orders.tsx" + "community_name": "PaginationDto", + "norm_label": "get-products.dto.ts" }, { - "label": "ORDER_STATUS_MAP", + "label": "ApiPropertyOptional", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/Orders.tsx", - "source_location": "L110", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "frontend_admin_panel_src_pages_orders_order_status_map", + "id": "backend_src_products_dto_get_products_dto_ts_apipropertyoptional", "community": 145, - "community_name": "Orders.tsx", - "norm_label": "order_status_map" + "community_name": "PaginationDto", + "norm_label": "apipropertyoptional" }, { - "label": "Orders", + "label": "IsEnum", "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L13", + "source_file": "", + "source_location": "", "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_orders", + "id": "backend_src_products_dto_get_products_dto_ts_isenum", "community": 145, - "community_name": "Orders.tsx", - "norm_label": "orders" + "community_name": "PaginationDto", + "norm_label": "isenum" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_products_dto_get_products_dto_ts_isoptional", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_products_dto_get_products_dto_ts_isstring", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "isstring" + }, + { + "label": "products.controller.ts", + "file_type": "code", + "source_file": "backend/src/products/products.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_products_products_controller", + "community": 145, + "community_name": "PaginationDto", + "norm_label": "products.controller.ts" }, { "label": "01-system-discovery.md", @@ -26254,103 +25924,114 @@ "norm_label": "isstring" }, { - "label": "ApiProperty", + "label": "ApiBearerAuth", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_apiproperty", + "id": "backend_src_admin_pets_controller_ts_apibearerauth", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "apiproperty" + "community_name": "PetsController", + "norm_label": "apibearerauth" }, { - "label": "ApiPropertyOptional", + "label": "ApiOperation", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_apipropertyoptional", + "id": "backend_src_admin_pets_controller_ts_apioperation", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "apipropertyoptional" + "community_name": "PetsController", + "norm_label": "apioperation" }, { - "label": "IsArray", + "label": "ApiQuery", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_isarray", + "id": "backend_src_admin_pets_controller_ts_apiquery", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "isarray" + "community_name": "PetsController", + "norm_label": "apiquery" }, { - "label": "IsNotEmpty", + "label": "ApiTags", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_isnotempty", + "id": "backend_src_admin_pets_controller_ts_apitags", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "isnotempty" + "community_name": "PetsController", + "norm_label": "apitags" }, { - "label": "IsNumber", + "label": "Controller", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_isnumber", + "id": "backend_src_admin_pets_controller_ts_controller", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "isnumber" + "community_name": "PetsController", + "norm_label": "controller" }, { - "label": "IsOptional", + "label": "Delete", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_isoptional", + "id": "backend_src_admin_pets_controller_ts_delete", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "isoptional" + "community_name": "PetsController", + "norm_label": "delete" }, { - "label": "IsString", + "label": "Get", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_isstring", + "id": "backend_src_admin_pets_controller_ts_get", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "isstring" + "community_name": "PetsController", + "norm_label": "get" }, { - "label": "Type", + "label": "Param", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto_ts_type", + "id": "backend_src_admin_pets_controller_ts_param", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "type" + "community_name": "PetsController", + "norm_label": "param" }, { - "label": "ValidateNested", + "label": "Query", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "validatenested", + "id": "backend_src_admin_pets_controller_ts_query", "community": 149, - "community_name": "CreateOrderDto", - "norm_label": "validatenested" + "community_name": "PetsController", + "norm_label": "query" + }, + { + "label": "UseGuards", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_pets_controller_ts_useguards", + "community": 149, + "community_name": "PetsController", + "norm_label": "useguards" }, { "label": "Layout.tsx", @@ -26451,17 +26132,6 @@ "community_name": "src/services/api.ts", "norm_label": "smartadvisormanager.tsx" }, - { - "label": "SystemSettingsPage.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_systemsettingspage", - "community": 15, - "community_name": "src/services/api.ts", - "norm_label": "systemsettingspage.tsx" - }, { "label": "ApiKeysPage", "file_type": "code", @@ -26495,17 +26165,6 @@ "community_name": "src/services/api.ts", "norm_label": "smartadvisormanager" }, - { - "label": "SystemSettingsPage", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L38", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_systemsettingspage", - "community": 15, - "community_name": "src/services/api.ts", - "norm_label": "systemsettingspage" - }, { "label": "src/services/api.ts", "file_type": "code", @@ -26650,15 +26309,81 @@ "norm_label": "product requirement document (prd)" }, { - "label": "Injectable", + "label": "sms-log-query.dto.ts", + "file_type": "code", + "source_file": "backend/src/settings/dto/sms-log-query.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_settings_dto_sms_log_query_dto", + "community": 151, + "community_name": "SmsLogQueryDto", + "norm_label": "sms-log-query.dto.ts" + }, + { + "label": "ApiPropertyOptional", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_orders_service_ts_injectable", + "id": "backend_src_settings_dto_sms_log_query_dto_ts_apipropertyoptional", "community": 151, - "community_name": "OrdersService", - "norm_label": "injectable" + "community_name": "SmsLogQueryDto", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsIn", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_dto_sms_log_query_dto_ts_isin", + "community": 151, + "community_name": "SmsLogQueryDto", + "norm_label": "isin" + }, + { + "label": "IsNumber", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_dto_sms_log_query_dto_ts_isnumber", + "community": 151, + "community_name": "SmsLogQueryDto", + "norm_label": "isnumber" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_dto_sms_log_query_dto_ts_isoptional", + "community": 151, + "community_name": "SmsLogQueryDto", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_dto_sms_log_query_dto_ts_isstring", + "community": 151, + "community_name": "SmsLogQueryDto", + "norm_label": "isstring" + }, + { + "label": "Type", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_settings_dto_sms_log_query_dto_ts_type", + "community": 151, + "community_name": "SmsLogQueryDto", + "norm_label": "type" }, { "label": "@eslint/js", @@ -28350,103 +28075,37 @@ "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": "api-keys.controller.ts", + "label": "eslint-config-next", "file_type": "code", - "source_file": "backend/src/admin/api-keys.controller.ts", + "source_file": "frontend/application/package.json", + "source_location": "L31", + "_origin": "ast", + "id": "frontend_application_package_devdependencies_eslint_config_next", + "community": 179, + "community_name": "eslint-config-next", + "norm_label": "eslint-config-next" + }, + { + "label": "eslint-config-next", + "file_type": "concept", + "source_file": "frontend/application/package.json", + "source_location": "L31", + "_origin": "ast", + "id": "eslint_config_next", + "community": 179, + "community_name": "eslint-config-next", + "norm_label": "eslint-config-next" + }, + { + "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_api_keys_controller", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "api-keys.controller.ts" - }, - { - "label": "api-keys.service.ts", - "file_type": "code", - "source_file": "backend/src/admin/api-keys.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_admin_api_keys_service", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "api-keys.service.ts" - }, - { - "label": "api-key.dto.ts", - "file_type": "code", - "source_file": "backend/src/admin/dto/api-key.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "api-key.dto.ts" - }, - { - "label": "ApiProperty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_ts_apiproperty", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "apiproperty" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_ts_apipropertyoptional", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsArray", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_ts_isarray", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "isarray" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_ts_isnotempty", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "isnotempty" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_ts_isoptional", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_dto_api_key_dto_ts_isstring", - "community": 179, - "community_name": "CreateApiKeyDto", - "norm_label": "isstring" + "id": "backend_src_admin_blogs_controller", + "community": 18, + "community_name": "JwtAuthGuard", + "norm_label": "admin/blogs.controller.ts" }, { "label": "categories.controller.ts", @@ -28459,6 +28118,17 @@ "community_name": "JwtAuthGuard", "norm_label": "categories.controller.ts" }, + { + "label": "admin/pets.controller.ts", + "file_type": "code", + "source_file": "backend/src/admin/pets.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_admin_pets_controller", + "community": 18, + "community_name": "JwtAuthGuard", + "norm_label": "admin/pets.controller.ts" + }, { "label": "ssl.controller.ts", "file_type": "code", @@ -28470,6 +28140,17 @@ "community_name": "JwtAuthGuard", "norm_label": "ssl.controller.ts" }, + { + "label": "admin/wiki.controller.ts", + "file_type": "code", + "source_file": "backend/src/admin/wiki.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_admin_wiki_controller", + "community": 18, + "community_name": "JwtAuthGuard", + "norm_label": "admin/wiki.controller.ts" + }, { "label": "jwt-auth.guard.ts", "file_type": "code", @@ -28536,6 +28217,17 @@ "community_name": "JwtAuthGuard", "norm_label": "banners.controller.ts" }, + { + "label": "blogs/blogs.controller.ts", + "file_type": "code", + "source_file": "backend/src/blogs/blogs.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_blogs_blogs_controller", + "community": 18, + "community_name": "JwtAuthGuard", + "norm_label": "blogs/blogs.controller.ts" + }, { "label": "decorators/roles.decorator.ts", "file_type": "code", @@ -28558,6 +28250,17 @@ "community_name": "JwtAuthGuard", "norm_label": "roles_key" }, + { + "label": "pagination.dto.ts", + "file_type": "code", + "source_file": "backend/src/common/dto/pagination.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_common_dto_pagination_dto", + "community": 18, + "community_name": "JwtAuthGuard", + "norm_label": "pagination.dto.ts" + }, { "label": "guards/roles.guard.ts", "file_type": "code", @@ -28635,17 +28338,6 @@ "community_name": "JwtAuthGuard", "norm_label": "menu.controller.ts" }, - { - "label": "payment.controller.ts", - "file_type": "code", - "source_file": "backend/src/payment/payment.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_payment_payment_controller", - "community": 18, - "community_name": "JwtAuthGuard", - "norm_label": "payment.controller.ts" - }, { "label": "prescriptions.controller.ts", "file_type": "code", @@ -28921,17 +28613,6 @@ "community_name": "trust-seals/page.tsx", "norm_label": "enamadbadge.tsx" }, - { - "label": "CartDrawer", - "file_type": "code", - "source_file": "frontend/application/app/ClientLayout.tsx", - "source_location": "L12", - "_origin": "ast", - "id": "frontend_application_app_clientlayout_cartdrawer", - "community": 185, - "community_name": "CartDrawer.tsx", - "norm_label": "cartdrawer" - }, { "label": "CartDrawer.tsx", "file_type": "code", @@ -28969,13 +28650,24 @@ "label": "mockProduct", "file_type": "code", "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx", - "source_location": "L19", + "source_location": "L31", "_origin": "ast", "id": "frontend_application_components_tests_cartdrawer_test_mockproduct", "community": 185, "community_name": "CartDrawer.tsx", "norm_label": "mockproduct" }, + { + "label": "useCatalogMode.ts", + "file_type": "code", + "source_file": "frontend/application/lib/useCatalogMode.ts", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_application_lib_usecatalogmode", + "community": 185, + "community_name": "CartDrawer.tsx", + "norm_label": "usecatalogmode.ts" + }, { "label": "seed-ui-texts.ts", "file_type": "code", @@ -29603,6 +29295,17 @@ "community_name": "prisma", "norm_label": "prisma" }, + { + "label": "api-keys.controller.ts", + "file_type": "code", + "source_file": "backend/src/admin/api-keys.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_admin_api_keys_controller", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "api-keys.controller.ts" + }, { "label": "ApiBearerAuth", "file_type": "code", @@ -29724,6 +29427,17 @@ "community_name": "ApiKeysService", "norm_label": "useguards" }, + { + "label": "api-keys.service.ts", + "file_type": "code", + "source_file": "backend/src/admin/api-keys.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_admin_api_keys_service", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "api-keys.service.ts" + }, { "label": "Injectable", "file_type": "code", @@ -29735,6 +29449,193 @@ "community_name": "ApiKeysService", "norm_label": "injectable" }, + { + "label": "api-key.dto.ts", + "file_type": "code", + "source_file": "backend/src/admin/dto/api-key.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "api-key.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_ts_apiproperty", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "apiproperty" + }, + { + "label": "ApiPropertyOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_ts_apipropertyoptional", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsArray", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_ts_isarray", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "isarray" + }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_ts_isnotempty", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "isnotempty" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_ts_isoptional", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_admin_dto_api_key_dto_ts_isstring", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "isstring" + }, + { + "label": "home.controller.ts", + "file_type": "code", + "source_file": "backend/src/home/home.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_home_home_controller", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "home.controller.ts" + }, + { + "label": "ApiOkResponse", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_controller_ts_apiokresponse", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "apiokresponse" + }, + { + "label": "ApiOperation", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_controller_ts_apioperation", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "apioperation" + }, + { + "label": "ApiTags", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_controller_ts_apitags", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "apitags" + }, + { + "label": "Controller", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_controller_ts_controller", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "controller" + }, + { + "label": "Get", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_controller_ts_get", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "get" + }, + { + "label": "home.module.ts", + "file_type": "code", + "source_file": "backend/src/home/home.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_home_home_module", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "home.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_module_ts_module", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "module" + }, + { + "label": "home.service.ts", + "file_type": "code", + "source_file": "backend/src/home/home.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_home_home_service", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "home.service.ts" + }, + { + "label": "Injectable", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_home_home_service_ts_injectable", + "community": 2, + "community_name": "ApiKeysService", + "norm_label": "injectable" + }, { "label": "Inject", "file_type": "code", @@ -30236,59 +30137,92 @@ "norm_label": "\ud83d\udc41\ufe0f ux & persona interface review (08_visual_qa)" }, { - "label": "update-review.dto.ts", + "label": "admin.service.spec.ts", "file_type": "code", - "source_file": "backend/src/reviews/dto/update-review.dto.ts", + "source_file": "backend/src/admin/admin.service.spec.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto", + "id": "backend_src_admin_admin_service_spec", "community": 204, - "community_name": "reviews.service.ts", - "norm_label": "update-review.dto.ts" + "community_name": "RevalidationService", + "norm_label": "admin.service.spec.ts" }, { - "label": "ApiProperty", + "label": "Optional", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_apiproperty", + "id": "backend_src_admin_admin_service_ts_optional", "community": 204, - "community_name": "reviews.service.ts", - "norm_label": "apiproperty" + "community_name": "RevalidationService", + "norm_label": "optional" }, { - "label": "IsIn", + "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": 204, + "community_name": "RevalidationService", + "norm_label": "admin/blogs.service.ts" + }, + { + "label": "revalidation.module.ts", + "file_type": "code", + "source_file": "backend/src/common/revalidation/revalidation.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_common_revalidation_revalidation_module", + "community": 204, + "community_name": "RevalidationService", + "norm_label": "revalidation.module.ts" + }, + { + "label": "Global", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_isin", + "id": "backend_src_common_revalidation_revalidation_module_ts_global", "community": 204, - "community_name": "reviews.service.ts", - "norm_label": "isin" + "community_name": "RevalidationService", + "norm_label": "global" }, { - "label": "IsOptional", + "label": "Module", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_isoptional", + "id": "backend_src_common_revalidation_revalidation_module_ts_module", "community": 204, - "community_name": "reviews.service.ts", - "norm_label": "isoptional" + "community_name": "RevalidationService", + "norm_label": "module" }, { - "label": "IsString", + "label": "revalidation.service.ts", + "file_type": "code", + "source_file": "backend/src/common/revalidation/revalidation.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_common_revalidation_revalidation_service", + "community": 204, + "community_name": "RevalidationService", + "norm_label": "revalidation.service.ts" + }, + { + "label": "Injectable", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_reviews_dto_update_review_dto_ts_isstring", + "id": "backend_src_common_revalidation_revalidation_service_ts_injectable", "community": 204, - "community_name": "reviews.service.ts", - "norm_label": "isstring" + "community_name": "RevalidationService", + "norm_label": "injectable" }, { "label": "reviews.service.ts", @@ -30298,7 +30232,7 @@ "_origin": "ast", "id": "backend_src_reviews_reviews_service", "community": 204, - "community_name": "reviews.service.ts", + "community_name": "RevalidationService", "norm_label": "reviews.service.ts" }, { @@ -30444,6 +30378,17 @@ "community_name": "useSettingsStore", "norm_label": "clientlayout.tsx" }, + { + "label": "CartDrawer", + "file_type": "code", + "source_file": "frontend/application/app/ClientLayout.tsx", + "source_location": "L12", + "_origin": "ast", + "id": "frontend_application_app_clientlayout_cartdrawer", + "community": 21, + "community_name": "useSettingsStore", + "norm_label": "cartdrawer" + }, { "label": "MobileBottomNav", "file_type": "code", @@ -30642,17 +30587,6 @@ "community_name": "useSettingsStore", "norm_label": "footer.test.tsx" }, - { - "label": "Tooltip.test.tsx", - "file_type": "code", - "source_file": "frontend/application/components/__tests__/Tooltip.test.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_application_components_tests_tooltip_test", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "tooltip.test.tsx" - }, { "label": "TickerBanner.tsx", "file_type": "code", @@ -30664,39 +30598,6 @@ "community_name": "useSettingsStore", "norm_label": "tickerbanner.tsx" }, - { - "label": "Tooltip.tsx", - "file_type": "code", - "source_file": "frontend/application/components/Tooltip.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_application_components_tooltip", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "tooltip.tsx" - }, - { - "label": "data/scientificTerms.ts", - "file_type": "code", - "source_file": "frontend/application/lib/data/scientificTerms.ts", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_application_lib_data_scientificterms", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "data/scientificterms.ts" - }, - { - "label": "SCIENTIFIC_TERMS", - "file_type": "code", - "source_file": "frontend/application/lib/data/scientificTerms.ts", - "source_location": "L7", - "_origin": "ast", - "id": "frontend_application_lib_data_scientificterms_scientific_terms", - "community": 21, - "community_name": "useSettingsStore", - "norm_label": "scientific_terms" - }, { "label": "useNetworkStatus.ts", "file_type": "code", @@ -34288,17 +34189,6 @@ "community_name": "TEST-001", "norm_label": "why it matters" }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_payment_payment_service_ts_injectable", - "community": 294, - "community_name": "ZibalService", - "norm_label": "injectable" - }, { "label": "Injectable", "file_type": "code", @@ -34321,50 +34211,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", @@ -35641,28 +35487,6 @@ "community_name": "MaskableField.tsx", "norm_label": "maskablefield.tsx" }, - { - "label": "@tailwindcss/postcss", - "file_type": "code", - "source_file": "frontend/application/package.json", - "source_location": "L23", - "_origin": "ast", - "id": "frontend_application_package_devdependencies_tailwindcss_postcss", - "community": 319, - "community_name": "@tailwindcss/postcss", - "norm_label": "@tailwindcss/postcss" - }, - { - "label": "@tailwindcss/postcss", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L23", - "_origin": "ast", - "id": "frontend_application_package_json_tailwindcss_postcss", - "community": 319, - "community_name": "@tailwindcss/postcss", - "norm_label": "@tailwindcss/postcss" - }, { "label": "App.tsx", "file_type": "code", @@ -35707,28 +35531,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "dashboard.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", @@ -35751,17 +35553,6 @@ "community_name": "adminRoutes.tsx", "norm_label": "dashboard" }, - { - "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": "router", "file_type": "code", @@ -35850,6 +35641,72 @@ "community_name": "eslint-plugin-react-refresh", "norm_label": "eslint-plugin-react-refresh" }, + { + "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": 33, + "community_name": "WholesaleApplyDto", + "norm_label": "wholesale-apply.dto.ts" + }, + { + "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", @@ -35858,7 +35715,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_apibearerauth", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "apibearerauth" }, { @@ -35869,7 +35726,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_apioperation", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "apioperation" }, { @@ -35880,7 +35737,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_apitags", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "apitags" }, { @@ -35891,7 +35748,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_body", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "body" }, { @@ -35902,7 +35759,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_controller", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "controller" }, { @@ -35913,7 +35770,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_get", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "get" }, { @@ -35924,7 +35781,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_param", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "param" }, { @@ -35935,7 +35792,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_post", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "post" }, { @@ -35946,7 +35803,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_put", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "put" }, { @@ -35957,7 +35814,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_request", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "request" }, { @@ -35968,7 +35825,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_controller_ts_useguards", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "useguards" }, { @@ -35979,7 +35836,7 @@ "_origin": "ast", "id": "backend_src_wholesale_wholesale_service_ts_injectable", "community": 33, - "community_name": "WholesaleService", + "community_name": "WholesaleApplyDto", "norm_label": "injectable" }, { @@ -36697,6 +36554,28 @@ "community_name": "Button", "norm_label": "transactionreceiptmodal.tsx" }, + { + "label": "Badge.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_badge", + "community": 38, + "community_name": "Button", + "norm_label": "badge.tsx" + }, + { + "label": "variantStyles", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", + "source_location": "L22", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_badge_variantstyles", + "community": 38, + "community_name": "Button", + "norm_label": "variantstyles" + }, { "label": "ThSort.tsx", "file_type": "code", @@ -36708,6 +36587,17 @@ "community_name": "Button", "norm_label": "thsort.tsx" }, + { + "label": "PrescriptionsManager.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/PrescriptionsManager.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_prescriptionsmanager", + "community": 38, + "community_name": "Button", + "norm_label": "prescriptionsmanager.tsx" + }, { "label": "Transactions.tsx", "file_type": "code", @@ -36719,6 +36609,17 @@ "community_name": "Button", "norm_label": "transactions.tsx" }, + { + "label": "PrescriptionsManager", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L31", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_prescriptionsmanager", + "community": 38, + "community_name": "Button", + "norm_label": "prescriptionsmanager" + }, { "label": "Transactions", "file_type": "code", @@ -37533,6 +37434,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", @@ -38128,70 +38040,147 @@ "norm_label": "what you must do when invoked" }, { - "label": "wholesale-apply.dto.ts", + "label": "sms-events.constants.ts", "file_type": "code", - "source_file": "backend/src/wholesale/dto/wholesale-apply.dto.ts", + "source_file": "backend/src/common/services/sms-events.constants.ts", "source_location": "L1", "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto", + "id": "backend_src_common_services_sms_events_constants", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "wholesale-apply.dto.ts" + "community_name": "sms.service.ts", + "norm_label": "sms-events.constants.ts" }, { - "label": "ApiProperty", + "label": "DEFAULT_SMS_RULES", + "file_type": "code", + "source_file": "backend/src/common/services/sms-events.constants.ts", + "source_location": "L221", + "_origin": "ast", + "id": "backend_src_common_services_sms_events_constants_default_sms_rules", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "default_sms_rules" + }, + { + "label": "SMS_EVENT_DEFINITIONS", + "file_type": "code", + "source_file": "backend/src/common/services/sms-events.constants.ts", + "source_location": "L26", + "_origin": "ast", + "id": "backend_src_common_services_sms_events_constants_sms_event_definitions", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "sms_event_definitions" + }, + { + "label": "sms.service.ts", + "file_type": "code", + "source_file": "backend/src/common/services/sms.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_common_services_sms_service", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "sms.service.ts" + }, + { + "label": "orders.service.spec.ts", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_orders_orders_service_spec", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "orders.service.spec.ts" + }, + { + "label": "prescriptions.module.ts", + "file_type": "code", + "source_file": "backend/src/prescriptions/prescriptions.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_prescriptions_prescriptions_module", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "prescriptions.module.ts" + }, + { + "label": "Module", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_apiproperty", + "id": "backend_src_prescriptions_prescriptions_module_ts_module", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "apiproperty" + "community_name": "sms.service.ts", + "norm_label": "module" }, { - "label": "ApiPropertyOptional", + "label": "prescriptions.service.ts", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/prescriptions/prescriptions.service.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_apipropertyoptional", + "id": "backend_src_prescriptions_prescriptions_service", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "apipropertyoptional" + "community_name": "sms.service.ts", + "norm_label": "prescriptions.service.ts" }, { - "label": "IsNotEmpty", + "label": "default-ui-texts.ts", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/settings/default-ui-texts.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isnotempty", + "id": "backend_src_settings_default_ui_texts", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "isnotempty" + "community_name": "sms.service.ts", + "norm_label": "default-ui-texts.ts" }, { - "label": "IsOptional", + "label": "DEFAULT_UI_TEXTS", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/settings/default-ui-texts.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isoptional", + "id": "backend_src_settings_default_ui_texts_default_ui_texts", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "isoptional" + "community_name": "sms.service.ts", + "norm_label": "default_ui_texts" }, { - "label": "IsString", + "label": "settings.service.ts", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_wholesale_dto_wholesale_apply_dto_ts_isstring", + "id": "backend_src_settings_settings_service", "community": 46, - "community_name": "WholesaleApplyDto", - "norm_label": "isstring" + "community_name": "sms.service.ts", + "norm_label": "settings.service.ts" + }, + { + "label": "CANONICAL_ALIASES", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.ts", + "source_location": "L13", + "_origin": "ast", + "id": "backend_src_settings_settings_service_canonical_aliases", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "canonical_aliases" + }, + { + "label": "settings.service.spec.ts", + "file_type": "code", + "source_file": "backend/src/settings/settings.service.spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_settings_settings_service_spec", + "community": 46, + "community_name": "sms.service.ts", + "norm_label": "settings.service.spec.ts" }, { "label": "ApiBearerAuth", @@ -38347,28 +38336,6 @@ "community_name": "Button.tsx", "norm_label": "spinner.tsx" }, - { - "label": "BannersManager.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/BannersManager.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_bannersmanager", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "bannersmanager.tsx" - }, - { - "label": "FAQManager.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/FAQManager.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_faqmanager", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "faqmanager.tsx" - }, { "label": "PaymentGatewaysPage.tsx", "file_type": "code", @@ -38381,15 +38348,26 @@ "norm_label": "paymentgatewayspage.tsx" }, { - "label": "SeoSettingsPage.tsx", + "label": "Reports.tsx", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/SeoSettingsPage.tsx", + "source_file": "frontend/admin-panel/src/pages/Reports.tsx", "source_location": "L1", "_origin": "ast", - "id": "frontend_admin_panel_src_pages_seosettingspage", + "id": "frontend_admin_panel_src_pages_reports", "community": 48, "community_name": "Button.tsx", - "norm_label": "seosettingspage.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": 48, + "community_name": "Button.tsx", + "norm_label": "colors" }, { "label": "Settings.tsx", @@ -38402,17 +38380,6 @@ "community_name": "Button.tsx", "norm_label": "settings.tsx" }, - { - "label": "ShippingSettingsPage.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/ShippingSettingsPage.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_shippingsettingspage", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "shippingsettingspage.tsx" - }, { "label": "SslSettingsPage.tsx", "file_type": "code", @@ -38425,26 +38392,15 @@ "norm_label": "sslsettingspage.tsx" }, { - "label": "BannersManager", + "label": "SystemSettingsPage.tsx", "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L27", + "source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx", + "source_location": "L1", "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_bannersmanager", + "id": "frontend_admin_panel_src_pages_systemsettingspage", "community": 48, "community_name": "Button.tsx", - "norm_label": "bannersmanager" - }, - { - "label": "FAQManager", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L46", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_faqmanager", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "faqmanager" + "norm_label": "systemsettingspage.tsx" }, { "label": "PaymentGatewaysPage", @@ -38458,15 +38414,15 @@ "norm_label": "paymentgatewayspage" }, { - "label": "SeoSettingsPage", + "label": "Reports", "file_type": "code", "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L33", + "source_location": "L16", "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_seosettingspage", + "id": "frontend_admin_panel_src_routes_adminroutes_reports", "community": 48, "community_name": "Button.tsx", - "norm_label": "seosettingspage" + "norm_label": "reports" }, { "label": "Settings", @@ -38479,17 +38435,6 @@ "community_name": "Button.tsx", "norm_label": "settings" }, - { - "label": "ShippingSettingsPage", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L37", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_shippingsettingspage", - "community": 48, - "community_name": "Button.tsx", - "norm_label": "shippingsettingspage" - }, { "label": "SslSettingsPage", "file_type": "code", @@ -38501,6 +38446,17 @@ "community_name": "Button.tsx", "norm_label": "sslsettingspage" }, + { + "label": "SystemSettingsPage", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L38", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_systemsettingspage", + "community": 48, + "community_name": "Button.tsx", + "norm_label": "systemsettingspage" + }, { "label": "devDependencies", "file_type": "code", @@ -38974,17 +38930,6 @@ "community_name": "devDependencies", "norm_label": "eslint" }, - { - "label": "eslint-config-next", - "file_type": "code", - "source_file": "frontend/application/package.json", - "source_location": "L31", - "_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", @@ -38996,6 +38941,17 @@ "community_name": "devDependencies", "norm_label": "jsdom" }, + { + "label": "@tailwindcss/postcss", + "file_type": "code", + "source_file": "frontend/application/package.json", + "source_location": "L23", + "_origin": "ast", + "id": "frontend_application_package_devdependencies_tailwindcss_postcss", + "community": 50, + "community_name": "devDependencies", + "norm_label": "@tailwindcss/postcss" + }, { "label": "@testing-library/jest-dom", "file_type": "code", @@ -39051,17 +39007,6 @@ "community_name": "devDependencies", "norm_label": "vitest" }, - { - "label": "eslint-config-next", - "file_type": "concept", - "source_file": "frontend/application/package.json", - "source_location": "L31", - "_origin": "ast", - "id": "eslint_config_next", - "community": 50, - "community_name": "devDependencies", - "norm_label": "eslint-config-next" - }, { "label": "eslint", "file_type": "concept", @@ -39073,6 +39018,17 @@ "community_name": "devDependencies", "norm_label": "eslint" }, + { + "label": "@tailwindcss/postcss", + "file_type": "concept", + "source_file": "frontend/application/package.json", + "source_location": "L23", + "_origin": "ast", + "id": "frontend_application_package_json_tailwindcss_postcss", + "community": 50, + "community_name": "devDependencies", + "norm_label": "@tailwindcss/postcss" + }, { "label": "@types/node", "file_type": "concept", @@ -39613,37 +39569,15 @@ "norm_label": "contactsubmissions.tsx" }, { - "label": "IngredientsManager.tsx", + "label": "FAQManager.tsx", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/IngredientsManager.tsx", + "source_file": "frontend/admin-panel/src/pages/FAQManager.tsx", "source_location": "L1", "_origin": "ast", - "id": "frontend_admin_panel_src_pages_ingredientsmanager", + "id": "frontend_admin_panel_src_pages_faqmanager", "community": 54, "community_name": "Modal.tsx", - "norm_label": "ingredientsmanager.tsx" - }, - { - "label": "MenuManager.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_menumanager", - "community": 54, - "community_name": "Modal.tsx", - "norm_label": "menumanager.tsx" - }, - { - "label": "MENU_TABS", - "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", - "source_location": "L31", - "_origin": "ast", - "id": "frontend_admin_panel_src_pages_menumanager_menu_tabs", - "community": 54, - "community_name": "Modal.tsx", - "norm_label": "menu_tabs" + "norm_label": "faqmanager.tsx" }, { "label": "Reviews.tsx", @@ -39690,26 +39624,15 @@ "norm_label": "contactsubmissions" }, { - "label": "IngredientsManager", + "label": "FAQManager", "file_type": "code", "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L30", + "source_location": "L46", "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_ingredientsmanager", + "id": "frontend_admin_panel_src_routes_adminroutes_faqmanager", "community": 54, "community_name": "Modal.tsx", - "norm_label": "ingredientsmanager" - }, - { - "label": "MenuManager", - "file_type": "code", - "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L47", - "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_menumanager", - "community": 54, - "community_name": "Modal.tsx", - "norm_label": "menumanager" + "norm_label": "faqmanager" }, { "label": "Reviews", @@ -39766,6 +39689,61 @@ "community_name": "UITexts.tsx", "norm_label": "icon_registry" }, + { + "label": "ImagePreviewModal.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_imagepreviewmodal", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "imagepreviewmodal.tsx" + }, + { + "label": "MediaSelector.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/MediaSelector.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_mediaselector", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "mediaselector.tsx" + }, + { + "label": "RichTextEditor.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_richtexteditor", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "richtexteditor.tsx" + }, + { + "label": "PRESET_BG_COLORS", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", + "source_location": "L51", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_bg_colors", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "preset_bg_colors" + }, + { + "label": "PRESET_COLORS", + "file_type": "code", + "source_file": "frontend/admin-panel/src/components/ui/RichTextEditor.tsx", + "source_location": "L41", + "_origin": "ast", + "id": "frontend_admin_panel_src_components_ui_richtexteditor_preset_colors", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "preset_colors" + }, { "label": "ToggleSwitch.tsx", "file_type": "code", @@ -39777,6 +39755,50 @@ "community_name": "UITexts.tsx", "norm_label": "toggleswitch.tsx" }, + { + "label": "BannersManager.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/BannersManager.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_bannersmanager", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "bannersmanager.tsx" + }, + { + "label": "Blogs.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Blogs.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_blogs", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "blogs.tsx" + }, + { + "label": "IngredientsManager.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/IngredientsManager.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_ingredientsmanager", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "ingredientsmanager.tsx" + }, + { + "label": "SeoSettingsPage.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/SeoSettingsPage.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_seosettingspage", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "seosettingspage.tsx" + }, { "label": "UITexts.tsx", "file_type": "code", @@ -39821,6 +39843,50 @@ "community_name": "UITexts.tsx", "norm_label": "site_pages" }, + { + "label": "BannersManager", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L27", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_bannersmanager", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "bannersmanager" + }, + { + "label": "Blogs", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L18", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_blogs", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "blogs" + }, + { + "label": "IngredientsManager", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L30", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_ingredientsmanager", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "ingredientsmanager" + }, + { + "label": "SeoSettingsPage", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L33", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_seosettingspage", + "community": 55, + "community_name": "UITexts.tsx", + "norm_label": "seosettingspage" + }, { "label": "UITexts", "file_type": "code", @@ -39832,28 +39898,6 @@ "community_name": "UITexts.tsx", "norm_label": "uitexts" }, - { - "label": "Badge.tsx", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_badge", - "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "badge.tsx" - }, - { - "label": "variantStyles", - "file_type": "code", - "source_file": "frontend/admin-panel/src/components/ui/Badge.tsx", - "source_location": "L22", - "_origin": "ast", - "id": "frontend_admin_panel_src_components_ui_badge_variantstyles", - "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "variantstyles" - }, { "label": "ui/Skeleton.tsx", "file_type": "code", @@ -39862,7 +39906,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_components_ui_skeleton", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "ui/skeleton.tsx" }, { @@ -39873,19 +39917,30 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_monitoringpage", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "monitoringpage.tsx" }, { - "label": "PrescriptionsManager.tsx", + "label": "Orders.tsx", "file_type": "code", - "source_file": "frontend/admin-panel/src/pages/PrescriptionsManager.tsx", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", "source_location": "L1", "_origin": "ast", - "id": "frontend_admin_panel_src_pages_prescriptionsmanager", + "id": "frontend_admin_panel_src_pages_orders", "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "prescriptionsmanager.tsx" + "community_name": "Orders.tsx", + "norm_label": "orders.tsx" + }, + { + "label": "ORDER_STATUS_MAP", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/Orders.tsx", + "source_location": "L110", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_orders_order_status_map", + "community": 56, + "community_name": "Orders.tsx", + "norm_label": "order_status_map" }, { "label": "Users.tsx", @@ -39895,7 +39950,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_pages_users", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "users.tsx" }, { @@ -39906,19 +39961,19 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_monitoringpage", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "monitoringpage" }, { - "label": "PrescriptionsManager", + "label": "Orders", "file_type": "code", "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", - "source_location": "L31", + "source_location": "L13", "_origin": "ast", - "id": "frontend_admin_panel_src_routes_adminroutes_prescriptionsmanager", + "id": "frontend_admin_panel_src_routes_adminroutes_orders", "community": 56, - "community_name": "PrescriptionsManager.tsx", - "norm_label": "prescriptionsmanager" + "community_name": "Orders.tsx", + "norm_label": "orders" }, { "label": "Users", @@ -39928,7 +39983,7 @@ "_origin": "ast", "id": "frontend_admin_panel_src_routes_adminroutes_users", "community": 56, - "community_name": "PrescriptionsManager.tsx", + "community_name": "Orders.tsx", "norm_label": "users" }, { @@ -40185,48 +40240,136 @@ "norm_label": "your domain \u2014 what you review (only these areas)" }, { - "label": "ApiExcludeController", + "label": "ConfirmModal.tsx", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "frontend/admin-panel/src/components/ui/ConfirmModal.tsx", + "source_location": "L1", "_origin": "ast", - "id": "apiexcludecontroller", + "id": "frontend_admin_panel_src_components_ui_confirmmodal", "community": 58, - "community_name": "MetricsController", - "norm_label": "apiexcludecontroller" + "community_name": "ConfirmModal.tsx", + "norm_label": "confirmmodal.tsx" }, { - "label": "Controller", + "label": "CMS.tsx", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "frontend/admin-panel/src/pages/CMS.tsx", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_common_metrics_controller_ts_controller", + "id": "frontend_admin_panel_src_pages_cms", "community": 58, - "community_name": "MetricsController", - "norm_label": "controller" + "community_name": "ConfirmModal.tsx", + "norm_label": "cms.tsx" }, { - "label": "Get", + "label": "DoctorsManager.tsx", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "frontend/admin-panel/src/pages/DoctorsManager.tsx", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_common_metrics_controller_ts_get", + "id": "frontend_admin_panel_src_pages_doctorsmanager", "community": 58, - "community_name": "MetricsController", - "norm_label": "get" + "community_name": "ConfirmModal.tsx", + "norm_label": "doctorsmanager.tsx" }, { - "label": "Res", + "label": "MenuManager.tsx", "file_type": "code", - "source_file": "", - "source_location": "", + "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", + "source_location": "L1", "_origin": "ast", - "id": "backend_src_common_metrics_controller_ts_res", + "id": "frontend_admin_panel_src_pages_menumanager", "community": 58, - "community_name": "MetricsController", - "norm_label": "res" + "community_name": "ConfirmModal.tsx", + "norm_label": "menumanager.tsx" + }, + { + "label": "MENU_TABS", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/MenuManager.tsx", + "source_location": "L31", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_menumanager_menu_tabs", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "menu_tabs" + }, + { + "label": "TestimonialsManager.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/TestimonialsManager.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_testimonialsmanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "testimonialsmanager.tsx" + }, + { + "label": "WholesaleApplications.tsx", + "file_type": "code", + "source_file": "frontend/admin-panel/src/pages/WholesaleApplications.tsx", + "source_location": "L1", + "_origin": "ast", + "id": "frontend_admin_panel_src_pages_wholesaleapplications", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "wholesaleapplications.tsx" + }, + { + "label": "CMS", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L23", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_cms", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "cms" + }, + { + "label": "DoctorsManager", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L45", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_doctorsmanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "doctorsmanager" + }, + { + "label": "MenuManager", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L47", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_menumanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "menumanager" + }, + { + "label": "TestimonialsManager", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L29", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_testimonialsmanager", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "testimonialsmanager" + }, + { + "label": "WholesaleApplications", + "file_type": "code", + "source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx", + "source_location": "L24", + "_origin": "ast", + "id": "frontend_admin_panel_src_routes_adminroutes_wholesaleapplications", + "community": 58, + "community_name": "ConfirmModal.tsx", + "norm_label": "wholesaleapplications" }, { "label": "backend/tsconfig.json", @@ -41108,6 +41251,17 @@ "community_name": "ProductPage.tsx", "norm_label": "usecalculatorstore" }, + { + "label": "VideoModalPlayer", + "file_type": "code", + "source_file": "frontend/application/components/ProductPage.tsx", + "source_location": "L82", + "_origin": "ast", + "id": "frontend_application_components_productpage_videomodalplayer", + "community": 61, + "community_name": "ProductPage.tsx", + "norm_label": "videomodalplayer" + }, { "label": "FeaturedProducts.test.tsx", "file_type": "code", @@ -41207,17 +41361,6 @@ "community_name": "ProductPage.tsx", "norm_label": "usepetstore" }, - { - "label": "useCatalogMode.ts", - "file_type": "code", - "source_file": "frontend/application/lib/useCatalogMode.ts", - "source_location": "L1", - "_origin": "ast", - "id": "frontend_application_lib_usecatalogmode", - "community": 61, - "community_name": "ProductPage.tsx", - "norm_label": "usecatalogmode.ts" - }, { "label": "admin.module.ts", "file_type": "code", @@ -41229,160 +41372,6 @@ "community_name": "admin.module.ts", "norm_label": "admin.module.ts" }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_module_ts_module", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "module" - }, - { - "label": "admin/pets.controller.ts", - "file_type": "code", - "source_file": "backend/src/admin/pets.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_admin_pets_controller", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "admin/pets.controller.ts" - }, - { - "label": "ApiBearerAuth", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_apibearerauth", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "apibearerauth" - }, - { - "label": "ApiOperation", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_apioperation", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "apioperation" - }, - { - "label": "ApiQuery", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_apiquery", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "apiquery" - }, - { - "label": "ApiTags", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_apitags", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "apitags" - }, - { - "label": "Controller", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_controller", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "controller" - }, - { - "label": "Delete", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_delete", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "delete" - }, - { - "label": "Get", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_get", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "get" - }, - { - "label": "Param", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_param", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "param" - }, - { - "label": "Query", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_query", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "query" - }, - { - "label": "UseGuards", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_pets_controller_ts_useguards", - "community": 62, - "community_name": "admin.module.ts", - "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": 62, - "community_name": "admin.module.ts", - "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": 62, - "community_name": "admin.module.ts", - "norm_label": "injectable" - }, { "label": "reports.controller.ts", "file_type": "code", @@ -41504,28 +41493,6 @@ "community_name": "admin.module.ts", "norm_label": "injectable" }, - { - "label": "ssl.service.ts", - "file_type": "code", - "source_file": "backend/src/admin/ssl.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_admin_ssl_service", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "ssl.service.ts" - }, - { - "label": "admin/wiki.controller.ts", - "file_type": "code", - "source_file": "backend/src/admin/wiki.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_admin_wiki_controller", - "community": 62, - "community_name": "admin.module.ts", - "norm_label": "admin/wiki.controller.ts" - }, { "label": "admin/wiki.service.ts", "file_type": "code", @@ -42440,147 +42407,26 @@ "norm_label": "useguards" }, { - "label": "create-order.dto.ts", - "file_type": "code", - "source_file": "backend/src/orders/dto/create-order.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_orders_dto_create_order_dto", - "community": 67, - "community_name": "OrdersController", - "norm_label": "create-order.dto.ts" - }, - { - "label": "orders.controller.ts", - "file_type": "code", - "source_file": "backend/src/orders/orders.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_orders_orders_controller", - "community": 67, - "community_name": "OrdersController", - "norm_label": "orders.controller.ts" - }, - { - "label": "orders.controller.spec.ts", - "file_type": "code", - "source_file": "backend/src/orders/orders.controller.spec.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_orders_orders_controller_spec", - "community": 67, - "community_name": "OrdersController", - "norm_label": "orders.controller.spec.ts" - }, - { - "label": "ApiBearerAuth", + "label": "Injectable", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_apibearerauth", + "id": "backend_src_common_services_sms_service_ts_injectable", "community": 67, - "community_name": "OrdersController", - "norm_label": "apibearerauth" + "community_name": "SmsService", + "norm_label": "injectable" }, { - "label": "ApiTags", + "label": "Optional", "file_type": "code", "source_file": "", "source_location": "", "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_apitags", + "id": "backend_src_users_users_service_ts_optional", "community": 67, - "community_name": "OrdersController", - "norm_label": "apitags" - }, - { - "label": "Controller", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_controller", - "community": 67, - "community_name": "OrdersController", - "norm_label": "controller" - }, - { - "label": "IsNotEmpty", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_isnotempty", - "community": 67, - "community_name": "OrdersController", - "norm_label": "isnotempty" - }, - { - "label": "IsNumber", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_isnumber", - "community": 67, - "community_name": "OrdersController", - "norm_label": "isnumber" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_isstring", - "community": 67, - "community_name": "OrdersController", - "norm_label": "isstring" - }, - { - "label": "UseGuards", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_orders_orders_controller_ts_useguards", - "community": 67, - "community_name": "OrdersController", - "norm_label": "useguards" - }, - { - "label": "orders.module.ts", - "file_type": "code", - "source_file": "backend/src/orders/orders.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_orders_orders_module", - "community": 67, - "community_name": "OrdersController", - "norm_label": "orders.module.ts" - }, - { - "label": "Module", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_orders_orders_module_ts_module", - "community": 67, - "community_name": "OrdersController", - "norm_label": "module" - }, - { - "label": "orders.service.ts", - "file_type": "code", - "source_file": "backend/src/orders/orders.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_orders_orders_service", - "community": 67, - "community_name": "OrdersController", - "norm_label": "orders.service.ts" + "community_name": "SmsService", + "norm_label": "optional" }, { "label": "blog/loading.tsx", @@ -44331,138 +44177,6 @@ "community_name": "PetsController", "norm_label": "injectable" }, - { - "label": "Optional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_admin_admin_service_ts_optional", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "optional" - }, - { - "label": "revalidation.module.ts", - "file_type": "code", - "source_file": "backend/src/common/revalidation/revalidation.module.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_module", - "community": 76, - "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": 76, - "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": 76, - "community_name": "RevalidationService", - "norm_label": "module" - }, - { - "label": "revalidation.service.ts", - "file_type": "code", - "source_file": "backend/src/common/revalidation/revalidation.service.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_service", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "revalidation.service.ts" - }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_revalidation_revalidation_service_ts_injectable", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "injectable" - }, - { - "label": "get-products.dto.ts", - "file_type": "code", - "source_file": "backend/src/products/dto/get-products.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_products_dto_get_products_dto", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "get-products.dto.ts" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_products_dto_get_products_dto_ts_apipropertyoptional", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsEnum", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_products_dto_get_products_dto_ts_isenum", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "isenum" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_products_dto_get_products_dto_ts_isoptional", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_products_dto_get_products_dto_ts_isstring", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "isstring" - }, - { - "label": "products.controller.ts", - "file_type": "code", - "source_file": "backend/src/products/products.controller.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_products_products_controller", - "community": 76, - "community_name": "RevalidationService", - "norm_label": "products.controller.ts" - }, { "label": "products.controller.spec.ts", "file_type": "code", @@ -44471,7 +44185,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_spec", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "products.controller.spec.ts" }, { @@ -44482,7 +44196,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_apioperation", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "apioperation" }, { @@ -44493,7 +44207,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_apitags", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "apitags" }, { @@ -44504,7 +44218,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_body", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "body" }, { @@ -44515,7 +44229,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_controller", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "controller" }, { @@ -44526,7 +44240,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_get", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "get" }, { @@ -44537,7 +44251,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_param", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "param" }, { @@ -44548,7 +44262,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_patch", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "patch" }, { @@ -44559,7 +44273,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_query", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "query" }, { @@ -44570,7 +44284,7 @@ "_origin": "ast", "id": "backend_src_products_products_controller_ts_useguards", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "useguards" }, { @@ -44581,7 +44295,7 @@ "_origin": "ast", "id": "backend_src_products_products_module", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "products.module.ts" }, { @@ -44592,7 +44306,7 @@ "_origin": "ast", "id": "backend_src_products_products_module_ts_module", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "module" }, { @@ -44603,7 +44317,7 @@ "_origin": "ast", "id": "backend_src_products_products_service", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "products.service.ts" }, { @@ -44614,7 +44328,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_spec", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "products.service.spec.ts" }, { @@ -44625,7 +44339,7 @@ "_origin": "ast", "id": "backend_src_products_products_service_ts_injectable", "community": 76, - "community_name": "RevalidationService", + "community_name": "ProductsService", "norm_label": "injectable" }, { @@ -44958,94 +44672,6 @@ "community_name": "\ud83c\udfe2 AI Software Agency \u2014 Master Orchestration Protocol v3", "norm_label": "your identity" }, - { - "label": "Injectable", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_common_services_sms_service_ts_injectable", - "community": 8, - "community_name": "SmsService", - "norm_label": "injectable" - }, - { - "label": "sms-log-query.dto.ts", - "file_type": "code", - "source_file": "backend/src/settings/dto/sms-log-query.dto.ts", - "source_location": "L1", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto", - "community": 8, - "community_name": "SmsService", - "norm_label": "sms-log-query.dto.ts" - }, - { - "label": "ApiPropertyOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_ts_apipropertyoptional", - "community": 8, - "community_name": "SmsService", - "norm_label": "apipropertyoptional" - }, - { - "label": "IsIn", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_ts_isin", - "community": 8, - "community_name": "SmsService", - "norm_label": "isin" - }, - { - "label": "IsNumber", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_ts_isnumber", - "community": 8, - "community_name": "SmsService", - "norm_label": "isnumber" - }, - { - "label": "IsOptional", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_ts_isoptional", - "community": 8, - "community_name": "SmsService", - "norm_label": "isoptional" - }, - { - "label": "IsString", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_ts_isstring", - "community": 8, - "community_name": "SmsService", - "norm_label": "isstring" - }, - { - "label": "Type", - "file_type": "code", - "source_file": "", - "source_location": "", - "_origin": "ast", - "id": "backend_src_settings_dto_sms_log_query_dto_ts_type", - "community": 8, - "community_name": "SmsService", - "norm_label": "type" - }, { "label": "ApiBearerAuth", "file_type": "code", @@ -45054,7 +44680,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_apibearerauth", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "apibearerauth" }, { @@ -45065,7 +44691,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_apiokresponse", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "apiokresponse" }, { @@ -45076,7 +44702,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_apioperation", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "apioperation" }, { @@ -45087,7 +44713,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_apitags", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "apitags" }, { @@ -45098,7 +44724,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_body", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "body" }, { @@ -45109,7 +44735,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_controller", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "controller" }, { @@ -45120,7 +44746,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_delete", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "delete" }, { @@ -45131,7 +44757,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_get", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "get" }, { @@ -45142,7 +44768,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_param", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "param" }, { @@ -45153,7 +44779,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_patch", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "patch" }, { @@ -45164,7 +44790,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_post", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "post" }, { @@ -45175,7 +44801,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_put", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "put" }, { @@ -45186,7 +44812,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_query", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "query" }, { @@ -45197,7 +44823,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_controller_ts_useguards", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "useguards" }, { @@ -45208,7 +44834,7 @@ "_origin": "ast", "id": "backend_src_settings_settings_service_ts_injectable", "community": 8, - "community_name": "SmsService", + "community_name": "SettingsService", "norm_label": "injectable" }, { @@ -46627,7 +46253,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "ebank-checkout.dto.ts" }, { @@ -46638,7 +46264,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_apiproperty", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "apiproperty" }, { @@ -46649,7 +46275,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_apipropertyoptional", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "apipropertyoptional" }, { @@ -46660,7 +46286,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_isnotempty", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "isnotempty" }, { @@ -46671,7 +46297,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_isnumber", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "isnumber" }, { @@ -46682,7 +46308,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_isoptional", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "isoptional" }, { @@ -46693,7 +46319,7 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_isstring", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "isstring" }, { @@ -46704,9 +46330,130 @@ "_origin": "ast", "id": "backend_src_payment_dto_ebank_checkout_dto_ts_min", "community": 88, - "community_name": "CreateEBankCheckoutDto", + "community_name": "payment.controller.ts", "norm_label": "min" }, + { + "label": "initiate-payment.dto.ts", + "file_type": "code", + "source_file": "backend/src/payment/dto/initiate-payment.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "initiate-payment.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_ts_apiproperty", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "apiproperty" + }, + { + "label": "ApiPropertyOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_ts_apipropertyoptional", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_ts_isnotempty", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "isnotempty" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_ts_isoptional", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_initiate_payment_dto_ts_isstring", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "isstring" + }, + { + "label": "verify-payment.dto.ts", + "file_type": "code", + "source_file": "backend/src/payment/dto/verify-payment.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_payment_dto_verify_payment_dto", + "community": 88, + "community_name": "payment.controller.ts", + "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": 88, + "community_name": "payment.controller.ts", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_verify_payment_dto_ts_isoptional", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_payment_dto_verify_payment_dto_ts_isstring", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "isstring" + }, + { + "label": "payment.controller.ts", + "file_type": "code", + "source_file": "backend/src/payment/payment.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_payment_payment_controller", + "community": 88, + "community_name": "payment.controller.ts", + "norm_label": "payment.controller.ts" + }, { "label": "seed.ts", "file_type": "code", @@ -47411,6 +47158,127 @@ "community_name": "Reconciled Audit Roles & Assignments", "norm_label": "subagent execution mode" }, + { + "label": "create-order.dto.ts", + "file_type": "code", + "source_file": "backend/src/orders/dto/create-order.dto.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto", + "community": 92, + "community_name": "OrdersService", + "norm_label": "create-order.dto.ts" + }, + { + "label": "ApiProperty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_apiproperty", + "community": 92, + "community_name": "OrdersService", + "norm_label": "apiproperty" + }, + { + "label": "ApiPropertyOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_apipropertyoptional", + "community": 92, + "community_name": "OrdersService", + "norm_label": "apipropertyoptional" + }, + { + "label": "IsArray", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_isarray", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isarray" + }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_isnotempty", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isnotempty" + }, + { + "label": "IsNumber", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_isnumber", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isnumber" + }, + { + "label": "IsOptional", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_isoptional", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isoptional" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_isstring", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isstring" + }, + { + "label": "Type", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_dto_create_order_dto_ts_type", + "community": 92, + "community_name": "OrdersService", + "norm_label": "type" + }, + { + "label": "orders.controller.ts", + "file_type": "code", + "source_file": "backend/src/orders/orders.controller.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_orders_orders_controller", + "community": 92, + "community_name": "OrdersService", + "norm_label": "orders.controller.ts" + }, + { + "label": "orders.controller.spec.ts", + "file_type": "code", + "source_file": "backend/src/orders/orders.controller.spec.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_spec", + "community": 92, + "community_name": "OrdersService", + "norm_label": "orders.controller.spec.ts" + }, { "label": "ApiBadRequestResponse", "file_type": "code", @@ -47419,9 +47287,20 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_apibadrequestresponse", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "apibadrequestresponse" }, + { + "label": "ApiBearerAuth", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_apibearerauth", + "community": 92, + "community_name": "OrdersService", + "norm_label": "apibearerauth" + }, { "label": "ApiCreatedResponse", "file_type": "code", @@ -47430,7 +47309,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_apicreatedresponse", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "apicreatedresponse" }, { @@ -47441,7 +47320,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_apinotfoundresponse", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "apinotfoundresponse" }, { @@ -47452,7 +47331,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_apiokresponse", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "apiokresponse" }, { @@ -47463,9 +47342,20 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_apioperation", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "apioperation" }, + { + "label": "ApiTags", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_apitags", + "community": 92, + "community_name": "OrdersService", + "norm_label": "apitags" + }, { "label": "Body", "file_type": "code", @@ -47474,9 +47364,20 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_body", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "body" }, + { + "label": "Controller", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_controller", + "community": 92, + "community_name": "OrdersService", + "norm_label": "controller" + }, { "label": "Get", "file_type": "code", @@ -47485,9 +47386,42 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_get", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "get" }, + { + "label": "IsNotEmpty", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_isnotempty", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isnotempty" + }, + { + "label": "IsNumber", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_isnumber", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isnumber" + }, + { + "label": "IsString", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_isstring", + "community": 92, + "community_name": "OrdersService", + "norm_label": "isstring" + }, { "label": "Param", "file_type": "code", @@ -47496,7 +47430,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_param", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "param" }, { @@ -47507,7 +47441,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_post", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "post" }, { @@ -47518,7 +47452,7 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_query", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "query" }, { @@ -47529,9 +47463,75 @@ "_origin": "ast", "id": "backend_src_orders_orders_controller_ts_req", "community": 92, - "community_name": ".retryPayment", + "community_name": "OrdersService", "norm_label": "req" }, + { + "label": "UseGuards", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_controller_ts_useguards", + "community": 92, + "community_name": "OrdersService", + "norm_label": "useguards" + }, + { + "label": "orders.module.ts", + "file_type": "code", + "source_file": "backend/src/orders/orders.module.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_orders_orders_module", + "community": 92, + "community_name": "OrdersService", + "norm_label": "orders.module.ts" + }, + { + "label": "Module", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_module_ts_module", + "community": 92, + "community_name": "OrdersService", + "norm_label": "module" + }, + { + "label": "orders.service.ts", + "file_type": "code", + "source_file": "backend/src/orders/orders.service.ts", + "source_location": "L1", + "_origin": "ast", + "id": "backend_src_orders_orders_service", + "community": 92, + "community_name": "OrdersService", + "norm_label": "orders.service.ts" + }, + { + "label": "Injectable", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "backend_src_orders_orders_service_ts_injectable", + "community": 92, + "community_name": "OrdersService", + "norm_label": "injectable" + }, + { + "label": "ValidateNested", + "file_type": "code", + "source_file": "", + "source_location": "", + "_origin": "ast", + "id": "validatenested", + "community": 92, + "community_name": "OrdersService", + "norm_label": "validatenested" + }, { "label": "auth.controller.ts", "file_type": "code", @@ -52957,7 +52957,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "frontend/application/components/CartDrawer.tsx", - "source_location": "L153", + "source_location": "L155", "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer_cartdrawer", @@ -52969,7 +52969,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "frontend/application/components/CartDrawer.tsx", - "source_location": "L22", + "source_location": "L23", "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer_cartdrawer", @@ -52981,7 +52981,7 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "frontend/application/components/CartDrawer.tsx", - "source_location": "L23", + "source_location": "L24", "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer_cartdrawer", @@ -52993,7 +52993,19 @@ "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "frontend/application/components/CartDrawer.tsx", - "source_location": "L24", + "source_location": "L25", + "weight": 1.0, + "_origin": "ast", + "source": "frontend_application_components_cartdrawer_cartdrawer", + "target": "frontend_application_lib_usecatalogmode_usecatalogmode" + }, + { + "relation": "calls", + "context": "call", + "confidence": "EXTRACTED", + "confidence_score": 1.0, + "source_file": "frontend/application/components/CartDrawer.tsx", + "source_location": "L26", "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer_cartdrawer", @@ -87740,7 +87752,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer", - "target": "frontend_application_components_authmodal_authmodal", + "target": "frontend_application_lib_usecatalogmode_usecatalogmode", "confidence_score": 1.0 }, { @@ -87752,6 +87764,18 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer", + "target": "frontend_application_components_authmodal_authmodal", + "confidence_score": 1.0 + }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "frontend/application/components/CartDrawer.tsx", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "frontend_application_components_cartdrawer", "target": "frontend_application_components_deleteconfirmmodal_deleteconfirmmodal", "confidence_score": 1.0 }, @@ -89687,6 +89711,18 @@ "target": "frontend_application_lib_services_api_base_domain", "confidence_score": 1.0 }, + { + "relation": "imports", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx", + "source_location": "L29", + "weight": 1.0, + "_origin": "ast", + "source": "frontend_application_components_tests_cartdrawer_test", + "target": "frontend_application_lib_usecatalogmode_usecatalogmode", + "confidence_score": 1.0 + }, { "relation": "imports", "context": "import", @@ -101072,7 +101108,7 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer", - "target": "frontend_application_components_authmodal", + "target": "frontend_application_lib_usecatalogmode", "confidence_score": 1.0 }, { @@ -101084,6 +101120,18 @@ "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer", + "target": "frontend_application_components_authmodal", + "confidence_score": 1.0 + }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "frontend/application/components/CartDrawer.tsx", + "source_location": "L14", + "weight": 1.0, + "_origin": "ast", + "source": "frontend_application_components_cartdrawer", "target": "frontend_application_components_deleteconfirmmodal", "confidence_score": 1.0 }, @@ -102707,6 +102755,18 @@ "target": "frontend_application_lib_services_api", "confidence_score": 1.0 }, + { + "relation": "imports_from", + "context": "import", + "confidence": "EXTRACTED", + "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx", + "source_location": "L29", + "weight": 1.0, + "_origin": "ast", + "source": "frontend_application_components_tests_cartdrawer_test", + "target": "frontend_application_lib_usecatalogmode", + "confidence_score": 1.0 + }, { "relation": "imports_from", "context": "import", @@ -125454,7 +125514,7 @@ "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/components/CartDrawer.tsx", - "source_location": "L16", + "source_location": "L17", "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_cartdrawer", @@ -126466,7 +126526,7 @@ "relation": "contains", "confidence": "EXTRACTED", "source_file": "frontend/application/components/__tests__/CartDrawer.test.tsx", - "source_location": "L19", + "source_location": "L31", "weight": 1.0, "_origin": "ast", "source": "frontend_application_components_tests_cartdrawer_test", @@ -141704,5 +141764,5 @@ } ], "hyperedges": [], - "built_at_commit": "8e4ee9849cb3649bb17b1d53d2c9593be13a846b" + "built_at_commit": "ef0731ffac172f34c5efc824650183058ced0d22" } \ No newline at end of file diff --git a/graphify-out/2026-09-13/manifest.json b/graphify-out/2026-09-13/manifest.json index 84b218d..dd6cdf9 100644 --- a/graphify-out/2026-09-13/manifest.json +++ b/graphify-out/2026-09-13/manifest.json @@ -1,3799 +1,3799 @@ { ".ai_agency/orchestrate.py": { "mtime": 1785148022.0726626, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "43b4b40901868f1bdfd470cf58f40760", "semantic_hash": "" }, ".gitea/scripts/with-vpn.sh": { "mtime": 1786799852.1263163, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "451f307a9e42d2240949e7bf39de6667", "semantic_hash": "" }, "backend/eslint.config.mjs": { "mtime": 1787073059.1053617, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "54fb00fe78776d07db9dae804aced0d1", "semantic_hash": "" }, "backend/nest-cli.json": { "mtime": 1787072106.3705614, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "718a59f7d90dbf49fdda2843d72172c4", "semantic_hash": "" }, "backend/package.json": { "mtime": 1787644197.1371043, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "4f466b887ff858a0d2890c9ca9727285", "semantic_hash": "" }, "backend/prisma/scientificTerms.ts": { "mtime": 1789272909.8450644, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "f28eec3a26d5133c4131a027de0e1dd4", "semantic_hash": "" }, "backend/prisma/seed-blogs.ts": { "mtime": 1789272909.8450644, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "afa91c98366427120e49f0c89b772fa7", "semantic_hash": "" }, "backend/prisma/seed-custom.ts": { "mtime": 1789272909.8460643, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "d6b2c6c12371323ebe57562fc91c8b14", "semantic_hash": "" }, "backend/prisma/seed-home.ts": { "mtime": 1789272909.8460643, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "44c7a00a136b5598268ed08c8ba36aa6", "semantic_hash": "" }, "backend/prisma/seed-products.ts": { "mtime": 1787127978.2192707, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "62ab15adef06163ac0d7c93efa357e66", "semantic_hash": "" }, "backend/prisma/seed-ui-texts.ts": { "mtime": 1789272909.8470633, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "8bd334656d528ca4567156eefbe60416", "semantic_hash": "" }, "backend/prisma/seed-wiki.ts": { "mtime": 1789272909.8480637, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "9ce519ff405fc853ef39b40658c68c83", "semantic_hash": "" }, "backend/prisma/seed.ts": { "mtime": 1789272909.849064, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "8b00a9d9724f898330f152f7e7a6c518", "semantic_hash": "" }, "backend/prisma/tsconfig.json": { "mtime": 1786961195.3002362, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "a12c81b60c5e9fdb3c1aba03ac7ecb27", "semantic_hash": "" }, "backend/prisma/tsconfig.seed.json": { "mtime": 1786955870.751259, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "a12c81b60c5e9fdb3c1aba03ac7ecb27", "semantic_hash": "" }, "backend/scripts/generate-openapi.d.ts": { "mtime": 1786883225.7774837, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "e2ebd7ddedcadeeadbf819c35985c768", "semantic_hash": "" }, "backend/scripts/generate-openapi.js": { "mtime": 1786883225.77912, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "f7c2607fc067b04e7cb7716490ea1169", "semantic_hash": "" }, "backend/scripts/generate-openapi.ts": { "mtime": 1787729527.925392, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "561983534164723c0f073bcd98f22be9", "semantic_hash": "" }, "backend/scripts/seo-backfill.ts": { "mtime": 1787729527.925392, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "fc6da532f40c339058c682a352378027", "semantic_hash": "" }, "backend/src/admin/admin.controller.spec.ts": { "mtime": 1786799852.1573997, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "05370741c60e581754191c00baf87596", "semantic_hash": "" }, "backend/src/admin/admin.controller.ts": { "mtime": 1789272909.849064, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "ceceafcf73cd8c15ceabafe2cdfb3408", "semantic_hash": "" }, "backend/src/admin/admin.module.ts": { "mtime": 1789272909.8500645, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "eb875bf9e7e404e89938f8dabd58a676", "semantic_hash": "" }, "backend/src/admin/admin.service.spec.ts": { "mtime": 1787729523.4348526, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "fd18f82573faa70207c62b2b4f336385", "semantic_hash": "" }, "backend/src/admin/admin.service.ts": { "mtime": 1788609394.3169081, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "a8dd77d9146a61d7278af3d1cbd29271", "semantic_hash": "" }, "backend/src/admin/blogs.controller.ts": { "mtime": 1787579631.7581778, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "ddeda17e05fee4b7ce49a44c89c0f1bb", "semantic_hash": "" }, "backend/src/admin/blogs.service.ts": { "mtime": 1787579631.7601776, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "cb13d9df89955a1f5145abc300225fb8", "semantic_hash": "" }, "backend/src/admin/categories.controller.ts": { "mtime": 1786799852.1741924, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "e6322c19042382028966e6eb8dce7c62", "semantic_hash": "" }, "backend/src/admin/categories.service.ts": { "mtime": 1786799852.1751943, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "7c6b626454aa53d5a3458b5ca738a97c", "semantic_hash": "" }, "backend/src/admin/dto/admin-query.dto.ts": { "mtime": 1788332757.6380293, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "1e92d96dfc1c0bf377596e540ddc58b0", "semantic_hash": "" }, "backend/src/admin/dto/product.dto.ts": { "mtime": 1788609394.3179998, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "774e92a46de0ac4f1463590133551375", "semantic_hash": "" }, "backend/src/admin/dto/user.dto.ts": { "mtime": 1787072106.3819897, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "7f8b670a02bb9f6f52123a8e289f866a", "semantic_hash": "" }, "backend/src/admin/media.controller.ts": { "mtime": 1786876983.6488664, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "02fa16bdaf1363f117f7200f590b13c4", "semantic_hash": "" }, "backend/src/admin/media.service.ts": { "mtime": 1787748438.7015336, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "53b0f8a000202bad6359f987cdf0865e", "semantic_hash": "" }, "backend/src/admin/pets.controller.ts": { "mtime": 1786799852.1862173, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "8734d47651b112f7f1682f629dc4c7b1", "semantic_hash": "" }, "backend/src/admin/pets.service.ts": { "mtime": 1786954681.814243, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "67ef020c49eb8334a2bac643941678ac", "semantic_hash": "" }, "backend/src/admin/reports.controller.ts": { "mtime": 1787729523.4348526, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "d8557eb2c8b2e0e5272bc5eee2530080", "semantic_hash": "" }, "backend/src/admin/reports.service.ts": { "mtime": 1787729523.4348526, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "37233e7d62592c9d74c0c6ce5eb7096f", "semantic_hash": "" }, "backend/src/admin/ssl.controller.ts": { "mtime": 1787072106.382979, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "460506a236a330ba614aae15a2659b2b", "semantic_hash": "" }, "backend/src/admin/ssl.service.ts": { "mtime": 1787072106.3839788, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "dc7ba9e922c1e3d80dae4f1593297fa7", "semantic_hash": "" }, "backend/src/admin/wiki.controller.ts": { "mtime": 1786799852.1917324, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "8b7c8559d6ed6bb2c220d9abd4f622b1", "semantic_hash": "" }, "backend/src/admin/wiki.service.ts": { "mtime": 1786799852.193324, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "ed627a21f3b767e9855511afefa5273c", "semantic_hash": "" }, "backend/src/app.controller.spec.ts": { "mtime": 1783764561.6448398, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "4a1c0e1133dbda6f6e8f3e60d984eddf", "semantic_hash": "" }, "backend/src/app.controller.ts": { "mtime": 1783764561.645849, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "3ab0e83b7d93b85ea489ab994ec79ea1", "semantic_hash": "" }, "backend/src/app.module.ts": { "mtime": 1787579631.7646954, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "5b326fa2dc121d0b55648e7530304f4f", "semantic_hash": "" }, "backend/src/app.service.ts": { "mtime": 1783764561.6488404, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "cd3fb7836f10de08a725ee1fd4ab36fe", "semantic_hash": "" }, "backend/src/auth/auth.constants.ts": { "mtime": 1787072106.3859801, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "382adefba83246badeae8701ef6335cd", "semantic_hash": "" }, "backend/src/auth/auth.controller.spec.ts": { "mtime": 1785327951.179468, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "7531d00aaa85a80f27e175071ce21c89", "semantic_hash": "" }, "backend/src/auth/auth.controller.ts": { "mtime": 1787645037.3680255, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "e0360966564df6fe0650699160f24f57", "semantic_hash": "" }, "backend/src/auth/auth.module.ts": { "mtime": 1788859667.823166, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "0193ea2b69d6cdc568531f0ba7f011f8", "semantic_hash": "" }, "backend/src/auth/auth.service.spec.ts": { "mtime": 1787729523.4368768, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "9bf084557cffdb7f7f36b192ef746071", "semantic_hash": "" }, "backend/src/auth/auth.service.ts": { "mtime": 1787127978.2285898, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "b38c558251bdbadb7ab1b5f690c5c387", "semantic_hash": "" }, "backend/src/auth/dto/admin-login.dto.ts": { "mtime": 1787127978.2295873, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "c1a7d3d5babba82ff11b04ae7dcaabca", "semantic_hash": "" }, "backend/src/auth/dto/login.dto.ts": { "mtime": 1783764561.659109, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "9941767ad430851531a9f049c2b65ed5", "semantic_hash": "" }, "backend/src/auth/dto/register.dto.ts": { "mtime": 1785327951.186477, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "6165fdad9219dee4390732a7f6504e4a", "semantic_hash": "" }, "backend/src/auth/dto/send-otp.dto.ts": { "mtime": 1783764561.6611066, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "a99015984cd1320cbd36719809f69d3b", "semantic_hash": "" }, "backend/src/auth/dto/verify-otp.dto.ts": { "mtime": 1783764561.662112, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "8bc250f7ca73e6cbe4cfa01a99a3c032", "semantic_hash": "" }, "backend/src/auth/jwt-auth.guard.ts": { "mtime": 1789272909.8520625, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "9229ec52dc0e2893104088f0b2cdd721", "semantic_hash": "" }, "backend/src/auth/jwt.strategy.ts": { "mtime": 1786883225.7943432, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "f815b9f719678a154ebf50090b801c62", "semantic_hash": "" }, "backend/src/auth/roles.decorator.ts": { "mtime": 1786799852.2083795, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "0d86f61ddaab0d2f4d5f9b331a5e2541", "semantic_hash": "" }, "backend/src/auth/roles.guard.ts": { "mtime": 1786799852.2090034, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "10b31496903f54383d35b90a55c3e84a", "semantic_hash": "" }, "backend/src/b2b/b2b.controller.ts": { "mtime": 1787645037.3690653, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "7a18bd2c1df187a504e15a2a9f93f41b", "semantic_hash": "" }, "backend/src/b2b/b2b.module.ts": { "mtime": 1786799852.2120132, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "b1777d0004a54e8f89328879a20aa171", "semantic_hash": "" }, "backend/src/b2b/b2b.service.ts": { "mtime": 1786799852.2140093, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "d025e172746789d44802755b8bb441bf", "semantic_hash": "" }, "backend/src/banners/banners.controller.ts": { "mtime": 1786799852.2150102, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "30e1fba8ef3e98e127cf400aac0f71e8", "semantic_hash": "" }, "backend/src/banners/banners.module.ts": { "mtime": 1786799852.2160103, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "3dca61f7cf64dfb5f827469c7f14c655", "semantic_hash": "" }, "backend/src/banners/banners.service.ts": { "mtime": 1786799852.2160103, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "777061ff84dc642fee69803ce9ac2de9", "semantic_hash": "" }, "backend/src/blogs/blogs.controller.ts": { "mtime": 1788334048.8032355, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "5b6e7dbc06729f7d326df40341512e88", "semantic_hash": "" }, "backend/src/blogs/blogs.module.ts": { "mtime": 1783764561.665678, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "3fc38d55e03319844c6c8cbb3017364b", "semantic_hash": "" }, "backend/src/blogs/blogs.service.ts": { "mtime": 1788334048.8043733, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "1a7f889d892dabac779154c0935032dd", "semantic_hash": "" }, "backend/src/blogs/dto/create-blog.dto.ts": { "mtime": 1783764561.671557, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "a1938b347011dd71bfd99801b7453305", "semantic_hash": "" }, "backend/src/blogs/dto/update-blog.dto.ts": { "mtime": 1783764561.6737125, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "15612098d2a3cac84249518465104370", "semantic_hash": "" }, "backend/src/blogs/entities/blog.entity.ts": { "mtime": 1783764561.675101, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "7fadae161e6d38110bdc8ce71f9f1bdd", "semantic_hash": "" }, "backend/src/cms/cms.controller.ts": { "mtime": 1785327951.196913, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "72482ba30a017f8ed1ef26b423eb83d1", "semantic_hash": "" }, "backend/src/cms/cms.module.ts": { "mtime": 1785148022.206298, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "831ca7e3ee288322e05ddeeb1b02229d", "semantic_hash": "" }, "backend/src/cms/cms.service.ts": { "mtime": 1785327951.1979403, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "f9da5085411e9fe60ab0c35fb852ef56", "semantic_hash": "" }, "backend/src/cms/dto/cms.dto.ts": { "mtime": 1785327951.1999955, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "b91b502820b503e4ca63dd36028608d5", "semantic_hash": "" }, "backend/src/common/decorators/roles.decorator.ts": { "mtime": 1786799852.2205224, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "155f61ea03e3ef7d3d5e2fee554f8428", "semantic_hash": "" }, "backend/src/common/dto/pagination.dto.ts": { "mtime": 1785327951.201989, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "6e66fdace411feba9d947fe0f678c900", "semantic_hash": "" }, "backend/src/common/env.validation.ts": { "mtime": 1787645037.3706467, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "0c5617db25ad4a82310a4d57954f9148", "semantic_hash": "" }, "backend/src/common/filters/http-exception.filter.ts": { "mtime": 1787645037.3717394, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "bbc06910a686ac6fffe7093cfac25247", "semantic_hash": "" }, "backend/src/common/filters/prisma-exception.filter.ts": { "mtime": 1787645037.3722546, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "ea9516e198b828d217e871db50bfd020", "semantic_hash": "" }, "backend/src/common/guards/roles.guard.spec.ts": { "mtime": 1786799852.2255569, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "0ee2661808205a0bb03a45d4cbca4472", "semantic_hash": "" }, "backend/src/common/guards/roles.guard.ts": { "mtime": 1786799852.2265651, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "72eadcd106153ccaad697234d8c0d281", "semantic_hash": "" }, "backend/src/common/interceptors/decimal.interceptor.spec.ts": { "mtime": 1786799852.2275658, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "bbf53de234b9963923c3163a10cd8e17", "semantic_hash": "" }, "backend/src/common/interceptors/decimal.interceptor.ts": { "mtime": 1786799852.2275658, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "71f8f0bfa748a8cbeb5f4627f972261d", "semantic_hash": "" }, "backend/src/common/metrics.controller.ts": { "mtime": 1786799852.229073, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "6380f2c18000ac46235e7adde60329dc", "semantic_hash": "" }, "backend/src/common/revalidation/revalidation.module.ts": { "mtime": 1787579631.7695823, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "9902f11ce5669722083f76ba239749ca", "semantic_hash": "" }, "backend/src/common/revalidation/revalidation.service.ts": { "mtime": 1787579631.7705874, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "d1d36ecad18a71db13e14330c70aa137", "semantic_hash": "" }, "backend/src/common/schemas/error-response.schema.ts": { "mtime": 1785330913.1447015, - "seen": 1789276734.9114494, + "seen": 1789277254.2254264, "ast_hash": "e2d4a690aa006a63ad617d2c21c7d11d", "semantic_hash": "" }, "backend/src/common/schemas/paginated-response.schema.ts": { "mtime": 1786799852.2300823, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6ea7e2edc0ab662b3f244e0ffb8e5f19", "semantic_hash": "" }, "backend/src/common/services/sms.service.ts": { "mtime": 1788625198.954313, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "35ddf7303dd260c0a91b504e4919b60b", "semantic_hash": "" }, "backend/src/common/sms.module.ts": { "mtime": 1785330750.996125, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c2621fbe872597ca7fbc23fc7e261665", "semantic_hash": "" }, "backend/src/common/utils/phone.utils.ts": { "mtime": 1786883225.801396, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a4c682b767823a624163b9430f1db7d1", "semantic_hash": "" }, "backend/src/contact/contact.controller.ts": { "mtime": 1787645037.373264, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "96c41a8993b5a047db2f7ab33b3140fc", "semantic_hash": "" }, "backend/src/contact/contact.module.ts": { "mtime": 1786799852.236599, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3522066b9bc0d12c79ee13138ec94a23", "semantic_hash": "" }, "backend/src/contact/contact.service.ts": { "mtime": 1788584193.7061484, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fa62ffa6995fe20f004387a36c0ada57", "semantic_hash": "" }, "backend/src/doctors/doctors.controller.ts": { "mtime": 1787148092.311693, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a552f2b9fa5f186871234fa7ffc0c849", "semantic_hash": "" }, "backend/src/doctors/doctors.module.ts": { "mtime": 1786971396.0355752, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6850f9203296ff749b5d7de975d3c6f7", "semantic_hash": "" }, "backend/src/doctors/doctors.service.ts": { "mtime": 1787148092.312693, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b7473f48fc2a077328d9d054c075bf46", "semantic_hash": "" }, "backend/src/doctors/dto/doctor-query.dto.ts": { "mtime": 1787148092.3146994, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9c9b8e83bb5b207eb88d5da473562843", "semantic_hash": "" }, "backend/src/faq/faq.controller.ts": { "mtime": 1787148092.3166947, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "09e34477f9322954d856b496009ba0d5", "semantic_hash": "" }, "backend/src/faq/faq.module.ts": { "mtime": 1787148092.3166947, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eb0d0be8c8742a787d205ef121b50ee7", "semantic_hash": "" }, "backend/src/faq/faq.service.ts": { "mtime": 1787148092.3199117, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "76c44314a43aa61ca7ba02e6cce871be", "semantic_hash": "" }, "backend/src/home/dto/create-home.dto.ts": { "mtime": 1783764561.6823654, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b20293c0606e764e43e19412e8b94e58", "semantic_hash": "" }, "backend/src/home/dto/update-home.dto.ts": { "mtime": 1783764561.6823654, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fdbec5105f68e9ef5edca26c91c2a01b", "semantic_hash": "" }, "backend/src/home/entities/home.entity.ts": { "mtime": 1783764561.6848848, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f7e5b57b1dbb4fa28600ebdd5c86a73c", "semantic_hash": "" }, "backend/src/home/home.controller.ts": { "mtime": 1785327951.2120874, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3474997a729a3a47f1872f489c28e70e", "semantic_hash": "" }, "backend/src/home/home.module.ts": { "mtime": 1783764561.687108, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b8671f0d293617cf95cc2e9aef8ab11a", "semantic_hash": "" }, "backend/src/home/home.service.ts": { "mtime": 1785327951.2140872, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "20073496a83b447238b4e8ab793573ec", "semantic_hash": "" }, "backend/src/ingredients/ingredients.controller.ts": { "mtime": 1786799852.2375965, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b591e9eeddc544d5224bbf8dc747f71e", "semantic_hash": "" }, "backend/src/ingredients/ingredients.module.ts": { "mtime": 1786799852.2385964, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "928f762b562c624011ca6c7e72543d0d", "semantic_hash": "" }, "backend/src/ingredients/ingredients.service.ts": { "mtime": 1786799852.2401083, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7d07a0fb1cdebe81d9ecef7604701bed", "semantic_hash": "" }, "backend/src/main.ts": { "mtime": 1787999006.3195474, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "98f9d78377269e43ae17bb2c694607a4", "semantic_hash": "" }, "backend/src/menu/menu.controller.ts": { "mtime": 1787564348.681949, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "091e15205d159cebb946d545a9cec92a", "semantic_hash": "" }, "backend/src/menu/menu.module.ts": { "mtime": 1787148092.3238695, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "57340cf9c9a8c0562995738bac8efc7b", "semantic_hash": "" }, "backend/src/menu/menu.service.ts": { "mtime": 1787564362.2621727, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "50a88c362e71338570fa3aee831bb0ba", "semantic_hash": "" }, "backend/src/orders/dto/create-order.dto.ts": { "mtime": 1785327951.218626, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "de9e39544ff4cfbbc8233318b2b71c67", "semantic_hash": "" }, "backend/src/orders/orders.controller.spec.ts": { "mtime": 1785327951.2196276, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "03aae30c09648646afbd6f8862d2d12b", "semantic_hash": "" }, "backend/src/orders/orders.controller.ts": { "mtime": 1787072106.3980772, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "58b8b3790952f51c625e31f5eed09d3b", "semantic_hash": "" }, "backend/src/orders/orders.module.ts": { "mtime": 1783764561.6975982, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "10e4c03ae468f0412d882306bdb20401", "semantic_hash": "" }, "backend/src/orders/orders.service.spec.ts": { "mtime": 1787729523.4368768, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a080730dc8c8abe4ab58ddb86ef7a5ef", "semantic_hash": "" }, "backend/src/orders/orders.service.ts": { "mtime": 1788609394.3227692, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "20f6b2b1c1b0d3842f48de147d34e36b", "semantic_hash": "" }, "backend/src/payment/dto/admin-transaction-filter.dto.ts": { "mtime": 1787072106.4015906, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "afa18a9b091f326229902f10477bb1c1", "semantic_hash": "" }, "backend/src/payment/dto/ebank-checkout.dto.ts": { "mtime": 1787394001.6034613, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "420fb2e706c51e65cac8615d130993fe", "semantic_hash": "" }, "backend/src/payment/dto/initiate-payment.dto.ts": { "mtime": 1786870552.8742464, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a097fcbb5846e7cd00e7cb2cefc060bb", "semantic_hash": "" }, "backend/src/payment/dto/verify-payment.dto.ts": { "mtime": 1786894580.126858, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f6db4b79ca261e36334ef84f39b8e87c", "semantic_hash": "" }, "backend/src/payment/interfaces/payment-gateway.interface.ts": { "mtime": 1786870552.8767512, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "930a5f06cdec431d842bf9b12618eed5", "semantic_hash": "" }, "backend/src/payment/payment.controller.ts": { "mtime": 1788609394.3238719, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b35704ec411060d7ee165feec8f9e783", "semantic_hash": "" }, "backend/src/payment/payment.module.ts": { "mtime": 1787394001.605618, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7ee5887f04915d1bd1471705a8f941ad", "semantic_hash": "" }, "backend/src/payment/payment.service.ts": { "mtime": 1788609394.3251019, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cf9adecd794e7fa2aded96f7f6c64e2a", "semantic_hash": "" }, "backend/src/payment/zibal-ebank.service.ts": { "mtime": 1787461919.4523065, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7075a9caf96d6f38e0a8b0208dbd0ab5", "semantic_hash": "" }, "backend/src/payment/zibal.service.ts": { "mtime": 1787461919.453309, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0c7c645422cf2a3ba406390802ee365d", "semantic_hash": "" }, "backend/src/pets/dto/create-health-log.dto.ts": { "mtime": 1785327951.2294433, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "da823d24eecce83c17760374fbc99131", "semantic_hash": "" }, "backend/src/pets/dto/create-pet.dto.ts": { "mtime": 1785327951.2309487, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "22e442118c4b4c44d887a9e72bf416e2", "semantic_hash": "" }, "backend/src/pets/dto/create-reminder.dto.ts": { "mtime": 1785327951.2319582, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "61e74b013460e406bd10197b3d3a95df", "semantic_hash": "" }, "backend/src/pets/dto/update-pet.dto.ts": { "mtime": 1783764561.7095575, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a2086bbebe7ca2718d4933b9828b456d", "semantic_hash": "" }, "backend/src/pets/pets.controller.spec.ts": { "mtime": 1786799852.2481189, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ea25cbbc55569e44ea0ceaf8c7af5111", "semantic_hash": "" }, "backend/src/pets/pets.controller.ts": { "mtime": 1787461919.454309, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "20c1ead48262a81ff538fedae048d784", "semantic_hash": "" }, "backend/src/pets/pets.module.ts": { "mtime": 1783764561.71447, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1e30ca9c5823c33d4f3266d5b48fee01", "semantic_hash": "" }, "backend/src/pets/pets.service.spec.ts": { "mtime": 1785327951.238208, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "49e5e2df9d623a5510db8d9c3eefdbd5", "semantic_hash": "" }, "backend/src/pets/pets.service.ts": { "mtime": 1786799852.2501173, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f34775f4106e2ac19efff3a9b140db3f", "semantic_hash": "" }, "backend/src/prescriptions/prescriptions.controller.ts": { "mtime": 1786799852.2537484, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3b657f5cac989600c165b8eac3a6a2af", "semantic_hash": "" }, "backend/src/prescriptions/prescriptions.module.ts": { "mtime": 1786954681.8158092, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0f9ea31fa7fa71f4ec87e461ce7d444f", "semantic_hash": "" }, "backend/src/prescriptions/prescriptions.service.ts": { "mtime": 1787072106.408779, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6b018d33377fdfcba9e4512e50da48a0", "semantic_hash": "" }, "backend/src/prisma/prisma.module.ts": { "mtime": 1783764561.7181997, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3505a1831c78f0a9475e4ce0f0092410", "semantic_hash": "" }, "backend/src/prisma/prisma.service.ts": { "mtime": 1787640806.107781, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1a6d7ac4a114351a0a3deb1835481a59", "semantic_hash": "" }, "backend/src/products/dto/get-products.dto.ts": { "mtime": 1786799852.2602715, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bed3d5bd69f866349bfc408bfea60e78", "semantic_hash": "" }, "backend/src/products/products.controller.spec.ts": { "mtime": 1785327951.243281, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6fde28604e799d5c5c0d2c6c2fcb4372", "semantic_hash": "" }, "backend/src/products/products.controller.ts": { "mtime": 1786799852.2612817, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "db015311d34c7985c1c4ab818070b297", "semantic_hash": "" }, "backend/src/products/products.module.ts": { "mtime": 1787999968.301265, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "78164f32e0b7c035a16c29e70b11b26c", "semantic_hash": "" }, "backend/src/products/products.service.spec.ts": { "mtime": 1787729523.4384463, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1f1e441d2138fefdd717b553f42d3ca0", "semantic_hash": "" }, "backend/src/products/products.service.ts": { "mtime": 1788334048.80538, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cb126dda614f8a675d2f6a78f5eddf37", "semantic_hash": "" }, "backend/src/redis/redis.module.ts": { "mtime": 1783764561.727662, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0856864a521a862369a89de9b2d3c9f0", "semantic_hash": "" }, "backend/src/redis/redis.service.spec.ts": { "mtime": 1783764561.7286723, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f3a16f7f1721be9e6ddb7ddd2949ea6c", "semantic_hash": "" }, "backend/src/redis/redis.service.ts": { "mtime": 1786895436.2118347, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4f5e58ffc36bbaed17ee669e5a7394b7", "semantic_hash": "" }, "backend/src/reviews/dto/create-review.dto.ts": { "mtime": 1787072106.4143064, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2ae6e4616eaeeafd56d4c74bbfe79f12", "semantic_hash": "" }, "backend/src/reviews/dto/update-review.dto.ts": { "mtime": 1787072106.4158058, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1c989ea4d1dd9c3fcf8b442e61a2d2e3", "semantic_hash": "" }, "backend/src/reviews/reviews.controller.ts": { "mtime": 1787645037.3752687, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "afebaeead6edc0c9618daa1a3b16ac42", "semantic_hash": "" }, "backend/src/reviews/reviews.module.ts": { "mtime": 1786944769.5173109, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7f5cb88dda0a902c24c48edb34647428", "semantic_hash": "" }, "backend/src/reviews/reviews.service.ts": { "mtime": 1787579631.7755866, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fc9f239f7b233fd9549aaaaa226bd9f3", "semantic_hash": "" }, "backend/src/seo/seo.controller.ts": { "mtime": 1785327951.2472832, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4c11a3beaa94a769acf206bf9ff279b0", "semantic_hash": "" }, "backend/src/seo/seo.module.ts": { "mtime": 1785148022.268581, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4160982445b855a6406e8713e95bf91b", "semantic_hash": "" }, "backend/src/seo/seo.service.ts": { "mtime": 1787127978.249385, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c104390de2fa710428b6d69c6201f4d8", "semantic_hash": "" }, "backend/src/settings/default-ui-texts.ts": { - "mtime": 1789276568.4626076, - "seen": 1789276734.9114494, + "mtime": 1789276760.4296594, + "seen": 1789277254.2264273, "ast_hash": "8e56f71e230fe0d8cd204f9ef8fe2040", "semantic_hash": "" }, "backend/src/settings/dto/sms-log-query.dto.ts": { "mtime": 1787072106.4213393, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d1b143222dc6ecfcff03180de1a23e9e", "semantic_hash": "" }, "backend/src/settings/settings.controller.spec.ts": { "mtime": 1787729523.4384463, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bc268d693685c78c407142ecd0e58afe", "semantic_hash": "" }, "backend/src/settings/settings.controller.ts": { "mtime": 1788609394.3261118, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d4f57b7f9ef20926ace9e8af65c8638b", "semantic_hash": "" }, "backend/src/settings/settings.module.ts": { "mtime": 1783764561.7355156, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b84a45f92537de41c7c3821847271004", "semantic_hash": "" }, "backend/src/settings/settings.service.spec.ts": { "mtime": 1787729523.4394524, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8a15891a088d3c0e69639ac19dbe8f40", "semantic_hash": "" }, "backend/src/settings/settings.service.ts": { - "mtime": 1789276573.3436038, - "seen": 1789276734.9114494, + "mtime": 1789276760.431397, + "seen": 1789277254.2264273, "ast_hash": "8b4b235b71e4f8aa00e38ccf94f21611", "semantic_hash": "" }, "backend/src/smart-advisor/smart-advisor.controller.ts": { "mtime": 1786799852.2754414, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eacb4fc2f3d82eb3833f4b04d851d4c3", "semantic_hash": "" }, "backend/src/smart-advisor/smart-advisor.module.ts": { "mtime": 1786799852.2764418, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "40d2882f5f8a0733c940c754631be24b", "semantic_hash": "" }, "backend/src/smart-advisor/smart-advisor.service.ts": { "mtime": 1786799852.2774403, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1824f7151599e310cd2de7435e345afe", "semantic_hash": "" }, "backend/src/testimonials/testimonials.controller.ts": { "mtime": 1787148092.3297865, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "077ac1d08fbec205f030f3cc6b7f357c", "semantic_hash": "" }, "backend/src/testimonials/testimonials.module.ts": { "mtime": 1786799852.2794418, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e2778d19b65d66f61d35f1a98333c873", "semantic_hash": "" }, "backend/src/testimonials/testimonials.service.ts": { "mtime": 1787148092.3325016, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7c108b6bdfc5625fc3c058f1db527bbe", "semantic_hash": "" }, "backend/src/tickets/dto/create-ticket.dto.ts": { "mtime": 1787072106.4308748, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cb6ad48fdfa6c9c24158b32c4882a38f", "semantic_hash": "" }, "backend/src/tickets/dto/ticket-query.dto.ts": { "mtime": 1787072106.4318714, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f7c6a4165ac086ba6de6fb111c75c2e9", "semantic_hash": "" }, "backend/src/tickets/tickets.controller.ts": { "mtime": 1787072106.433878, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6eb0b4d21421f9f5aa1831b0402257e8", "semantic_hash": "" }, "backend/src/tickets/tickets.module.ts": { "mtime": 1786890779.3222969, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0b3e226a18679b4bf37016c27b874ae9", "semantic_hash": "" }, "backend/src/tickets/tickets.service.ts": { "mtime": 1787072106.4348743, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "16b88701d7cc2a14f47e99f55882e67a", "semantic_hash": "" }, "backend/src/users/dto/address.dto.ts": { "mtime": 1783764561.7398715, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d42a8da106b862f8934b4268e5974025", "semantic_hash": "" }, "backend/src/users/dto/update-profile.dto.ts": { "mtime": 1786885876.8054721, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7c5b2601ea43f7045a5691ed1fde7840", "semantic_hash": "" }, "backend/src/users/users.controller.spec.ts": { "mtime": 1785327951.2537966, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8879233da361926bf496aa33fc24a0a4", "semantic_hash": "" }, "backend/src/users/users.controller.ts": { "mtime": 1786799852.2824814, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0c14b005ce0dddc5c6be9fb33672c659", "semantic_hash": "" }, "backend/src/users/users.module.ts": { "mtime": 1783764561.7481544, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6a22d47a72af32e6726ff5025c1d6f0b", "semantic_hash": "" }, "backend/src/users/users.service.spec.ts": { "mtime": 1787729523.4404535, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c85c82974e9889c38cbca862f0c659f0", "semantic_hash": "" }, "backend/src/users/users.service.ts": { "mtime": 1788609394.3291135, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "760dfebdbc239c63c33d31344d41cc0b", "semantic_hash": "" }, "backend/src/videos/dto/create-video.dto.ts": { "mtime": 1786971396.042094, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "292c465ed02d974fc16c674ca6f7caf5", "semantic_hash": "" }, "backend/src/videos/dto/get-videos-query.dto.ts": { "mtime": 1786799852.2876434, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "22029a395d4906dec82a0472af9827a2", "semantic_hash": "" }, "backend/src/videos/videos.controller.ts": { "mtime": 1786799852.2911532, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "64de50207aa54dc4d9866fb41a3cf11e", "semantic_hash": "" }, "backend/src/videos/videos.module.ts": { "mtime": 1785148022.3065836, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "79c989585f2c5da29199d914ca54abdf", "semantic_hash": "" }, "backend/src/videos/videos.service.ts": { "mtime": 1788334048.8073807, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c50bb5b2acaa77a353f9aa8a39a9cde3", "semantic_hash": "" }, "backend/src/wholesale/dto/wholesale-apply.dto.ts": { "mtime": 1785148022.3176222, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "dda43ea50daed66d9ddf56ff14c2ac31", "semantic_hash": "" }, "backend/src/wholesale/wholesale.controller.ts": { "mtime": 1786799852.294177, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "85347767e9b0508aa27c8fc2ada57403", "semantic_hash": "" }, "backend/src/wholesale/wholesale.module.ts": { "mtime": 1785148022.3287463, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "431fcacfcaaf5ee3872869c796581db3", "semantic_hash": "" }, "backend/src/wholesale/wholesale.service.ts": { "mtime": 1788584193.713367, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2afc8a11f11eee317b8fc291b05108c2", "semantic_hash": "" }, "backend/src/wiki/dto/create-wiki.dto.ts": { "mtime": 1783764561.7529333, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bff0bff5978c808b3f6c7c0471ecc09f", "semantic_hash": "" }, "backend/src/wiki/dto/update-wiki.dto.ts": { "mtime": 1783764561.753945, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "aafeafc832089a9d47f2b09c15f5166c", "semantic_hash": "" }, "backend/src/wiki/entities/wiki.entity.ts": { "mtime": 1783764561.7550395, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0babba8c13baba4a2ad2fd70395060f2", "semantic_hash": "" }, "backend/src/wiki/wiki.controller.ts": { "mtime": 1785327951.2728505, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ca3a7279ecce06e6747e4b5d1b83f042", "semantic_hash": "" }, "backend/src/wiki/wiki.module.ts": { "mtime": 1783764561.756925, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "22c999c57982f13d0526d25d7990b745", "semantic_hash": "" }, "backend/src/wiki/wiki.service.ts": { "mtime": 1786799852.295173, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4f9a02a302512579c6eaed6e06da679e", "semantic_hash": "" }, "backend/test/app-audit-verification.e2e-spec.d.ts": { "mtime": 1787073059.1090057, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e2ebd7ddedcadeeadbf819c35985c768", "semantic_hash": "" }, "backend/test/app-audit-verification.e2e-spec.js": { "mtime": 1787073059.1105163, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3906e1e6a6fe48f74cd15f9b81b8775a", "semantic_hash": "" }, "backend/test/app-audit-verification.e2e-spec.ts": { "mtime": 1786799852.2961748, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5df6593dd9fd1f88f2b1e13f44b7b350", "semantic_hash": "" }, "backend/test/app.e2e-spec.d.ts": { "mtime": 1787073059.1125634, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e2ebd7ddedcadeeadbf819c35985c768", "semantic_hash": "" }, "backend/test/app.e2e-spec.js": { "mtime": 1787073059.1135726, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4ff6e84fd1b500597f4cc40d5877ad1b", "semantic_hash": "" }, "backend/test/app.e2e-spec.ts": { "mtime": 1786799852.297175, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8373bf2ee758abe47f5681e898cde506", "semantic_hash": "" }, "backend/tsconfig.build.json": { "mtime": 1783764561.763447, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d3d6c627ed113034e4138ae830ca9221", "semantic_hash": "" }, "backend/tsconfig.json": { "mtime": 1787073059.1161675, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bc2ddace3dc933b714ebc21504c43b62", "semantic_hash": "" }, "docs/audit/build_manifest.js": { "mtime": 1786799852.3383932, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5865147d3b17e6ddad0be4f4b9dc00d0", "semantic_hash": "" }, "docs/audit/generate_classification.js": { "mtime": 1786799852.3393898, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "01cdce5da0cdc41b49a7e9560a0b8ae9", "semantic_hash": "" }, "docs/audit/generate_evidence.js": { "mtime": 1786799852.3403902, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f31d1dafad3e771e9602776460c04761", "semantic_hash": "" }, "docs/audit/generate_ledger.js": { "mtime": 1786799852.3418972, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c502805af184c8efe08a66030ff0203b", "semantic_hash": "" }, "docs/audit/generate_manifest.js": { "mtime": 1786799852.3418972, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d9ead302d1023a72718e60261725e429", "semantic_hash": "" }, "docs/audit/rebuild_honest_ledger.js": { "mtime": 1786799852.348953, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5a505fbc55dbabd0557377ce8de0643a", "semantic_hash": "" }, "docs/audit/sync_honest_manifest.js": { "mtime": 1786799852.3499532, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3f2ec3b689e720b6e50fe4666a9b8bb0", "semantic_hash": "" }, "docs/audit/sync_manifest.js": { "mtime": 1786799852.3509533, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7315ba82c162ad4c2a0cec307966c580", "semantic_hash": "" }, "docs/audit/validate_evidence_grade.js": { "mtime": 1786799852.351954, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5f68ed3e8236ececf82e5da4ac47d93b", "semantic_hash": "" }, "docs/audit/validate_integrity.js": { "mtime": 1786799852.3529525, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7bd05a71bd8c0c23db65db5201d3c030", "semantic_hash": "" }, "frontend/admin-panel/eslint.config.js": { "mtime": 1787148092.3345017, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b204828b41a3391dd9ab65a1087e197f", "semantic_hash": "" }, "frontend/admin-panel/package.json": { "mtime": 1788000055.991496, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "47352c4b2e63cedd7b30d24f93b1ae9e", "semantic_hash": "" }, "frontend/admin-panel/postcss.config.js": { "mtime": 1783764561.7962818, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c1ee9ce6a4fe04105dbf8e619390df5e", "semantic_hash": "" }, "frontend/admin-panel/src/App.tsx": { "mtime": 1786799852.3654811, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "140226fcd94080d00f56e2f8b65f95e5", "semantic_hash": "" }, "frontend/admin-panel/src/components/Layout.tsx": { "mtime": 1784621786.9585948, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e2192f9b6c86f07ff6c6ec9bf9d1cb71", "semantic_hash": "" }, "frontend/admin-panel/src/components/ProtectedRoute.tsx": { "mtime": 1786799852.369164, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bcb0329847fb25e9fe1e990a30609210", "semantic_hash": "" }, "frontend/admin-panel/src/components/RouteErrorBoundary.tsx": { "mtime": 1787062174.623011, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bede52b77e6efe56c4f710279fdbcfbd", "semantic_hash": "" }, "frontend/admin-panel/src/components/Sidebar.tsx": { "mtime": 1788859667.825174, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3fb0b052c72c08ffb8ba285b3ead5029", "semantic_hash": "" }, "frontend/admin-panel/src/components/Topbar.tsx": { "mtime": 1787466234.9643857, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ffa50e46783a27f148b41212e5810b46", "semantic_hash": "" }, "frontend/admin-panel/src/components/TransactionReceiptModal.tsx": { "mtime": 1787405554.8046184, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8931b7ade86ad779579db166eb148469", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Badge.tsx": { "mtime": 1787461920.844094, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3b93789328a250499e58378552881527", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Button.tsx": { "mtime": 1787467799.871536, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8d920444901883ddb6e7b4745d28c0a7", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ConfirmModal.tsx": { "mtime": 1786972191.3590996, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "982712b3d0130cbc66035a9caa4dc173", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/FormField.tsx": { "mtime": 1786954681.823527, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "265c887af876e10153f2ac32844194c2", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/IconPickerModal.tsx": { "mtime": 1787071159.9599283, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d4676fe2b24132bbfeb1b53f2b314ed7", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx": { "mtime": 1786954681.824535, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ada78d41f18a3dcce5e806a2ab252d30", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Input.tsx": { "mtime": 1788332598.5399468, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7eba87963d6f6875b445f5be6645bb3a", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/MaskableField.tsx": { "mtime": 1787405554.805712, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b97dc137463327fd294e929cfa65545c", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/MediaSelector.tsx": { "mtime": 1787038450.536697, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ed6a6da6e5929bf77a82b5cda0fb3eeb", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Modal.tsx": { "mtime": 1787461920.8450942, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e11f7ea28068c2a268db4d032c3fc9f5", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Pagination.tsx": { "mtime": 1786799852.387442, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8ab314264c858bcd6cb53fc4c9985cf0", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/PriceInput.tsx": { "mtime": 1786948119.7711625, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "09a84a9f29f735448d05e4327c0304b3", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/RichTextEditor.tsx": { "mtime": 1787980615.5635426, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "af8af048bb77473565ae93c941d6f71d", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Select.tsx": { "mtime": 1786954681.8285375, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a06e97672e210fdff460252966d2ab09", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Skeleton.tsx": { "mtime": 1783856792.9775357, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "dd6a1fca8a8db341521aa315829143e0", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Spinner.tsx": { "mtime": 1783856792.9790492, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "32a95c9dc25ac088596fdccd17d7284a", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/Textarea.tsx": { "mtime": 1786954681.8285375, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bbbdbaa3a2aeb68e7e406d555129fb79", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ThSort.tsx": { "mtime": 1787461920.8450942, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "421faa21b7189758f65616964f288b0c", "semantic_hash": "" }, "frontend/admin-panel/src/components/ui/ToggleSwitch.tsx": { "mtime": 1786954681.830045, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f212eaa6017ac07b37356612883b2884", "semantic_hash": "" }, "frontend/admin-panel/src/main.tsx": { "mtime": 1787062325.3950386, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e9195a72ddf4287e9eac6200a579623c", "semantic_hash": "" }, "frontend/admin-panel/src/pages/B2BManager.tsx": { "mtime": 1787729527.9273918, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1c0145c22fcc3261e7c783a4c3d098ff", "semantic_hash": "" }, "frontend/admin-panel/src/pages/BannersManager.tsx": { "mtime": 1787467799.8741717, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d567c9ad3dcbf316b5622aeaa1b8e71d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Blogs.tsx": { "mtime": 1787729527.9283917, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2f2312e9d916f845c5ffa512522e5684", "semantic_hash": "" }, "frontend/admin-panel/src/pages/CMS.tsx": { "mtime": 1787467933.66426, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7c60aa58d334f1ffbaba2bf881492999", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Categories.tsx": { "mtime": 1787469989.1415117, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "db0c156eff28f6adb66eeebf37f0cd0c", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ContactSubmissions.tsx": { "mtime": 1787467799.877344, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b636f5f1432d4e2842d4bcea297ad4b8", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Coupons.tsx": { "mtime": 1788332598.5434518, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "34ea4dfa90815560f40d11d8a5586601", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Dashboard.tsx": { "mtime": 1786885876.82951, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "025cbf432db0594426593332e01d5924", "semantic_hash": "" }, "frontend/admin-panel/src/pages/DoctorsManager.tsx": { "mtime": 1787467799.8799238, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5671cef0d264dc92d9540058a929633e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/FAQManager.tsx": { "mtime": 1787467799.8819249, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3024a02175a185553d0fe7bef61ba293", "semantic_hash": "" }, "frontend/admin-panel/src/pages/FinancialSettingsPage.tsx": { "mtime": 1788333161.5201325, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "27ee079dd99882e7f26beeccc00b6a7a", "semantic_hash": "" }, "frontend/admin-panel/src/pages/IngredientsManager.tsx": { "mtime": 1787467933.6699345, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ff90e4e00c59efc1decad824ccd74f2f", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Login.tsx": { "mtime": 1788587906.733886, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c6965079abd3ea2fe94d68fe8f206e54", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Media.tsx": { "mtime": 1787467799.8859253, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "82bca4823f75ac46b5c99010d90406c0", "semantic_hash": "" }, "frontend/admin-panel/src/pages/MenuManager.tsx": { "mtime": 1787469989.146215, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "22996483f9cfdd91ac8b003e0c88bf02", "semantic_hash": "" }, "frontend/admin-panel/src/pages/MonitoringPage.tsx": { "mtime": 1787466234.9659803, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0b2ef8e74d5b5c1cc7f1587445080cc1", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Orders.tsx": { "mtime": 1788609394.3301117, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ce45d268345c66ef099b5c439fade26e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx": { "mtime": 1787467799.8899395, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3f56b1c5ba2b01fae9ed51faf870cb8d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Pets.tsx": { "mtime": 1787467799.8919382, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d7193caca6127917bb62d9303859c55f", "semantic_hash": "" }, "frontend/admin-panel/src/pages/PrescriptionsManager.tsx": { "mtime": 1787467799.8929358, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "da18bacd672ffa7453f1a0dd00a0c1e5", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Products.tsx": { "mtime": 1788351605.8018837, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a31f43fcaf5aaee1ec22f4a36fe73275", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Reports.tsx": { "mtime": 1787729523.4424512, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "aece92a46fa9602c4f1c2312d1654c0d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Reviews.tsx": { "mtime": 1787740536.6709485, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6dd3c72f62f2d7d26a6300b577f3829d", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SeoSettingsPage.tsx": { "mtime": 1788343360.494036, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a28a3222444028118a019a9fdf97a880", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Settings.tsx": { "mtime": 1787468615.4578195, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "48d2a21e7213783f8fded696ef514d40", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ShippingSettingsPage.tsx": { "mtime": 1787467799.9019353, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "329ce7c2b153a8d4f0ca26374759938e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SmartAdvisorManager.tsx": { "mtime": 1787467799.9029336, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c7581c0ab40797e55144e588e75741de", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SmsSettingsPage.tsx": { "mtime": 1788625198.9569802, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fe2956f9d6c5f0d0519f5336ec2c187b", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SslSettingsPage.tsx": { "mtime": 1787467799.9054468, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a989703bb87076f3c9c3c4a26012a5cb", "semantic_hash": "" }, "frontend/admin-panel/src/pages/SystemSettingsPage.tsx": { - "mtime": 1789276547.1442397, - "seen": 1789276734.9114494, + "mtime": 1789276760.4336088, + "seen": 1789277254.2264273, "ast_hash": "3e7cfc6da88ef1875ebd55ff2cc599ca", "semantic_hash": "" }, "frontend/admin-panel/src/pages/TestimonialsManager.tsx": { "mtime": 1787467799.9089553, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4efa3f2d1fe0f23974fa880da26e6768", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Tickets.tsx": { "mtime": 1787467799.909963, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0a9562f28e15b5af8acc8c15fc130729", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Transactions.tsx": { "mtime": 1787471434.8721883, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "50d95775caf9b786ee9dba4c5558d49e", "semantic_hash": "" }, "frontend/admin-panel/src/pages/UITexts.tsx": { "mtime": 1788587906.7386765, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "93699ef02449ad5056de8ff6df332ea3", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Users.tsx": { "mtime": 1788587906.7396712, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2fd3fcf90d47cff5bec6992d09887acb", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Videos.tsx": { "mtime": 1787740536.6756897, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "af075ac9e261faafbbc76de807fe2824", "semantic_hash": "" }, "frontend/admin-panel/src/pages/WholesaleApplications.tsx": { "mtime": 1787467799.9168525, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "706933237e883550fbb7cdb6dd379815", "semantic_hash": "" }, "frontend/admin-panel/src/pages/Wiki.tsx": { "mtime": 1787469989.158213, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c563794e3da6d723f67834eed032495a", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ZibalPortalPage.tsx": { "mtime": 1787570438.155805, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7411a269c9220ed427aced022e858504", "semantic_hash": "" }, "frontend/admin-panel/src/routes/adminRoutes.tsx": { "mtime": 1788859667.8281732, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2dd589d358634e0b0288dc08f1e99fee", "semantic_hash": "" }, "frontend/admin-panel/src/services/api.ts": { "mtime": 1787997670.262225, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3fb217f4a2e3e3dfc0f8e5494f1eabac", "semantic_hash": "" }, "frontend/admin-panel/src/store/adminAuthStore.ts": { "mtime": 1786799852.469037, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a2ca7b287d2c7efe08802b6187d95d67", "semantic_hash": "" }, "frontend/admin-panel/src/types/admin.ts": { "mtime": 1788859667.8292036, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "be283cc51ef49e9f6ba6b4cc02a4b75b", "semantic_hash": "" }, "frontend/admin-panel/src/utils/lazyWithRetry.ts": { "mtime": 1787062174.6262279, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8fd1116250eef64a64411d9dd8322c18", "semantic_hash": "" }, "frontend/admin-panel/src/utils/useTableParams.ts": { "mtime": 1787461920.855096, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "beda95a77f5cf930e48d9d5dc365aa12", "semantic_hash": "" }, "frontend/admin-panel/tailwind.config.js": { "mtime": 1783764561.8617213, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3346df3fd0a1ea3f84440703bf8fd2cb", "semantic_hash": "" }, "frontend/admin-panel/tsconfig.app.json": { "mtime": 1787055476.7795663, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b885d5f97cf6fc2c1e7997d4b8abfb88", "semantic_hash": "" }, "frontend/admin-panel/tsconfig.json": { "mtime": 1783764561.8633935, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a3d39fa780ebff65444de257f291ce6c", "semantic_hash": "" }, "frontend/admin-panel/tsconfig.node.json": { "mtime": 1783764561.863923, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "70bdd0a673bcfc0e828080b306e7c680", "semantic_hash": "" }, "frontend/admin-panel/vite.config.ts": { "mtime": 1783764561.864455, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "88439104b3c207f17d33ef3160e3b080", "semantic_hash": "" }, "frontend/application/app/ClientLayout.tsx": { "mtime": 1789272909.8560724, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "dfa7efce16f4d70397443c53b8c598b8", "semantic_hash": "" }, "frontend/application/app/HomeClient.tsx": { "mtime": 1788683449.0260167, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4437d39e4aa8b5468032bbc5810fec30", "semantic_hash": "" }, "frontend/application/app/about/page.tsx": { "mtime": 1787139270.9594126, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "dea769499f3e4d950e310655b5b9b455", "semantic_hash": "" }, "frontend/application/app/api/revalidate/route.ts": { "mtime": 1787579631.7801068, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "23184adf61db300179c0776b6a61ab0a", "semantic_hash": "" }, "frontend/application/app/b2b/error.tsx": { "mtime": 1787645037.377262, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d1311a94b33f2e302704576e2543fe10", "semantic_hash": "" }, "frontend/application/app/b2b/page.tsx": { "mtime": 1787644197.1416183, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "06efdc27aa409ef9001b99f03603c645", "semantic_hash": "" }, "frontend/application/app/blog/[slug]/page.tsx": { "mtime": 1787641161.057694, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1d3634d4395f48acdfe8e322f306ec3d", "semantic_hash": "" }, "frontend/application/app/blog/error.tsx": { "mtime": 1787645037.3782682, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "47fda48f69163db4c3e7ce7e13a1aef8", "semantic_hash": "" }, "frontend/application/app/blog/loading.tsx": { "mtime": 1787645037.3792627, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3ac7dcd4e891cc77e6a9a61f980c64e0", "semantic_hash": "" }, "frontend/application/app/blog/page.tsx": { "mtime": 1787993003.7725687, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "674cb6f16d90e8ca9023ba3db194667a", "semantic_hash": "" }, "frontend/application/app/blog/rss.xml/route.ts": { "mtime": 1787577523.7103512, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0f825c41a5e5c9ce9193e7ac98246f2d", "semantic_hash": "" }, "frontend/application/app/catalog/CatalogClient.tsx": { "mtime": 1788683206.8459733, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c7527320b406c4b8bc90d256cb57e7f6", "semantic_hash": "" }, "frontend/application/app/catalog/page.tsx": { "mtime": 1787139270.9655254, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a3df5895707ba1f0809841320a2b7dff", "semantic_hash": "" }, "frontend/application/app/checkout/page.tsx": { "mtime": 1787139270.9675355, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3f670c85242a956b39b07dbada3e11d0", "semantic_hash": "" }, "frontend/application/app/checkout/success/[id]/page.tsx": { "mtime": 1788624822.9974842, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f28e190e20375e283913dd4aa2178e55", "semantic_hash": "" }, "frontend/application/app/contact/page.tsx": { "mtime": 1787644197.1431985, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d2c5d581794a3db28e310d33cdef4ef1", "semantic_hash": "" }, "frontend/application/app/dashboard/page.tsx": { "mtime": 1787394935.3182175, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "82cfc707ac8e663e34c742ee14b11a4e", "semantic_hash": "" }, "frontend/application/app/error.tsx": { "mtime": 1785148022.478709, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "aea86a6d5b21cbff7bb38f382d1dd82d", "semantic_hash": "" }, "frontend/application/app/layout.tsx": { "mtime": 1788354488.2377124, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5496ba898a02ae6d6b9f8304eeeac8df", "semantic_hash": "" }, "frontend/application/app/loading.tsx": { "mtime": 1785148022.48765, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "daf62321fecabcbf8379d39f84a07c03", "semantic_hash": "" }, "frontend/application/app/not-found.tsx": { "mtime": 1783764561.8914113, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6cada341f40f65b06a39f2a3020d7b96", "semantic_hash": "" }, "frontend/application/app/page.tsx": { "mtime": 1788587906.7456717, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3dd57e5d031d0833051e12dfdff80cd8", "semantic_hash": "" }, "frontend/application/app/payment/verify/page.tsx": { "mtime": 1786891855.3560786, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "68d1923f04a3300b7b6dca6023ab357e", "semantic_hash": "" }, "frontend/application/app/privacy/page.tsx": { "mtime": 1787139270.9765637, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "54bf1a02ddfd06de2d9ec536a04ba97f", "semantic_hash": "" }, "frontend/application/app/profile/page.tsx": { "mtime": 1787139270.9788032, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1a4283a6fb6b3120519acbd35cb5282e", "semantic_hash": "" }, "frontend/application/app/robots.ts": { "mtime": 1787578481.501464, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c0e38b88b84ac47f4400128cfbc87987", "semantic_hash": "" }, "frontend/application/app/search/page.tsx": { "mtime": 1787139270.9799466, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "27d03ec9568875b47bb7d5bad3632085", "semantic_hash": "" }, "frontend/application/app/shop/[slug]/page.tsx": { "mtime": 1788624822.998554, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "25955e59c5af315888138603d9f11aaa", "semantic_hash": "" }, "frontend/application/app/shop/error.tsx": { "mtime": 1787645037.3802679, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "23789b3ca79c69763d31dbf356e76a4b", "semantic_hash": "" }, "frontend/application/app/shop/feed.xml/route.ts": { "mtime": 1788000526.323437, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "edd9288fd9d55c9b945cc235e4880ce8", "semantic_hash": "" }, "frontend/application/app/shop/loading.tsx": { "mtime": 1787645037.3802679, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e7bc5c6479b8906b5f8fb19bfcf289f2", "semantic_hash": "" }, "frontend/application/app/shop/page.tsx": { "mtime": 1788624822.9995973, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1526b1fdd033837ee257cd843d5a7f5b", "semantic_hash": "" }, "frontend/application/app/sitemap-categories.xml/route.ts": { "mtime": 1787578481.507462, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "906c6270f0c13612729f42c1e7630cc2", "semantic_hash": "" }, "frontend/application/app/sitemap-products.xml/route.ts": { "mtime": 1787578481.5084643, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e07cfe74793cf294eace564bf881bf6f", "semantic_hash": "" }, "frontend/application/app/sitemap.ts": { "mtime": 1787578481.5104632, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5ce17876bf57c30d753801930423e32c", "semantic_hash": "" }, "frontend/application/app/track/page.tsx": { "mtime": 1787139270.9842136, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ead1a36ba8de0ddbc98d68c77fcd0c68", "semantic_hash": "" }, "frontend/application/app/trust-seals/page.tsx": { "mtime": 1787394001.6093068, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8dca9a0847bedf92637fc07ed89e39b3", "semantic_hash": "" }, "frontend/application/app/videos/page.tsx": { "mtime": 1787644197.1471968, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "54232e77a222f6de008a9709b2975274", "semantic_hash": "" }, "frontend/application/app/wiki/[slug]/page.tsx": { "mtime": 1787644197.1491973, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "198d84f897be0d678ec7f4c3d9aeb25d", "semantic_hash": "" }, "frontend/application/app/wiki/page.tsx": { "mtime": 1787139270.9878309, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "79fec8952ae04bb5c7c9a1fc753da583", "semantic_hash": "" }, "frontend/application/components/AddressModal.tsx": { "mtime": 1787739535.190384, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bcc4eb00c43d561308575389d6e21fb8", "semantic_hash": "" }, "frontend/application/components/ArchivePage.tsx": { - "mtime": 1789276529.1273065, - "seen": 1789276734.9114494, + "mtime": 1789276760.4356093, + "seen": 1789277254.2264273, "ast_hash": "57e4b1dc477a4cce3e858e0e20bdad3d", "semantic_hash": "" }, "frontend/application/components/AuthModal.tsx": { "mtime": 1788624450.968147, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "74978f763a7cc9006fab2c5b9f4d32e8", "semantic_hash": "" }, "frontend/application/components/B2BLandingClient.tsx": { "mtime": 1787645037.3812675, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "795114ff03d5a13c4ac8b675cdadbe13", "semantic_hash": "" }, "frontend/application/components/B2BPortal.tsx": { "mtime": 1786894580.1568575, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cd073e8a2de7b93496df2310de77f41a", "semantic_hash": "" }, "frontend/application/components/BackButton.tsx": { "mtime": 1786965281.3572779, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9537791a36d9fc0245ab1edd523bad9e", "semantic_hash": "" }, "frontend/application/components/BannerPlacement.tsx": { "mtime": 1788346274.8411756, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bd5f67bf444ea351014f6349bb7a728c", "semantic_hash": "" }, "frontend/application/components/BlogPage.tsx": { "mtime": 1787729523.4464538, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7644b237cf768e9da2111e9c8908be4f", "semantic_hash": "" }, "frontend/application/components/BlogPostClient.tsx": { "mtime": 1787740536.6796968, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "de5822c944a797063075431f03a6bbb5", "semantic_hash": "" }, "frontend/application/components/BlogPreviewSection.tsx": { "mtime": 1788683449.0276875, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d8f877e1427625527dc71c72ca2dfb24", "semantic_hash": "" }, "frontend/application/components/BrandLogo.tsx": { "mtime": 1788674415.9137745, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9f3ad411d79ec8dbf91a12803e761e7d", "semantic_hash": "" }, "frontend/application/components/CartDrawer.tsx": { - "mtime": 1787733215.5489805, - "seen": 1789276734.9114494, - "ast_hash": "443487f1ee72272176431bd42ca89809", + "mtime": 1789276907.314118, + "seen": 1789277254.2264273, + "ast_hash": "5a822af9d9bda34b3f352b80fe86fc17", "semantic_hash": "" }, "frontend/application/components/CheckoutPage.tsx": { - "mtime": 1789272909.8590715, - "seen": 1789276734.9114494, + "mtime": 1789277064.3978293, + "seen": 1789277254.2264273, "ast_hash": "9c5fda6a35ff31a234ea80a974db5c0a", "semantic_hash": "" }, "frontend/application/components/ContactFormClient.tsx": { "mtime": 1787729527.9353964, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1facfb3e0741d874546b3e76c6fd9bcd", "semantic_hash": "" }, "frontend/application/components/DeleteConfirmModal.tsx": { "mtime": 1786799852.6087523, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "831b2bddd3e6d156abdac216577e3c4c", "semantic_hash": "" }, "frontend/application/components/EnamadBadge.tsx": { "mtime": 1786799852.612362, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "37c7d2eaa27905307e5b2b147849519c", "semantic_hash": "" }, "frontend/application/components/ErrorBoundary.tsx": { "mtime": 1786799852.6145496, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "21b1cf87a9176b9f7902e5fc4f8b6482", "semantic_hash": "" }, "frontend/application/components/ErrorPages.tsx": { "mtime": 1787661485.9450746, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d367c117edee2e91bfaa263a9514b93c", "semantic_hash": "" }, "frontend/application/components/FAQSection.tsx": { "mtime": 1787729995.2396145, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5db489a17a6648b7eba83a4c5ae0bc5f", "semantic_hash": "" }, "frontend/application/components/FeaturedProducts.tsx": { "mtime": 1789272909.8600729, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "451c815788061a8277a9e8140a101235", "semantic_hash": "" }, "frontend/application/components/Footer.tsx": { "mtime": 1788683206.8480475, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f33ecba96430d5fdfa785f2a446840d2", "semantic_hash": "" }, "frontend/application/components/Header.tsx": { "mtime": 1789272909.8600729, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5fd3a5c4ec4e29a4223b1a81be6d9cb8", "semantic_hash": "" }, "frontend/application/components/HeaderButton.tsx": { "mtime": 1786799852.637156, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5e4679ee49ad04e753de83a405255e44", "semantic_hash": "" }, "frontend/application/components/Hero.tsx": { "mtime": 1788674415.9165251, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a8a6f1594858dc608268192c4bc7aa6d", "semantic_hash": "" }, "frontend/application/components/IngredientWiki.tsx": { "mtime": 1786965281.3742068, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5a656dd2b9fd9e8f8c83544b706da19a", "semantic_hash": "" }, "frontend/application/components/LoginModal.tsx": { "mtime": 1788624450.9692073, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2d4dd2f33be03a533e6a46778d70b338", "semantic_hash": "" }, "frontend/application/components/MaintenancePage.tsx": { "mtime": 1786946249.984693, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ddff8dfe25db6a3b4667f52a92ffbd12", "semantic_hash": "" }, "frontend/application/components/NetworkBanner.tsx": { "mtime": 1786799852.662139, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "17a159f769af90f446309ca321c86805", "semantic_hash": "" }, "frontend/application/components/OrderDetailsModal.tsx": { "mtime": 1788609394.3331895, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0994ce712f3d877633467262e68d01c4", "semantic_hash": "" }, "frontend/application/components/OrderSuccess.tsx": { "mtime": 1786799852.6655424, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1af189b677cfa054b76f3a1b518113f8", "semantic_hash": "" }, "frontend/application/components/OrderTracking.tsx": { "mtime": 1787729527.937447, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "93ce4adc177efe4a3b2aadc4ede6f0bc", "semantic_hash": "" }, "frontend/application/components/PetProfile.tsx": { "mtime": 1788613668.259056, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "86cdfc2246fdf52e3d3d309649d70618", "semantic_hash": "" }, "frontend/application/components/PodcastInlinePlayer.tsx": { "mtime": 1787993003.7742205, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "712a8696b965a733de2b5b6e2c6ab0ed", "semantic_hash": "" }, "frontend/application/components/PodcastPlayerModal.tsx": { "mtime": 1787748657.1551368, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a3a83583f1b826aa0c27e316f2cb8907", "semantic_hash": "" }, "frontend/application/components/PrescriptionUploadModal.tsx": { "mtime": 1787741735.2679474, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ecd337bd55277c67016bee2f1662d46d", "semantic_hash": "" }, "frontend/application/components/ProductPage.tsx": { - "mtime": 1789276519.327156, - "seen": 1789276734.9114494, + "mtime": 1789276760.4396062, + "seen": 1789277254.2264273, "ast_hash": "795ee0f29a1c147b7f443871e3182402", "semantic_hash": "" }, "frontend/application/components/ProductReviews.tsx": { "mtime": 1788333723.5928628, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3b16f870e9c379368f6ce1e2daf0472e", "semantic_hash": "" }, "frontend/application/components/SafeImage.tsx": { "mtime": 1788354488.2429116, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9962814ada6822c7380f1502a6e8d2c8", "semantic_hash": "" }, "frontend/application/components/SearchResultsPage.tsx": { "mtime": 1786799852.7015781, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a5418e889a76fa054734277bd9a77a3d", "semantic_hash": "" }, "frontend/application/components/SearchableSelect.tsx": { "mtime": 1785575516.1555548, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9a5010afe35da7c9584bf60e69e47002", "semantic_hash": "" }, "frontend/application/components/Skeleton.tsx": { "mtime": 1788674415.9186456, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "64b6f9ed2bccb5b1d2d36bd86c6123b6", "semantic_hash": "" }, "frontend/application/components/SmartAdvisor.tsx": { "mtime": 1788587906.7476697, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ec90a8eb74a8d42b9d39002aa0346c3f", "semantic_hash": "" }, "frontend/application/components/TestimonialsSection.tsx": { "mtime": 1788346274.8432086, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4830d674874d810dc7ccbbb740810d64", "semantic_hash": "" }, "frontend/application/components/TickerBanner.tsx": { "mtime": 1788678950.452937, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a19560295f12a1e5cf8ae4670172a995", "semantic_hash": "" }, "frontend/application/components/Tooltip.tsx": { "mtime": 1788333306.9236298, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4d43304399818614a9ed6bb15edc7448", "semantic_hash": "" }, "frontend/application/components/TopUpModal.tsx": { "mtime": 1787406597.3033493, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "178766a9fff90dd0b233dc958a2f79b8", "semantic_hash": "" }, "frontend/application/components/UserDashboard.tsx": { "mtime": 1789272909.8640726, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ac9e1197e4fa7b4719bb6bb2459ed761", "semantic_hash": "" }, "frontend/application/components/VetGallery.tsx": { "mtime": 1788683449.0308845, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "91c64e9ca22eb2dcded00db65fc54fee", "semantic_hash": "" }, "frontend/application/components/VideoModalPlayer.tsx": { "mtime": 1787993003.7758553, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "43171a7865e98b7763e76b418e3fe9cd", "semantic_hash": "" }, "frontend/application/components/VideosPage.tsx": { "mtime": 1787729523.4504526, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e0025493d5aaab06e5ccc669781a4a90", "semantic_hash": "" }, "frontend/application/components/__tests__/CartDrawer.test.tsx": { - "mtime": 1786799852.7618258, - "seen": 1789276734.9114494, - "ast_hash": "6840b24eb0f28d8120a320f0fd466154", + "mtime": 1789277153.4802804, + "seen": 1789277254.2264273, + "ast_hash": "816667f4ca78cbd1389ea746d6b3e6c3", "semantic_hash": "" }, "frontend/application/components/__tests__/FeaturedProducts.test.tsx": { "mtime": 1787729523.4514546, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "317f5de841a35b6881d7a637d8cc921d", "semantic_hash": "" }, "frontend/application/components/__tests__/Footer.test.tsx": { "mtime": 1787729523.4524536, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8d06abc7e8f0b6bf8bb8f28e1b16e7de", "semantic_hash": "" }, "frontend/application/components/__tests__/Header.test.tsx": { "mtime": 1787729523.4524536, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a1786feed0dda8b2e95b4dc0493b5d10", "semantic_hash": "" }, "frontend/application/components/__tests__/Hero.test.tsx": { "mtime": 1786799852.7760108, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cba126955eaf2edc40fe24ce0c42d850", "semantic_hash": "" }, "frontend/application/components/__tests__/Tooltip.test.tsx": { "mtime": 1786799852.784349, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a43df52896070e694d06a2d1ae89a99a", "semantic_hash": "" }, "frontend/application/components/catalog/CatalogPageSpread.tsx": { "mtime": 1788616028.6248634, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e099c0bf65d92b92995b90331c485fc2", "semantic_hash": "" }, "frontend/application/components/catalog/FlipbookCatalog.tsx": { "mtime": 1788683206.8500445, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8fef11e85c1c7f6be05e3a6e3a46f470", "semantic_hash": "" }, "frontend/application/components/catalog/ProductDetailModal.tsx": { "mtime": 1787981163.2477274, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6c83f9d093866626428ee2a5cf841e70", "semantic_hash": "" }, "frontend/application/eslint.config.mjs": { "mtime": 1787148092.3580558, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b4917d5d92dcb4fe98715b5625b397e2", "semantic_hash": "" }, "frontend/application/lib/data/products.ts": { "mtime": 1788351605.8063908, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c3c2a38c43f0a1ca17ff71d206662764", "semantic_hash": "" }, "frontend/application/lib/data/provinces.ts": { "mtime": 1785571725.610676, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cd814c89c40909d1da24ac1e01fd99c0", "semantic_hash": "" }, "frontend/application/lib/data/scientificTerms.ts": { "mtime": 1786958978.7430973, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b469da9f5c2d6e81279c853211bc197f", "semantic_hash": "" }, "frontend/application/lib/fonts.ts": { "mtime": 1788351855.94342, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "267c387996720f9fa259381359469d76", "semantic_hash": "" }, "frontend/application/lib/hooks/useNetworkStatus.ts": { "mtime": 1786799852.793488, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d6ece33f5f0149a299c49366f0e314d0", "semantic_hash": "" }, "frontend/application/lib/schema.ts": { "mtime": 1787644197.1562054, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "78f0ccf9385189aa65639774e6feb3ad", "semantic_hash": "" }, "frontend/application/lib/seo.ts": { "mtime": 1788624823.0006585, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "df7e0c2d42d21dca54e424dea7625f4a", "semantic_hash": "" }, "frontend/application/lib/services/api.ts": { "mtime": 1787997670.2654707, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "636bbe92bb95d7a02bd30d3c12ac70ab", "semantic_hash": "" }, "frontend/application/lib/services/authService.ts": { "mtime": 1786885876.9861848, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "497045bd75576ee0cb6f37fc0ad831da", "semantic_hash": "" }, "frontend/application/lib/services/orderService.ts": { "mtime": 1786799852.8107264, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5b8b9c867e3db50a9ed5e6b3f765e3b5", "semantic_hash": "" }, "frontend/application/lib/services/productService.ts": { "mtime": 1788354488.2444441, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "55a328d01e76f69e5161a0eb6930d711", "semantic_hash": "" }, "frontend/application/lib/services/ticketService.ts": { "mtime": 1786890779.3409019, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6fcf9ed78ca9194e01333602a1989947", "semantic_hash": "" }, "frontend/application/lib/services/videoService.ts": { "mtime": 1787993003.7794602, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f562a056b1c9a34e4fd37793caadb47a", "semantic_hash": "" }, "frontend/application/lib/store/__tests__/cartStore.test.ts": { "mtime": 1786799852.822037, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "741d154ab7044aa24c39b1694dbd9a32", "semantic_hash": "" }, "frontend/application/lib/store/__tests__/settingsStore.test.ts": { "mtime": 1783856793.0438032, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9ca2a69a162e64abce0658a348454d97", "semantic_hash": "" }, "frontend/application/lib/store/__tests__/userStore.test.ts": { "mtime": 1786799852.8255477, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9133574a4b0a49423dadbdc1d8d373b6", "semantic_hash": "" }, "frontend/application/lib/store/cartStore.ts": { "mtime": 1787660831.2202897, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bca90351f647e0cbd364a37d7e193d8e", "semantic_hash": "" }, "frontend/application/lib/store/settingsStore.ts": { "mtime": 1786948119.7870967, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ad4252536324b30028b5e4844fbd959b", "semantic_hash": "" }, "frontend/application/lib/store/uiStore.ts": { "mtime": 1786799852.833588, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5b78ec13363f2456a9efa6189473f93b", "semantic_hash": "" }, "frontend/application/lib/store/usePetStore.ts": { "mtime": 1786954681.8453007, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ad7e988e8e7561ed1c39db9964710806", "semantic_hash": "" }, "frontend/application/lib/store/userStore.ts": { "mtime": 1789272909.8640726, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a4b823f4c9c4b7c1c5cd695fd105c895", "semantic_hash": "" }, "frontend/application/lib/types.ts": { "mtime": 1787729527.940444, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1f5d62944be8572c5e09c5bdb2cd9333", "semantic_hash": "" }, "frontend/application/lib/utils.ts": { "mtime": 1786799852.847284, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "13d70256fc31437c6a1d3c3450c0d5c6", "semantic_hash": "" }, "frontend/application/next.config.ts": { "mtime": 1788353540.7615273, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eb045f4d14a66bb9242cf95a78469152", "semantic_hash": "" }, "frontend/application/package.json": { "mtime": 1788000055.9924972, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6d6a5d4a3735231fe5085a5fb5c5df3a", "semantic_hash": "" }, "frontend/application/postcss.config.mjs": { "mtime": 1783764561.9882522, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "239f3ebf717465dc636818a1a619398d", "semantic_hash": "" }, "frontend/application/tsconfig.json": { "mtime": 1786799852.86564, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "09df7544350f3ee3b4fe33841d294a86", "semantic_hash": "" }, "frontend/application/vitest.config.ts": { "mtime": 1786799852.8686528, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ee482d93c3e5c516e021b7a68c5fb60b", "semantic_hash": "" }, "frontend/application/vitest.setup.ts": { "mtime": 1787729523.454452, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "dc75e4763efd0d28d78fc3d91fdcf1c1", "semantic_hash": "" }, "package.json": { "mtime": 1787729528.0760052, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c5535a73e39b3c14baebd00970f86081", "semantic_hash": "" }, "playwright.config.ts": { "mtime": 1787729528.0770054, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "61f1ddbe19ecdc3f2aab3547a8e4e469", "semantic_hash": "" }, "scripts/backup_db.sh": { "mtime": 1786799852.8767846, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "82cb31279bdfacde5efe978a55256436", "semantic_hash": "" }, "scripts/deploy.sh": { "mtime": 1787136904.5590942, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ad310d4368d2fe68ff5f902c248fcc22", "semantic_hash": "" }, "scripts/open-browsers.js": { "mtime": 1788000056.0091808, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ac5a7c859c872c5b21c264583ac7b6a4", "semantic_hash": "" }, "scripts/start-dev.js": { "mtime": 1787997670.3350558, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cc8ebf221860d50c5e461ed3c4b46570", "semantic_hash": "" }, "start.sh": { "mtime": 1784033954.8130803, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "de3176806eab0abd69c6a8ea420b2095", "semantic_hash": "" }, "tests/e2e/admin/admin-b2b-submissions.spec.ts": { "mtime": 1787729528.080006, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "63deec2d4bccd47c87eaadbf1f8fb31b", "semantic_hash": "" }, "tests/e2e/admin/admin-blogs-crud.spec.ts": { "mtime": 1787729528.080006, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d42eff5d8bc8a2faf14bfd9de683c7fa", "semantic_hash": "" }, "tests/e2e/admin/admin-crud.spec.ts": { "mtime": 1787729528.0810058, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "82a34c05711c1890596e3c00db05d089", "semantic_hash": "" }, "tests/e2e/admin/admin-orders-flow.spec.ts": { "mtime": 1787729528.082005, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5294a6822ba40c754b5a1cb9b8f0de40", "semantic_hash": "" }, "tests/e2e/admin/admin-rbac-roles.spec.ts": { "mtime": 1787729528.0830057, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "30411471f6f78a13f98ef638fac9f89d", "semantic_hash": "" }, "tests/e2e/security/xss-ratelimit.spec.ts": { "mtime": 1787729528.0850058, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "85c831c7ef545b83626f55d43196cdd7", "semantic_hash": "" }, "tests/e2e/storefront/auth-otp-recovery.spec.ts": { "mtime": 1787729528.0860093, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a954146b86f7d653ba7459e649ac7a13", "semantic_hash": "" }, "tests/e2e/storefront/b2b-flow.spec.ts": { "mtime": 1787729528.0865166, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bac838e176aa3e82e88678fb9b067f38", "semantic_hash": "" }, "tests/e2e/storefront/blog-wiki.spec.ts": { "mtime": 1787729528.0875323, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d9e92b416a7a57729777ac446f885772", "semantic_hash": "" }, "tests/e2e/storefront/cart-operations.spec.ts": { "mtime": 1787729528.0890346, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3d5f3e4a1f5ae0464663a1f40d1deabf", "semantic_hash": "" }, "tests/e2e/storefront/checkout-flow.spec.ts": { "mtime": 1787729528.0890346, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7bf23a14ed1e1d260b87b6a2d32b9367", "semantic_hash": "" }, "tests/e2e/storefront/concurrency-stock.spec.ts": { "mtime": 1787729528.0900416, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d0c37fe56bca17fee9e55b8a872b7dab", "semantic_hash": "" }, "tests/e2e/storefront/contact.spec.ts": { "mtime": 1787729528.0910428, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "92a3f8abf800a336fd49e73017b16879", "semantic_hash": "" }, "tests/e2e/storefront/error-pages-404-500.spec.ts": { "mtime": 1787729528.092042, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0a3d841121c8102bd4601b4cd5a880da", "semantic_hash": "" }, "tests/e2e/storefront/order-tracking.spec.ts": { "mtime": 1787729528.093042, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bc9462f404850129c094dce93171df69", "semantic_hash": "" }, "tests/e2e/storefront/shop-filter-search.spec.ts": { "mtime": 1787729528.0940487, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ed34437d88473ac582ff3487cbb58ad1", "semantic_hash": "" }, "tests/fixtures/admin-auth.setup.ts": { "mtime": 1787729528.0950477, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e9f0440ae28b1d3632693f7e2a3e03a5", "semantic_hash": "" }, "tests/fixtures/index.ts": { "mtime": 1787729528.0950477, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "25e50ff95976135d1b8b381c3d355b51", "semantic_hash": "" }, "tsconfig.json": { "mtime": 1787729528.0960474, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a57313e870eea61fd8ca26a23da00e62", "semantic_hash": "" }, ".agents/rules/graphify.md": { "mtime": 1786870552.830271, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f1e53ecc9194573d3c28fc116c743a2e", "semantic_hash": "" }, ".agents/workflows/graphify.md": { "mtime": 1786870552.8323984, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6d73634a678cf1e1c71930adf80bd1f0", "semantic_hash": "" }, ".ai_agency/AGENCY.md": { "mtime": 1785148021.9796073, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9a615cfac3d434770f0fa036a32b71f9", "semantic_hash": "" }, ".ai_agency/agents/00_intake.md": { "mtime": 1785148021.984319, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f1b0d3a7e74c834af83cd068a97bc240", "semantic_hash": "" }, ".ai_agency/agents/01_auditor.md": { "mtime": 1785148021.9877827, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a41d382a1269c2d6432522485e1b3301", "semantic_hash": "" }, ".ai_agency/agents/02_ceo.md": { "mtime": 1785148021.9983747, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "caf2825294f63004fa58a8b3775f10dc", "semantic_hash": "" }, ".ai_agency/agents/03_product_manager.md": { "mtime": 1785148022.0019681, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d5a7823925324506c4c0f91534c713cc", "semantic_hash": "" }, ".ai_agency/agents/04_architect.md": { "mtime": 1785148022.004966, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fa9c501ee0e0f13da21dd138ed9116b3", "semantic_hash": "" }, ".ai_agency/agents/05_dev_backend.md": { "mtime": 1785148022.0124812, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9753813406d32d60a4f82b62ffc3f00f", "semantic_hash": "" }, ".ai_agency/agents/06_dev_frontend.md": { "mtime": 1785148022.01702, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "061855c65baa90ab44d77285cf1475f2", "semantic_hash": "" }, ".ai_agency/agents/07_qa_engineer.md": { "mtime": 1785148022.0200446, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fe33c91f65cbfa2a4e9e9e007cd03370", "semantic_hash": "" }, ".ai_agency/agents/08_visual_qa.md": { "mtime": 1785148022.0300832, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7e8b5e90bb7c668ce961bb1c117d4291", "semantic_hash": "" }, ".ai_agency/agents/09_devops_security.md": { "mtime": 1785148022.0340874, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f4ce074e72eade7153ee4785ae9a89c6", "semantic_hash": "" }, ".ai_agency/agents/10_tech_writer.md": { "mtime": 1785148022.0370827, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9315ddc6c2960907d7dda7804c1debac", "semantic_hash": "" }, ".ai_agency/agents/11_deploy.md": { "mtime": 1785148022.0406027, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0f644be55161acf799ccc0b89ebfaa03", "semantic_hash": "" }, ".ai_agency/agents/12_seo_content.md": { "mtime": 1785148022.048604, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a053bac412fb66749c22ddfc58882766", "semantic_hash": "" }, ".ai_agency/memory/agent_outputs/README.txt": { "mtime": 1785148022.0521505, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7b3064fbf48b53032a8d4bfb73ca9ca7", "semantic_hash": "" }, ".ai_agency/memory/scratchpad.md": { "mtime": 1785148022.0651145, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "04648e7db23c144f89cdf78d071a32a0", "semantic_hash": "" }, ".ai_agency/specs/api_contract.md": { "mtime": 1785148022.0776649, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2641fc7a31d9fe4761dad3ae7c944cb0", "semantic_hash": "" }, ".ai_agency/specs/architecture_spec.md": { "mtime": 1785148022.0822608, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8763e7670f9cd0281273e139b484e701", "semantic_hash": "" }, ".ai_agency/specs/prd.md": { "mtime": 1785148022.0872517, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a030931c59700809b29fa5e2dcbaaf18", "semantic_hash": "" }, ".ai_agency/specs/project_health.md": { "mtime": 1785148022.0983145, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "063e14c4ad0f62b79e412580319d6e6a", "semantic_hash": "" }, ".ai_agency/specs/reviews/README.md": { "mtime": 1785148022.105835, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e68ba8a85edcd2394cb46d8f03fa09b7", "semantic_hash": "" }, ".ai_agency/specs/reviews/backend_review.md": { "mtime": 1785148022.1103623, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "34de73a13f5917bee531b6c2036e6fd6", "semantic_hash": "" }, ".ai_agency/specs/reviews/code_health_review.md": { "mtime": 1785148022.1143596, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6ac531c22e5d025f50e6375323a52ed7", "semantic_hash": "" }, ".ai_agency/specs/reviews/frontend_review.md": { "mtime": 1785148022.118487, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0fd2a25383bafe358068544b4fd5e5f9", "semantic_hash": "" }, ".ai_agency/specs/reviews/security_review.md": { "mtime": 1785148022.1214871, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ed5139209a62a8a4a461b8a0eff9ac02", "semantic_hash": "" }, ".ai_agency/specs/reviews/seo_content_review.md": { "mtime": 1785148022.1315339, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4cd7283f78877c1a14ff5b682c762702", "semantic_hash": "" }, ".ai_agency/specs/reviews/ux_review.md": { "mtime": 1785148022.1365507, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4edeb2b914b36277d8381de722df56ef", "semantic_hash": "" }, ".antigravity/instructions.md": { "mtime": 1786870552.8334057, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9b31786b637be3c13978bec4c2330752", "semantic_hash": "" }, ".antigravity/workflows/graphify.md": { "mtime": 1786870552.8379214, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3953c31b4ef6d89d3b1cb43f0110817d", "semantic_hash": "" }, ".claude/CLAUDE.md": { "mtime": 1786870552.83892, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9b31786b637be3c13978bec4c2330752", "semantic_hash": "" }, ".claude/skills/graphify/SKILL.md": { "mtime": 1786870552.845041, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3953c31b4ef6d89d3b1cb43f0110817d", "semantic_hash": "" }, ".claude/skills/graphify/references/add-watch.md": { "mtime": 1786870552.848102, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d59d027fe449f06aa03905a01184e779", "semantic_hash": "" }, ".claude/skills/graphify/references/exports.md": { "mtime": 1786870552.849102, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9da2a2152e60a22f07f05fed5158f287", "semantic_hash": "" }, ".claude/skills/graphify/references/extraction-spec.md": { "mtime": 1786870552.850102, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "42fef56a01698118f7fd722acdadea34", "semantic_hash": "" }, ".claude/skills/graphify/references/github-and-merge.md": { "mtime": 1786870552.853101, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cde13df085e4c492aeb7ba298a996d0d", "semantic_hash": "" }, ".claude/skills/graphify/references/hooks.md": { "mtime": 1786870552.8550987, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3f545db6ce646650bb9de588f5512a27", "semantic_hash": "" }, ".claude/skills/graphify/references/query.md": { "mtime": 1786870552.857703, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3c46f8ad006874260614ed8657d02307", "semantic_hash": "" }, ".claude/skills/graphify/references/transcribe.md": { "mtime": 1786870552.8587108, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "67b6a5fa6c0974e18f60db9f8932fbd8", "semantic_hash": "" }, ".claude/skills/graphify/references/update.md": { "mtime": 1786870552.86071, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9378bd03d56baaf78bd738ab3848f142", "semantic_hash": "" }, ".gitea/workflows/deploy.yml": { "mtime": 1787078454.7624714, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8dba2b15f1a2baf9ad6fa20a0b3dc467", "semantic_hash": "" }, ".gitea/workflows/e2e.yml": { "mtime": 1787729527.9233918, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b4aac490e2d03c136bdfa173565288b3", "semantic_hash": "" }, "AGENTS.md": { "mtime": 1786870552.8627086, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9b31786b637be3c13978bec4c2330752", "semantic_hash": "" }, "BACKEND_INTEGRATION.md": { "mtime": 1786885876.7688253, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e1f23cc23d23159b32a35acc9fadc689", "semantic_hash": "" }, "CLAUDE.md": { "mtime": 1786870552.8637102, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "82efb97a359f5c7290bf2513d14686be", "semantic_hash": "" }, "DATABASE_SCHEMA.md": { "mtime": 1786885876.7713423, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ca5ded565172da98231f6cf54af4843d", "semantic_hash": "" }, "README.md": { "mtime": 1786885876.7753718, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "830c27760b856f621e2498eb762743fa", "semantic_hash": "" }, "backend/README.md": { "mtime": 1783764561.6013825, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f9b30a57e215bc0b63868065fc71a1ac", "semantic_hash": "" }, "canina.md": { "mtime": 1786885876.8094723, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9dd630592bc7905abc25f844ff134305", "semantic_hash": "" }, "docker-compose.yml": { "mtime": 1787752951.3497422, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "10e33845f2b3992546351af83f878b04", "semantic_hash": "" }, "docs/01-introduction.md": { "mtime": 1786885876.812475, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4089d3e4da9e473cd14c984e646abe93", "semantic_hash": "" }, "docs/02-user-guide.md": { "mtime": 1786885876.8139858, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "96bf8f4516994e99012a5b6c710835cd", "semantic_hash": "" }, "docs/03-developer-guide.md": { "mtime": 1783764561.7716606, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "14f25993a3a77357739f6cd082c1e566", "semantic_hash": "" }, "docs/04-setup-and-deployment.md": { "mtime": 1787127978.2568479, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7def44fff8cdd0d28b700f711e2443ed", "semantic_hash": "" }, "docs/05-devops-and-monitoring.md": { "mtime": 1783764561.774446, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7dade1c1d477d70ced55a7580b812127", "semantic_hash": "" }, "docs/06-testing.md": { "mtime": 1783764561.7749674, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2ed3cd7f39157774928e65d5cc0588d0", "semantic_hash": "" }, "docs/README.md": { "mtime": 1786885876.8169968, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "64dfe035bc8fdb4b42f7af8336bf4ab3", "semantic_hash": "" }, "docs/audit/00-repository-map.md": { "mtime": 1786799852.2981741, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5343b55148ced4eed7f13aa32b689936", "semantic_hash": "" }, "docs/audit/01-system-discovery.md": { "mtime": 1786799852.2991743, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5fcfb853f894f8697b6badb692dfe249", "semantic_hash": "" }, "docs/audit/02-audit-plan.md": { "mtime": 1786799852.3001754, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d6a5dbf5ddc5fc174e8a041e835481db", "semantic_hash": "" }, "docs/audit/03-baseline-command-plan.md": { "mtime": 1786799852.3001754, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7d40f368e9ed0f27fa2ef5ad01249ad2", "semantic_hash": "" }, "docs/audit/04-open-questions.md": { "mtime": 1786799852.301682, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "773b455bb84b5df87cfbaa76dfa951f0", "semantic_hash": "" }, "docs/audit/05-architectural-audit.md": { "mtime": 1786799852.3026898, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ab18a41271f0f845054f52f4dfa715eb", "semantic_hash": "" }, "docs/audit/06-storefront-audit.md": { "mtime": 1786799852.3036914, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7c3aff371cdb919bb885bf4a6f625780", "semantic_hash": "" }, "docs/audit/07-backend-audit.md": { "mtime": 1786799852.30469, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "53927123ba5acca71e57780ca9bd34f9", "semantic_hash": "" }, "docs/audit/08-admin-features-audit.md": { "mtime": 1786799852.3059514, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d4da7eb2396ad939251ccc541f1fd165", "semantic_hash": "" }, "docs/audit/09-database-audit.md": { "mtime": 1786799852.3069694, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "bdd7e4c3b4723b2006053563ac345819", "semantic_hash": "" }, "docs/audit/10-security-audit.md": { "mtime": 1786799852.3079526, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "125471bb12e468a0ddcd9a1dccca1001", "semantic_hash": "" }, "docs/audit/11-code-quality-audit.md": { "mtime": 1786799852.308957, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c48e39113f2334fae743488668ecf618", "semantic_hash": "" }, "docs/audit/12-testing-audit.md": { "mtime": 1786799852.3099525, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0d1570f5138328d090a43edc1f7bc4f0", "semantic_hash": "" }, "docs/audit/13-devops-audit.md": { "mtime": 1786799852.3109539, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "986acddf4e09ccbe2b8b8f6806bc01d5", "semantic_hash": "" }, "docs/audit/14-documentation-audit.md": { "mtime": 1786799852.311952, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d1f8496a0dae10993495691dc58098ef", "semantic_hash": "" }, "docs/audit/16-deep-audit-summary.md": { "mtime": 1786799852.313067, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f17a01bf7b59276d28c6948fd14eafd2", "semantic_hash": "" }, "docs/audit/18-compiler-diagnostic-dispositions.md": { "mtime": 1786799852.315065, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5b402b064300709c7723a63885894c29", "semantic_hash": "" }, "docs/audit/19-finding-verification-report.md": { "mtime": 1786799852.3160648, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c3363af4c68792722ebadddc10319f14", "semantic_hash": "" }, "docs/audit/21-phase2-quality-gate-summary.md": { "mtime": 1786799852.318066, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c336937acd576ee2efc36d67dbaf69e2", "semantic_hash": "" }, "docs/audit/22-tracked-first-party-files.txt": { "mtime": 1786799852.319066, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3f66b26b7f4217a065ed3d3403fe40fd", "semantic_hash": "" }, "docs/audit/23-untracked-first-party-files.txt": { "mtime": 1786799852.319066, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9fe0a15ea45d03f8e4ccd0ad786dd9fb", "semantic_hash": "" }, "docs/audit/24-omitted-file-inspection-report.md": { "mtime": 1786799852.3200657, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6fb068c98fefc544e9ff687c1b3c0351", "semantic_hash": "" }, "docs/audit/26-phase2-integrity-repair-report.md": { "mtime": 1786799852.3220918, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "aecc17ca01002edfbdf472cf4f4aaa4c", "semantic_hash": "" }, "docs/audit/27-all-tracked-repository-files.txt": { "mtime": 1786799852.3230999, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f35e68d28e4c31002698e68cc18242e3", "semantic_hash": "" }, "docs/audit/31-module-audit-closure.md": { "mtime": 1786799852.3276167, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b66f589f8c3bd0b53b7d61626eec0985", "semantic_hash": "" }, "docs/audit/33-final-phase2-audit-closure.md": { "mtime": 1786799852.3286169, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ca898e1caffc2764de11b6a10e84d1ea", "semantic_hash": "" }, "docs/audit/ADR-AUTH-001.md": { "mtime": 1786799852.3326428, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2616cbbcbbc3d461d3b6ca00195902a9", "semantic_hash": "" }, "docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md": { "mtime": 1786799852.3326428, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6d851d9e754115841a5accab7efcf0dc", "semantic_hash": "" }, "docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md": { "mtime": 1787127978.2588482, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8210201eae0692d1e76cad23d60c804b", "semantic_hash": "" }, "docs/audit/MASTER-TASK-BACKLOG.md": { "mtime": 1786799852.3354702, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0efc4759c15a04ca934ec32bb6b6fa6b", "semantic_hash": "" }, "docs/audit/frontend-route-map.md": { "mtime": 1786799852.3393898, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "88fdef86c48b2164cdcced3e502c073f", "semantic_hash": "" }, "docs/audit/phase3-execution-plan.md": { "mtime": 1786799852.3439524, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "15babdd91198793f5b6b791d7a5edd22", "semantic_hash": "" }, "docs/audit/phase3-traceability-matrix.md": { "mtime": 1786799852.3449528, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "40cd32ed7fa433342aa547fa5aa21d86", "semantic_hash": "" }, "docs/audit/phase3.1-backlog-review.md": { "mtime": 1786799852.3459527, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "78810767668f7d90e980648ec8c17869", "semantic_hash": "" }, "docs/audit/phase3.1-change-log.md": { "mtime": 1786799852.3469548, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eed1734c4a6d1d8464dd63f6cbc33e9f", "semantic_hash": "" }, "docs/audit/phase3.2-change-log.md": { "mtime": 1786799852.3479521, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b13460f1fa8aaecd88bc007a2c5e2ecb", "semantic_hash": "" }, "docs/audit/phase3.2-implementation-readiness.md": { "mtime": 1786799852.3479521, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ffe4bce7401d65f9d44e8740d3c2ccf6", "semantic_hash": "" }, "docs/backlog.md": { "mtime": 1786799852.3560216, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "cf6eb1a9c1daef121cfb40f1a7771808", "semantic_hash": "" }, "frontend/admin-panel/README.md": { "mtime": 1783764561.7789528, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f6e3faf55d738cf2affe1b44195f27cf", "semantic_hash": "" }, "frontend/admin-panel/index.html": { "mtime": 1783764561.7805586, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d836c7a6b7be6d5b04a925b7ad32e539", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt": { "mtime": 1783856792.435855, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt": { "mtime": 1783856792.445365, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md": { "mtime": 1783856792.4546044, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eaa55e166ec4a6b2ee875b746ef049a0", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/sahel-font-v3.4.0/README.md": { "mtime": 1783856792.5025032, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0e4c260ce354bad51a6a184b5e236424", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md": { "mtime": 1783856792.5480056, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eeaf2bb0943a16d43493f706d0867d1f", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/README.md": { "mtime": 1783856792.5951552, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5f851eefeeb4bffff8c5427a289f934d", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt": { "mtime": 1783856792.646666, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a5c1ec085d5dae2319c659151ffce3f0", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md": { "mtime": 1783856792.6476717, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e7227ba84ca88111166000065d1bdacb", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/OFL.txt": { "mtime": 1783856792.6486697, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "88985b4355a8a44627dde041f10aba75", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md": { "mtime": 1783856792.6486697, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e9d11601fc4c77fe3d8d1961d9c5d420", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt": { "mtime": 1783856792.971535, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "975634eaf84a797674b29e99c311f54a", "semantic_hash": "" }, "frontend/application/AGENTS.md": { "mtime": 1787127978.2689438, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "657cc62d228d2fcf56f1c843aad131fd", "semantic_hash": "" }, "frontend/application/CLAUDE.md": { "mtime": 1783764561.8667445, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5c27369b226fcf2be8a6cfe52224e767", "semantic_hash": "" }, "frontend/application/README.md": { "mtime": 1783764561.8673544, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f15aaa42d5d299d091b1171097ea56ad", "semantic_hash": "" }, "frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt": { "mtime": 1783856793.098052, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt": { "mtime": 1783856793.1076603, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "607f9ca43b12868e8880a0d85831a878", "semantic_hash": "" }, "frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md": { "mtime": 1783856793.1136606, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eaa55e166ec4a6b2ee875b746ef049a0", "semantic_hash": "" }, "frontend/application/public/fonts/sahel-font-v3.4.0/README.md": { "mtime": 1783856793.1562517, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "0e4c260ce354bad51a6a184b5e236424", "semantic_hash": "" }, "frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md": { "mtime": 1783856793.2301185, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "eeaf2bb0943a16d43493f706d0867d1f", "semantic_hash": "" }, "frontend/application/public/fonts/shabnam-font-v5.0.1/README.md": { "mtime": 1783856793.2795427, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5f851eefeeb4bffff8c5427a289f934d", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt": { "mtime": 1783856793.3161557, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a5c1ec085d5dae2319c659151ffce3f0", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md": { "mtime": 1783856793.3176901, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e7227ba84ca88111166000065d1bdacb", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt": { "mtime": 1783856793.319422, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "88985b4355a8a44627dde041f10aba75", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/README.md": { "mtime": 1783856793.320489, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "e9d11601fc4c77fe3d8d1961d9c5d420", "semantic_hash": "" }, "frontend/application/public/fonts/vazirmatn-v33.003/\u0631\u0627\u0647\u0646\u0645\u0627.txt": { "mtime": 1783856793.6680968, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "975634eaf84a797674b29e99c311f54a", "semantic_hash": "" }, "manual-test-scenarios.md": { "mtime": 1787729528.0730064, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d41d8cd98f00b204e9800998ecf8427e", "semantic_hash": "" }, "prometheus.yml": { "mtime": 1783764562.0277793, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "45dc28cd8d9656e7141713ece5a7aa2c", "semantic_hash": "" }, "scripts/compose.prod.yml": { "mtime": 1787998075.631989, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "4479ed210434f881e4bd325f174b9652", "semantic_hash": "" }, "scripts/compose.stage.yml": { "mtime": 1787077093.9917798, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6c2045ddae8c6cac20ab3a0b87c39388", "semantic_hash": "" }, "swagger.yml": { "mtime": 1786799852.8920915, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "34b5e7e5e1b19e6e3596ef669f8a0d0d", "semantic_hash": "" }, "test-coverage-map.md": { "mtime": 1787729528.0780063, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d13004ca00333f0617470080ac36b666", "semantic_hash": "" }, "canina.pdf": { "mtime": 1785148022.3708115, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "900fb024ec3b91912a512a96c2a0c0a0", "semantic_hash": "" }, "backend/uploads/1781288429353-508765350.jpg": { "mtime": 1783764561.766257, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "ebf86506731de8ec10f2c4ea0ba14609", "semantic_hash": "" }, "frontend/admin-panel/public/favicon.svg": { "mtime": 1783764561.7978015, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7e840862161341271697daa99a40d76b", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/sahel-font-v3.4.0/sample-variable.gif": { "mtime": 1783856792.5464964, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9d0c1a4764b2b06807578b33c40838ca", "semantic_hash": "" }, "frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/sample.png": { "mtime": 1783856792.6456678, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8bca253cfb55f954622145010756efa9", "semantic_hash": "" }, "frontend/admin-panel/public/icons.svg": { "mtime": 1783764561.7993202, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3b4fcfcf393eca4d264dca4a4663bc37", "semantic_hash": "" }, "frontend/admin-panel/src/assets/hero.png": { "mtime": 1783764561.812863, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "aead493361b27e7510691c5d7072dfc1", "semantic_hash": "" }, "frontend/admin-panel/src/assets/react.svg": { "mtime": 1783764561.8139248, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f0402b67b6ce880f65666bb49e841696", "semantic_hash": "" }, "frontend/admin-panel/src/assets/vite.svg": { "mtime": 1783764561.8149958, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9960a24288958394ac50e57ff638b036", "semantic_hash": "" }, "frontend/application/public/assets/images/canina-product-placeholder.png": { "mtime": 1787461919.5050244, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a9f359cce82a5ab0a24830ed59a33047", "semantic_hash": "" }, "frontend/application/public/assets/images/regenerated_image_1779109861747.png": { "mtime": 1783764562.0141103, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "47111b66c208d1fa0c74877dfc0ee2a5", "semantic_hash": "" }, "frontend/application/public/file.svg": { "mtime": 1783764562.0162137, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d09f95206c3fa0bb9bd9fefabfd0ea71", "semantic_hash": "" }, "frontend/application/public/fonts/sahel-font-v3.4.0/sample-variable.gif": { "mtime": 1783856793.2291198, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "9d0c1a4764b2b06807578b33c40838ca", "semantic_hash": "" }, "frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png": { "mtime": 1783856793.3151467, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8bca253cfb55f954622145010756efa9", "semantic_hash": "" }, "frontend/application/public/globe.svg": { "mtime": 1783764562.0167208, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2aaafa6a49b6563925fe440891e32717", "semantic_hash": "" }, "frontend/application/public/images/vets/vet1.webp": { "mtime": 1787461919.5417616, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a9f359cce82a5ab0a24830ed59a33047", "semantic_hash": "" }, "frontend/application/public/next.svg": { "mtime": 1783764562.0182388, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8e061864f388b47f33a1c3780831193e", "semantic_hash": "" }, "frontend/application/public/vercel.svg": { "mtime": 1783764562.019253, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c0af2f507b369b085b35ef4bbe3bcf1e", "semantic_hash": "" }, "frontend/application/public/window.svg": { "mtime": 1783764562.019253, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a2760511c65806022ad20adf74370ff3", "semantic_hash": "" }, "frontend/application/app/smart-advisor/page.tsx": { "mtime": 1787740536.6786995, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "915d70a715440d85d060653aaa219861", "semantic_hash": "" }, "frontend/application/app/dashboard/orders/page.tsx": { "mtime": 1787741941.3028061, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "2a229305eedc5601932638630618882d", "semantic_hash": "" }, "frontend/application/app/dashboard/pets/page.tsx": { "mtime": 1787741941.3038094, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fb2e013e721c9711375e6bc4e73d2714", "semantic_hash": "" }, "frontend/application/components/ProductImageZoomModal.tsx": { "mtime": 1788609394.3341897, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "61f6c262c49bb4ca4b2494d25a86767b", "semantic_hash": "" }, "backend/prisma/migrations/20260526145407_init/migration.sql": { "mtime": 1783764561.6120076, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "12a9a675c12bc5ff2d2c3164f803f0ad", "semantic_hash": "" }, "backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql": { "mtime": 1783764561.6134257, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "50977e705726df3fb0f30bd1d3af101b", "semantic_hash": "" }, "frontend/application/app/api/media/[...path]/route.ts": { "mtime": 1788353078.508489, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "5555c5fc73ee5a79d968367b2cba36a1", "semantic_hash": "" }, "frontend/application/app/api/uploads/[...path]/route.ts": { "mtime": 1788353078.5100856, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "a58dd0b691ec9938a85dc9dd20dd2f6a", "semantic_hash": "" }, "frontend/application/lib/media.ts": { "mtime": 1788353540.75992, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6997390e7ad424bc13f7594818afc1fb", "semantic_hash": "" }, "frontend/application/components/NavigationProgressBar.tsx": { "mtime": 1787999006.325061, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "fc0755d6a907e51dc86c33bd1abe4216", "semantic_hash": "" }, "frontend/application/app/api/torob/products/route.ts": { "mtime": 1788328838.7466128, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8cf49957ae2e82069a968b39a8f78d30", "semantic_hash": "" }, "backend/src/products/torob.controller.ts": { "mtime": 1788334048.8063805, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "77815c75dbf3eac240a646100fc7a78e", "semantic_hash": "" }, "backend/src/admin/dto/pricing.dto.ts": { "mtime": 1788334048.8006155, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "1efa4c98ce79e6b8ba933614035d4093", "semantic_hash": "" }, "backend/src/common/utils/pricing.utils.ts": { "mtime": 1788330948.589741, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "b42cc525ab14fa97917933bbde01d9f3", "semantic_hash": "" }, "frontend/admin-panel/src/utils/pricing.ts": { "mtime": 1788330948.5947409, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "7a4e15557cc4b2db5d73cc30df2d7f27", "semantic_hash": "" }, "backend/src/common/services/sms-events.constants.ts": { "mtime": 1788609394.3190956, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "25e634a06d9a816465ffe653a3bca7d8", "semantic_hash": "" }, "frontend/application/components/AnalyticsDeferred.tsx": { "mtime": 1788609394.3321886, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "82d3ecf31ffa86d761b219ad85a7a63f", "semantic_hash": "" }, "frontend/application/public/images/favicons/android-chrome-192x192.png": { "mtime": 1788587906.752678, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "6ae1d478e3edc5c3fbc0ef83f08a5a34", "semantic_hash": "" }, "frontend/application/public/images/favicons/android-chrome-512x512.png": { "mtime": 1788587906.7572186, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "f7a3eebc8c1ae1b86bb2201cc040d38f", "semantic_hash": "" }, "frontend/application/public/images/favicons/apple-touch-icon.png": { "mtime": 1788587906.7592187, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "1bed40de2da456237daf45dd92a70519", "semantic_hash": "" }, "frontend/application/public/images/favicons/favicon-16x16.png": { "mtime": 1788587906.7611878, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "57e44df83d6c2b4250fe4f6d41723223", "semantic_hash": "" }, "frontend/application/public/images/favicons/favicon-32x32.png": { "mtime": 1788587906.7631907, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "c5d36a5d0acef758465b443872a011e2", "semantic_hash": "" }, "frontend/application/lib/petCompatibility.ts": { "mtime": 1788613668.2657504, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "d5f3087461b9025a08b1541189264255", "semantic_hash": "" }, "frontend/application/components/OtpInput5.tsx": { "mtime": 1788619769.6073136, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "8e478a3a76884723d43c9b2a763b78f7", "semantic_hash": "" }, "frontend/application/components/MobileBottomNav.tsx": { - "mtime": 1789276505.5148213, - "seen": 1789276734.9114494, + "mtime": 1789276760.437611, + "seen": 1789277254.2264273, "ast_hash": "9e879a24d0c87bdb9da0a7df0fd70d8d", "semantic_hash": "" }, "backend/src/admin/api-keys.controller.ts": { "mtime": 1789272909.8510635, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "a771c31a7658c19d7b4823f4247055e0", "semantic_hash": "" }, "backend/src/admin/api-keys.service.ts": { "mtime": 1789272909.8510635, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "34bf540f52c1b0bfc64ba4084b7824f3", "semantic_hash": "" }, "backend/src/admin/dto/api-key.dto.ts": { "mtime": 1789272909.8520625, - "seen": 1789276734.9104476, + "seen": 1789277254.2254264, "ast_hash": "bd0d0b6022609679307a2437567d1bc8", "semantic_hash": "" }, "frontend/admin-panel/src/pages/ApiKeysPage.tsx": { "mtime": 1788859667.8261755, - "seen": 1789276734.9114494, + "seen": 1789277254.2264273, "ast_hash": "3feec44dbe944a9d19519986245ed155", "semantic_hash": "" }, @@ -3924,8 +3924,8 @@ "semantic_hash": "" }, "frontend/application/lib/useCatalogMode.ts": { - "mtime": 1789276533.4741902, - "seen": 1789276734.9114494, + "mtime": 1789276760.4406078, + "seen": 1789277254.2264273, "ast_hash": "691f939e507db4882e6bd100445838c6", "semantic_hash": "" } diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md index dd8a5da..d46ab7c 100644 --- a/graphify-out/GRAPH_REPORT.md +++ b/graphify-out/GRAPH_REPORT.md @@ -1,29 +1,29 @@ # Graph Report - canina (2026-09-13) ## Corpus Check -- 609 files · ~1,125,530 words +- 609 files · ~1,125,811 words - Verdict: corpus is large enough that graph structure adds value. ## Summary -- 4304 nodes · 7950 edges · 312 communities (215 shown, 97 thin omitted) +- 4304 nodes · 7953 edges · 327 communities (215 shown, 112 thin omitted) - Extraction: 96% EXTRACTED · 4% INFERRED · 0% AMBIGUOUS · INFERRED: 303 edges (avg confidence: 0.79) - Token cost: 0 input · 0 output ## Graph Freshness -- Built from commit: `ef0731ff` +- Built from commit: `e7ded849` - 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 -- ApiKeysService +- ApiResponse - productService.ts - HomeClient.tsx - CmsController - tickets.controller.ts - SmsSettingsPage.tsx -- SettingsService +- SmsService - devDependencies - CreateReviewDto - UsersService @@ -34,7 +34,7 @@ - DoctorQueryDto - schema.ts - JwtAuthGuard -- BulkPriceAdjustmentDto +- admin.service.ts - CreateVideoDto - useSettingsStore - AdminService @@ -48,7 +48,7 @@ - DEVOPS-001 - DOC-001 - adminRoutes.tsx -- WholesaleApplyDto +- WholesaleService - B2BService - ContactService - FaqService @@ -61,7 +61,7 @@ - BannersService - TestimonialsService - What You Must Do When Invoked -- sms.service.ts +- HomeController - IngredientsService - Button.tsx - devDependencies @@ -71,18 +71,18 @@ - SmartAdvisorService - Modal.tsx - UITexts.tsx -- Orders.tsx +- PrescriptionsManager.tsx - Role & Core Objective -- ConfirmModal.tsx +- Orders.tsx - compilerOptions - admin.controller.ts - ProductPage.tsx - admin.module.ts - dependencies - compilerOptions -- admin.service.ts +- CreateApiKeyDto - AdminController -- SmsService +- ApiKeysService - components/Skeleton.tsx - Required Review Group Closures - compilerOptions @@ -91,7 +91,7 @@ - Operational Rules & Boundaries - WikiController - PetsController -- ProductsService +- RevalidationService - seo.module.ts - rss.xml/route.ts - 🏢 AI Software Agency — Master Orchestration Protocol v3 @@ -103,7 +103,7 @@ - app.e2e-spec.js - zibal.service.ts - dependencies -- payment.controller.ts +- CreateEBankCheckoutDto - seed-products.ts - 20260526145407_init/migration.sql - Reconciled Audit Roles & Assignments @@ -121,16 +121,16 @@ - Comprehensive Change Log - Products.tsx - Operational Rules & Boundaries -- PaymentService -- BlogsService +- InitiatePaymentDto +- PaginationDto - PrismaService - 1. Summary of Integrity Repairs Performed - Operational Rules & Boundaries - Operational Rules & Boundaries - Operational Rules & Boundaries -- lib/services/api.ts +- settingsStore.ts - AppService -- Media.tsx +- MediaSelector.tsx - Vazirmatn Changelog - Vazirmatn Font فونت وزیرمتن - Operational Rules & Boundaries @@ -143,7 +143,7 @@ - validate_integrity.js - admin-panel/package.json - Sahel-Font -- auth.module.ts +- MetricsController - WikiController - Sahel-Font - Role & Core Objective @@ -160,13 +160,13 @@ - start-dev.js - generate-openapi.js - SafeImage.tsx -- PaginationDto +- WholesaleApplyDto - System Discovery - torob.controller.ts - ProductDto -- PetsController +- class-transformer - Product Requirement Document (PRD) -- SmsLogQueryDto +- helmet - @eslint/js - exclude - Baseline Command Plan & Reconciled Command History @@ -218,7 +218,7 @@ - deploy.sh - 🔒 Security & Performance Review (09_devops_security) - 👁️ UX & Persona Interface Review (08_visual_qa) -- RevalidationService +- reviews.service.ts - prisma/scientificTerms.ts - seed-blogs.ts - seed-custom.ts @@ -234,7 +234,7 @@ - sync_honest_manifest.js - sync_manifest.js - FormField.tsx -- AdminQueryDto +- js-yaml - Textarea.tsx - admin-panel/tsconfig.json - tailwindcss @@ -246,8 +246,8 @@ - .agents/workflows/graphify.md - instructions.md - 20260526160916_add_ui_texts_and_scientific_terms/migration.sql -- @types/node -- typescript +- @nestjs/core +- @nestjs/jwt - source-map-support - ts-loader - ts-node @@ -275,10 +275,11 @@ - User Login API - User Logout API - @types/compression -- tailwindcss +- @nestjs/swagger - @types/express - @types/jest - @types/multer +- @nestjs/throttler - Canina Pharma GmbH - Pets Table - Canina Iran Project Introduction @@ -293,25 +294,39 @@ - Production Docker Compose - Staging Docker Compose - ZibalService +- passport +- reflect-metadata - ZibalEBankService - .initiateOrderPayment - @tailwindcss/postcss - typescript +- swagger-ui-express - typescript-eslint - @nestjs/schematics +- @eslint/eslintrc +- eslint-plugin-prettier - eslint-plugin-react-hooks +- globals +- @nestjs/cli - jest - @types/passport-jwt +- @nestjs/testing +- prettier - typescript +- ts-jest - revalidate/route.ts - MaskableField.tsx +- @types/js-yaml +- @types/supertest +- typescript-eslint +- @tailwindcss/postcss - @types/react-dom - eslint-plugin-react-refresh ## God Nodes (most connected - your core abstractions) 1. `Roles()` - 108 edges 2. `PrismaService` - 91 edges -3. `useSettingsStore` - 65 edges +3. `useSettingsStore` - 67 edges 4. `SmsService` - 51 edges 5. `api` - 45 edges 6. `PaginationDto` - 41 edges @@ -327,29 +342,29 @@ backend/src/auth/auth.controller.ts → frontend/admin-panel/src/types/admin.ts - `BlogsController` --references--> `ApiResponse` [EXTRACTED] backend/src/blogs/blogs.controller.ts → frontend/admin-panel/src/types/admin.ts +- `HomeController` --references--> `ApiResponse` [EXTRACTED] + backend/src/home/home.controller.ts → frontend/admin-panel/src/types/admin.ts - `OrdersController` --references--> `ApiResponse` [EXTRACTED] backend/src/orders/orders.controller.ts → frontend/admin-panel/src/types/admin.ts -- `PetsController` --references--> `ApiResponse` [EXTRACTED] - backend/src/pets/pets.controller.ts → frontend/admin-panel/src/types/admin.ts ## Import Cycles -- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/services/authService.ts -> frontend/application/lib/services/api.ts` - 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/api.ts` +- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/services/authService.ts -> frontend/application/lib/services/api.ts` - 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, 97 thin omitted) +## Communities (327 total, 112 thin omitted) ### Community 0 - "Roles" Cohesion: 0.24 Nodes (13): Roles(), PaymentController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get (+5 more) ### Community 1 - "app.module.ts" -Cohesion: 0.06 -Nodes (34): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+26 more) +Cohesion: 0.07 +Nodes (38): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+30 more) -### Community 2 - "ApiKeysService" -Cohesion: 0.05 -Nodes (33): ApiKeysController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+25 more) +### Community 2 - "ApiResponse" +Cohesion: 0.13 +Nodes (13): ApiKeysController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+5 more) ### Community 3 - "productService.ts" Cohesion: 0.06 @@ -371,21 +386,21 @@ Nodes (29): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, Cohesion: 0.20 Nodes (10): PatternItem, SmsConfigState, SmsEventDefinition, SmsEventVariable, SmsLogItem, SmsLogStats, SmsRule, SmsSettingsPage() (+2 more) -### Community 8 - "SettingsService" -Cohesion: 0.09 -Nodes (17): SettingsController, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller, Delete (+9 more) +### Community 8 - "SmsService" +Cohesion: 0.05 +Nodes (28): SmsEventDefinition, SmsLogQuery, SmsService, Injectable, SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber (+20 more) ### Community 9 - "devDependencies" -Cohesion: 0.08 -Nodes (25): devDependencies, eslint, @eslint/eslintrc, eslint-plugin-prettier, globals, @nestjs/cli, @nestjs/testing, prettier (+17 more) +Cohesion: 0.22 +Nodes (9): devDependencies, eslint, @types/bcryptjs, @types/node, typescript, eslint, @types/node, typescript (+1 more) ### Community 10 - "CreateReviewDto" -Cohesion: 0.07 -Nodes (30): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+22 more) +Cohesion: 0.08 +Nodes (25): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ReviewsController (+17 more) ### Community 11 - "UsersService" -Cohesion: 0.08 -Nodes (31): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+23 more) +Cohesion: 0.06 +Nodes (38): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), JwtPayload, JwtStrategy, Injectable, AddressDto, ApiProperty (+30 more) ### Community 12 - "index.ts" Cohesion: 0.06 @@ -396,12 +411,12 @@ Cohesion: 0.07 Nodes (26): EnvironmentVariables, IsNotEmpty, IsOptional, IsString, validateEnv(), CustomHttpExceptionFilter, Catch, PrismaExceptionFilter (+18 more) ### Community 14 - "toPersian" -Cohesion: 0.09 -Nodes (35): B2BPortal, VerifyContent(), AddressFormData, AddressModal(), AddressModalProps, normalizeDigits(), validateAddressForm(), ArchivePage() (+27 more) +Cohesion: 0.08 +Nodes (39): B2BPortal, VerifyContent(), AddressFormData, AddressModal(), AddressModalProps, normalizeDigits(), validateAddressForm(), ArchivePage() (+31 more) ### Community 15 - "src/services/api.ts" Cohesion: 0.08 -Nodes (30): Layout(), ProtectedRoute(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES (+22 more) +Nodes (32): Layout(), ProtectedRoute(), MenuGroup, Sidebar(), SidebarProps, SubMenuItem, LiveMonitoringSummary, SEARCHABLE_PAGES (+24 more) ### Community 16 - "DoctorQueryDto" Cohesion: 0.09 @@ -412,12 +427,12 @@ Cohesion: 0.14 Nodes (18): B2BPage(), generateMetadata(), ContactPage(), generateMetadata(), generateMetadata(), getInitialVideos(), Videos(), ContactFormClient() (+10 more) ### Community 18 - "JwtAuthGuard" -Cohesion: 0.16 -Nodes (8): JwtAuthGuard, Injectable, ROLES_KEY, SortOrder, RequestWithUser, RolesGuard, Injectable, UserReqPayload +Cohesion: 0.20 +Nodes (7): JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload -### Community 19 - "BulkPriceAdjustmentDto" -Cohesion: 0.30 -Nodes (12): ApplyGlobalMarginsDto, BulkPriceAdjustmentDto, ApiProperty, ApiPropertyOptional, IsArray, IsBoolean, IsIn, IsNumber (+4 more) +### Community 19 - "admin.service.ts" +Cohesion: 0.16 +Nodes (19): CouponTargetInput, PaginationQuery, ApplyGlobalMarginsDto, BulkPriceAdjustmentDto, ApiProperty, ApiPropertyOptional, IsArray, IsBoolean (+11 more) ### Community 20 - "CreateVideoDto" Cohesion: 0.07 @@ -427,6 +442,10 @@ Nodes (31): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEm Cohesion: 0.09 Nodes (26): CartDrawer, ClientLayout(), MobileBottomNav, PrescriptionUploadModal, metadata, B2BLandingClient(), BrandLogo(), BrandLogoProps (+18 more) +### Community 22 - "AdminService" +Cohesion: 0.12 +Nodes (4): Delete, Param, AdminService, Injectable + ### Community 23 - "MenuService" Cohesion: 0.12 Nodes (16): MenuController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more) @@ -464,12 +483,12 @@ 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.11 -Nodes (10): App(), Props, RouteErrorBoundary, State, CategoryDist, DashboardData, AdminRouteConfig, Dashboard (+2 more) +Cohesion: 0.07 +Nodes (17): App(), Props, RouteErrorBoundary, State, CategoryDist, DashboardData, BestSellerItem, CategoryDistItem (+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.12 @@ -488,8 +507,8 @@ Cohesion: 0.07 Nodes (25): اجرای بک‌اند, اجرای فرانت‌اند, اجرای پروژه در سرور با PM2, برای راه‌اندازی بک‌اند:, برای راه‌اندازی فرانت‌اند Next.js:, بیلد کردن پروژه (Building), ذخیره پروسه‌ها تا پس از ری‌استارت سرور قطع نشوند:, راه‌اندازی و انتشار سیستم (Setup & Deployment) (+17 more) ### Community 38 - "Button" -Cohesion: 0.10 -Nodes (20): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Badge(), BadgeProps, BadgeVariant, variantStyles, Button() (+12 more) +Cohesion: 0.16 +Nodes (13): TransactionReceiptData, TransactionReceiptModal(), TransactionReceiptModalProps, Button(), ThSort(), ThSortProps, GatewayHealth, Stats (+5 more) ### Community 39 - "CategoriesController" Cohesion: 0.10 @@ -504,8 +523,8 @@ 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.11 -Nodes (15): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Post (+7 more) +Cohesion: 0.13 +Nodes (14): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Post (+6 more) ### Community 43 - "BannersService" Cohesion: 0.13 @@ -519,17 +538,17 @@ Nodes (14): TestimonialsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Cohesion: 0.07 Nodes (26): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+18 more) -### Community 46 - "sms.service.ts" -Cohesion: 0.09 -Nodes (16): DEFAULT_SMS_RULES, SMS_EVENT_DEFINITIONS, SmsEventDefinition, SmsEventVariable, SmsRule, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions (+8 more) +### Community 46 - "HomeController" +Cohesion: 0.16 +Nodes (10): HomeController, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, HomeModule, Module (+2 more) ### Community 47 - "IngredientsService" Cohesion: 0.13 Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 48 - "Button.tsx" -Cohesion: 0.09 -Nodes (17): ButtonProps, ButtonSize, ButtonVariant, Spinner(), BestSellerItem, CategoryDistItem, COLORS, CustomTooltipProps (+9 more) +Cohesion: 0.10 +Nodes (15): ButtonProps, ButtonSize, ButtonVariant, Spinner(), FAQ, SslStatus, BannersManager, FAQManager (+7 more) ### Community 49 - "devDependencies" Cohesion: 0.11 @@ -537,7 +556,7 @@ Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, glo ### Community 50 - "devDependencies" Cohesion: 0.12 -Nodes (17): devDependencies, eslint, jsdom, @tailwindcss/postcss, @testing-library/jest-dom, @testing-library/react, @types/node, @types/react (+9 more) +Nodes (17): devDependencies, eslint, jsdom, tailwindcss, @testing-library/jest-dom, @testing-library/react, @types/node, @types/react (+9 more) ### Community 51 - "BlogsController" Cohesion: 0.07 @@ -552,31 +571,31 @@ Cohesion: 0.13 Nodes (14): SmartAdvisorController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) ### Community 54 - "Modal.tsx" -Cohesion: 0.09 -Nodes (17): maxWidthClasses, Modal(), ModalProps, ContactInfoItem, ContactSubmission, FAQ, BlogCommentItem, ProductReview (+9 more) +Cohesion: 0.07 +Nodes (21): maxWidthClasses, Modal(), ModalProps, ContactInfoItem, ContactSubmission, MENU_TABS, MenuItem, MenuType (+13 more) ### Community 55 - "UITexts.tsx" -Cohesion: 0.05 -Nodes (35): ICON_REGISTRY, IconPickerModal(), IconPickerModalProps, ImagePreviewModal(), ImagePreviewModalProps, getFileType(), Media, MediaSelector() (+27 more) +Cohesion: 0.14 +Nodes (12): ICON_REGISTRY, IconPickerModal(), IconPickerModalProps, ToggleSwitch(), ToggleSwitchProps, AppSitePage, PageSection, SectionField (+4 more) -### Community 56 - "Orders.tsx" -Cohesion: 0.11 -Nodes (15): Skeleton(), MonitoringStats, getPaymentMethodLabel(), Order, ORDER_STATUS_MAP, OrderItem, Orders(), PaymentTx (+7 more) +### Community 56 - "PrescriptionsManager.tsx" +Cohesion: 0.12 +Nodes (14): Badge(), BadgeProps, BadgeVariant, variantStyles, Skeleton(), MonitoringStats, ProductItem, UserRecord (+6 more) ### Community 57 - "Role & Core Objective" Cohesion: 0.09 Nodes (22): CREATE MODE — Normal Operation, Expected JSON Output Schema, File Scope Boundary, Forbidden Actions, MODE 1: REVIEW (called during Review Phase), MODE 2: CONTENT CREATION (standalone task from backlog), Operating Modes, Operational Rules & Boundaries (+14 more) -### Community 58 - "ConfirmModal.tsx" -Cohesion: 0.09 -Nodes (15): ConfirmModal(), ConfirmModalProps, HeroBanner, VetTestimonial, Doctor, MENU_TABS, MenuItem, MenuType (+7 more) +### Community 58 - "Orders.tsx" +Cohesion: 0.22 +Nodes (8): getPaymentMethodLabel(), Order, ORDER_STATUS_MAP, OrderItem, Orders(), PaymentTx, toPersianDigits(), Orders ### Community 59 - "compilerOptions" Cohesion: 0.06 Nodes (30): compilerOptions, allowSyntheticDefaultImports, baseUrl, declaration, emitDecoratorMetadata, esModuleInterop, experimentalDecorators, forceConsistentCasingInFileNames (+22 more) ### Community 60 - "admin.controller.ts" -Cohesion: 0.18 +Cohesion: 0.19 Nodes (11): CreateUserDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsNumber, IsOptional, IsString (+3 more) ### Community 61 - "ProductPage.tsx" @@ -584,28 +603,28 @@ Cohesion: 0.11 Nodes (40): ArchiveProductCard(), ArchiveProductListItem(), CATEGORY_MAP, ICON_MAP, FeaturedProducts(), ProductCard(), Header(), MobileBottomNav() (+32 more) ### Community 62 - "admin.module.ts" -Cohesion: 0.08 -Nodes (17): ReportsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Get, Query (+9 more) +Cohesion: 0.04 +Nodes (34): AdminModule, Module, PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller (+26 more) ### Community 63 - "dependencies" -Cohesion: 0.05 -Nodes (43): dependencies, bcrypt, bcryptjs, class-transformer, class-validator, compression, helmet, ioredis (+35 more) +Cohesion: 0.09 +Nodes (23): dependencies, bcrypt, bcryptjs, class-validator, compression, ioredis, @nestjs/common, @nestjs/passport (+15 more) ### Community 64 - "compilerOptions" Cohesion: 0.10 Nodes (20): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, lib, module, moduleDetection, moduleResolution, noEmit (+12 more) -### Community 65 - "admin.service.ts" -Cohesion: 0.31 -Nodes (7): CouponTargetInput, PaginationQuery, applyRounding(), calculateSellingPrice(), DEFAULT_PRICING_SETTINGS, PricingSettings, RoundingMode +### Community 65 - "CreateApiKeyDto" +Cohesion: 0.27 +Nodes (7): CreateApiKeyDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsOptional, IsString ### Community 66 - "AdminController" -Cohesion: 0.10 -Nodes (12): AdminController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+4 more) +Cohesion: 0.16 +Nodes (14): AdminController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Get, Query (+6 more) -### Community 67 - "SmsService" -Cohesion: 0.20 -Nodes (3): SmsService, Injectable, Optional +### Community 67 - "ApiKeysService" +Cohesion: 0.24 +Nodes (3): ApiKeysService, Injectable, Inject ### Community 68 - "components/Skeleton.tsx" Cohesion: 0.21 @@ -639,9 +658,9 @@ Nodes (14): ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, De Cohesion: 0.05 Nodes (47): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, CreatePetDto, ApiProperty (+39 more) -### Community 76 - "ProductsService" -Cohesion: 0.11 -Nodes (14): ProductsController, ApiOperation, ApiTags, Body, Controller, Get, Param, Patch (+6 more) +### Community 76 - "RevalidationService" +Cohesion: 0.07 +Nodes (25): Optional, RevalidationModule, Global, Module, RevalidationService, Injectable, GetProductsDto, ApiPropertyOptional (+17 more) ### Community 77 - "seo.module.ts" Cohesion: 0.16 @@ -687,9 +706,9 @@ Nodes (9): GatewayHealthResult, IPaymentGateway, PaymentInquiryResult, PaymentRe Cohesion: 0.11 Nodes (19): dependencies, axios, lucide-react, motion, next, nextjs-toploader, react, react-dom (+11 more) -### Community 88 - "payment.controller.ts" -Cohesion: 0.12 -Nodes (19): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsNumber, IsOptional, IsString, Min (+11 more) +### Community 88 - "CreateEBankCheckoutDto" +Cohesion: 0.22 +Nodes (8): CreateEBankCheckoutDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsNumber, IsOptional, IsString, Min ### Community 89 - "seed-products.ts" Cohesion: 0.17 @@ -752,20 +771,24 @@ Cohesion: 0.15 Nodes (12): 10. `TASK-VERIFY-001`, 1. `TASK-SEC-001`, 2. `TASK-SEC-002`, 3. `TASK-SEC-003`, 4. `TASK-FIN-001`, 5. `TASK-BUILD-001`, 6. `TASK-AUTH-001`, 7. `TASK-FE-001` (+4 more) ### Community 104 - "Products.tsx" -Cohesion: 0.09 -Nodes (25): Input, InputProps, formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData (+17 more) +Cohesion: 0.10 +Nodes (24): Input, InputProps, formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData (+16 more) ### Community 105 - "Operational Rules & Boundaries" Cohesion: 0.17 Nodes (11): 1. Detect Test Runner from Tech Stack, 2. Execution Output Capture (Mandatory), 3. Acceptance Criteria Verification, 4. Failure Routing Protocol, 5. Success Routing Protocol, 6. Forbidden Actions, Expected JSON Output Schema, Operational Rules & Boundaries (+3 more) -### Community 107 - "BlogsService" -Cohesion: 0.13 -Nodes (5): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable +### Community 106 - "InitiatePaymentDto" +Cohesion: 0.43 +Nodes (7): InitiatePaymentDto, InitiateWalletTopupDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString + +### Community 107 - "PaginationDto" +Cohesion: 0.07 +Nodes (18): BlogsModule, Module, BlogFilterDto, BlogsService, Injectable, PaginationDto, SortOrder, ApiPropertyOptional (+10 more) ### Community 108 - "PrismaService" Cohesion: 0.06 -Nodes (23): ApiExcludeController, CategoryQuery, PetQuery, PetsService, Injectable, MetricsController, Controller, Get (+15 more) +Nodes (25): CategoryQuery, DEFAULT_SMS_RULES, SMS_EVENT_DEFINITIONS, SmsEventVariable, SmsRule, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions (+17 more) ### Community 109 - "1. Summary of Integrity Repairs Performed" Cohesion: 0.17 @@ -783,17 +806,17 @@ 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 - "lib/services/api.ts" -Cohesion: 0.06 -Nodes (26): BlogPost, ContactInfoItem, FAQItem, OrderDetailsModalProps, ProductReviews, ProductReviews(), ProductReviewsProps, ReviewItem (+18 more) +### Community 113 - "settingsStore.ts" +Cohesion: 0.07 +Nodes (22): BlogPost, ContactInfoItem, FAQItem, OrderDetailsModalProps, Testimonial, Tooltip(), TooltipProps, SCIENTIFIC_TERMS (+14 more) ### Community 114 - "AppService" Cohesion: 0.29 Nodes (5): AppController, Controller, Get, AppService, Injectable -### Community 115 - "Media.tsx" -Cohesion: 0.10 -Nodes (17): Pagination(), PaginationProps, Category, getFileType(), Media, MediaManager(), Pet, DoctorOption (+9 more) +### Community 115 - "MediaSelector.tsx" +Cohesion: 0.05 +Nodes (45): ConfirmModal(), ConfirmModalProps, ImagePreviewModal(), ImagePreviewModalProps, getFileType(), Media, MediaSelector(), MediaSelectorProps (+37 more) ### Community 116 - "Vazirmatn Changelog" Cohesion: 0.18 @@ -820,12 +843,12 @@ 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 - "Body" -Cohesion: 0.17 -Nodes (3): Body, Post, CouponInput +Cohesion: 0.11 +Nodes (4): Body, Post, Put, CouponInput ### Community 123 - "auth.service.ts" -Cohesion: 0.08 -Nodes (9): AppModule, Module, AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, RedisService (+1 more) +Cohesion: 0.07 +Nodes (13): AppModule, Module, AuthModule, Module, AdminLoginInput, AuthService, LoginInput, RegisterInput (+5 more) ### Community 124 - "Repository Map" Cohesion: 0.20 @@ -843,13 +866,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 - "auth.module.ts" -Cohesion: 0.15 -Nodes (12): AdminModule, Module, DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload (+4 more) +### Community 128 - "MetricsController" +Cohesion: 0.29 +Nodes (5): ApiExcludeController, MetricsController, Controller, Get, Res ### Community 129 - "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 130 - "Sahel-Font" Cohesion: 0.20 @@ -911,9 +934,9 @@ Nodes (6): app_module_1, core_1, fs, path, swagger_1, yaml Cohesion: 0.10 Nodes (24): buildTorobProductSpec(), buildTorobProductTitle(), dynamic, GET(), revalidate, BlogPostClientProps, PLAYBACK_RATES, PodcastInlinePlayer() (+16 more) -### Community 145 - "PaginationDto" -Cohesion: 0.15 -Nodes (13): PaginationDto, ApiPropertyOptional, IsEnum, IsInt, IsOptional, IsString, Min, Type (+5 more) +### Community 145 - "WholesaleApplyDto" +Cohesion: 0.29 +Nodes (6): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto ### Community 146 - "System Discovery" Cohesion: 0.25 @@ -927,18 +950,10 @@ Nodes (8): buildTorobProductSpec(), buildTorobProductTitle(), TorobController, A Cohesion: 0.16 Nodes (7): ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber, IsOptional, IsString -### Community 149 - "PetsController" -Cohesion: 0.15 -Nodes (11): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+3 more) - ### Community 150 - "Product Requirement Document (PRD)" Cohesion: 0.29 Nodes (6): 1. Executive Vision, 2. Target Audience, 3. Functional Requirements, 4. Non-Functional Requirements (Performance, Security), 5. Epic / Feature Breakdown, Product Requirement Document (PRD) -### Community 151 - "SmsLogQueryDto" -Cohesion: 0.25 -Nodes (7): SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type - ### Community 153 - "exclude" Cohesion: 0.22 Nodes (8): exclude, extends, dist, node_modules, prisma, **/*spec.ts, test, ./tsconfig.json @@ -1091,18 +1106,14 @@ Nodes (3): Deploy on Vercel, Getting Started, Learn More Cohesion: 0.50 Nodes (3): COMPOSE_DOCKER_CLI_BUILD, DOCKER_BUILDKIT, deploy.sh script -### Community 204 - "RevalidationService" -Cohesion: 0.16 -Nodes (6): Optional, RevalidationModule, Global, Module, RevalidationService, Injectable +### Community 204 - "reviews.service.ts" +Cohesion: 0.33 +Nodes (5): ApiProperty, IsIn, IsOptional, IsString, UpdateReviewDto ### Community 211 - "Master Task Backlog (Phase 3.3)" 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 220 - "AdminQueryDto" -Cohesion: 0.40 -Nodes (5): AdminProductQueryDto, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString - ### Community 224 - "wiki/page.tsx" Cohesion: 0.40 Nodes (3): generateMetadata(), formatIngredientDisplayName(), IngredientWiki() @@ -1111,9 +1122,13 @@ Nodes (3): generateMetadata(), formatIngredientDisplayName(), IngredientWiki() Cohesion: 0.67 Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font +### 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 +Cohesion: 0.20 +Nodes (10): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto, ApiBadRequestResponse, ApiOkResponse, Req, Res (+2 more) ### Community 317 - "revalidate/route.ts" Cohesion: 0.83 @@ -1122,22 +1137,22 @@ Nodes (3): GET(), handleRevalidate(), POST() ## Knowledge Gaps - **1356 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1351 more) These have ≤1 connection - possible missing edges or undocumented components. -- **97 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. +- **112 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 `ApiKeysService` to `WikiController`, `BlogsController`, `PetsController`, `ProductsService`, `UsersService`, `src/services/api.ts`, `OrdersService`, `auth.controller.ts`?** +- **Why does `ApiResponse` connect `ApiResponse` to `WikiController`, `BlogsController`, `PetsController`, `RevalidationService`, `UsersService`, `HomeController`, `src/services/api.ts`, `OrdersService`, `auth.controller.ts`?** _High betweenness centrality (0.076) - this node is a cross-community bridge._ -- **Why does `Roles()` connect `Roles` to `CmsController`, `tickets.controller.ts`, `SettingsService`, `CreateReviewDto`, `PaginationDto`, `JwtAuthGuard`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `ContactService`, `FaqService`, `SslController`, `BannersService`, `TestimonialsService`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `ProductsService`, `payment.controller.ts`?** +- **Why does `Roles()` connect `Roles` to `WholesaleService`, `B2BService`, `ContactService`, `FaqService`, `CmsController`, `tickets.controller.ts`, `SmsService`, `SslController`, `BannersService`, `RevalidationService`, `CreateReviewDto`, `TestimonialsService`, `IngredientsService`, `JwtAuthGuard`, `PrescriptionsService`, `SmartAdvisorService`, `MenuService`?** _High betweenness centrality (0.066) - this node is a cross-community bridge._ -- **Why does `PrismaService` connect `PrismaService` to `app.module.ts`, `ApiKeysService`, `WikiController`, `CmsController`, `tickets.controller.ts`, `SettingsService`, `DoctorQueryDto`, `torob.controller.ts`, `CreateVideoDto`, `MenuService`, `WholesaleApplyDto`, `B2BService`, `ContactService`, `FaqService`, `ZibalService`, `CategoriesController`, `MediaController`, `ZibalEBankService`, `BannersService`, `TestimonialsService`, `sms.service.ts`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `admin.module.ts`, `admin.service.ts`, `SmsService`, `PetsController`, `RevalidationService`, `ProductsService`, `seo.module.ts`, `zibal.service.ts`, `OrdersService`, `PaymentService`, `BlogsService`, `auth.service.ts`?** +- **Why does `PrismaService` connect `PrismaService` to `MetricsController`, `app.module.ts`, `CmsController`, `tickets.controller.ts`, `SmsService`, `UsersService`, `DoctorQueryDto`, `admin.service.ts`, `torob.controller.ts`, `CreateVideoDto`, `MenuService`, `WholesaleService`, `B2BService`, `ContactService`, `FaqService`, `ZibalService`, `CategoriesController`, `MediaController`, `ZibalEBankService`, `BannersService`, `TestimonialsService`, `HomeController`, `IngredientsService`, `PrescriptionsService`, `SmartAdvisorService`, `admin.module.ts`, `CreateApiKeyDto`, `ApiKeysService`, `PetsController`, `RevalidationService`, `reviews.service.ts`, `seo.module.ts`, `zibal.service.ts`, `OrdersService`, `PaginationDto`, `auth.service.ts`?** _High betweenness centrality (0.031) - this node is a cross-community bridge._ - **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?** _1356 weakly-connected nodes found - possible documentation gaps or missing edges._ - **Should `app.module.ts` be split into smaller, more focused modules?** - _Cohesion score 0.06265664160401002 - nodes in this community are weakly interconnected._ -- **Should `ApiKeysService` be split into smaller, more focused modules?** - _Cohesion score 0.05012531328320802 - nodes in this community are weakly interconnected._ + _Cohesion score 0.06516290726817042 - nodes in this community are weakly interconnected._ +- **Should `ApiResponse` be split into smaller, more focused modules?** + _Cohesion score 0.12631578947368421 - nodes in this community are weakly interconnected._ - **Should `productService.ts` be split into smaller, more focused modules?** _Cohesion score 0.06187202538339503 - nodes in this community are weakly interconnected._ \ No newline at end of file diff --git a/graphify-out/cache/stat-index.json b/graphify-out/cache/stat-index.json index d8508f1..96aa901 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":1789270628022321000,"word_count":127,"hashes":{".agents/rules/graphify.md":"26f2577a68d808f7f33ec3e418b95b635aec180d93b22b975e9ae67c47e361c8"}},".agents/workflows/graphify.md":{"size":229,"mtime_ns":1786870552832398300,"indexed_at_ns":1789270628022917900,"word_count":37,"hashes":{".agents/workflows/graphify.md":"a81e2d017e0669c71099362b20854e4d9ed68753f1c240d0682120bdb9aa3c72"}},".ai_agency/AGENCY.md":{"size":8757,"mtime_ns":1785148021979607300,"indexed_at_ns":1789270628023954100,"word_count":1161,"hashes":{".ai_agency/agency.md":"88c7c13583a91fc7e41ce055fede9dce20f181e8d264557808989965e83a9030"}},".ai_agency/agents/00_intake.md":{"size":3819,"mtime_ns":1785148021984319000,"indexed_at_ns":1789270628024953700,"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":1789270628025955400,"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":1789270628026957200,"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":1789270628027957800,"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":1789270628028953700,"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":1789270628030956800,"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":1789270628031953000,"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":1789270628032953100,"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":1789270628033957600,"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":1789270628034953200,"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":1789270628035952500,"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":1789270628036952600,"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":1789270628037952400,"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":1789270615816346000,"word_count":34},".ai_agency/memory/backlog.json":{"size":10711,"mtime_ns":1785330750958890900,"indexed_at_ns":1789270627948822700,"word_count":981,"hashes":{".ai_agency/memory/backlog.json":"6bf3150a1877d03d03b368df21b84071381b1bb8cd03e3721fa9f8e6c38355be"}},".ai_agency/memory/scratchpad.md":{"size":1879,"mtime_ns":1785148022065114400,"indexed_at_ns":1789270628039931300,"word_count":249,"hashes":{".ai_agency/memory/scratchpad.md":"9d0f687cf8e95c6335f1efb070da8029878417c28117e3b89aa8536ad70a5b95"}},".ai_agency/memory/state.json":{"size":3654,"mtime_ns":1785330750963913800,"indexed_at_ns":1789270627974509700,"word_count":254,"hashes":{".ai_agency/memory/state.json":"1204676f8f295d89733888bb87936061b7a700df0cc936fbf08fd5269b534e8d"}},".ai_agency/orchestrate.py":{"size":6800,"mtime_ns":1785148022072662500,"indexed_at_ns":1789270627976508500,"word_count":644,"hashes":{".ai_agency/orchestrate.py":"90ec787fdd4c71f5203c56b6899aadcc26e6e0bad0cc576d2f982aa42eed42e1"}},".ai_agency/specs/api_contract.md":{"size":1515,"mtime_ns":1785148022077664900,"indexed_at_ns":1789270628040929700,"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":1789270628041926800,"word_count":99,"hashes":{".ai_agency/specs/architecture_spec.md":"6269043f6a144e8ac86ff1db7e014075185e5675a4a0ee23e99e70d88253b8af"}},".ai_agency/specs/prd.md":{"size":724,"mtime_ns":1785148022087251600,"indexed_at_ns":1789270628042935800,"word_count":96,"hashes":{".ai_agency/specs/prd.md":"1c6d5a0ec8a709a2b3aed28225f5fe148ad2d75851d45699187678d055947b11"}},".ai_agency/specs/project_health.md":{"size":444,"mtime_ns":1785148022098314600,"indexed_at_ns":1789270628043935700,"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":1789270628044935500,"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":1789270628045935300,"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":1789270628046935200,"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":1789270628047934900,"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":1789270628048935100,"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":1789270628049934800,"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":1789270628051934800,"word_count":150,"hashes":{".ai_agency/specs/reviews/ux_review.md":"b8a52f324e36fcc2d046cc903a05903057098a67a397ae6442d6c825091f4513"}},".antigravity/instructions.md":{"size":226,"mtime_ns":1786870552833405800,"indexed_at_ns":1789270628052934400,"word_count":29,"hashes":{".antigravity/instructions.md":"8d8f5c1bbdbb7b8045e02b06a50e68d3fcfabfb2d65f8ac1cd86168dc8a8cc96"}},".antigravity/workflows/graphify.md":{"size":43292,"mtime_ns":1786870552837921500,"indexed_at_ns":1789270628053934200,"word_count":5442,"hashes":{".antigravity/workflows/graphify.md":"0c16b701a50d64f741f6de107c49584012a8dd7f5e922af9f79754540629e2fe"}},".claude/CLAUDE.md":{"size":226,"mtime_ns":1786870552838920200,"indexed_at_ns":1789270628054931400,"word_count":29,"hashes":{".claude/claude.md":"c6f7fc2f062904d246b700d446ba3ad03e77f41809b12eccfb5e090a11f4fad2"}},".claude/settings.json":{"size":479,"mtime_ns":1786870552841922800,"indexed_at_ns":1789270627978581600,"word_count":38,"hashes":{".claude/settings.json":"0aaafba2cbd7dd67f7d69fa2f01b747c9a72f56ee421a40825521f937caec82b"}},".claude/skills/graphify/SKILL.md":{"size":43292,"mtime_ns":1786870552845041000,"indexed_at_ns":1789270628055931100,"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":1789270628056930600,"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":1789270628058435000,"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":1789270628059441000,"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":1789270628060440700,"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":1789270628061440500,"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":1789270628062440700,"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":1789270628064440500,"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":1789270628065440300,"word_count":1196,"hashes":{".claude/skills/graphify/references/update.md":"0249cd6ceae6effdfc7371b51d00c462f51d95700101dcedd36255bab1b4ce7a"}},".gemini/config/mcp_config.json":{"size":146,"mtime_ns":1787729527922392700,"indexed_at_ns":1789270627980094900,"word_count":15,"hashes":{".gemini/config/mcp_config.json":"5350ccca14cfd0cb47901b879636407765ead90ade58684cbe3bca634580cbd7"}},".gitea/scripts/with-vpn.sh":{"size":1794,"mtime_ns":1786799852126316200,"indexed_at_ns":1789270627981144700,"word_count":208,"hashes":{".gitea/scripts/with-vpn.sh":"9ec013d142e3cf5d7e5f09778fcb06b4b8ea7b394688f9f40b5e74298c76bcf0"}},".gitea/workflows/deploy.yml":{"size":993,"mtime_ns":1787078454762471500,"indexed_at_ns":1789270616084164700,"word_count":84},".gitea/workflows/e2e.yml":{"size":980,"mtime_ns":1787729527923391900,"indexed_at_ns":1789270616094368200,"word_count":98},".vscode/extensions.json":{"size":74,"mtime_ns":1787461919449307400,"indexed_at_ns":1789270627982150100,"word_count":6,"hashes":{".vscode/extensions.json":"57518c36999b5176c9e8617cf937f6e35b54ddd015305005d4611729d1d69177"}},"AGENTS.md":{"size":226,"mtime_ns":1786870552862708600,"indexed_at_ns":1789270628066440000,"word_count":29,"hashes":{"agents.md":"b664c2bb6d85e009d7495bcd9c3d52c419176473cd4e19362fd4256616076151"}},"BACKEND_INTEGRATION.md":{"size":15568,"mtime_ns":1786885876768825200,"indexed_at_ns":1789270616116561400,"word_count":1521},"CLAUDE.md":{"size":772,"mtime_ns":1786870552863710100,"indexed_at_ns":1789270628067439900,"word_count":106,"hashes":{"claude.md":"3612256e7473a2e5f67ef4778d4edeefb44794ef22bac5529bee9c87dc5d8f3d"}},"DATABASE_SCHEMA.md":{"size":15399,"mtime_ns":1786885876771342200,"indexed_at_ns":1789270616129565700,"word_count":1566},"README.md":{"size":13117,"mtime_ns":1786885876775371800,"indexed_at_ns":1789270616144948200,"word_count":1310},"backend/README.md":{"size":5028,"mtime_ns":1783764561601382400,"indexed_at_ns":1789270628068439900,"word_count":472,"hashes":{"backend/readme.md":"c3edfd26252566ef2ddee12c91a874b59e03a1656894d3db25209a0e4031010a"}},"backend/eslint.config.mjs":{"size":1649,"mtime_ns":1787073059105361700,"indexed_at_ns":1789270616177591400,"word_count":104},"backend/nest-cli.json":{"size":172,"mtime_ns":1787072106370561300,"indexed_at_ns":1789270627983148700,"word_count":13,"hashes":{"backend/nest-cli.json":"64fe2904203985aa0acb9b67d7ade489f2362ac8730283fb11d6a764d1cb3878"}},"backend/package.json":{"size":2903,"mtime_ns":1787644197137104200,"indexed_at_ns":1789270627984148400,"word_count":214,"hashes":{"backend/package.json":"164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5"}},"backend/prisma/migrations/20260526145407_init/migration.sql":{"size":8963,"mtime_ns":1783764561612007600,"indexed_at_ns":1789270627985148900,"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":1789270627986148300,"word_count":48,"hashes":{"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql":"c564f4aba35d32a733a5837c33664c68c8912277ad9645310f7e8116fbcba741"}},"backend/prisma/scientificTerms.ts":{"size":24730,"mtime_ns":1789272909845064400,"indexed_at_ns":1789276684968383200,"word_count":2294},"backend/prisma/seed-blogs.ts":{"size":6957,"mtime_ns":1789272909845064400,"indexed_at_ns":1789276684978387800,"word_count":620},"backend/prisma/seed-custom.ts":{"size":4032,"mtime_ns":1789272909846064300,"indexed_at_ns":1789276684988682600,"word_count":382},"backend/prisma/seed-home.ts":{"size":3910,"mtime_ns":1789272909846064300,"indexed_at_ns":1789276684999687000,"word_count":376},"backend/prisma/seed-products-data.json":{"size":59231,"mtime_ns":1788333723584557900,"indexed_at_ns":1789270627987148000,"word_count":5730,"hashes":{"backend/prisma/seed-products-data.json":"2c84695a0e1ce94406b8eb038936758a2dd27e22b5727051ea8d30749b4e9163"}},"backend/prisma/seed-products.ts":{"size":28268,"mtime_ns":1787127978219270600,"indexed_at_ns":1789270616246925300,"word_count":2063},"backend/prisma/seed-ui-texts.ts":{"size":9002,"mtime_ns":1789272909847063400,"indexed_at_ns":1789276685030836400,"word_count":758},"backend/prisma/seed-wiki.ts":{"size":24274,"mtime_ns":1789272909848063600,"indexed_at_ns":1789276685039442900,"word_count":2294},"backend/prisma/seed.ts":{"size":31035,"mtime_ns":1789272909849064100,"indexed_at_ns":1789276685050240200,"word_count":2638},"backend/prisma/tsconfig.json":{"size":194,"mtime_ns":1786961195300236300,"indexed_at_ns":1789270627988148000,"word_count":17,"hashes":{"backend/prisma/tsconfig.json":"0308b15b67bad714ff5f1b6b73f64ae46f98d5190cd6092abb1fb67885d67be1"}},"backend/prisma/tsconfig.seed.json":{"size":194,"mtime_ns":1786955870751259200,"indexed_at_ns":1789270627989148000,"word_count":17,"hashes":{"backend/prisma/tsconfig.seed.json":"e178d23a09563a7a9b348d905bc70322115514c78a7afcc5a53db7d18e511583"}},"backend/scripts/generate-openapi.d.ts":{"size":11,"mtime_ns":1786883225777483700,"indexed_at_ns":1789270616282079100,"word_count":2},"backend/scripts/generate-openapi.js":{"size":2965,"mtime_ns":1786883225779120000,"indexed_at_ns":1789270616288048800,"word_count":309},"backend/scripts/generate-openapi.ts":{"size":1421,"mtime_ns":1787729527925391800,"indexed_at_ns":1789270616299175500,"word_count":132},"backend/scripts/seo-backfill.ts":{"size":4551,"mtime_ns":1787729527925391800,"indexed_at_ns":1789270616306142400,"word_count":464},"backend/src/admin/admin.controller.spec.ts":{"size":593,"mtime_ns":1786799852157399700,"indexed_at_ns":1789270616312651200,"word_count":59},"backend/src/admin/admin.controller.ts":{"size":11356,"mtime_ns":1789272909849064100,"indexed_at_ns":1789276685138946000,"word_count":1100},"backend/src/admin/admin.module.ts":{"size":1682,"mtime_ns":1789272909850064500,"indexed_at_ns":1789276685147647000,"word_count":168},"backend/src/admin/admin.service.spec.ts":{"size":903,"mtime_ns":1787729523434852600,"indexed_at_ns":1789270616330476100,"word_count":89},"backend/src/admin/admin.service.ts":{"size":54945,"mtime_ns":1788609394316908100,"indexed_at_ns":1789270616337445700,"word_count":5207},"backend/src/admin/blogs.controller.ts":{"size":5204,"mtime_ns":1787579631758177800,"indexed_at_ns":1789270616357227400,"word_count":532},"backend/src/admin/blogs.service.ts":{"size":9542,"mtime_ns":1787579631760177700,"indexed_at_ns":1789270616364374900,"word_count":1070},"backend/src/admin/categories.controller.ts":{"size":2187,"mtime_ns":1786799852174192500,"indexed_at_ns":1789270616373018100,"word_count":204},"backend/src/admin/categories.service.ts":{"size":2005,"mtime_ns":1786799852175194300,"indexed_at_ns":1789270616379022600,"word_count":223},"backend/src/admin/dto/admin-query.dto.ts":{"size":975,"mtime_ns":1788332757638029400,"indexed_at_ns":1789270616386022700,"word_count":89},"backend/src/admin/dto/product.dto.ts":{"size":9859,"mtime_ns":1788609394317999800,"indexed_at_ns":1789270616405532500,"word_count":808},"backend/src/admin/dto/user.dto.ts":{"size":2839,"mtime_ns":1787072106381989700,"indexed_at_ns":1789270616412042600,"word_count":259},"backend/src/admin/media.controller.ts":{"size":2339,"mtime_ns":1786876983648866300,"indexed_at_ns":1789270616418776500,"word_count":226},"backend/src/admin/media.service.ts":{"size":3596,"mtime_ns":1787748438701533500,"indexed_at_ns":1789270616425777400,"word_count":373},"backend/src/admin/pets.controller.ts":{"size":1195,"mtime_ns":1786799852186217200,"indexed_at_ns":1789270616431775600,"word_count":117},"backend/src/admin/pets.service.ts":{"size":1731,"mtime_ns":1786954681814243000,"indexed_at_ns":1789270616437773800,"word_count":193},"backend/src/admin/reports.controller.ts":{"size":1079,"mtime_ns":1787729523434852600,"indexed_at_ns":1789270616444779900,"word_count":107},"backend/src/admin/reports.service.ts":{"size":6497,"mtime_ns":1787729523434852600,"indexed_at_ns":1789270616451780400,"word_count":729},"backend/src/admin/ssl.controller.ts":{"size":3371,"mtime_ns":1787072106382979000,"indexed_at_ns":1789270616457286000,"word_count":296},"backend/src/admin/ssl.service.ts":{"size":6502,"mtime_ns":1787072106383978900,"indexed_at_ns":1789270616466337900,"word_count":612},"backend/src/admin/wiki.controller.ts":{"size":1814,"mtime_ns":1786799852191732300,"indexed_at_ns":1789270616473335800,"word_count":179},"backend/src/admin/wiki.service.ts":{"size":1767,"mtime_ns":1786799852193324200,"indexed_at_ns":1789270616480346200,"word_count":195},"backend/src/app.controller.spec.ts":{"size":617,"mtime_ns":1783764561644839700,"indexed_at_ns":1789270616486342000,"word_count":61},"backend/src/app.controller.ts":{"size":274,"mtime_ns":1783764561645849100,"indexed_at_ns":1789270616491846700,"word_count":31},"backend/src/app.module.ts":{"size":4052,"mtime_ns":1787579631764695400,"indexed_at_ns":1789270616497852000,"word_count":382},"backend/src/app.service.ts":{"size":142,"mtime_ns":1783764561648840500,"indexed_at_ns":1789270616503851200,"word_count":19},"backend/src/auth/auth.constants.ts":{"size":456,"mtime_ns":1787072106385980100,"indexed_at_ns":1789270616510362700,"word_count":32},"backend/src/auth/auth.controller.spec.ts":{"size":1528,"mtime_ns":1785327951179468000,"indexed_at_ns":1789270616516362400,"word_count":149},"backend/src/auth/auth.controller.ts":{"size":4304,"mtime_ns":1787645037368025500,"indexed_at_ns":1789270616522972400,"word_count":410},"backend/src/auth/auth.module.ts":{"size":824,"mtime_ns":1788859667823165900,"indexed_at_ns":1789270616528976900,"word_count":90},"backend/src/auth/auth.service.spec.ts":{"size":4306,"mtime_ns":1787729523436876800,"indexed_at_ns":1789270616534976800,"word_count":381},"backend/src/auth/auth.service.ts":{"size":9713,"mtime_ns":1787127978228589700,"indexed_at_ns":1789270616542124500,"word_count":933},"backend/src/auth/dto/admin-login.dto.ts":{"size":766,"mtime_ns":1787127978229587400,"indexed_at_ns":1789270616549129000,"word_count":82},"backend/src/auth/dto/login.dto.ts":{"size":587,"mtime_ns":1783764561659109000,"indexed_at_ns":1789270616556128700,"word_count":63},"backend/src/auth/dto/register.dto.ts":{"size":1197,"mtime_ns":1785327951186476900,"indexed_at_ns":1789270616562638600,"word_count":115},"backend/src/auth/dto/send-otp.dto.ts":{"size":374,"mtime_ns":1783764561661106500,"indexed_at_ns":1789270616569250800,"word_count":39},"backend/src/auth/dto/verify-otp.dto.ts":{"size":594,"mtime_ns":1783764561662112100,"indexed_at_ns":1789270616576163000,"word_count":64},"backend/src/auth/jwt-auth.guard.ts":{"size":1580,"mtime_ns":1789272909852062500,"indexed_at_ns":1789276685532984300,"word_count":150},"backend/src/auth/jwt.strategy.ts":{"size":1122,"mtime_ns":1786883225794343300,"indexed_at_ns":1789270616587160300,"word_count":116},"backend/src/auth/roles.decorator.ts":{"size":54,"mtime_ns":1786799852208379600,"indexed_at_ns":1789270616594674000,"word_count":4},"backend/src/auth/roles.guard.ts":{"size":46,"mtime_ns":1786799852209003400,"indexed_at_ns":1789270616599672100,"word_count":4},"backend/src/b2b/b2b.controller.ts":{"size":2782,"mtime_ns":1787645037369065300,"indexed_at_ns":1789270616605671400,"word_count":261},"backend/src/b2b/b2b.module.ts":{"size":342,"mtime_ns":1786799852212013200,"indexed_at_ns":1789270616612180500,"word_count":38},"backend/src/b2b/b2b.service.ts":{"size":2379,"mtime_ns":1786799852214009300,"indexed_at_ns":1789270616618771600,"word_count":243},"backend/src/banners/banners.controller.ts":{"size":1923,"mtime_ns":1786799852215010200,"indexed_at_ns":1789270616624769700,"word_count":169},"backend/src/banners/banners.module.ts":{"size":374,"mtime_ns":1786799852216010300,"indexed_at_ns":1789270616630768600,"word_count":38},"backend/src/banners/banners.service.ts":{"size":1394,"mtime_ns":1786799852216010300,"indexed_at_ns":1789270616636767400,"word_count":160},"backend/src/blogs/blogs.controller.ts":{"size":2794,"mtime_ns":1788334048803235500,"indexed_at_ns":1789270616642766100,"word_count":247},"backend/src/blogs/blogs.module.ts":{"size":248,"mtime_ns":1783764561665678100,"indexed_at_ns":1789270616650063600,"word_count":28},"backend/src/blogs/blogs.service.ts":{"size":10448,"mtime_ns":1788334048804373300,"indexed_at_ns":1789270616655934900,"word_count":1157},"backend/src/blogs/dto/create-blog.dto.ts":{"size":30,"mtime_ns":1783764561671557000,"indexed_at_ns":1789270616663617100,"word_count":4},"backend/src/blogs/dto/update-blog.dto.ts":{"size":164,"mtime_ns":1783764561673712400,"indexed_at_ns":1789270616669612200,"word_count":18},"backend/src/blogs/entities/blog.entity.ts":{"size":21,"mtime_ns":1783764561675101100,"indexed_at_ns":1789270616676615100,"word_count":4},"backend/src/cms/cms.controller.ts":{"size":3521,"mtime_ns":1785327951196913100,"indexed_at_ns":1789270616681920100,"word_count":280},"backend/src/cms/cms.module.ts":{"size":342,"mtime_ns":1785148022206298000,"indexed_at_ns":1789270616688917800,"word_count":38},"backend/src/cms/cms.service.ts":{"size":2501,"mtime_ns":1785327951197940400,"indexed_at_ns":1789270616695432600,"word_count":256},"backend/src/cms/dto/cms.dto.ts":{"size":2357,"mtime_ns":1785327951199995500,"indexed_at_ns":1789270616702236900,"word_count":203},"backend/src/common/decorators/roles.decorator.ts":{"size":157,"mtime_ns":1786799852220522400,"indexed_at_ns":1789270616709383700,"word_count":20},"backend/src/common/dto/pagination.dto.ts":{"size":1188,"mtime_ns":1785327951201988900,"indexed_at_ns":1789270616715388100,"word_count":121},"backend/src/common/env.validation.ts":{"size":1162,"mtime_ns":1787645037370646800,"indexed_at_ns":1789270616721385900,"word_count":109},"backend/src/common/filters/http-exception.filter.ts":{"size":4993,"mtime_ns":1787645037371739300,"indexed_at_ns":1789270616728385700,"word_count":500},"backend/src/common/filters/prisma-exception.filter.ts":{"size":2862,"mtime_ns":1787645037372254700,"indexed_at_ns":1789270616735386100,"word_count":280},"backend/src/common/guards/roles.guard.spec.ts":{"size":2426,"mtime_ns":1786799852225556800,"indexed_at_ns":1789270616742385800,"word_count":223},"backend/src/common/guards/roles.guard.ts":{"size":1285,"mtime_ns":1786799852226565200,"indexed_at_ns":1789270616749389800,"word_count":120},"backend/src/common/interceptors/decimal.interceptor.spec.ts":{"size":1677,"mtime_ns":1786799852227565700,"indexed_at_ns":1789270616756389200,"word_count":164},"backend/src/common/interceptors/decimal.interceptor.ts":{"size":1094,"mtime_ns":1786799852227565700,"indexed_at_ns":1789270616762901500,"word_count":118},"backend/src/common/metrics.controller.ts":{"size":2093,"mtime_ns":1786799852229073100,"indexed_at_ns":1789270616769900500,"word_count":206},"backend/src/common/revalidation/revalidation.module.ts":{"size":240,"mtime_ns":1787579631769582300,"indexed_at_ns":1789270616777524800,"word_count":24},"backend/src/common/revalidation/revalidation.service.ts":{"size":3410,"mtime_ns":1787579631770587500,"indexed_at_ns":1789270616783524200,"word_count":272},"backend/src/common/schemas/error-response.schema.ts":{"size":1680,"mtime_ns":1785330913144701500,"indexed_at_ns":1789270616791555500,"word_count":162},"backend/src/common/schemas/paginated-response.schema.ts":{"size":1108,"mtime_ns":1786799852230082200,"indexed_at_ns":1789270616798543800,"word_count":110},"backend/src/common/services/sms.service.ts":{"size":43591,"mtime_ns":1788625198954313100,"indexed_at_ns":1789270616812567200,"word_count":4097},"backend/src/common/sms.module.ts":{"size":204,"mtime_ns":1785330750996125100,"indexed_at_ns":1789270616821133900,"word_count":24},"backend/src/common/utils/phone.utils.ts":{"size":1089,"mtime_ns":1786883225801396000,"indexed_at_ns":1789270616827133400,"word_count":149},"backend/src/contact/contact.controller.ts":{"size":2088,"mtime_ns":1787645037373264000,"indexed_at_ns":1789270616841641400,"word_count":192},"backend/src/contact/contact.module.ts":{"size":365,"mtime_ns":1786799852236599000,"indexed_at_ns":1789270616850645500,"word_count":38},"backend/src/contact/contact.service.ts":{"size":4445,"mtime_ns":1788584193706148400,"indexed_at_ns":1789270616857643700,"word_count":432},"backend/src/doctors/doctors.controller.ts":{"size":1583,"mtime_ns":1787148092311692900,"indexed_at_ns":1789270616876740600,"word_count":148},"backend/src/doctors/doctors.module.ts":{"size":374,"mtime_ns":1786971396035575100,"indexed_at_ns":1789270616883738800,"word_count":38},"backend/src/doctors/doctors.service.ts":{"size":2336,"mtime_ns":1787148092312693100,"indexed_at_ns":1789270616889738900,"word_count":266},"backend/src/doctors/dto/doctor-query.dto.ts":{"size":1009,"mtime_ns":1787148092314699500,"indexed_at_ns":1789270616897259300,"word_count":116},"backend/src/faq/faq.controller.ts":{"size":2210,"mtime_ns":1787148092316694700,"indexed_at_ns":1789270616904507600,"word_count":199},"backend/src/faq/faq.module.ts":{"size":234,"mtime_ns":1787148092316694700,"indexed_at_ns":1789270616910528200,"word_count":28},"backend/src/faq/faq.service.ts":{"size":1541,"mtime_ns":1787148092319911700,"indexed_at_ns":1789270616917121000,"word_count":184},"backend/src/home/dto/create-home.dto.ts":{"size":30,"mtime_ns":1783764561682365300,"indexed_at_ns":1789270616924120000,"word_count":4},"backend/src/home/dto/update-home.dto.ts":{"size":164,"mtime_ns":1783764561682365300,"indexed_at_ns":1789270616931121400,"word_count":18},"backend/src/home/entities/home.entity.ts":{"size":21,"mtime_ns":1783764561684884800,"indexed_at_ns":1789270616938015400,"word_count":4},"backend/src/home/home.controller.ts":{"size":757,"mtime_ns":1785327951212087300,"indexed_at_ns":1789270616944017100,"word_count":69},"backend/src/home/home.module.ts":{"size":241,"mtime_ns":1783764561687108000,"indexed_at_ns":1789270616951769600,"word_count":28},"backend/src/home/home.service.ts":{"size":1372,"mtime_ns":1785327951214087300,"indexed_at_ns":1789270616957334700,"word_count":144},"backend/src/ingredients/ingredients.controller.ts":{"size":1952,"mtime_ns":1786799852237596500,"indexed_at_ns":1789270616967477400,"word_count":165},"backend/src/ingredients/ingredients.module.ts":{"size":406,"mtime_ns":1786799852238596500,"indexed_at_ns":1789270616974476300,"word_count":38},"backend/src/ingredients/ingredients.service.ts":{"size":1526,"mtime_ns":1786799852240108300,"indexed_at_ns":1789270616980484600,"word_count":162},"backend/src/main.ts":{"size":4119,"mtime_ns":1787999006319547500,"indexed_at_ns":1789270616986484300,"word_count":362},"backend/src/menu/menu.controller.ts":{"size":2920,"mtime_ns":1787564348681948800,"indexed_at_ns":1789270616994003100,"word_count":265},"backend/src/menu/menu.module.ts":{"size":267,"mtime_ns":1787148092323869500,"indexed_at_ns":1789270617001011500,"word_count":30},"backend/src/menu/menu.service.ts":{"size":7799,"mtime_ns":1787564362262172600,"indexed_at_ns":1789270617007790000,"word_count":799},"backend/src/orders/dto/create-order.dto.ts":{"size":1899,"mtime_ns":1785327951218626100,"indexed_at_ns":1789270617015305900,"word_count":162},"backend/src/orders/orders.controller.spec.ts":{"size":1910,"mtime_ns":1785327951219627700,"indexed_at_ns":1789270617022263900,"word_count":194},"backend/src/orders/orders.controller.ts":{"size":5930,"mtime_ns":1787072106398077200,"indexed_at_ns":1789270617028261900,"word_count":517},"backend/src/orders/orders.module.ts":{"size":255,"mtime_ns":1783764561697598200,"indexed_at_ns":1789270617035263500,"word_count":28},"backend/src/orders/orders.service.spec.ts":{"size":5121,"mtime_ns":1787729523436876800,"indexed_at_ns":1789270617042260400,"word_count":493},"backend/src/orders/orders.service.ts":{"size":21538,"mtime_ns":1788609394322769200,"indexed_at_ns":1789270617048295100,"word_count":2046},"backend/src/payment/dto/admin-transaction-filter.dto.ts":{"size":2060,"mtime_ns":1787072106401590500,"indexed_at_ns":1789270617058801500,"word_count":191},"backend/src/payment/dto/ebank-checkout.dto.ts":{"size":1378,"mtime_ns":1787394001603461200,"indexed_at_ns":1789270617064805000,"word_count":118},"backend/src/payment/dto/initiate-payment.dto.ts":{"size":775,"mtime_ns":1786870552874246400,"indexed_at_ns":1789270617072445700,"word_count":69},"backend/src/payment/dto/verify-payment.dto.ts":{"size":1421,"mtime_ns":1786894580126857900,"indexed_at_ns":1789270617079448700,"word_count":126},"backend/src/payment/interfaces/payment-gateway.interface.ts":{"size":1330,"mtime_ns":1786870552876751100,"indexed_at_ns":1789270617086941800,"word_count":128},"backend/src/payment/payment.controller.ts":{"size":19204,"mtime_ns":1788609394323871800,"indexed_at_ns":1789270617093446700,"word_count":1576},"backend/src/payment/payment.module.ts":{"size":608,"mtime_ns":1787394001605617900,"indexed_at_ns":1789270617100454800,"word_count":61},"backend/src/payment/payment.service.ts":{"size":40259,"mtime_ns":1788609394325101800,"indexed_at_ns":1789270617107449100,"word_count":3576},"backend/src/payment/zibal-ebank.service.ts":{"size":10087,"mtime_ns":1787461919452306600,"indexed_at_ns":1789270617117425800,"word_count":1006},"backend/src/payment/zibal.service.ts":{"size":25781,"mtime_ns":1787461919453309100,"indexed_at_ns":1789270617125430200,"word_count":2490},"backend/src/pets/dto/create-health-log.dto.ts":{"size":761,"mtime_ns":1785327951229443300,"indexed_at_ns":1789270617132427600,"word_count":69},"backend/src/pets/dto/create-pet.dto.ts":{"size":1143,"mtime_ns":1785327951230948800,"indexed_at_ns":1789270617139428600,"word_count":104},"backend/src/pets/dto/create-reminder.dto.ts":{"size":810,"mtime_ns":1785327951231958200,"indexed_at_ns":1789270617146431800,"word_count":71},"backend/src/pets/dto/update-pet.dto.ts":{"size":160,"mtime_ns":1783764561709557500,"indexed_at_ns":1789270617153431400,"word_count":18},"backend/src/pets/pets.controller.spec.ts":{"size":2544,"mtime_ns":1786799852248118800,"indexed_at_ns":1789270617158931300,"word_count":269},"backend/src/pets/pets.controller.ts":{"size":8427,"mtime_ns":1787461919454308900,"indexed_at_ns":1789270617165649400,"word_count":781},"backend/src/pets/pets.module.ts":{"size":241,"mtime_ns":1783764561714469800,"indexed_at_ns":1789270617172646100,"word_count":28},"backend/src/pets/pets.service.spec.ts":{"size":2961,"mtime_ns":1785327951238208000,"indexed_at_ns":1789270617179650000,"word_count":272},"backend/src/pets/pets.service.ts":{"size":6978,"mtime_ns":1786799852250117400,"indexed_at_ns":1789270617187648600,"word_count":710},"backend/src/prescriptions/prescriptions.controller.ts":{"size":2356,"mtime_ns":1786799852253748300,"indexed_at_ns":1789270617195549800,"word_count":232},"backend/src/prescriptions/prescriptions.module.ts":{"size":495,"mtime_ns":1786954681815809200,"indexed_at_ns":1789270617202317700,"word_count":45},"backend/src/prescriptions/prescriptions.service.ts":{"size":4666,"mtime_ns":1787072106408779000,"indexed_at_ns":1789270617210394100,"word_count":498},"backend/src/prisma/prisma.module.ts":{"size":210,"mtime_ns":1783764561718199800,"indexed_at_ns":1789270617217824000,"word_count":24},"backend/src/prisma/prisma.service.ts":{"size":4250,"mtime_ns":1787640806107781000,"indexed_at_ns":1789270617228514800,"word_count":425},"backend/src/products/dto/get-products.dto.ts":{"size":1320,"mtime_ns":1786799852260271600,"indexed_at_ns":1789270617238169400,"word_count":115},"backend/src/products/products.controller.spec.ts":{"size":1863,"mtime_ns":1785327951243280800,"indexed_at_ns":1789270617245175100,"word_count":166},"backend/src/products/products.controller.ts":{"size":2445,"mtime_ns":1786799852261281700,"indexed_at_ns":1789270617252176900,"word_count":209},"backend/src/products/products.module.ts":{"size":340,"mtime_ns":1787999968301264900,"indexed_at_ns":1789270617260928000,"word_count":35},"backend/src/products/products.service.spec.ts":{"size":1860,"mtime_ns":1787729523438446200,"indexed_at_ns":1789270617268518200,"word_count":175},"backend/src/products/products.service.ts":{"size":7842,"mtime_ns":1788334048805380100,"indexed_at_ns":1789270617275523300,"word_count":807},"backend/src/redis/redis.module.ts":{"size":205,"mtime_ns":1783764561727662100,"indexed_at_ns":1789270617289526500,"word_count":24},"backend/src/redis/redis.service.spec.ts":{"size":1525,"mtime_ns":1783764561728672300,"indexed_at_ns":1789270617296664800,"word_count":145},"backend/src/redis/redis.service.ts":{"size":1202,"mtime_ns":1786895436211834600,"indexed_at_ns":1789270617307959700,"word_count":132},"backend/src/reviews/dto/create-review.dto.ts":{"size":949,"mtime_ns":1787072106414306300,"indexed_at_ns":1789270617315996800,"word_count":92},"backend/src/reviews/dto/update-review.dto.ts":{"size":534,"mtime_ns":1787072106415805700,"indexed_at_ns":1789270617321996900,"word_count":53},"backend/src/reviews/reviews.controller.ts":{"size":3318,"mtime_ns":1787645037375268800,"indexed_at_ns":1789270617328501800,"word_count":329},"backend/src/reviews/reviews.module.ts":{"size":374,"mtime_ns":1786944769517310800,"indexed_at_ns":1789270617335925700,"word_count":38},"backend/src/reviews/reviews.service.ts":{"size":7013,"mtime_ns":1787579631775586600,"indexed_at_ns":1789270617341924000,"word_count":742},"backend/src/seo/seo.controller.ts":{"size":904,"mtime_ns":1785327951247283200,"indexed_at_ns":1789270617352931900,"word_count":85},"backend/src/seo/seo.module.ts":{"size":342,"mtime_ns":1785148022268580900,"indexed_at_ns":1789270617359433900,"word_count":38},"backend/src/seo/seo.service.ts":{"size":2023,"mtime_ns":1787127978249385200,"indexed_at_ns":1789270617365009200,"word_count":182},"backend/src/settings/default-ui-texts.ts":{"size":19885,"mtime_ns":1789276760429659300,"indexed_at_ns":1789277217952622900,"word_count":1584},"backend/src/settings/dto/sms-log-query.dto.ts":{"size":1343,"mtime_ns":1787072106421339300,"indexed_at_ns":1789270617378013400,"word_count":125},"backend/src/settings/settings.controller.spec.ts":{"size":2855,"mtime_ns":1787729523438446200,"indexed_at_ns":1789270617385013500,"word_count":239},"backend/src/settings/settings.controller.ts":{"size":9726,"mtime_ns":1788609394326111700,"indexed_at_ns":1789270617391518100,"word_count":762},"backend/src/settings/settings.module.ts":{"size":382,"mtime_ns":1783764561735515700,"indexed_at_ns":1789270617398529600,"word_count":38},"backend/src/settings/settings.service.spec.ts":{"size":3028,"mtime_ns":1787729523439452400,"indexed_at_ns":1789270617405529700,"word_count":279},"backend/src/settings/settings.service.ts":{"size":29301,"mtime_ns":1789276760431396900,"indexed_at_ns":1789277217985780100,"word_count":2227},"backend/src/smart-advisor/smart-advisor.controller.ts":{"size":1821,"mtime_ns":1786799852275441500,"indexed_at_ns":1789270617418044600,"word_count":152},"backend/src/smart-advisor/smart-advisor.module.ts":{"size":416,"mtime_ns":1786799852276441700,"indexed_at_ns":1789270617425618900,"word_count":38},"backend/src/smart-advisor/smart-advisor.service.ts":{"size":1241,"mtime_ns":1786799852277440400,"indexed_at_ns":1789270617431619100,"word_count":131},"backend/src/testimonials/testimonials.controller.ts":{"size":1905,"mtime_ns":1787148092329786500,"indexed_at_ns":1789270617438622400,"word_count":160},"backend/src/testimonials/testimonials.module.ts":{"size":414,"mtime_ns":1786799852279441800,"indexed_at_ns":1789270617446632400,"word_count":38},"backend/src/testimonials/testimonials.service.ts":{"size":1268,"mtime_ns":1787148092332501600,"indexed_at_ns":1789270617452632400,"word_count":140},"backend/src/tickets/dto/create-ticket.dto.ts":{"size":2374,"mtime_ns":1787072106430874900,"indexed_at_ns":1789270617459665400,"word_count":201},"backend/src/tickets/dto/ticket-query.dto.ts":{"size":1103,"mtime_ns":1787072106431871400,"indexed_at_ns":1789270617465701200,"word_count":106},"backend/src/tickets/tickets.controller.ts":{"size":3114,"mtime_ns":1787072106433878000,"indexed_at_ns":1789270617473254800,"word_count":293},"backend/src/tickets/tickets.module.ts":{"size":374,"mtime_ns":1786890779322296800,"indexed_at_ns":1789270617479322100,"word_count":38},"backend/src/tickets/tickets.service.ts":{"size":7310,"mtime_ns":1787072106434874300,"indexed_at_ns":1789270617485288900,"word_count":781},"backend/src/users/dto/address.dto.ts":{"size":1098,"mtime_ns":1783764561739871500,"indexed_at_ns":1789270617492797600,"word_count":99},"backend/src/users/dto/update-profile.dto.ts":{"size":1068,"mtime_ns":1786885876805472100,"indexed_at_ns":1789270617499803000,"word_count":98},"backend/src/users/users.controller.spec.ts":{"size":3333,"mtime_ns":1785327951253796500,"indexed_at_ns":1789270617505801900,"word_count":322},"backend/src/users/users.controller.ts":{"size":6854,"mtime_ns":1786799852282481500,"indexed_at_ns":1789270617512311000,"word_count":590},"backend/src/users/users.module.ts":{"size":275,"mtime_ns":1783764561748154400,"indexed_at_ns":1789270617519988900,"word_count":30},"backend/src/users/users.service.spec.ts":{"size":3844,"mtime_ns":1787729523440453600,"indexed_at_ns":1789270617525985900,"word_count":320},"backend/src/users/users.service.ts":{"size":9199,"mtime_ns":1788609394329113500,"indexed_at_ns":1789270617531986400,"word_count":861},"backend/src/videos/dto/create-video.dto.ts":{"size":1573,"mtime_ns":1786971396042093900,"indexed_at_ns":1789270617538985200,"word_count":127},"backend/src/videos/dto/get-videos-query.dto.ts":{"size":643,"mtime_ns":1786799852287643500,"indexed_at_ns":1789270617547000000,"word_count":77},"backend/src/videos/videos.controller.ts":{"size":1924,"mtime_ns":1786799852291153100,"indexed_at_ns":1789270617554853800,"word_count":173},"backend/src/videos/videos.module.ts":{"size":283,"mtime_ns":1785148022306583700,"indexed_at_ns":1789270617561978900,"word_count":30},"backend/src/videos/videos.service.ts":{"size":3036,"mtime_ns":1788334048807380600,"indexed_at_ns":1789270617567985000,"word_count":321},"backend/src/wholesale/dto/wholesale-apply.dto.ts":{"size":739,"mtime_ns":1785148022317622300,"indexed_at_ns":1789270617574983300,"word_count":66},"backend/src/wholesale/wholesale.controller.ts":{"size":2037,"mtime_ns":1786799852294177000,"indexed_at_ns":1789270617581987300,"word_count":160},"backend/src/wholesale/wholesale.module.ts":{"size":390,"mtime_ns":1785148022328746300,"indexed_at_ns":1789270617587986600,"word_count":38},"backend/src/wholesale/wholesale.service.ts":{"size":2618,"mtime_ns":1788584193713366900,"indexed_at_ns":1789270617594497000,"word_count":266},"backend/src/wiki/dto/create-wiki.dto.ts":{"size":30,"mtime_ns":1783764561752933200,"indexed_at_ns":1789270617600497300,"word_count":4},"backend/src/wiki/dto/update-wiki.dto.ts":{"size":164,"mtime_ns":1783764561753945200,"indexed_at_ns":1789270617606495500,"word_count":18},"backend/src/wiki/entities/wiki.entity.ts":{"size":21,"mtime_ns":1783764561755039400,"indexed_at_ns":1789270617612605800,"word_count":4},"backend/src/wiki/wiki.controller.ts":{"size":1219,"mtime_ns":1785327951272850400,"indexed_at_ns":1789270617618607300,"word_count":110},"backend/src/wiki/wiki.module.ts":{"size":241,"mtime_ns":1783764561756925000,"indexed_at_ns":1789270617625607400,"word_count":28},"backend/src/wiki/wiki.service.ts":{"size":1562,"mtime_ns":1786799852295173000,"indexed_at_ns":1789270617632609000,"word_count":174},"backend/test/app-audit-verification.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059109005600,"indexed_at_ns":1789270617638604900,"word_count":2},"backend/test/app-audit-verification.e2e-spec.js":{"size":8429,"mtime_ns":1787073059110516300,"indexed_at_ns":1789270617644605700,"word_count":714},"backend/test/app-audit-verification.e2e-spec.ts":{"size":6464,"mtime_ns":1786799852296174700,"indexed_at_ns":1789270617655606000,"word_count":569},"backend/test/app.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059112563300,"indexed_at_ns":1789270617662590400,"word_count":2},"backend/test/app.e2e-spec.js":{"size":1228,"mtime_ns":1787073059113572500,"indexed_at_ns":1789270617668591200,"word_count":97},"backend/test/app.e2e-spec.ts":{"size":981,"mtime_ns":1786799852297175000,"indexed_at_ns":1789270617678591700,"word_count":83},"backend/test/jest-e2e.json":{"size":183,"mtime_ns":1783764561762911800,"indexed_at_ns":1789270627991150700,"word_count":17,"hashes":{"backend/test/jest-e2e.json":"94091f560937212ad7027afcb77e62e6ac79e3e4cb401c3a16a56e7be4cac721"}},"backend/tsconfig.build.json":{"size":107,"mtime_ns":1783764561763447000,"indexed_at_ns":1789270627992152800,"word_count":10,"hashes":{"backend/tsconfig.build.json":"1f47c7dc3c8b5a15558654f45f21e0f553acc1680046f09dc24428e8538c4f9d"}},"backend/tsconfig.json":{"size":785,"mtime_ns":1787073059116167600,"indexed_at_ns":1789270627993150700,"word_count":56,"hashes":{"backend/tsconfig.json":"9b20fbca537d1e55f3a113fcee6683f0eb1f06752d3c8c52edf26eef8e2053f2"}},"backend/uploads/1781288429353-508765350.jpg":{"size":110246,"mtime_ns":1783764561766257000,"indexed_at_ns":1789270617705104200,"word_count":3882},"canina.md":{"size":21919,"mtime_ns":1786885876809472400,"indexed_at_ns":1789270617716611800,"word_count":1983},"canina.pdf":{"size":2858373,"mtime_ns":1785148022370811500,"indexed_at_ns":1789270617722205400,"word_count":0},"docker-compose.yml":{"size":2147,"mtime_ns":1787752951349742200,"indexed_at_ns":1789270617728204000,"word_count":125},"docs/01-introduction.md":{"size":5537,"mtime_ns":1786885876812474900,"indexed_at_ns":1789270617737203000,"word_count":523},"docs/02-user-guide.md":{"size":4303,"mtime_ns":1786885876813985900,"indexed_at_ns":1789270617743202200,"word_count":422},"docs/03-developer-guide.md":{"size":6717,"mtime_ns":1783764561771660500,"indexed_at_ns":1789270617749206200,"word_count":678},"docs/04-setup-and-deployment.md":{"size":4005,"mtime_ns":1787127978256847800,"indexed_at_ns":1789270628069439700,"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":1789270628070000800,"word_count":374,"hashes":{"docs/05-devops-and-monitoring.md":"53f1f45bbbdd3cf81cb4bc082ef4e49f506627f10f581d3c4b835028d02b5421"}},"docs/06-testing.md":{"size":4214,"mtime_ns":1783764561774967500,"indexed_at_ns":1789270628072037700,"word_count":457,"hashes":{"docs/06-testing.md":"69d50bd5e233f030d8076b55b69599cee201e1c393b7ee1beeb495c304fd4bd3"}},"docs/README.md":{"size":2740,"mtime_ns":1786885876816996700,"indexed_at_ns":1789270628073037400,"word_count":253,"hashes":{"docs/readme.md":"1b7ffde4b290e742802fc554f2dd2f7a2316fe25bd1cd328421ffa823b36f40f"}},"docs/audit/00-repository-map.md":{"size":3171,"mtime_ns":1786799852298174200,"indexed_at_ns":1789270628074037400,"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":1789270628075037200,"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":1789270628076036800,"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":1789270628077036400,"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":1789270628078034900,"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":1789270617825305000,"word_count":560},"docs/audit/06-storefront-audit.md":{"size":4191,"mtime_ns":1786799852303691400,"indexed_at_ns":1789270628079036300,"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":1789270628080039200,"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":1789270628081037100,"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":1789270628082036100,"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":1789270617861685200,"word_count":678},"docs/audit/11-code-quality-audit.md":{"size":3379,"mtime_ns":1786799852308957000,"indexed_at_ns":1789270628083036100,"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":1789270628084036500,"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":1789270628086007600,"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":1789270628086816600,"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":1789270627994150400,"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":1789270628088241800,"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":1789270627995151800,"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":1789270628089277600,"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":1789270628090313200,"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":1789270627996181900,"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":1789270628091314300,"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":1789270617946960800,"word_count":139},"docs/audit/23-untracked-first-party-files.txt":{"size":59,"mtime_ns":1786799852319066000,"indexed_at_ns":1789270617953963800,"word_count":7},"docs/audit/24-omitted-file-inspection-report.md":{"size":2462,"mtime_ns":1786799852320065700,"indexed_at_ns":1789270628092312800,"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":1789270627998188900,"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":1789270628093312600,"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":1789270617981071000,"word_count":148},"docs/audit/28-full-repository-classification.json":{"size":27913,"mtime_ns":1786799852324099500,"indexed_at_ns":1789270627999182000,"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":1789270628000182600,"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":1789270628001181600,"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":1789270628094316200,"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":1789270628002181800,"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":1789270628095312600,"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":1789270628003181400,"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":1789270628004718200,"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":1789270628005750600,"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":1789270618047578600,"word_count":398},"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md":{"size":2146,"mtime_ns":1786799852332642700,"indexed_at_ns":1789270618053578600,"word_count":239},"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md":{"size":15307,"mtime_ns":1787127978258848200,"indexed_at_ns":1789270618061680900,"word_count":1579},"docs/audit/MASTER-TASK-BACKLOG.md":{"size":30107,"mtime_ns":1786799852335470200,"indexed_at_ns":1789270618069686800,"word_count":3510},"docs/audit/audit-state.json":{"size":4135,"mtime_ns":1786799852337382200,"indexed_at_ns":1789270628006752900,"word_count":267,"hashes":{"docs/audit/audit-state.json":"4b804494570a2812170cb8dab35d15da659f57d6e637652328725e956f7d98aa"}},"docs/audit/build_manifest.js":{"size":4060,"mtime_ns":1786799852338393200,"indexed_at_ns":1789270618080688800,"word_count":348},"docs/audit/frontend-route-map.md":{"size":2558,"mtime_ns":1786799852339389800,"indexed_at_ns":1789270618088688900,"word_count":329},"docs/audit/generate_classification.js":{"size":2186,"mtime_ns":1786799852339389800,"indexed_at_ns":1789270618094342200,"word_count":204},"docs/audit/generate_evidence.js":{"size":3098,"mtime_ns":1786799852340390100,"indexed_at_ns":1789270618100909300,"word_count":253},"docs/audit/generate_ledger.js":{"size":7648,"mtime_ns":1786799852341897300,"indexed_at_ns":1789270618107908600,"word_count":620},"docs/audit/generate_manifest.js":{"size":6357,"mtime_ns":1786799852341897300,"indexed_at_ns":1789270618114427800,"word_count":489},"docs/audit/master-task-backlog.json":{"size":22336,"mtime_ns":1786799852342906700,"indexed_at_ns":1789270628008285500,"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":1789270618132427800,"word_count":736},"docs/audit/phase3-traceability-matrix.md":{"size":5237,"mtime_ns":1786799852344952800,"indexed_at_ns":1789270628096312500,"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":1789270628097312900,"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":1789270628098312200,"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":1789270628099311900,"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":1789270628101311700,"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":1789270618174240700,"word_count":559},"docs/audit/sync_honest_manifest.js":{"size":1213,"mtime_ns":1786799852349953100,"indexed_at_ns":1789270618179754400,"word_count":75},"docs/audit/sync_manifest.js":{"size":997,"mtime_ns":1786799852350953300,"indexed_at_ns":1789270618185754000,"word_count":62},"docs/audit/validate_evidence_grade.js":{"size":6141,"mtime_ns":1786799852351954100,"indexed_at_ns":1789270618191752300,"word_count":526},"docs/audit/validate_integrity.js":{"size":3408,"mtime_ns":1786799852352952400,"indexed_at_ns":1789270618198591600,"word_count":284},"docs/backlog.md":{"size":26175,"mtime_ns":1786799852356021600,"indexed_at_ns":1789270618207217400,"word_count":2834},"frontend/admin-panel/README.md":{"size":2425,"mtime_ns":1783764561778952800,"indexed_at_ns":1789270628102311100,"word_count":212,"hashes":{"frontend/admin-panel/readme.md":"3945c052249ebd020b013303d5921815b52d847bd36c748a03bfdc8eb2a390b8"}},"frontend/admin-panel/eslint.config.js":{"size":906,"mtime_ns":1787148092334501700,"indexed_at_ns":1789270618225958700,"word_count":69},"frontend/admin-panel/index.html":{"size":363,"mtime_ns":1783764561780558500,"indexed_at_ns":1789270618237853000,"word_count":28},"frontend/admin-panel/package.json":{"size":1072,"mtime_ns":1788000055991496000,"indexed_at_ns":1789270628009321600,"word_count":84,"hashes":{"frontend/admin-panel/package.json":"455b58b802fb0ba4c5aabfa83f023a9e9b692f1d6a2e71b66952509b1a7dd6da"}},"frontend/admin-panel/postcss.config.js":{"size":91,"mtime_ns":1783764561796281900,"indexed_at_ns":1789270618246886800,"word_count":11},"frontend/admin-panel/public/favicon.svg":{"size":9522,"mtime_ns":1783764561797801500,"indexed_at_ns":1789270618252857900,"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":1789270618279508600,"word_count":15},"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856792445365000,"indexed_at_ns":1789270618305068800,"word_count":15},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856792454604400,"indexed_at_ns":1789270628103314500,"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":1789270628104850400,"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":1789270618854902100,"word_count":10881},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856792548005600,"indexed_at_ns":1789270628105882300,"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":1789270628106885400,"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":1789270619392328900,"word_count":2615},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856792646666000,"indexed_at_ns":1789270619419324700,"word_count":55},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856792647671700,"indexed_at_ns":1789270628107882300,"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":1789270619436709000,"word_count":671},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856792648669800,"indexed_at_ns":1789270628109453900,"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":1789270621751271600,"word_count":14},"frontend/admin-panel/public/icons.svg":{"size":5031,"mtime_ns":1783764561799320300,"indexed_at_ns":1789270621757271500,"word_count":382},"frontend/admin-panel/src/App.tsx":{"size":1088,"mtime_ns":1786799852365481100,"indexed_at_ns":1789270621767778600,"word_count":99},"frontend/admin-panel/src/assets/hero.png":{"size":13057,"mtime_ns":1783764561812863000,"indexed_at_ns":1789270621775435200,"word_count":437},"frontend/admin-panel/src/assets/react.svg":{"size":4126,"mtime_ns":1783764561813924700,"indexed_at_ns":1789270621782434300,"word_count":366},"frontend/admin-panel/src/assets/vite.svg":{"size":8709,"mtime_ns":1783764561814995700,"indexed_at_ns":1789270621790924700,"word_count":439},"frontend/admin-panel/src/components/Layout.tsx":{"size":726,"mtime_ns":1784621786958594800,"indexed_at_ns":1789270621799639800,"word_count":69},"frontend/admin-panel/src/components/ProtectedRoute.tsx":{"size":2336,"mtime_ns":1786799852369164100,"indexed_at_ns":1789270621805640200,"word_count":210},"frontend/admin-panel/src/components/RouteErrorBoundary.tsx":{"size":4042,"mtime_ns":1787062174623011100,"indexed_at_ns":1789270621812942200,"word_count":350},"frontend/admin-panel/src/components/Sidebar.tsx":{"size":13218,"mtime_ns":1788859667825174100,"indexed_at_ns":1789270621819786900,"word_count":1210},"frontend/admin-panel/src/components/Topbar.tsx":{"size":19016,"mtime_ns":1787466234964385700,"indexed_at_ns":1789270621835931900,"word_count":1586},"frontend/admin-panel/src/components/TransactionReceiptModal.tsx":{"size":9674,"mtime_ns":1787405554804618300,"indexed_at_ns":1789270621850328800,"word_count":738},"frontend/admin-panel/src/components/ui/Badge.tsx":{"size":1554,"mtime_ns":1787461920844094000,"indexed_at_ns":1789270621862840900,"word_count":158},"frontend/admin-panel/src/components/ui/Button.tsx":{"size":3591,"mtime_ns":1787467799871536000,"indexed_at_ns":1789270621871483600,"word_count":338},"frontend/admin-panel/src/components/ui/ConfirmModal.tsx":{"size":2294,"mtime_ns":1786972191359099700,"indexed_at_ns":1789270621895455600,"word_count":192},"frontend/admin-panel/src/components/ui/FormField.tsx":{"size":1683,"mtime_ns":1786954681823527000,"indexed_at_ns":1789270621906168900,"word_count":148},"frontend/admin-panel/src/components/ui/IconPickerModal.tsx":{"size":4853,"mtime_ns":1787071159959928200,"indexed_at_ns":1789270621915319700,"word_count":397},"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx":{"size":3351,"mtime_ns":1786954681824534900,"indexed_at_ns":1789270621923302500,"word_count":270},"frontend/admin-panel/src/components/ui/Input.tsx":{"size":2451,"mtime_ns":1788332598539946700,"indexed_at_ns":1789270621934302400,"word_count":213},"frontend/admin-panel/src/components/ui/MaskableField.tsx":{"size":3246,"mtime_ns":1787405554805712000,"indexed_at_ns":1789270621942300200,"word_count":310},"frontend/admin-panel/src/components/ui/MediaSelector.tsx":{"size":21604,"mtime_ns":1787038450536696800,"indexed_at_ns":1789270621949304000,"word_count":1686},"frontend/admin-panel/src/components/ui/Modal.tsx":{"size":3381,"mtime_ns":1787461920845094300,"indexed_at_ns":1789270621957302800,"word_count":324},"frontend/admin-panel/src/components/ui/Pagination.tsx":{"size":5510,"mtime_ns":1786799852387442100,"indexed_at_ns":1789270621965217200,"word_count":447},"frontend/admin-panel/src/components/ui/PriceInput.tsx":{"size":2633,"mtime_ns":1786948119771162400,"indexed_at_ns":1789270621972801300,"word_count":267},"frontend/admin-panel/src/components/ui/RichTextEditor.tsx":{"size":36574,"mtime_ns":1787980615563542500,"indexed_at_ns":1789270621981037300,"word_count":2767},"frontend/admin-panel/src/components/ui/Select.tsx":{"size":1881,"mtime_ns":1786954681828537500,"indexed_at_ns":1789270621992657300,"word_count":160},"frontend/admin-panel/src/components/ui/Skeleton.tsx":{"size":178,"mtime_ns":1783856792977535800,"indexed_at_ns":1789270622000354500,"word_count":22},"frontend/admin-panel/src/components/ui/Spinner.tsx":{"size":650,"mtime_ns":1783856792979049200,"indexed_at_ns":1789270622008453200,"word_count":67},"frontend/admin-panel/src/components/ui/Textarea.tsx":{"size":1287,"mtime_ns":1786954681828537500,"indexed_at_ns":1789270622015453500,"word_count":110},"frontend/admin-panel/src/components/ui/ThSort.tsx":{"size":1478,"mtime_ns":1787461920845094300,"indexed_at_ns":1789270622025457900,"word_count":148},"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx":{"size":1623,"mtime_ns":1786954681830044900,"indexed_at_ns":1789270622032241200,"word_count":143},"frontend/admin-panel/src/main.tsx":{"size":1055,"mtime_ns":1787062325395038600,"indexed_at_ns":1789270622044205400,"word_count":106},"frontend/admin-panel/src/pages/B2BManager.tsx":{"size":24689,"mtime_ns":1787729527927391700,"indexed_at_ns":1789270622058674800,"word_count":1682},"frontend/admin-panel/src/pages/BannersManager.tsx":{"size":19583,"mtime_ns":1787467799874171700,"indexed_at_ns":1789270622066677000,"word_count":1396},"frontend/admin-panel/src/pages/Blogs.tsx":{"size":82294,"mtime_ns":1787729527928391800,"indexed_at_ns":1789270622074310300,"word_count":5654},"frontend/admin-panel/src/pages/CMS.tsx":{"size":10114,"mtime_ns":1787467933664259800,"indexed_at_ns":1789270622084094100,"word_count":791},"frontend/admin-panel/src/pages/Categories.tsx":{"size":16242,"mtime_ns":1787469989141511600,"indexed_at_ns":1789270622091163600,"word_count":1174},"frontend/admin-panel/src/pages/ContactSubmissions.tsx":{"size":12346,"mtime_ns":1787467799877343800,"indexed_at_ns":1789270622098731900,"word_count":842},"frontend/admin-panel/src/pages/Coupons.tsx":{"size":27669,"mtime_ns":1788332598543451700,"indexed_at_ns":1789270622105731100,"word_count":2138},"frontend/admin-panel/src/pages/Dashboard.tsx":{"size":6006,"mtime_ns":1786885876829510000,"indexed_at_ns":1789270622113240500,"word_count":534},"frontend/admin-panel/src/pages/DoctorsManager.tsx":{"size":23282,"mtime_ns":1787467799879923800,"indexed_at_ns":1789270622122014200,"word_count":1666},"frontend/admin-panel/src/pages/FAQManager.tsx":{"size":12625,"mtime_ns":1787467799881924800,"indexed_at_ns":1789270622130138500,"word_count":937},"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx":{"size":27051,"mtime_ns":1788333161520132500,"indexed_at_ns":1789270622137679700,"word_count":1794},"frontend/admin-panel/src/pages/IngredientsManager.tsx":{"size":17943,"mtime_ns":1787467933669934500,"indexed_at_ns":1789270622145808400,"word_count":1254},"frontend/admin-panel/src/pages/Login.tsx":{"size":11573,"mtime_ns":1788587906733886000,"indexed_at_ns":1789270622152808300,"word_count":838},"frontend/admin-panel/src/pages/Media.tsx":{"size":29374,"mtime_ns":1787467799885925200,"indexed_at_ns":1789270622159929500,"word_count":2304},"frontend/admin-panel/src/pages/MenuManager.tsx":{"size":19625,"mtime_ns":1787469989146215000,"indexed_at_ns":1789270622167896100,"word_count":1512},"frontend/admin-panel/src/pages/MonitoringPage.tsx":{"size":16455,"mtime_ns":1787466234965980200,"indexed_at_ns":1789270622174986700,"word_count":1289},"frontend/admin-panel/src/pages/Orders.tsx":{"size":64822,"mtime_ns":1788609394330111700,"indexed_at_ns":1789270622183019600,"word_count":4808},"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx":{"size":37893,"mtime_ns":1787467799889939500,"indexed_at_ns":1789270622191604400,"word_count":2521},"frontend/admin-panel/src/pages/Pets.tsx":{"size":16631,"mtime_ns":1787467799891938300,"indexed_at_ns":1789270622199262800,"word_count":1209},"frontend/admin-panel/src/pages/PrescriptionsManager.tsx":{"size":19424,"mtime_ns":1787467799892935800,"indexed_at_ns":1789270622205968100,"word_count":1419},"frontend/admin-panel/src/pages/Products.tsx":{"size":248144,"mtime_ns":1788351605801883800,"indexed_at_ns":1789270622214377400,"word_count":16079},"frontend/admin-panel/src/pages/Reports.tsx":{"size":24050,"mtime_ns":1787729523442451300,"indexed_at_ns":1789270622228783000,"word_count":1832},"frontend/admin-panel/src/pages/Reviews.tsx":{"size":30539,"mtime_ns":1787740536670948600,"indexed_at_ns":1789270622235782700,"word_count":2140},"frontend/admin-panel/src/pages/SeoSettingsPage.tsx":{"size":50513,"mtime_ns":1788343360494035900,"indexed_at_ns":1789270622244128800,"word_count":3404},"frontend/admin-panel/src/pages/Settings.tsx":{"size":24256,"mtime_ns":1787468615457819400,"indexed_at_ns":1789270622252833800,"word_count":1701},"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx":{"size":7615,"mtime_ns":1787467799901935300,"indexed_at_ns":1789270622260342200,"word_count":585},"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx":{"size":13745,"mtime_ns":1787467799902933600,"indexed_at_ns":1789270622267103500,"word_count":1014},"frontend/admin-panel/src/pages/SmsSettingsPage.tsx":{"size":133924,"mtime_ns":1788625198956980200,"indexed_at_ns":1789270622273776000,"word_count":9185},"frontend/admin-panel/src/pages/SslSettingsPage.tsx":{"size":25502,"mtime_ns":1787467799905446700,"indexed_at_ns":1789270622284909800,"word_count":1847},"frontend/admin-panel/src/pages/SystemSettingsPage.tsx":{"size":25018,"mtime_ns":1789276760433608700,"indexed_at_ns":1789277222430253200,"word_count":1626},"frontend/admin-panel/src/pages/TestimonialsManager.tsx":{"size":18547,"mtime_ns":1787467799908955400,"indexed_at_ns":1789270622297721200,"word_count":1297},"frontend/admin-panel/src/pages/Tickets.tsx":{"size":20254,"mtime_ns":1787467799909962900,"indexed_at_ns":1789270622304788100,"word_count":1455},"frontend/admin-panel/src/pages/Transactions.tsx":{"size":45136,"mtime_ns":1787471434872188300,"indexed_at_ns":1789270622313454800,"word_count":3213},"frontend/admin-panel/src/pages/UITexts.tsx":{"size":64687,"mtime_ns":1788587906738676600,"indexed_at_ns":1789270622325121300,"word_count":5471},"frontend/admin-panel/src/pages/Users.tsx":{"size":42038,"mtime_ns":1788587906739671200,"indexed_at_ns":1789270622337715000,"word_count":2827},"frontend/admin-panel/src/pages/Videos.tsx":{"size":25920,"mtime_ns":1787740536675689700,"indexed_at_ns":1789270622347050000,"word_count":1845},"frontend/admin-panel/src/pages/WholesaleApplications.tsx":{"size":6713,"mtime_ns":1787467799916852500,"indexed_at_ns":1789270622381307100,"word_count":505},"frontend/admin-panel/src/pages/Wiki.tsx":{"size":15651,"mtime_ns":1787469989158212800,"indexed_at_ns":1789270622392626000,"word_count":1221},"frontend/admin-panel/src/pages/ZibalPortalPage.tsx":{"size":55699,"mtime_ns":1787570438155805200,"indexed_at_ns":1789270622402243200,"word_count":3753},"frontend/admin-panel/src/routes/adminRoutes.tsx":{"size":6385,"mtime_ns":1788859667828173200,"indexed_at_ns":1789270622410652700,"word_count":616},"frontend/admin-panel/src/services/api.ts":{"size":5190,"mtime_ns":1787997670262225000,"indexed_at_ns":1789270622417651300,"word_count":479},"frontend/admin-panel/src/store/adminAuthStore.ts":{"size":666,"mtime_ns":1786799852469037000,"indexed_at_ns":1789270622425098600,"word_count":65},"frontend/admin-panel/src/types/admin.ts":{"size":4943,"mtime_ns":1788859667829203600,"indexed_at_ns":1789270622431097000,"word_count":531},"frontend/admin-panel/src/utils/lazyWithRetry.ts":{"size":1129,"mtime_ns":1787062174626227900,"indexed_at_ns":1789270622438096100,"word_count":114},"frontend/admin-panel/src/utils/useTableParams.ts":{"size":4060,"mtime_ns":1787461920855096000,"indexed_at_ns":1789270622453462000,"word_count":441},"frontend/admin-panel/tailwind.config.js":{"size":182,"mtime_ns":1783764561861721300,"indexed_at_ns":1789270622459543900,"word_count":20},"frontend/admin-panel/tsconfig.app.json":{"size":633,"mtime_ns":1787055476779566300,"indexed_at_ns":1789270628010321600,"word_count":48,"hashes":{"frontend/admin-panel/tsconfig.app.json":"2d9838ee1119342fd03bf7644781b8b6aced2cbdc908ff186cdd6ab7ab9ba1c4"}},"frontend/admin-panel/tsconfig.json":{"size":119,"mtime_ns":1783764561863393600,"indexed_at_ns":1789270628011322400,"word_count":15,"hashes":{"frontend/admin-panel/tsconfig.json":"7a6c2e21b6eaa2355b4e2ed29db2a767499a88498bde745cdccf3ba8c7f64f2b"}},"frontend/admin-panel/tsconfig.node.json":{"size":591,"mtime_ns":1783764561863923100,"indexed_at_ns":1789270628012321100,"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":1789270622482398900,"word_count":18},"frontend/application/AGENTS.md":{"size":717,"mtime_ns":1787127978268943700,"indexed_at_ns":1789270622493401000,"word_count":88},"frontend/application/CLAUDE.md":{"size":11,"mtime_ns":1783764561866744500,"indexed_at_ns":1789270628110456700,"word_count":1,"hashes":{"frontend/application/claude.md":"0776fbbe8c29c6dc861efa70683090a370ab56dc77c22cb9de74895b4c783320"}},"frontend/application/README.md":{"size":1450,"mtime_ns":1783764561867354300,"indexed_at_ns":1789270628111453900,"word_count":155,"hashes":{"frontend/application/readme.md":"dd829cdf325092d859080ac1db3cbf2cca3198e72834f0f228495ef3c49a2240"}},"frontend/application/app/ClientLayout.tsx":{"size":10217,"mtime_ns":1789272909856072400,"indexed_at_ns":1789276692225916900,"word_count":982},"frontend/application/app/HomeClient.tsx":{"size":18691,"mtime_ns":1788683449026016700,"indexed_at_ns":1789270622515683900,"word_count":1204},"frontend/application/app/about/page.tsx":{"size":5706,"mtime_ns":1787139270959412500,"indexed_at_ns":1789270622523704900,"word_count":474},"frontend/application/app/api/revalidate/route.ts":{"size":1889,"mtime_ns":1787579631780106700,"indexed_at_ns":1789270622546913200,"word_count":220},"frontend/application/app/b2b/error.tsx":{"size":380,"mtime_ns":1787645037377262000,"indexed_at_ns":1789270622582311100,"word_count":50},"frontend/application/app/b2b/page.tsx":{"size":1506,"mtime_ns":1787644197141618200,"indexed_at_ns":1789270622590319400,"word_count":135},"frontend/application/app/blog/[slug]/page.tsx":{"size":8201,"mtime_ns":1787641161057694000,"indexed_at_ns":1789270622600858600,"word_count":767},"frontend/application/app/blog/error.tsx":{"size":382,"mtime_ns":1787645037378268200,"indexed_at_ns":1789270622608113600,"word_count":50},"frontend/application/app/blog/loading.tsx":{"size":1293,"mtime_ns":1787645037379262800,"indexed_at_ns":1789270622614811700,"word_count":115},"frontend/application/app/blog/page.tsx":{"size":3378,"mtime_ns":1787993003772568700,"indexed_at_ns":1789270622620981900,"word_count":346},"frontend/application/app/blog/rss.xml/route.ts":{"size":3076,"mtime_ns":1787577523710351300,"indexed_at_ns":1789270622628981400,"word_count":280},"frontend/application/app/catalog/CatalogClient.tsx":{"size":1416,"mtime_ns":1788683206845973300,"indexed_at_ns":1789270622634981900,"word_count":131},"frontend/application/app/catalog/page.tsx":{"size":671,"mtime_ns":1787139270965525300,"indexed_at_ns":1789270622641452100,"word_count":66},"frontend/application/app/checkout/page.tsx":{"size":604,"mtime_ns":1787139270967535500,"indexed_at_ns":1789270622648493900,"word_count":60},"frontend/application/app/checkout/success/[id]/page.tsx":{"size":629,"mtime_ns":1788624822997484300,"indexed_at_ns":1789270622655493300,"word_count":73},"frontend/application/app/contact/page.tsx":{"size":2655,"mtime_ns":1787644197143198500,"indexed_at_ns":1789270622662409800,"word_count":214},"frontend/application/app/dashboard/page.tsx":{"size":903,"mtime_ns":1787394935318217400,"indexed_at_ns":1789270622676614100,"word_count":83},"frontend/application/app/error.tsx":{"size":383,"mtime_ns":1785148022478709000,"indexed_at_ns":1789270622691988100,"word_count":50},"frontend/application/app/layout.tsx":{"size":6818,"mtime_ns":1788354488237712300,"indexed_at_ns":1789270622707465800,"word_count":547},"frontend/application/app/loading.tsx":{"size":1373,"mtime_ns":1785148022487650000,"indexed_at_ns":1789270622714073200,"word_count":122},"frontend/application/app/not-found.tsx":{"size":124,"mtime_ns":1783764561891411400,"indexed_at_ns":1789270622720463700,"word_count":15},"frontend/application/app/page.tsx":{"size":1093,"mtime_ns":1788587906745671800,"indexed_at_ns":1789270622725462900,"word_count":120},"frontend/application/app/payment/verify/page.tsx":{"size":14338,"mtime_ns":1786891855356078600,"indexed_at_ns":1789270622732462300,"word_count":1094},"frontend/application/app/privacy/page.tsx":{"size":4098,"mtime_ns":1787139270976563700,"indexed_at_ns":1789270622741461600,"word_count":336},"frontend/application/app/profile/page.tsx":{"size":623,"mtime_ns":1787139270978803200,"indexed_at_ns":1789270622749507200,"word_count":63},"frontend/application/app/robots.ts":{"size":825,"mtime_ns":1787578481501464000,"indexed_at_ns":1789270622754497300,"word_count":72},"frontend/application/app/search/page.tsx":{"size":786,"mtime_ns":1787139270979946700,"indexed_at_ns":1789270622761872300,"word_count":82},"frontend/application/app/shop/[slug]/page.tsx":{"size":11321,"mtime_ns":1788624822998554000,"indexed_at_ns":1789270622768907500,"word_count":1018},"frontend/application/app/shop/error.tsx":{"size":382,"mtime_ns":1787645037380267900,"indexed_at_ns":1789270622775906400,"word_count":50},"frontend/application/app/shop/feed.xml/route.ts":{"size":3698,"mtime_ns":1788000526323436900,"indexed_at_ns":1789270622782877700,"word_count":333},"frontend/application/app/shop/loading.tsx":{"size":1596,"mtime_ns":1787645037380267900,"indexed_at_ns":1789270622789885600,"word_count":144},"frontend/application/app/shop/page.tsx":{"size":2619,"mtime_ns":1788624822999597300,"indexed_at_ns":1789270622796911500,"word_count":283},"frontend/application/app/sitemap-categories.xml/route.ts":{"size":1797,"mtime_ns":1787578481507462100,"indexed_at_ns":1789270622803456300,"word_count":179},"frontend/application/app/sitemap-products.xml/route.ts":{"size":1980,"mtime_ns":1787578481508464300,"indexed_at_ns":1789270622810022500,"word_count":186},"frontend/application/app/sitemap.ts":{"size":3510,"mtime_ns":1787578481510463300,"indexed_at_ns":1789270622816686700,"word_count":350},"frontend/application/app/track/page.tsx":{"size":612,"mtime_ns":1787139270984213600,"indexed_at_ns":1789270622829722200,"word_count":60},"frontend/application/app/trust-seals/page.tsx":{"size":7155,"mtime_ns":1787394001609306700,"indexed_at_ns":1789270622836291600,"word_count":566},"frontend/application/app/videos/page.tsx":{"size":2822,"mtime_ns":1787644197147196700,"indexed_at_ns":1789270622843291000,"word_count":266},"frontend/application/app/wiki/[slug]/page.tsx":{"size":8912,"mtime_ns":1787644197149197300,"indexed_at_ns":1789270622850325700,"word_count":702},"frontend/application/app/wiki/page.tsx":{"size":910,"mtime_ns":1787139270987830800,"indexed_at_ns":1789270622869777200,"word_count":85},"frontend/application/components/AddressModal.tsx":{"size":16470,"mtime_ns":1787739535190383900,"indexed_at_ns":1789270622879785100,"word_count":1146},"frontend/application/components/ArchivePage.tsx":{"size":64308,"mtime_ns":1789276760435609400,"indexed_at_ns":1789277222846904700,"word_count":4678},"frontend/application/components/AuthModal.tsx":{"size":56009,"mtime_ns":1788624450968147000,"indexed_at_ns":1789270622900748100,"word_count":3838},"frontend/application/components/B2BLandingClient.tsx":{"size":25866,"mtime_ns":1787645037381267600,"indexed_at_ns":1789270622909456800,"word_count":1824},"frontend/application/components/B2BPortal.tsx":{"size":14014,"mtime_ns":1786894580156857600,"indexed_at_ns":1789270622916836500,"word_count":1094},"frontend/application/components/BackButton.tsx":{"size":1120,"mtime_ns":1786965281357277800,"indexed_at_ns":1789270622923363900,"word_count":117},"frontend/application/components/BannerPlacement.tsx":{"size":7703,"mtime_ns":1788346274841175500,"indexed_at_ns":1789270622929368100,"word_count":527},"frontend/application/components/BlogPage.tsx":{"size":21976,"mtime_ns":1787729523446453700,"indexed_at_ns":1789270622936368400,"word_count":1583},"frontend/application/components/BlogPostClient.tsx":{"size":20329,"mtime_ns":1787740536679696900,"indexed_at_ns":1789270622943367400,"word_count":1361},"frontend/application/components/BlogPreviewSection.tsx":{"size":8830,"mtime_ns":1788683449027687600,"indexed_at_ns":1789270622950370600,"word_count":645},"frontend/application/components/BrandLogo.tsx":{"size":3307,"mtime_ns":1788674415913774600,"indexed_at_ns":1789270622958370200,"word_count":287},"frontend/application/components/CartDrawer.tsx":{"size":23017,"mtime_ns":1789276907314117800,"indexed_at_ns":1789277222900801500,"word_count":1515},"frontend/application/components/CheckoutPage.tsx":{"size":48260,"mtime_ns":1789277064397829300,"indexed_at_ns":1789277222905807200,"word_count":3216},"frontend/application/components/ContactFormClient.tsx":{"size":10833,"mtime_ns":1787729527935396400,"indexed_at_ns":1789270622978214100,"word_count":784},"frontend/application/components/DeleteConfirmModal.tsx":{"size":2328,"mtime_ns":1786799852608752300,"indexed_at_ns":1789270622985218700,"word_count":195},"frontend/application/components/EnamadBadge.tsx":{"size":1516,"mtime_ns":1786799852612361900,"indexed_at_ns":1789270622991221900,"word_count":114},"frontend/application/components/ErrorBoundary.tsx":{"size":2617,"mtime_ns":1786799852614549600,"indexed_at_ns":1789270622997728500,"word_count":235},"frontend/application/components/ErrorPages.tsx":{"size":2809,"mtime_ns":1787661485945074600,"indexed_at_ns":1789270623004737900,"word_count":243},"frontend/application/components/FAQSection.tsx":{"size":5086,"mtime_ns":1787729995239614600,"indexed_at_ns":1789270623010778000,"word_count":414},"frontend/application/components/FeaturedProducts.tsx":{"size":12779,"mtime_ns":1789272909860072800,"indexed_at_ns":1789276692655699700,"word_count":1094},"frontend/application/components/Footer.tsx":{"size":19594,"mtime_ns":1788683206848047600,"indexed_at_ns":1789270623023406300,"word_count":1330},"frontend/application/components/Header.tsx":{"size":33165,"mtime_ns":1789272909860072800,"indexed_at_ns":1789276692667724000,"word_count":2247},"frontend/application/components/HeaderButton.tsx":{"size":2242,"mtime_ns":1786799852637156100,"indexed_at_ns":1789270623036431400,"word_count":208},"frontend/application/components/Hero.tsx":{"size":20086,"mtime_ns":1788674415916525200,"indexed_at_ns":1789270623043406700,"word_count":1647},"frontend/application/components/IngredientWiki.tsx":{"size":20337,"mtime_ns":1786965281374206800,"indexed_at_ns":1789270623050403900,"word_count":1496},"frontend/application/components/LoginModal.tsx":{"size":15298,"mtime_ns":1788624450969207300,"indexed_at_ns":1789270623058407000,"word_count":1330},"frontend/application/components/MaintenancePage.tsx":{"size":3686,"mtime_ns":1786946249984693000,"indexed_at_ns":1789270623066482600,"word_count":313},"frontend/application/components/NetworkBanner.tsx":{"size":2350,"mtime_ns":1786799852662138900,"indexed_at_ns":1789270623086020400,"word_count":214},"frontend/application/components/OrderDetailsModal.tsx":{"size":36797,"mtime_ns":1788609394333189500,"indexed_at_ns":1789270623093020500,"word_count":2547},"frontend/application/components/OrderSuccess.tsx":{"size":6396,"mtime_ns":1786799852665542300,"indexed_at_ns":1789270623100533900,"word_count":521},"frontend/application/components/OrderTracking.tsx":{"size":9269,"mtime_ns":1787729527937447000,"indexed_at_ns":1789270623106529800,"word_count":681},"frontend/application/components/PetProfile.tsx":{"size":83265,"mtime_ns":1788613668259056000,"indexed_at_ns":1789270623120124600,"word_count":5854},"frontend/application/components/PodcastInlinePlayer.tsx":{"size":18123,"mtime_ns":1787993003774220500,"indexed_at_ns":1789270623128124700,"word_count":1464},"frontend/application/components/PodcastPlayerModal.tsx":{"size":18105,"mtime_ns":1787748657155136900,"indexed_at_ns":1789270623135123100,"word_count":1487},"frontend/application/components/PrescriptionUploadModal.tsx":{"size":19183,"mtime_ns":1787741735267947500,"indexed_at_ns":1789270623142862400,"word_count":1356},"frontend/application/components/ProductPage.tsx":{"size":98121,"mtime_ns":1789276760439606100,"indexed_at_ns":1789277223048238900,"word_count":7013},"frontend/application/components/ProductReviews.tsx":{"size":16113,"mtime_ns":1788333723592862900,"indexed_at_ns":1789270623167883100,"word_count":1195},"frontend/application/components/SafeImage.tsx":{"size":4289,"mtime_ns":1788354488242911600,"indexed_at_ns":1789270623175451600,"word_count":399},"frontend/application/components/SearchResultsPage.tsx":{"size":8335,"mtime_ns":1786799852701578200,"indexed_at_ns":1789270623182452100,"word_count":594},"frontend/application/components/SearchableSelect.tsx":{"size":4375,"mtime_ns":1785575516155554800,"indexed_at_ns":1789270623189457300,"word_count":336},"frontend/application/components/Skeleton.tsx":{"size":3882,"mtime_ns":1788674415918645600,"indexed_at_ns":1789270623196895100,"word_count":364},"frontend/application/components/SmartAdvisor.tsx":{"size":37402,"mtime_ns":1788587906747669800,"indexed_at_ns":1789270623202907200,"word_count":2836},"frontend/application/components/TestimonialsSection.tsx":{"size":6677,"mtime_ns":1788346274843208600,"indexed_at_ns":1789270623210638100,"word_count":516},"frontend/application/components/TickerBanner.tsx":{"size":4241,"mtime_ns":1788678950452937000,"indexed_at_ns":1789270623216881000,"word_count":352},"frontend/application/components/Tooltip.tsx":{"size":5237,"mtime_ns":1788333306923629700,"indexed_at_ns":1789270623224258100,"word_count":438},"frontend/application/components/TopUpModal.tsx":{"size":9381,"mtime_ns":1787406597303349300,"indexed_at_ns":1789270623230830300,"word_count":741},"frontend/application/components/UserDashboard.tsx":{"size":98602,"mtime_ns":1789272909864072500,"indexed_at_ns":1789276692842087400,"word_count":6258},"frontend/application/components/VetGallery.tsx":{"size":9368,"mtime_ns":1788683449030884500,"indexed_at_ns":1789270623243831300,"word_count":730},"frontend/application/components/VideoModalPlayer.tsx":{"size":24822,"mtime_ns":1787993003775855300,"indexed_at_ns":1789270623249830700,"word_count":1846},"frontend/application/components/VideosPage.tsx":{"size":8815,"mtime_ns":1787729523450452600,"indexed_at_ns":1789270623256831000,"word_count":672},"frontend/application/components/__tests__/CartDrawer.test.tsx":{"size":5152,"mtime_ns":1789277153480280400,"indexed_at_ns":1789277223125605700,"word_count":432},"frontend/application/components/__tests__/FeaturedProducts.test.tsx":{"size":2922,"mtime_ns":1787729523451454700,"indexed_at_ns":1789270623271921100,"word_count":246},"frontend/application/components/__tests__/Footer.test.tsx":{"size":1200,"mtime_ns":1787729523452453700,"indexed_at_ns":1789270623277923000,"word_count":97},"frontend/application/components/__tests__/Header.test.tsx":{"size":3336,"mtime_ns":1787729523452453700,"indexed_at_ns":1789270623286922600,"word_count":266},"frontend/application/components/__tests__/Hero.test.tsx":{"size":1980,"mtime_ns":1786799852776010800,"indexed_at_ns":1789270623293994800,"word_count":192},"frontend/application/components/__tests__/Tooltip.test.tsx":{"size":1508,"mtime_ns":1786799852784348900,"indexed_at_ns":1789270623300858100,"word_count":137},"frontend/application/components/catalog/CatalogPageSpread.tsx":{"size":29302,"mtime_ns":1788616028624863400,"indexed_at_ns":1789270623307364900,"word_count":2428},"frontend/application/components/catalog/FlipbookCatalog.tsx":{"size":40856,"mtime_ns":1788683206850044500,"indexed_at_ns":1789270623315423600,"word_count":3533},"frontend/application/components/catalog/ProductDetailModal.tsx":{"size":8265,"mtime_ns":1787981163247727400,"indexed_at_ns":1789270623323426600,"word_count":589},"frontend/application/eslint.config.mjs":{"size":747,"mtime_ns":1787148092358055900,"indexed_at_ns":1789270623329425700,"word_count":61},"frontend/application/lib/data/products.ts":{"size":104414,"mtime_ns":1788351605806390800,"indexed_at_ns":1789270623335545900,"word_count":9765},"frontend/application/lib/data/provinces.ts":{"size":2993,"mtime_ns":1785571725610676000,"indexed_at_ns":1789270623344552200,"word_count":203},"frontend/application/lib/data/scientificTerms.ts":{"size":18042,"mtime_ns":1786958978743097300,"indexed_at_ns":1789270623350551900,"word_count":1756},"frontend/application/lib/fonts.ts":{"size":561,"mtime_ns":1788351855943419900,"indexed_at_ns":1789270623356550400,"word_count":55},"frontend/application/lib/hooks/useNetworkStatus.ts":{"size":610,"mtime_ns":1786799852793488000,"indexed_at_ns":1789270623363657700,"word_count":59},"frontend/application/lib/schema.ts":{"size":7336,"mtime_ns":1787644197156205400,"indexed_at_ns":1789270623382653900,"word_count":609},"frontend/application/lib/seo.ts":{"size":10853,"mtime_ns":1788624823000658600,"indexed_at_ns":1789270623388658700,"word_count":989},"frontend/application/lib/services/api.ts":{"size":3694,"mtime_ns":1787997670265470700,"indexed_at_ns":1789270623396048500,"word_count":391},"frontend/application/lib/services/authService.ts":{"size":4524,"mtime_ns":1786885876986184800,"indexed_at_ns":1789270623403556200,"word_count":509},"frontend/application/lib/services/orderService.ts":{"size":2428,"mtime_ns":1786799852810726500,"indexed_at_ns":1789270623411775100,"word_count":279},"frontend/application/lib/services/productService.ts":{"size":14085,"mtime_ns":1788354488244444100,"indexed_at_ns":1789270623418315600,"word_count":1287},"frontend/application/lib/services/ticketService.ts":{"size":1569,"mtime_ns":1786890779340901800,"indexed_at_ns":1789270623426315000,"word_count":170},"frontend/application/lib/services/videoService.ts":{"size":1867,"mtime_ns":1787993003779460300,"indexed_at_ns":1789270623432314200,"word_count":210},"frontend/application/lib/store/__tests__/cartStore.test.ts":{"size":4430,"mtime_ns":1786799852822036900,"indexed_at_ns":1789270623440314800,"word_count":386},"frontend/application/lib/store/__tests__/settingsStore.test.ts":{"size":1949,"mtime_ns":1783856793043803200,"indexed_at_ns":1789270623448320000,"word_count":194},"frontend/application/lib/store/__tests__/userStore.test.ts":{"size":3639,"mtime_ns":1786799852825547700,"indexed_at_ns":1789270623455824200,"word_count":289},"frontend/application/lib/store/cartStore.ts":{"size":6972,"mtime_ns":1787660831220289700,"indexed_at_ns":1789270623463863700,"word_count":697},"frontend/application/lib/store/settingsStore.ts":{"size":3630,"mtime_ns":1786948119787096800,"indexed_at_ns":1789270623471500200,"word_count":371},"frontend/application/lib/store/uiStore.ts":{"size":872,"mtime_ns":1786799852833588000,"indexed_at_ns":1789270623478499800,"word_count":100},"frontend/application/lib/store/usePetStore.ts":{"size":8680,"mtime_ns":1786954681845300600,"indexed_at_ns":1789270623485009700,"word_count":850},"frontend/application/lib/store/userStore.ts":{"size":10467,"mtime_ns":1789272909864072500,"indexed_at_ns":1789276693065948700,"word_count":906},"frontend/application/lib/types.ts":{"size":2222,"mtime_ns":1787729527940443900,"indexed_at_ns":1789270623497008000,"word_count":239},"frontend/application/lib/utils.ts":{"size":478,"mtime_ns":1786799852847284000,"indexed_at_ns":1789270623509822400,"word_count":61},"frontend/application/next.config.ts":{"size":3153,"mtime_ns":1788353540761527200,"indexed_at_ns":1789270623519101600,"word_count":279},"frontend/application/package.json":{"size":879,"mtime_ns":1788000055992497300,"indexed_at_ns":1789270628013322700,"word_count":74,"hashes":{"frontend/application/package.json":"7a1fa68660fc9ab2089ea4e22c7d889b8efd8dbdc9faf56ce7d354319ac081b9"}},"frontend/application/postcss.config.mjs":{"size":94,"mtime_ns":1783764561988252100,"indexed_at_ns":1789270623531101900,"word_count":13},"frontend/application/public/assets/images/canina-product-placeholder.png":{"size":6990105,"mtime_ns":1787461919505024400,"indexed_at_ns":1789270623539099700,"word_count":267685},"frontend/application/public/assets/images/regenerated_image_1779109861747.png":{"size":2269101,"mtime_ns":1783764562014110300,"indexed_at_ns":1789270623683425400,"word_count":84979},"frontend/application/public/file.svg":{"size":391,"mtime_ns":1783764562016213600,"indexed_at_ns":1789270623742603100,"word_count":50},"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856793098052000,"indexed_at_ns":1789270623767404800,"word_count":15},"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856793107660400,"indexed_at_ns":1789270623791441300,"word_count":15},"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856793113660500,"indexed_at_ns":1789270628112453700,"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":1789270628113454400,"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":1789270624334038900,"word_count":10881},"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856793230118600,"indexed_at_ns":1789270624362479900,"word_count":951},"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856793279542700,"indexed_at_ns":1789270624629707400,"word_count":283},"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856793315146800,"indexed_at_ns":1789270624871234300,"word_count":2615},"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856793316155600,"indexed_at_ns":1789270624882233500,"word_count":55},"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856793317690100,"indexed_at_ns":1789270624890235800,"word_count":5086},"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856793319422000,"indexed_at_ns":1789270624898235100,"word_count":671},"frontend/application/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856793320489000,"indexed_at_ns":1789270624905744200,"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":1789270627105656100,"word_count":14},"frontend/application/public/globe.svg":{"size":1035,"mtime_ns":1783764562016720700,"indexed_at_ns":1789270627110193000,"word_count":154},"frontend/application/public/images/vets/vet1.webp":{"size":6990105,"mtime_ns":1787461919541761600,"indexed_at_ns":1789270627193649800,"word_count":267685},"frontend/application/public/next.svg":{"size":1375,"mtime_ns":1783764562018238900,"indexed_at_ns":1789270627328975600,"word_count":183},"frontend/application/public/vercel.svg":{"size":128,"mtime_ns":1783764562019253000,"indexed_at_ns":1789270627334974100,"word_count":12},"frontend/application/public/window.svg":{"size":385,"mtime_ns":1783764562019253000,"indexed_at_ns":1789270627343485100,"word_count":63},"frontend/application/tsconfig.json":{"size":750,"mtime_ns":1786799852865640000,"indexed_at_ns":1789270628014321700,"word_count":61,"hashes":{"frontend/application/tsconfig.json":"adcade0f962ec5888be99b4b1402d98812cfd570b0c5669bda73142b2cb9210d"}},"frontend/application/vitest.config.ts":{"size":244,"mtime_ns":1786799852868652900,"indexed_at_ns":1789270627357988100,"word_count":25},"frontend/application/vitest.setup.ts":{"size":1237,"mtime_ns":1787729523454452000,"indexed_at_ns":1789270627363507800,"word_count":141},"manual-test-scenarios.md":{"size":0,"mtime_ns":1787729528073006400,"indexed_at_ns":1789270628114453600,"word_count":0,"hashes":{"manual-test-scenarios.md":"c6e53ad8216c7ae7d9e1449511caca4c768d1c68b0b859ae24f0add4afe8e502"}},"metadata.json":{"size":334,"mtime_ns":1783856793672137200,"indexed_at_ns":1789270628015321000,"word_count":35,"hashes":{"metadata.json":"c44b4c4ba60752554ceae65e2f22bddb756cbeb25a4a31ee79160b6eb182255a"}},"package.json":{"size":1237,"mtime_ns":1787729528076005200,"indexed_at_ns":1789270628016321100,"word_count":136,"hashes":{"package.json":"3ca5b265c68cc5660e5fd57b0aeb13de7eb49732740eafe405f6f0804671ceeb"}},"playwright.config.ts":{"size":2710,"mtime_ns":1787729528077005300,"indexed_at_ns":1789270627388115200,"word_count":270},"prometheus.yml":{"size":164,"mtime_ns":1783764562027779300,"indexed_at_ns":1789270627394217100,"word_count":13},"scripts/backup_db.sh":{"size":1362,"mtime_ns":1786799852876784600,"indexed_at_ns":1789270628017320700,"word_count":134,"hashes":{"scripts/backup_db.sh":"f90cf2d0c954f3eaca83566ccb365bff62fd97a2af0225816c19902ee4dfdd6c"}},"scripts/compose.prod.yml":{"size":2248,"mtime_ns":1787998075631988900,"indexed_at_ns":1789270627406733100,"word_count":126},"scripts/compose.stage.yml":{"size":2557,"mtime_ns":1787077093991779700,"indexed_at_ns":1789270627413312800,"word_count":137},"scripts/deploy.sh":{"size":3346,"mtime_ns":1787136904559094200,"indexed_at_ns":1789270628018320400,"word_count":351,"hashes":{"scripts/deploy.sh":"64d276bb6eb6cfb83690c529b9d1c0c71fa46aa912a458f684dfcf842fab2aea"}},"scripts/open-browsers.js":{"size":1551,"mtime_ns":1788000056009180700,"indexed_at_ns":1789270627427942400,"word_count":202},"scripts/start-dev.js":{"size":1689,"mtime_ns":1787997670335055900,"indexed_at_ns":1789270627434290600,"word_count":186},"start.sh":{"size":26,"mtime_ns":1784033954813080300,"indexed_at_ns":1789270628019320800,"word_count":4,"hashes":{"start.sh":"694c258b963c309734a3316c770f5fef29703bc6f24754b04155fd8db94cf862"}},"swagger.yml":{"size":95785,"mtime_ns":1786799852892091600,"indexed_at_ns":1789270627447010900,"word_count":7031},"test-coverage-map.md":{"size":13899,"mtime_ns":1787729528078006200,"indexed_at_ns":1789270628116106700,"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":1789270627460023400,"word_count":742},"tests/e2e/admin/admin-blogs-crud.spec.ts":{"size":5540,"mtime_ns":1787729528080005900,"indexed_at_ns":1789270627467499500,"word_count":490},"tests/e2e/admin/admin-crud.spec.ts":{"size":6485,"mtime_ns":1787729528081005800,"indexed_at_ns":1789270627474024300,"word_count":569},"tests/e2e/admin/admin-orders-flow.spec.ts":{"size":4130,"mtime_ns":1787729528082005000,"indexed_at_ns":1789270627481024200,"word_count":352},"tests/e2e/admin/admin-rbac-roles.spec.ts":{"size":4011,"mtime_ns":1787729528083005700,"indexed_at_ns":1789270627486530800,"word_count":327},"tests/e2e/security/xss-ratelimit.spec.ts":{"size":5646,"mtime_ns":1787729528085005800,"indexed_at_ns":1789270627493595300,"word_count":491},"tests/e2e/storefront/auth-otp-recovery.spec.ts":{"size":4540,"mtime_ns":1787729528086009200,"indexed_at_ns":1789270627499555700,"word_count":384},"tests/e2e/storefront/b2b-flow.spec.ts":{"size":3521,"mtime_ns":1787729528086516700,"indexed_at_ns":1789270627506128700,"word_count":288},"tests/e2e/storefront/blog-wiki.spec.ts":{"size":2107,"mtime_ns":1787729528087532400,"indexed_at_ns":1789270627511940600,"word_count":185},"tests/e2e/storefront/cart-operations.spec.ts":{"size":3910,"mtime_ns":1787729528089034600,"indexed_at_ns":1789270627517924300,"word_count":332},"tests/e2e/storefront/checkout-flow.spec.ts":{"size":2766,"mtime_ns":1787729528089034600,"indexed_at_ns":1789270627523916100,"word_count":251},"tests/e2e/storefront/concurrency-stock.spec.ts":{"size":5868,"mtime_ns":1787729528090041700,"indexed_at_ns":1789270627529914800,"word_count":537},"tests/e2e/storefront/contact.spec.ts":{"size":2899,"mtime_ns":1787729528091042800,"indexed_at_ns":1789270627536915600,"word_count":238},"tests/e2e/storefront/error-pages-404-500.spec.ts":{"size":1238,"mtime_ns":1787729528092042000,"indexed_at_ns":1789270627542241200,"word_count":121},"tests/e2e/storefront/order-tracking.spec.ts":{"size":3125,"mtime_ns":1787729528093041900,"indexed_at_ns":1789270627548762400,"word_count":282},"tests/e2e/storefront/shop-filter-search.spec.ts":{"size":2151,"mtime_ns":1787729528094048800,"indexed_at_ns":1789270627555761100,"word_count":187},"tests/fixtures/admin-auth.setup.ts":{"size":1950,"mtime_ns":1787729528095047800,"indexed_at_ns":1789270627560882900,"word_count":195},"tests/fixtures/index.ts":{"size":194,"mtime_ns":1787729528095047800,"indexed_at_ns":1789270627567229200,"word_count":32},"tsconfig.json":{"size":439,"mtime_ns":1787729528096047500,"indexed_at_ns":1789270628020324200,"word_count":37,"hashes":{"tsconfig.json":"12f2e30da1a34da7d06440370b7d1930cd5a3c3293f485789f5cfa2434aeea6f"}},"frontend/application/app/smart-advisor/page.tsx":{"size":2634,"mtime_ns":1787740536678699600,"indexed_at_ns":1789270622822724000,"word_count":232},"frontend/application/app/dashboard/orders/page.tsx":{"size":132,"mtime_ns":1787741941302806200,"indexed_at_ns":1789270622670614600,"word_count":13},"frontend/application/app/dashboard/pets/page.tsx":{"size":128,"mtime_ns":1787741941303809300,"indexed_at_ns":1789270622683635300,"word_count":13},"frontend/application/components/ProductImageZoomModal.tsx":{"size":12596,"mtime_ns":1788609394334189600,"indexed_at_ns":1789270623150373200,"word_count":1139},"frontend/application/app/api/media/[...path]/route.ts":{"size":6739,"mtime_ns":1788353078508488900,"indexed_at_ns":1789270622530937500,"word_count":613},"frontend/application/app/api/uploads/[...path]/route.ts":{"size":6805,"mtime_ns":1788353078510085700,"indexed_at_ns":1789270622574278700,"word_count":622},"frontend/application/lib/media.ts":{"size":2051,"mtime_ns":1788353540759919900,"indexed_at_ns":1789270623369656200,"word_count":227},"frontend/application/components/NavigationProgressBar.tsx":{"size":3658,"mtime_ns":1787999006325061100,"indexed_at_ns":1789270623078480000,"word_count":380},"frontend/application/app/api/torob/products/route.ts":{"size":6649,"mtime_ns":1788328838746612700,"indexed_at_ns":1789270622560654000,"word_count":738},"backend/src/products/torob.controller.ts":{"size":6562,"mtime_ns":1788334048806380400,"indexed_at_ns":1789270617282526800,"word_count":681},"backend/src/admin/dto/pricing.dto.ts":{"size":5033,"mtime_ns":1788334048800615600,"indexed_at_ns":1789270616398534000,"word_count":444},"backend/src/common/utils/pricing.utils.ts":{"size":1516,"mtime_ns":1788330948589741100,"indexed_at_ns":1789270616834643000,"word_count":205},"frontend/admin-panel/src/utils/pricing.ts":{"size":1127,"mtime_ns":1788330948594740900,"indexed_at_ns":1789270622445833300,"word_count":147},"backend/src/common/services/sms-events.constants.ts":{"size":10144,"mtime_ns":1788609394319095700,"indexed_at_ns":1789270616805543200,"word_count":956},"frontend/application/components/AnalyticsDeferred.tsx":{"size":3286,"mtime_ns":1788609394332188600,"indexed_at_ns":1789270622887777100,"word_count":303},"frontend/application/public/images/favicons/android-chrome-192x192.png":{"size":62883,"mtime_ns":1788587906752677800,"indexed_at_ns":1789270627129864300,"word_count":2247},"frontend/application/public/images/favicons/android-chrome-512x512.png":{"size":395793,"mtime_ns":1788587906757218700,"indexed_at_ns":1789270627137864700,"word_count":13917},"frontend/application/public/images/favicons/apple-touch-icon.png":{"size":56230,"mtime_ns":1788587906759218700,"indexed_at_ns":1789270627153865300,"word_count":2032},"frontend/application/public/images/favicons/favicon-16x16.png":{"size":943,"mtime_ns":1788587906761187700,"indexed_at_ns":1789270627161375900,"word_count":36},"frontend/application/public/images/favicons/favicon-32x32.png":{"size":2797,"mtime_ns":1788587906763190700,"indexed_at_ns":1789270627169639400,"word_count":103},"frontend/application/lib/petCompatibility.ts":{"size":3636,"mtime_ns":1788613668265750300,"indexed_at_ns":1789270623375654400,"word_count":324},"frontend/application/components/OtpInput5.tsx":{"size":4558,"mtime_ns":1788619769607313700,"indexed_at_ns":1789270623114126100,"word_count":478},"frontend/application/components/MobileBottomNav.tsx":{"size":25241,"mtime_ns":1789276760437611100,"indexed_at_ns":1789277222984028900,"word_count":1877},"backend/src/admin/api-keys.controller.ts":{"size":2159,"mtime_ns":1789272909851063400,"indexed_at_ns":1789276685179648000,"word_count":210},"backend/src/admin/api-keys.service.ts":{"size":4244,"mtime_ns":1789272909851063400,"indexed_at_ns":1789276685190187600,"word_count":453},"backend/src/admin/dto/api-key.dto.ts":{"size":1027,"mtime_ns":1789272909852062500,"indexed_at_ns":1789276685253846000,"word_count":88},"frontend/admin-panel/src/pages/ApiKeysPage.tsx":{"size":24665,"mtime_ns":1788859667826175400,"indexed_at_ns":1789270622051199700,"word_count":1802},"frontend/application/lib/useCatalogMode.ts":{"size":1945,"mtime_ns":1789276760440607700,"indexed_at_ns":1789277223309409400,"word_count":168}} \ No newline at end of file +{".agents/rules/graphify.md":{"size":933,"mtime_ns":1786870552830271100,"indexed_at_ns":1789270628022321000,"word_count":127,"hashes":{".agents/rules/graphify.md":"26f2577a68d808f7f33ec3e418b95b635aec180d93b22b975e9ae67c47e361c8"}},".agents/workflows/graphify.md":{"size":229,"mtime_ns":1786870552832398300,"indexed_at_ns":1789270628022917900,"word_count":37,"hashes":{".agents/workflows/graphify.md":"a81e2d017e0669c71099362b20854e4d9ed68753f1c240d0682120bdb9aa3c72"}},".ai_agency/AGENCY.md":{"size":8757,"mtime_ns":1785148021979607300,"indexed_at_ns":1789270628023954100,"word_count":1161,"hashes":{".ai_agency/agency.md":"88c7c13583a91fc7e41ce055fede9dce20f181e8d264557808989965e83a9030"}},".ai_agency/agents/00_intake.md":{"size":3819,"mtime_ns":1785148021984319000,"indexed_at_ns":1789270628024953700,"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":1789270628025955400,"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":1789270628026957200,"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":1789270628027957800,"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":1789270628028953700,"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":1789270628030956800,"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":1789270628031953000,"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":1789270628032953100,"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":1789270628033957600,"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":1789270628034953200,"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":1789270628035952500,"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":1789270628036952600,"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":1789270628037952400,"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":1789270615816346000,"word_count":34},".ai_agency/memory/backlog.json":{"size":10711,"mtime_ns":1785330750958890900,"indexed_at_ns":1789270627948822700,"word_count":981,"hashes":{".ai_agency/memory/backlog.json":"6bf3150a1877d03d03b368df21b84071381b1bb8cd03e3721fa9f8e6c38355be"}},".ai_agency/memory/scratchpad.md":{"size":1879,"mtime_ns":1785148022065114400,"indexed_at_ns":1789270628039931300,"word_count":249,"hashes":{".ai_agency/memory/scratchpad.md":"9d0f687cf8e95c6335f1efb070da8029878417c28117e3b89aa8536ad70a5b95"}},".ai_agency/memory/state.json":{"size":3654,"mtime_ns":1785330750963913800,"indexed_at_ns":1789270627974509700,"word_count":254,"hashes":{".ai_agency/memory/state.json":"1204676f8f295d89733888bb87936061b7a700df0cc936fbf08fd5269b534e8d"}},".ai_agency/orchestrate.py":{"size":6800,"mtime_ns":1785148022072662500,"indexed_at_ns":1789270627976508500,"word_count":644,"hashes":{".ai_agency/orchestrate.py":"90ec787fdd4c71f5203c56b6899aadcc26e6e0bad0cc576d2f982aa42eed42e1"}},".ai_agency/specs/api_contract.md":{"size":1515,"mtime_ns":1785148022077664900,"indexed_at_ns":1789270628040929700,"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":1789270628041926800,"word_count":99,"hashes":{".ai_agency/specs/architecture_spec.md":"6269043f6a144e8ac86ff1db7e014075185e5675a4a0ee23e99e70d88253b8af"}},".ai_agency/specs/prd.md":{"size":724,"mtime_ns":1785148022087251600,"indexed_at_ns":1789270628042935800,"word_count":96,"hashes":{".ai_agency/specs/prd.md":"1c6d5a0ec8a709a2b3aed28225f5fe148ad2d75851d45699187678d055947b11"}},".ai_agency/specs/project_health.md":{"size":444,"mtime_ns":1785148022098314600,"indexed_at_ns":1789270628043935700,"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":1789270628044935500,"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":1789270628045935300,"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":1789270628046935200,"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":1789270628047934900,"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":1789270628048935100,"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":1789270628049934800,"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":1789270628051934800,"word_count":150,"hashes":{".ai_agency/specs/reviews/ux_review.md":"b8a52f324e36fcc2d046cc903a05903057098a67a397ae6442d6c825091f4513"}},".antigravity/instructions.md":{"size":226,"mtime_ns":1786870552833405800,"indexed_at_ns":1789270628052934400,"word_count":29,"hashes":{".antigravity/instructions.md":"8d8f5c1bbdbb7b8045e02b06a50e68d3fcfabfb2d65f8ac1cd86168dc8a8cc96"}},".antigravity/workflows/graphify.md":{"size":43292,"mtime_ns":1786870552837921500,"indexed_at_ns":1789270628053934200,"word_count":5442,"hashes":{".antigravity/workflows/graphify.md":"0c16b701a50d64f741f6de107c49584012a8dd7f5e922af9f79754540629e2fe"}},".claude/CLAUDE.md":{"size":226,"mtime_ns":1786870552838920200,"indexed_at_ns":1789270628054931400,"word_count":29,"hashes":{".claude/claude.md":"c6f7fc2f062904d246b700d446ba3ad03e77f41809b12eccfb5e090a11f4fad2"}},".claude/settings.json":{"size":479,"mtime_ns":1786870552841922800,"indexed_at_ns":1789270627978581600,"word_count":38,"hashes":{".claude/settings.json":"0aaafba2cbd7dd67f7d69fa2f01b747c9a72f56ee421a40825521f937caec82b"}},".claude/skills/graphify/SKILL.md":{"size":43292,"mtime_ns":1786870552845041000,"indexed_at_ns":1789270628055931100,"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":1789270628056930600,"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":1789270628058435000,"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":1789270628059441000,"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":1789270628060440700,"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":1789270628061440500,"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":1789270628062440700,"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":1789270628064440500,"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":1789270628065440300,"word_count":1196,"hashes":{".claude/skills/graphify/references/update.md":"0249cd6ceae6effdfc7371b51d00c462f51d95700101dcedd36255bab1b4ce7a"}},".gemini/config/mcp_config.json":{"size":146,"mtime_ns":1787729527922392700,"indexed_at_ns":1789270627980094900,"word_count":15,"hashes":{".gemini/config/mcp_config.json":"5350ccca14cfd0cb47901b879636407765ead90ade58684cbe3bca634580cbd7"}},".gitea/scripts/with-vpn.sh":{"size":1794,"mtime_ns":1786799852126316200,"indexed_at_ns":1789270627981144700,"word_count":208,"hashes":{".gitea/scripts/with-vpn.sh":"9ec013d142e3cf5d7e5f09778fcb06b4b8ea7b394688f9f40b5e74298c76bcf0"}},".gitea/workflows/deploy.yml":{"size":993,"mtime_ns":1787078454762471500,"indexed_at_ns":1789270616084164700,"word_count":84},".gitea/workflows/e2e.yml":{"size":980,"mtime_ns":1787729527923391900,"indexed_at_ns":1789270616094368200,"word_count":98},".vscode/extensions.json":{"size":74,"mtime_ns":1787461919449307400,"indexed_at_ns":1789270627982150100,"word_count":6,"hashes":{".vscode/extensions.json":"57518c36999b5176c9e8617cf937f6e35b54ddd015305005d4611729d1d69177"}},"AGENTS.md":{"size":226,"mtime_ns":1786870552862708600,"indexed_at_ns":1789270628066440000,"word_count":29,"hashes":{"agents.md":"b664c2bb6d85e009d7495bcd9c3d52c419176473cd4e19362fd4256616076151"}},"BACKEND_INTEGRATION.md":{"size":15568,"mtime_ns":1786885876768825200,"indexed_at_ns":1789270616116561400,"word_count":1521},"CLAUDE.md":{"size":772,"mtime_ns":1786870552863710100,"indexed_at_ns":1789270628067439900,"word_count":106,"hashes":{"claude.md":"3612256e7473a2e5f67ef4778d4edeefb44794ef22bac5529bee9c87dc5d8f3d"}},"DATABASE_SCHEMA.md":{"size":15399,"mtime_ns":1786885876771342200,"indexed_at_ns":1789270616129565700,"word_count":1566},"README.md":{"size":13117,"mtime_ns":1786885876775371800,"indexed_at_ns":1789270616144948200,"word_count":1310},"backend/README.md":{"size":5028,"mtime_ns":1783764561601382400,"indexed_at_ns":1789270628068439900,"word_count":472,"hashes":{"backend/readme.md":"c3edfd26252566ef2ddee12c91a874b59e03a1656894d3db25209a0e4031010a"}},"backend/eslint.config.mjs":{"size":1649,"mtime_ns":1787073059105361700,"indexed_at_ns":1789270616177591400,"word_count":104},"backend/nest-cli.json":{"size":172,"mtime_ns":1787072106370561300,"indexed_at_ns":1789270627983148700,"word_count":13,"hashes":{"backend/nest-cli.json":"64fe2904203985aa0acb9b67d7ade489f2362ac8730283fb11d6a764d1cb3878"}},"backend/package.json":{"size":2903,"mtime_ns":1787644197137104200,"indexed_at_ns":1789270627984148400,"word_count":214,"hashes":{"backend/package.json":"164822617eb449e27d8e6a9ff13476f3b08fb3dcf5710289e85af9bf50ec39d5"}},"backend/prisma/migrations/20260526145407_init/migration.sql":{"size":8963,"mtime_ns":1783764561612007600,"indexed_at_ns":1789270627985148900,"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":1789270627986148300,"word_count":48,"hashes":{"backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql":"c564f4aba35d32a733a5837c33664c68c8912277ad9645310f7e8116fbcba741"}},"backend/prisma/scientificTerms.ts":{"size":24730,"mtime_ns":1789272909845064400,"indexed_at_ns":1789276684968383200,"word_count":2294},"backend/prisma/seed-blogs.ts":{"size":6957,"mtime_ns":1789272909845064400,"indexed_at_ns":1789276684978387800,"word_count":620},"backend/prisma/seed-custom.ts":{"size":4032,"mtime_ns":1789272909846064300,"indexed_at_ns":1789276684988682600,"word_count":382},"backend/prisma/seed-home.ts":{"size":3910,"mtime_ns":1789272909846064300,"indexed_at_ns":1789276684999687000,"word_count":376},"backend/prisma/seed-products-data.json":{"size":59231,"mtime_ns":1788333723584557900,"indexed_at_ns":1789270627987148000,"word_count":5730,"hashes":{"backend/prisma/seed-products-data.json":"2c84695a0e1ce94406b8eb038936758a2dd27e22b5727051ea8d30749b4e9163"}},"backend/prisma/seed-products.ts":{"size":28268,"mtime_ns":1787127978219270600,"indexed_at_ns":1789270616246925300,"word_count":2063},"backend/prisma/seed-ui-texts.ts":{"size":9002,"mtime_ns":1789272909847063400,"indexed_at_ns":1789276685030836400,"word_count":758},"backend/prisma/seed-wiki.ts":{"size":24274,"mtime_ns":1789272909848063600,"indexed_at_ns":1789276685039442900,"word_count":2294},"backend/prisma/seed.ts":{"size":31035,"mtime_ns":1789272909849064100,"indexed_at_ns":1789276685050240200,"word_count":2638},"backend/prisma/tsconfig.json":{"size":194,"mtime_ns":1786961195300236300,"indexed_at_ns":1789270627988148000,"word_count":17,"hashes":{"backend/prisma/tsconfig.json":"0308b15b67bad714ff5f1b6b73f64ae46f98d5190cd6092abb1fb67885d67be1"}},"backend/prisma/tsconfig.seed.json":{"size":194,"mtime_ns":1786955870751259200,"indexed_at_ns":1789270627989148000,"word_count":17,"hashes":{"backend/prisma/tsconfig.seed.json":"e178d23a09563a7a9b348d905bc70322115514c78a7afcc5a53db7d18e511583"}},"backend/scripts/generate-openapi.d.ts":{"size":11,"mtime_ns":1786883225777483700,"indexed_at_ns":1789270616282079100,"word_count":2},"backend/scripts/generate-openapi.js":{"size":2965,"mtime_ns":1786883225779120000,"indexed_at_ns":1789270616288048800,"word_count":309},"backend/scripts/generate-openapi.ts":{"size":1421,"mtime_ns":1787729527925391800,"indexed_at_ns":1789270616299175500,"word_count":132},"backend/scripts/seo-backfill.ts":{"size":4551,"mtime_ns":1787729527925391800,"indexed_at_ns":1789270616306142400,"word_count":464},"backend/src/admin/admin.controller.spec.ts":{"size":593,"mtime_ns":1786799852157399700,"indexed_at_ns":1789270616312651200,"word_count":59},"backend/src/admin/admin.controller.ts":{"size":11356,"mtime_ns":1789272909849064100,"indexed_at_ns":1789276685138946000,"word_count":1100},"backend/src/admin/admin.module.ts":{"size":1682,"mtime_ns":1789272909850064500,"indexed_at_ns":1789276685147647000,"word_count":168},"backend/src/admin/admin.service.spec.ts":{"size":903,"mtime_ns":1787729523434852600,"indexed_at_ns":1789270616330476100,"word_count":89},"backend/src/admin/admin.service.ts":{"size":54945,"mtime_ns":1788609394316908100,"indexed_at_ns":1789270616337445700,"word_count":5207},"backend/src/admin/blogs.controller.ts":{"size":5204,"mtime_ns":1787579631758177800,"indexed_at_ns":1789270616357227400,"word_count":532},"backend/src/admin/blogs.service.ts":{"size":9542,"mtime_ns":1787579631760177700,"indexed_at_ns":1789270616364374900,"word_count":1070},"backend/src/admin/categories.controller.ts":{"size":2187,"mtime_ns":1786799852174192500,"indexed_at_ns":1789270616373018100,"word_count":204},"backend/src/admin/categories.service.ts":{"size":2005,"mtime_ns":1786799852175194300,"indexed_at_ns":1789270616379022600,"word_count":223},"backend/src/admin/dto/admin-query.dto.ts":{"size":975,"mtime_ns":1788332757638029400,"indexed_at_ns":1789270616386022700,"word_count":89},"backend/src/admin/dto/product.dto.ts":{"size":9859,"mtime_ns":1788609394317999800,"indexed_at_ns":1789270616405532500,"word_count":808},"backend/src/admin/dto/user.dto.ts":{"size":2839,"mtime_ns":1787072106381989700,"indexed_at_ns":1789270616412042600,"word_count":259},"backend/src/admin/media.controller.ts":{"size":2339,"mtime_ns":1786876983648866300,"indexed_at_ns":1789270616418776500,"word_count":226},"backend/src/admin/media.service.ts":{"size":3596,"mtime_ns":1787748438701533500,"indexed_at_ns":1789270616425777400,"word_count":373},"backend/src/admin/pets.controller.ts":{"size":1195,"mtime_ns":1786799852186217200,"indexed_at_ns":1789270616431775600,"word_count":117},"backend/src/admin/pets.service.ts":{"size":1731,"mtime_ns":1786954681814243000,"indexed_at_ns":1789270616437773800,"word_count":193},"backend/src/admin/reports.controller.ts":{"size":1079,"mtime_ns":1787729523434852600,"indexed_at_ns":1789270616444779900,"word_count":107},"backend/src/admin/reports.service.ts":{"size":6497,"mtime_ns":1787729523434852600,"indexed_at_ns":1789270616451780400,"word_count":729},"backend/src/admin/ssl.controller.ts":{"size":3371,"mtime_ns":1787072106382979000,"indexed_at_ns":1789270616457286000,"word_count":296},"backend/src/admin/ssl.service.ts":{"size":6502,"mtime_ns":1787072106383978900,"indexed_at_ns":1789270616466337900,"word_count":612},"backend/src/admin/wiki.controller.ts":{"size":1814,"mtime_ns":1786799852191732300,"indexed_at_ns":1789270616473335800,"word_count":179},"backend/src/admin/wiki.service.ts":{"size":1767,"mtime_ns":1786799852193324200,"indexed_at_ns":1789270616480346200,"word_count":195},"backend/src/app.controller.spec.ts":{"size":617,"mtime_ns":1783764561644839700,"indexed_at_ns":1789270616486342000,"word_count":61},"backend/src/app.controller.ts":{"size":274,"mtime_ns":1783764561645849100,"indexed_at_ns":1789270616491846700,"word_count":31},"backend/src/app.module.ts":{"size":4052,"mtime_ns":1787579631764695400,"indexed_at_ns":1789270616497852000,"word_count":382},"backend/src/app.service.ts":{"size":142,"mtime_ns":1783764561648840500,"indexed_at_ns":1789270616503851200,"word_count":19},"backend/src/auth/auth.constants.ts":{"size":456,"mtime_ns":1787072106385980100,"indexed_at_ns":1789270616510362700,"word_count":32},"backend/src/auth/auth.controller.spec.ts":{"size":1528,"mtime_ns":1785327951179468000,"indexed_at_ns":1789270616516362400,"word_count":149},"backend/src/auth/auth.controller.ts":{"size":4304,"mtime_ns":1787645037368025500,"indexed_at_ns":1789270616522972400,"word_count":410},"backend/src/auth/auth.module.ts":{"size":824,"mtime_ns":1788859667823165900,"indexed_at_ns":1789270616528976900,"word_count":90},"backend/src/auth/auth.service.spec.ts":{"size":4306,"mtime_ns":1787729523436876800,"indexed_at_ns":1789270616534976800,"word_count":381},"backend/src/auth/auth.service.ts":{"size":9713,"mtime_ns":1787127978228589700,"indexed_at_ns":1789270616542124500,"word_count":933},"backend/src/auth/dto/admin-login.dto.ts":{"size":766,"mtime_ns":1787127978229587400,"indexed_at_ns":1789270616549129000,"word_count":82},"backend/src/auth/dto/login.dto.ts":{"size":587,"mtime_ns":1783764561659109000,"indexed_at_ns":1789270616556128700,"word_count":63},"backend/src/auth/dto/register.dto.ts":{"size":1197,"mtime_ns":1785327951186476900,"indexed_at_ns":1789270616562638600,"word_count":115},"backend/src/auth/dto/send-otp.dto.ts":{"size":374,"mtime_ns":1783764561661106500,"indexed_at_ns":1789270616569250800,"word_count":39},"backend/src/auth/dto/verify-otp.dto.ts":{"size":594,"mtime_ns":1783764561662112100,"indexed_at_ns":1789270616576163000,"word_count":64},"backend/src/auth/jwt-auth.guard.ts":{"size":1580,"mtime_ns":1789272909852062500,"indexed_at_ns":1789276685532984300,"word_count":150},"backend/src/auth/jwt.strategy.ts":{"size":1122,"mtime_ns":1786883225794343300,"indexed_at_ns":1789270616587160300,"word_count":116},"backend/src/auth/roles.decorator.ts":{"size":54,"mtime_ns":1786799852208379600,"indexed_at_ns":1789270616594674000,"word_count":4},"backend/src/auth/roles.guard.ts":{"size":46,"mtime_ns":1786799852209003400,"indexed_at_ns":1789270616599672100,"word_count":4},"backend/src/b2b/b2b.controller.ts":{"size":2782,"mtime_ns":1787645037369065300,"indexed_at_ns":1789270616605671400,"word_count":261},"backend/src/b2b/b2b.module.ts":{"size":342,"mtime_ns":1786799852212013200,"indexed_at_ns":1789270616612180500,"word_count":38},"backend/src/b2b/b2b.service.ts":{"size":2379,"mtime_ns":1786799852214009300,"indexed_at_ns":1789270616618771600,"word_count":243},"backend/src/banners/banners.controller.ts":{"size":1923,"mtime_ns":1786799852215010200,"indexed_at_ns":1789270616624769700,"word_count":169},"backend/src/banners/banners.module.ts":{"size":374,"mtime_ns":1786799852216010300,"indexed_at_ns":1789270616630768600,"word_count":38},"backend/src/banners/banners.service.ts":{"size":1394,"mtime_ns":1786799852216010300,"indexed_at_ns":1789270616636767400,"word_count":160},"backend/src/blogs/blogs.controller.ts":{"size":2794,"mtime_ns":1788334048803235500,"indexed_at_ns":1789270616642766100,"word_count":247},"backend/src/blogs/blogs.module.ts":{"size":248,"mtime_ns":1783764561665678100,"indexed_at_ns":1789270616650063600,"word_count":28},"backend/src/blogs/blogs.service.ts":{"size":10448,"mtime_ns":1788334048804373300,"indexed_at_ns":1789270616655934900,"word_count":1157},"backend/src/blogs/dto/create-blog.dto.ts":{"size":30,"mtime_ns":1783764561671557000,"indexed_at_ns":1789270616663617100,"word_count":4},"backend/src/blogs/dto/update-blog.dto.ts":{"size":164,"mtime_ns":1783764561673712400,"indexed_at_ns":1789270616669612200,"word_count":18},"backend/src/blogs/entities/blog.entity.ts":{"size":21,"mtime_ns":1783764561675101100,"indexed_at_ns":1789270616676615100,"word_count":4},"backend/src/cms/cms.controller.ts":{"size":3521,"mtime_ns":1785327951196913100,"indexed_at_ns":1789270616681920100,"word_count":280},"backend/src/cms/cms.module.ts":{"size":342,"mtime_ns":1785148022206298000,"indexed_at_ns":1789270616688917800,"word_count":38},"backend/src/cms/cms.service.ts":{"size":2501,"mtime_ns":1785327951197940400,"indexed_at_ns":1789270616695432600,"word_count":256},"backend/src/cms/dto/cms.dto.ts":{"size":2357,"mtime_ns":1785327951199995500,"indexed_at_ns":1789270616702236900,"word_count":203},"backend/src/common/decorators/roles.decorator.ts":{"size":157,"mtime_ns":1786799852220522400,"indexed_at_ns":1789270616709383700,"word_count":20},"backend/src/common/dto/pagination.dto.ts":{"size":1188,"mtime_ns":1785327951201988900,"indexed_at_ns":1789270616715388100,"word_count":121},"backend/src/common/env.validation.ts":{"size":1162,"mtime_ns":1787645037370646800,"indexed_at_ns":1789270616721385900,"word_count":109},"backend/src/common/filters/http-exception.filter.ts":{"size":4993,"mtime_ns":1787645037371739300,"indexed_at_ns":1789270616728385700,"word_count":500},"backend/src/common/filters/prisma-exception.filter.ts":{"size":2862,"mtime_ns":1787645037372254700,"indexed_at_ns":1789270616735386100,"word_count":280},"backend/src/common/guards/roles.guard.spec.ts":{"size":2426,"mtime_ns":1786799852225556800,"indexed_at_ns":1789270616742385800,"word_count":223},"backend/src/common/guards/roles.guard.ts":{"size":1285,"mtime_ns":1786799852226565200,"indexed_at_ns":1789270616749389800,"word_count":120},"backend/src/common/interceptors/decimal.interceptor.spec.ts":{"size":1677,"mtime_ns":1786799852227565700,"indexed_at_ns":1789270616756389200,"word_count":164},"backend/src/common/interceptors/decimal.interceptor.ts":{"size":1094,"mtime_ns":1786799852227565700,"indexed_at_ns":1789270616762901500,"word_count":118},"backend/src/common/metrics.controller.ts":{"size":2093,"mtime_ns":1786799852229073100,"indexed_at_ns":1789270616769900500,"word_count":206},"backend/src/common/revalidation/revalidation.module.ts":{"size":240,"mtime_ns":1787579631769582300,"indexed_at_ns":1789270616777524800,"word_count":24},"backend/src/common/revalidation/revalidation.service.ts":{"size":3410,"mtime_ns":1787579631770587500,"indexed_at_ns":1789270616783524200,"word_count":272},"backend/src/common/schemas/error-response.schema.ts":{"size":1680,"mtime_ns":1785330913144701500,"indexed_at_ns":1789270616791555500,"word_count":162},"backend/src/common/schemas/paginated-response.schema.ts":{"size":1108,"mtime_ns":1786799852230082200,"indexed_at_ns":1789270616798543800,"word_count":110},"backend/src/common/services/sms.service.ts":{"size":43591,"mtime_ns":1788625198954313100,"indexed_at_ns":1789270616812567200,"word_count":4097},"backend/src/common/sms.module.ts":{"size":204,"mtime_ns":1785330750996125100,"indexed_at_ns":1789270616821133900,"word_count":24},"backend/src/common/utils/phone.utils.ts":{"size":1089,"mtime_ns":1786883225801396000,"indexed_at_ns":1789270616827133400,"word_count":149},"backend/src/contact/contact.controller.ts":{"size":2088,"mtime_ns":1787645037373264000,"indexed_at_ns":1789270616841641400,"word_count":192},"backend/src/contact/contact.module.ts":{"size":365,"mtime_ns":1786799852236599000,"indexed_at_ns":1789270616850645500,"word_count":38},"backend/src/contact/contact.service.ts":{"size":4445,"mtime_ns":1788584193706148400,"indexed_at_ns":1789270616857643700,"word_count":432},"backend/src/doctors/doctors.controller.ts":{"size":1583,"mtime_ns":1787148092311692900,"indexed_at_ns":1789270616876740600,"word_count":148},"backend/src/doctors/doctors.module.ts":{"size":374,"mtime_ns":1786971396035575100,"indexed_at_ns":1789270616883738800,"word_count":38},"backend/src/doctors/doctors.service.ts":{"size":2336,"mtime_ns":1787148092312693100,"indexed_at_ns":1789270616889738900,"word_count":266},"backend/src/doctors/dto/doctor-query.dto.ts":{"size":1009,"mtime_ns":1787148092314699500,"indexed_at_ns":1789270616897259300,"word_count":116},"backend/src/faq/faq.controller.ts":{"size":2210,"mtime_ns":1787148092316694700,"indexed_at_ns":1789270616904507600,"word_count":199},"backend/src/faq/faq.module.ts":{"size":234,"mtime_ns":1787148092316694700,"indexed_at_ns":1789270616910528200,"word_count":28},"backend/src/faq/faq.service.ts":{"size":1541,"mtime_ns":1787148092319911700,"indexed_at_ns":1789270616917121000,"word_count":184},"backend/src/home/dto/create-home.dto.ts":{"size":30,"mtime_ns":1783764561682365300,"indexed_at_ns":1789270616924120000,"word_count":4},"backend/src/home/dto/update-home.dto.ts":{"size":164,"mtime_ns":1783764561682365300,"indexed_at_ns":1789270616931121400,"word_count":18},"backend/src/home/entities/home.entity.ts":{"size":21,"mtime_ns":1783764561684884800,"indexed_at_ns":1789270616938015400,"word_count":4},"backend/src/home/home.controller.ts":{"size":757,"mtime_ns":1785327951212087300,"indexed_at_ns":1789270616944017100,"word_count":69},"backend/src/home/home.module.ts":{"size":241,"mtime_ns":1783764561687108000,"indexed_at_ns":1789270616951769600,"word_count":28},"backend/src/home/home.service.ts":{"size":1372,"mtime_ns":1785327951214087300,"indexed_at_ns":1789270616957334700,"word_count":144},"backend/src/ingredients/ingredients.controller.ts":{"size":1952,"mtime_ns":1786799852237596500,"indexed_at_ns":1789270616967477400,"word_count":165},"backend/src/ingredients/ingredients.module.ts":{"size":406,"mtime_ns":1786799852238596500,"indexed_at_ns":1789270616974476300,"word_count":38},"backend/src/ingredients/ingredients.service.ts":{"size":1526,"mtime_ns":1786799852240108300,"indexed_at_ns":1789270616980484600,"word_count":162},"backend/src/main.ts":{"size":4119,"mtime_ns":1787999006319547500,"indexed_at_ns":1789270616986484300,"word_count":362},"backend/src/menu/menu.controller.ts":{"size":2920,"mtime_ns":1787564348681948800,"indexed_at_ns":1789270616994003100,"word_count":265},"backend/src/menu/menu.module.ts":{"size":267,"mtime_ns":1787148092323869500,"indexed_at_ns":1789270617001011500,"word_count":30},"backend/src/menu/menu.service.ts":{"size":7799,"mtime_ns":1787564362262172600,"indexed_at_ns":1789270617007790000,"word_count":799},"backend/src/orders/dto/create-order.dto.ts":{"size":1899,"mtime_ns":1785327951218626100,"indexed_at_ns":1789270617015305900,"word_count":162},"backend/src/orders/orders.controller.spec.ts":{"size":1910,"mtime_ns":1785327951219627700,"indexed_at_ns":1789270617022263900,"word_count":194},"backend/src/orders/orders.controller.ts":{"size":5930,"mtime_ns":1787072106398077200,"indexed_at_ns":1789270617028261900,"word_count":517},"backend/src/orders/orders.module.ts":{"size":255,"mtime_ns":1783764561697598200,"indexed_at_ns":1789270617035263500,"word_count":28},"backend/src/orders/orders.service.spec.ts":{"size":5121,"mtime_ns":1787729523436876800,"indexed_at_ns":1789270617042260400,"word_count":493},"backend/src/orders/orders.service.ts":{"size":21538,"mtime_ns":1788609394322769200,"indexed_at_ns":1789270617048295100,"word_count":2046},"backend/src/payment/dto/admin-transaction-filter.dto.ts":{"size":2060,"mtime_ns":1787072106401590500,"indexed_at_ns":1789270617058801500,"word_count":191},"backend/src/payment/dto/ebank-checkout.dto.ts":{"size":1378,"mtime_ns":1787394001603461200,"indexed_at_ns":1789270617064805000,"word_count":118},"backend/src/payment/dto/initiate-payment.dto.ts":{"size":775,"mtime_ns":1786870552874246400,"indexed_at_ns":1789270617072445700,"word_count":69},"backend/src/payment/dto/verify-payment.dto.ts":{"size":1421,"mtime_ns":1786894580126857900,"indexed_at_ns":1789270617079448700,"word_count":126},"backend/src/payment/interfaces/payment-gateway.interface.ts":{"size":1330,"mtime_ns":1786870552876751100,"indexed_at_ns":1789270617086941800,"word_count":128},"backend/src/payment/payment.controller.ts":{"size":19204,"mtime_ns":1788609394323871800,"indexed_at_ns":1789270617093446700,"word_count":1576},"backend/src/payment/payment.module.ts":{"size":608,"mtime_ns":1787394001605617900,"indexed_at_ns":1789270617100454800,"word_count":61},"backend/src/payment/payment.service.ts":{"size":40259,"mtime_ns":1788609394325101800,"indexed_at_ns":1789270617107449100,"word_count":3576},"backend/src/payment/zibal-ebank.service.ts":{"size":10087,"mtime_ns":1787461919452306600,"indexed_at_ns":1789270617117425800,"word_count":1006},"backend/src/payment/zibal.service.ts":{"size":25781,"mtime_ns":1787461919453309100,"indexed_at_ns":1789270617125430200,"word_count":2490},"backend/src/pets/dto/create-health-log.dto.ts":{"size":761,"mtime_ns":1785327951229443300,"indexed_at_ns":1789270617132427600,"word_count":69},"backend/src/pets/dto/create-pet.dto.ts":{"size":1143,"mtime_ns":1785327951230948800,"indexed_at_ns":1789270617139428600,"word_count":104},"backend/src/pets/dto/create-reminder.dto.ts":{"size":810,"mtime_ns":1785327951231958200,"indexed_at_ns":1789270617146431800,"word_count":71},"backend/src/pets/dto/update-pet.dto.ts":{"size":160,"mtime_ns":1783764561709557500,"indexed_at_ns":1789270617153431400,"word_count":18},"backend/src/pets/pets.controller.spec.ts":{"size":2544,"mtime_ns":1786799852248118800,"indexed_at_ns":1789270617158931300,"word_count":269},"backend/src/pets/pets.controller.ts":{"size":8427,"mtime_ns":1787461919454308900,"indexed_at_ns":1789270617165649400,"word_count":781},"backend/src/pets/pets.module.ts":{"size":241,"mtime_ns":1783764561714469800,"indexed_at_ns":1789270617172646100,"word_count":28},"backend/src/pets/pets.service.spec.ts":{"size":2961,"mtime_ns":1785327951238208000,"indexed_at_ns":1789270617179650000,"word_count":272},"backend/src/pets/pets.service.ts":{"size":6978,"mtime_ns":1786799852250117400,"indexed_at_ns":1789270617187648600,"word_count":710},"backend/src/prescriptions/prescriptions.controller.ts":{"size":2356,"mtime_ns":1786799852253748300,"indexed_at_ns":1789270617195549800,"word_count":232},"backend/src/prescriptions/prescriptions.module.ts":{"size":495,"mtime_ns":1786954681815809200,"indexed_at_ns":1789270617202317700,"word_count":45},"backend/src/prescriptions/prescriptions.service.ts":{"size":4666,"mtime_ns":1787072106408779000,"indexed_at_ns":1789270617210394100,"word_count":498},"backend/src/prisma/prisma.module.ts":{"size":210,"mtime_ns":1783764561718199800,"indexed_at_ns":1789270617217824000,"word_count":24},"backend/src/prisma/prisma.service.ts":{"size":4250,"mtime_ns":1787640806107781000,"indexed_at_ns":1789270617228514800,"word_count":425},"backend/src/products/dto/get-products.dto.ts":{"size":1320,"mtime_ns":1786799852260271600,"indexed_at_ns":1789270617238169400,"word_count":115},"backend/src/products/products.controller.spec.ts":{"size":1863,"mtime_ns":1785327951243280800,"indexed_at_ns":1789270617245175100,"word_count":166},"backend/src/products/products.controller.ts":{"size":2445,"mtime_ns":1786799852261281700,"indexed_at_ns":1789270617252176900,"word_count":209},"backend/src/products/products.module.ts":{"size":340,"mtime_ns":1787999968301264900,"indexed_at_ns":1789270617260928000,"word_count":35},"backend/src/products/products.service.spec.ts":{"size":1860,"mtime_ns":1787729523438446200,"indexed_at_ns":1789270617268518200,"word_count":175},"backend/src/products/products.service.ts":{"size":7842,"mtime_ns":1788334048805380100,"indexed_at_ns":1789270617275523300,"word_count":807},"backend/src/redis/redis.module.ts":{"size":205,"mtime_ns":1783764561727662100,"indexed_at_ns":1789270617289526500,"word_count":24},"backend/src/redis/redis.service.spec.ts":{"size":1525,"mtime_ns":1783764561728672300,"indexed_at_ns":1789270617296664800,"word_count":145},"backend/src/redis/redis.service.ts":{"size":1202,"mtime_ns":1786895436211834600,"indexed_at_ns":1789270617307959700,"word_count":132},"backend/src/reviews/dto/create-review.dto.ts":{"size":949,"mtime_ns":1787072106414306300,"indexed_at_ns":1789270617315996800,"word_count":92},"backend/src/reviews/dto/update-review.dto.ts":{"size":534,"mtime_ns":1787072106415805700,"indexed_at_ns":1789270617321996900,"word_count":53},"backend/src/reviews/reviews.controller.ts":{"size":3318,"mtime_ns":1787645037375268800,"indexed_at_ns":1789270617328501800,"word_count":329},"backend/src/reviews/reviews.module.ts":{"size":374,"mtime_ns":1786944769517310800,"indexed_at_ns":1789270617335925700,"word_count":38},"backend/src/reviews/reviews.service.ts":{"size":7013,"mtime_ns":1787579631775586600,"indexed_at_ns":1789270617341924000,"word_count":742},"backend/src/seo/seo.controller.ts":{"size":904,"mtime_ns":1785327951247283200,"indexed_at_ns":1789270617352931900,"word_count":85},"backend/src/seo/seo.module.ts":{"size":342,"mtime_ns":1785148022268580900,"indexed_at_ns":1789270617359433900,"word_count":38},"backend/src/seo/seo.service.ts":{"size":2023,"mtime_ns":1787127978249385200,"indexed_at_ns":1789270617365009200,"word_count":182},"backend/src/settings/default-ui-texts.ts":{"size":19921,"mtime_ns":1789279671063831400,"indexed_at_ns":1789279871043652100,"word_count":1586},"backend/src/settings/dto/sms-log-query.dto.ts":{"size":1343,"mtime_ns":1787072106421339300,"indexed_at_ns":1789270617378013400,"word_count":125},"backend/src/settings/settings.controller.spec.ts":{"size":2855,"mtime_ns":1787729523438446200,"indexed_at_ns":1789270617385013500,"word_count":239},"backend/src/settings/settings.controller.ts":{"size":9726,"mtime_ns":1788609394326111700,"indexed_at_ns":1789270617391518100,"word_count":762},"backend/src/settings/settings.module.ts":{"size":382,"mtime_ns":1783764561735515700,"indexed_at_ns":1789270617398529600,"word_count":38},"backend/src/settings/settings.service.spec.ts":{"size":3028,"mtime_ns":1787729523439452400,"indexed_at_ns":1789270617405529700,"word_count":279},"backend/src/settings/settings.service.ts":{"size":30061,"mtime_ns":1789279685084681400,"indexed_at_ns":1789279871077757500,"word_count":2270},"backend/src/smart-advisor/smart-advisor.controller.ts":{"size":1821,"mtime_ns":1786799852275441500,"indexed_at_ns":1789270617418044600,"word_count":152},"backend/src/smart-advisor/smart-advisor.module.ts":{"size":416,"mtime_ns":1786799852276441700,"indexed_at_ns":1789270617425618900,"word_count":38},"backend/src/smart-advisor/smart-advisor.service.ts":{"size":1241,"mtime_ns":1786799852277440400,"indexed_at_ns":1789270617431619100,"word_count":131},"backend/src/testimonials/testimonials.controller.ts":{"size":1905,"mtime_ns":1787148092329786500,"indexed_at_ns":1789270617438622400,"word_count":160},"backend/src/testimonials/testimonials.module.ts":{"size":414,"mtime_ns":1786799852279441800,"indexed_at_ns":1789270617446632400,"word_count":38},"backend/src/testimonials/testimonials.service.ts":{"size":1268,"mtime_ns":1787148092332501600,"indexed_at_ns":1789270617452632400,"word_count":140},"backend/src/tickets/dto/create-ticket.dto.ts":{"size":2374,"mtime_ns":1787072106430874900,"indexed_at_ns":1789270617459665400,"word_count":201},"backend/src/tickets/dto/ticket-query.dto.ts":{"size":1103,"mtime_ns":1787072106431871400,"indexed_at_ns":1789270617465701200,"word_count":106},"backend/src/tickets/tickets.controller.ts":{"size":3114,"mtime_ns":1787072106433878000,"indexed_at_ns":1789270617473254800,"word_count":293},"backend/src/tickets/tickets.module.ts":{"size":374,"mtime_ns":1786890779322296800,"indexed_at_ns":1789270617479322100,"word_count":38},"backend/src/tickets/tickets.service.ts":{"size":7310,"mtime_ns":1787072106434874300,"indexed_at_ns":1789270617485288900,"word_count":781},"backend/src/users/dto/address.dto.ts":{"size":1098,"mtime_ns":1783764561739871500,"indexed_at_ns":1789270617492797600,"word_count":99},"backend/src/users/dto/update-profile.dto.ts":{"size":1068,"mtime_ns":1786885876805472100,"indexed_at_ns":1789270617499803000,"word_count":98},"backend/src/users/users.controller.spec.ts":{"size":3333,"mtime_ns":1785327951253796500,"indexed_at_ns":1789270617505801900,"word_count":322},"backend/src/users/users.controller.ts":{"size":6854,"mtime_ns":1786799852282481500,"indexed_at_ns":1789270617512311000,"word_count":590},"backend/src/users/users.module.ts":{"size":275,"mtime_ns":1783764561748154400,"indexed_at_ns":1789270617519988900,"word_count":30},"backend/src/users/users.service.spec.ts":{"size":3844,"mtime_ns":1787729523440453600,"indexed_at_ns":1789270617525985900,"word_count":320},"backend/src/users/users.service.ts":{"size":9199,"mtime_ns":1788609394329113500,"indexed_at_ns":1789270617531986400,"word_count":861},"backend/src/videos/dto/create-video.dto.ts":{"size":1573,"mtime_ns":1786971396042093900,"indexed_at_ns":1789270617538985200,"word_count":127},"backend/src/videos/dto/get-videos-query.dto.ts":{"size":643,"mtime_ns":1786799852287643500,"indexed_at_ns":1789270617547000000,"word_count":77},"backend/src/videos/videos.controller.ts":{"size":1924,"mtime_ns":1786799852291153100,"indexed_at_ns":1789270617554853800,"word_count":173},"backend/src/videos/videos.module.ts":{"size":283,"mtime_ns":1785148022306583700,"indexed_at_ns":1789270617561978900,"word_count":30},"backend/src/videos/videos.service.ts":{"size":3036,"mtime_ns":1788334048807380600,"indexed_at_ns":1789270617567985000,"word_count":321},"backend/src/wholesale/dto/wholesale-apply.dto.ts":{"size":739,"mtime_ns":1785148022317622300,"indexed_at_ns":1789270617574983300,"word_count":66},"backend/src/wholesale/wholesale.controller.ts":{"size":2037,"mtime_ns":1786799852294177000,"indexed_at_ns":1789270617581987300,"word_count":160},"backend/src/wholesale/wholesale.module.ts":{"size":390,"mtime_ns":1785148022328746300,"indexed_at_ns":1789270617587986600,"word_count":38},"backend/src/wholesale/wholesale.service.ts":{"size":2618,"mtime_ns":1788584193713366900,"indexed_at_ns":1789270617594497000,"word_count":266},"backend/src/wiki/dto/create-wiki.dto.ts":{"size":30,"mtime_ns":1783764561752933200,"indexed_at_ns":1789270617600497300,"word_count":4},"backend/src/wiki/dto/update-wiki.dto.ts":{"size":164,"mtime_ns":1783764561753945200,"indexed_at_ns":1789270617606495500,"word_count":18},"backend/src/wiki/entities/wiki.entity.ts":{"size":21,"mtime_ns":1783764561755039400,"indexed_at_ns":1789270617612605800,"word_count":4},"backend/src/wiki/wiki.controller.ts":{"size":1219,"mtime_ns":1785327951272850400,"indexed_at_ns":1789270617618607300,"word_count":110},"backend/src/wiki/wiki.module.ts":{"size":241,"mtime_ns":1783764561756925000,"indexed_at_ns":1789270617625607400,"word_count":28},"backend/src/wiki/wiki.service.ts":{"size":1562,"mtime_ns":1786799852295173000,"indexed_at_ns":1789270617632609000,"word_count":174},"backend/test/app-audit-verification.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059109005600,"indexed_at_ns":1789270617638604900,"word_count":2},"backend/test/app-audit-verification.e2e-spec.js":{"size":8429,"mtime_ns":1787073059110516300,"indexed_at_ns":1789270617644605700,"word_count":714},"backend/test/app-audit-verification.e2e-spec.ts":{"size":6464,"mtime_ns":1786799852296174700,"indexed_at_ns":1789270617655606000,"word_count":569},"backend/test/app.e2e-spec.d.ts":{"size":11,"mtime_ns":1787073059112563300,"indexed_at_ns":1789270617662590400,"word_count":2},"backend/test/app.e2e-spec.js":{"size":1228,"mtime_ns":1787073059113572500,"indexed_at_ns":1789270617668591200,"word_count":97},"backend/test/app.e2e-spec.ts":{"size":981,"mtime_ns":1786799852297175000,"indexed_at_ns":1789270617678591700,"word_count":83},"backend/test/jest-e2e.json":{"size":183,"mtime_ns":1783764561762911800,"indexed_at_ns":1789270627991150700,"word_count":17,"hashes":{"backend/test/jest-e2e.json":"94091f560937212ad7027afcb77e62e6ac79e3e4cb401c3a16a56e7be4cac721"}},"backend/tsconfig.build.json":{"size":107,"mtime_ns":1783764561763447000,"indexed_at_ns":1789270627992152800,"word_count":10,"hashes":{"backend/tsconfig.build.json":"1f47c7dc3c8b5a15558654f45f21e0f553acc1680046f09dc24428e8538c4f9d"}},"backend/tsconfig.json":{"size":785,"mtime_ns":1787073059116167600,"indexed_at_ns":1789270627993150700,"word_count":56,"hashes":{"backend/tsconfig.json":"9b20fbca537d1e55f3a113fcee6683f0eb1f06752d3c8c52edf26eef8e2053f2"}},"backend/uploads/1781288429353-508765350.jpg":{"size":110246,"mtime_ns":1783764561766257000,"indexed_at_ns":1789270617705104200,"word_count":3882},"canina.md":{"size":21919,"mtime_ns":1786885876809472400,"indexed_at_ns":1789270617716611800,"word_count":1983},"canina.pdf":{"size":2858373,"mtime_ns":1785148022370811500,"indexed_at_ns":1789270617722205400,"word_count":0},"docker-compose.yml":{"size":2147,"mtime_ns":1787752951349742200,"indexed_at_ns":1789270617728204000,"word_count":125},"docs/01-introduction.md":{"size":5537,"mtime_ns":1786885876812474900,"indexed_at_ns":1789270617737203000,"word_count":523},"docs/02-user-guide.md":{"size":4303,"mtime_ns":1786885876813985900,"indexed_at_ns":1789270617743202200,"word_count":422},"docs/03-developer-guide.md":{"size":6717,"mtime_ns":1783764561771660500,"indexed_at_ns":1789270617749206200,"word_count":678},"docs/04-setup-and-deployment.md":{"size":4005,"mtime_ns":1787127978256847800,"indexed_at_ns":1789270628069439700,"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":1789270628070000800,"word_count":374,"hashes":{"docs/05-devops-and-monitoring.md":"53f1f45bbbdd3cf81cb4bc082ef4e49f506627f10f581d3c4b835028d02b5421"}},"docs/06-testing.md":{"size":4214,"mtime_ns":1783764561774967500,"indexed_at_ns":1789270628072037700,"word_count":457,"hashes":{"docs/06-testing.md":"69d50bd5e233f030d8076b55b69599cee201e1c393b7ee1beeb495c304fd4bd3"}},"docs/README.md":{"size":2740,"mtime_ns":1786885876816996700,"indexed_at_ns":1789270628073037400,"word_count":253,"hashes":{"docs/readme.md":"1b7ffde4b290e742802fc554f2dd2f7a2316fe25bd1cd328421ffa823b36f40f"}},"docs/audit/00-repository-map.md":{"size":3171,"mtime_ns":1786799852298174200,"indexed_at_ns":1789270628074037400,"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":1789270628075037200,"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":1789270628076036800,"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":1789270628077036400,"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":1789270628078034900,"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":1789270617825305000,"word_count":560},"docs/audit/06-storefront-audit.md":{"size":4191,"mtime_ns":1786799852303691400,"indexed_at_ns":1789270628079036300,"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":1789270628080039200,"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":1789270628081037100,"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":1789270628082036100,"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":1789270617861685200,"word_count":678},"docs/audit/11-code-quality-audit.md":{"size":3379,"mtime_ns":1786799852308957000,"indexed_at_ns":1789270628083036100,"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":1789270628084036500,"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":1789270628086007600,"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":1789270628086816600,"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":1789270627994150400,"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":1789270628088241800,"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":1789270627995151800,"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":1789270628089277600,"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":1789270628090313200,"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":1789270627996181900,"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":1789270628091314300,"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":1789270617946960800,"word_count":139},"docs/audit/23-untracked-first-party-files.txt":{"size":59,"mtime_ns":1786799852319066000,"indexed_at_ns":1789270617953963800,"word_count":7},"docs/audit/24-omitted-file-inspection-report.md":{"size":2462,"mtime_ns":1786799852320065700,"indexed_at_ns":1789270628092312800,"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":1789270627998188900,"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":1789270628093312600,"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":1789270617981071000,"word_count":148},"docs/audit/28-full-repository-classification.json":{"size":27913,"mtime_ns":1786799852324099500,"indexed_at_ns":1789270627999182000,"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":1789270628000182600,"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":1789270628001181600,"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":1789270628094316200,"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":1789270628002181800,"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":1789270628095312600,"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":1789270628003181400,"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":1789270628004718200,"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":1789270628005750600,"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":1789270618047578600,"word_count":398},"docs/audit/CROSS_BOUNDARY_DEPENDENCIES.md":{"size":2146,"mtime_ns":1786799852332642700,"indexed_at_ns":1789270618053578600,"word_count":239},"docs/audit/FRONTEND_INTEGRATION_REQUIREMENTS.md":{"size":15307,"mtime_ns":1787127978258848200,"indexed_at_ns":1789270618061680900,"word_count":1579},"docs/audit/MASTER-TASK-BACKLOG.md":{"size":30107,"mtime_ns":1786799852335470200,"indexed_at_ns":1789270618069686800,"word_count":3510},"docs/audit/audit-state.json":{"size":4135,"mtime_ns":1786799852337382200,"indexed_at_ns":1789270628006752900,"word_count":267,"hashes":{"docs/audit/audit-state.json":"4b804494570a2812170cb8dab35d15da659f57d6e637652328725e956f7d98aa"}},"docs/audit/build_manifest.js":{"size":4060,"mtime_ns":1786799852338393200,"indexed_at_ns":1789270618080688800,"word_count":348},"docs/audit/frontend-route-map.md":{"size":2558,"mtime_ns":1786799852339389800,"indexed_at_ns":1789270618088688900,"word_count":329},"docs/audit/generate_classification.js":{"size":2186,"mtime_ns":1786799852339389800,"indexed_at_ns":1789270618094342200,"word_count":204},"docs/audit/generate_evidence.js":{"size":3098,"mtime_ns":1786799852340390100,"indexed_at_ns":1789270618100909300,"word_count":253},"docs/audit/generate_ledger.js":{"size":7648,"mtime_ns":1786799852341897300,"indexed_at_ns":1789270618107908600,"word_count":620},"docs/audit/generate_manifest.js":{"size":6357,"mtime_ns":1786799852341897300,"indexed_at_ns":1789270618114427800,"word_count":489},"docs/audit/master-task-backlog.json":{"size":22336,"mtime_ns":1786799852342906700,"indexed_at_ns":1789270628008285500,"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":1789270618132427800,"word_count":736},"docs/audit/phase3-traceability-matrix.md":{"size":5237,"mtime_ns":1786799852344952800,"indexed_at_ns":1789270628096312500,"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":1789270628097312900,"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":1789270628098312200,"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":1789270628099311900,"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":1789270628101311700,"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":1789270618174240700,"word_count":559},"docs/audit/sync_honest_manifest.js":{"size":1213,"mtime_ns":1786799852349953100,"indexed_at_ns":1789270618179754400,"word_count":75},"docs/audit/sync_manifest.js":{"size":997,"mtime_ns":1786799852350953300,"indexed_at_ns":1789270618185754000,"word_count":62},"docs/audit/validate_evidence_grade.js":{"size":6141,"mtime_ns":1786799852351954100,"indexed_at_ns":1789270618191752300,"word_count":526},"docs/audit/validate_integrity.js":{"size":3408,"mtime_ns":1786799852352952400,"indexed_at_ns":1789270618198591600,"word_count":284},"docs/backlog.md":{"size":26175,"mtime_ns":1786799852356021600,"indexed_at_ns":1789270618207217400,"word_count":2834},"frontend/admin-panel/README.md":{"size":2425,"mtime_ns":1783764561778952800,"indexed_at_ns":1789270628102311100,"word_count":212,"hashes":{"frontend/admin-panel/readme.md":"3945c052249ebd020b013303d5921815b52d847bd36c748a03bfdc8eb2a390b8"}},"frontend/admin-panel/eslint.config.js":{"size":906,"mtime_ns":1787148092334501700,"indexed_at_ns":1789270618225958700,"word_count":69},"frontend/admin-panel/index.html":{"size":363,"mtime_ns":1783764561780558500,"indexed_at_ns":1789270618237853000,"word_count":28},"frontend/admin-panel/package.json":{"size":1072,"mtime_ns":1788000055991496000,"indexed_at_ns":1789270628009321600,"word_count":84,"hashes":{"frontend/admin-panel/package.json":"455b58b802fb0ba4c5aabfa83f023a9e9b692f1d6a2e71b66952509b1a7dd6da"}},"frontend/admin-panel/postcss.config.js":{"size":91,"mtime_ns":1783764561796281900,"indexed_at_ns":1789270618246886800,"word_count":11},"frontend/admin-panel/public/favicon.svg":{"size":9522,"mtime_ns":1783764561797801500,"indexed_at_ns":1789270618252857900,"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":1789270618279508600,"word_count":15},"frontend/admin-panel/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856792445365000,"indexed_at_ns":1789270618305068800,"word_count":15},"frontend/admin-panel/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856792454604400,"indexed_at_ns":1789270628103314500,"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":1789270628104850400,"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":1789270618854902100,"word_count":10881},"frontend/admin-panel/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856792548005600,"indexed_at_ns":1789270628105882300,"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":1789270628106885400,"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":1789270619392328900,"word_count":2615},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856792646666000,"indexed_at_ns":1789270619419324700,"word_count":55},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856792647671700,"indexed_at_ns":1789270628107882300,"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":1789270619436709000,"word_count":671},"frontend/admin-panel/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856792648669800,"indexed_at_ns":1789270628109453900,"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":1789270621751271600,"word_count":14},"frontend/admin-panel/public/icons.svg":{"size":5031,"mtime_ns":1783764561799320300,"indexed_at_ns":1789270621757271500,"word_count":382},"frontend/admin-panel/src/App.tsx":{"size":1088,"mtime_ns":1786799852365481100,"indexed_at_ns":1789270621767778600,"word_count":99},"frontend/admin-panel/src/assets/hero.png":{"size":13057,"mtime_ns":1783764561812863000,"indexed_at_ns":1789270621775435200,"word_count":437},"frontend/admin-panel/src/assets/react.svg":{"size":4126,"mtime_ns":1783764561813924700,"indexed_at_ns":1789270621782434300,"word_count":366},"frontend/admin-panel/src/assets/vite.svg":{"size":8709,"mtime_ns":1783764561814995700,"indexed_at_ns":1789270621790924700,"word_count":439},"frontend/admin-panel/src/components/Layout.tsx":{"size":726,"mtime_ns":1784621786958594800,"indexed_at_ns":1789270621799639800,"word_count":69},"frontend/admin-panel/src/components/ProtectedRoute.tsx":{"size":2336,"mtime_ns":1786799852369164100,"indexed_at_ns":1789270621805640200,"word_count":210},"frontend/admin-panel/src/components/RouteErrorBoundary.tsx":{"size":4042,"mtime_ns":1787062174623011100,"indexed_at_ns":1789270621812942200,"word_count":350},"frontend/admin-panel/src/components/Sidebar.tsx":{"size":13218,"mtime_ns":1788859667825174100,"indexed_at_ns":1789270621819786900,"word_count":1210},"frontend/admin-panel/src/components/Topbar.tsx":{"size":19016,"mtime_ns":1787466234964385700,"indexed_at_ns":1789270621835931900,"word_count":1586},"frontend/admin-panel/src/components/TransactionReceiptModal.tsx":{"size":9674,"mtime_ns":1787405554804618300,"indexed_at_ns":1789270621850328800,"word_count":738},"frontend/admin-panel/src/components/ui/Badge.tsx":{"size":1554,"mtime_ns":1787461920844094000,"indexed_at_ns":1789270621862840900,"word_count":158},"frontend/admin-panel/src/components/ui/Button.tsx":{"size":3591,"mtime_ns":1787467799871536000,"indexed_at_ns":1789270621871483600,"word_count":338},"frontend/admin-panel/src/components/ui/ConfirmModal.tsx":{"size":2294,"mtime_ns":1786972191359099700,"indexed_at_ns":1789270621895455600,"word_count":192},"frontend/admin-panel/src/components/ui/FormField.tsx":{"size":1683,"mtime_ns":1786954681823527000,"indexed_at_ns":1789270621906168900,"word_count":148},"frontend/admin-panel/src/components/ui/IconPickerModal.tsx":{"size":4853,"mtime_ns":1787071159959928200,"indexed_at_ns":1789270621915319700,"word_count":397},"frontend/admin-panel/src/components/ui/ImagePreviewModal.tsx":{"size":3351,"mtime_ns":1786954681824534900,"indexed_at_ns":1789270621923302500,"word_count":270},"frontend/admin-panel/src/components/ui/Input.tsx":{"size":2451,"mtime_ns":1788332598539946700,"indexed_at_ns":1789270621934302400,"word_count":213},"frontend/admin-panel/src/components/ui/MaskableField.tsx":{"size":3246,"mtime_ns":1787405554805712000,"indexed_at_ns":1789270621942300200,"word_count":310},"frontend/admin-panel/src/components/ui/MediaSelector.tsx":{"size":21604,"mtime_ns":1787038450536696800,"indexed_at_ns":1789270621949304000,"word_count":1686},"frontend/admin-panel/src/components/ui/Modal.tsx":{"size":3381,"mtime_ns":1787461920845094300,"indexed_at_ns":1789270621957302800,"word_count":324},"frontend/admin-panel/src/components/ui/Pagination.tsx":{"size":5510,"mtime_ns":1786799852387442100,"indexed_at_ns":1789270621965217200,"word_count":447},"frontend/admin-panel/src/components/ui/PriceInput.tsx":{"size":2633,"mtime_ns":1786948119771162400,"indexed_at_ns":1789270621972801300,"word_count":267},"frontend/admin-panel/src/components/ui/RichTextEditor.tsx":{"size":36574,"mtime_ns":1787980615563542500,"indexed_at_ns":1789270621981037300,"word_count":2767},"frontend/admin-panel/src/components/ui/Select.tsx":{"size":1881,"mtime_ns":1786954681828537500,"indexed_at_ns":1789270621992657300,"word_count":160},"frontend/admin-panel/src/components/ui/Skeleton.tsx":{"size":178,"mtime_ns":1783856792977535800,"indexed_at_ns":1789270622000354500,"word_count":22},"frontend/admin-panel/src/components/ui/Spinner.tsx":{"size":650,"mtime_ns":1783856792979049200,"indexed_at_ns":1789270622008453200,"word_count":67},"frontend/admin-panel/src/components/ui/Textarea.tsx":{"size":1287,"mtime_ns":1786954681828537500,"indexed_at_ns":1789270622015453500,"word_count":110},"frontend/admin-panel/src/components/ui/ThSort.tsx":{"size":1478,"mtime_ns":1787461920845094300,"indexed_at_ns":1789270622025457900,"word_count":148},"frontend/admin-panel/src/components/ui/ToggleSwitch.tsx":{"size":1623,"mtime_ns":1786954681830044900,"indexed_at_ns":1789270622032241200,"word_count":143},"frontend/admin-panel/src/main.tsx":{"size":1055,"mtime_ns":1787062325395038600,"indexed_at_ns":1789270622044205400,"word_count":106},"frontend/admin-panel/src/pages/B2BManager.tsx":{"size":24689,"mtime_ns":1787729527927391700,"indexed_at_ns":1789270622058674800,"word_count":1682},"frontend/admin-panel/src/pages/BannersManager.tsx":{"size":19583,"mtime_ns":1787467799874171700,"indexed_at_ns":1789270622066677000,"word_count":1396},"frontend/admin-panel/src/pages/Blogs.tsx":{"size":82294,"mtime_ns":1787729527928391800,"indexed_at_ns":1789270622074310300,"word_count":5654},"frontend/admin-panel/src/pages/CMS.tsx":{"size":10114,"mtime_ns":1787467933664259800,"indexed_at_ns":1789270622084094100,"word_count":791},"frontend/admin-panel/src/pages/Categories.tsx":{"size":16242,"mtime_ns":1787469989141511600,"indexed_at_ns":1789270622091163600,"word_count":1174},"frontend/admin-panel/src/pages/ContactSubmissions.tsx":{"size":12346,"mtime_ns":1787467799877343800,"indexed_at_ns":1789270622098731900,"word_count":842},"frontend/admin-panel/src/pages/Coupons.tsx":{"size":27669,"mtime_ns":1788332598543451700,"indexed_at_ns":1789270622105731100,"word_count":2138},"frontend/admin-panel/src/pages/Dashboard.tsx":{"size":6006,"mtime_ns":1786885876829510000,"indexed_at_ns":1789270622113240500,"word_count":534},"frontend/admin-panel/src/pages/DoctorsManager.tsx":{"size":23282,"mtime_ns":1787467799879923800,"indexed_at_ns":1789270622122014200,"word_count":1666},"frontend/admin-panel/src/pages/FAQManager.tsx":{"size":12625,"mtime_ns":1787467799881924800,"indexed_at_ns":1789270622130138500,"word_count":937},"frontend/admin-panel/src/pages/FinancialSettingsPage.tsx":{"size":29476,"mtime_ns":1789279712115495700,"indexed_at_ns":1789279875373008000,"word_count":1942},"frontend/admin-panel/src/pages/IngredientsManager.tsx":{"size":17943,"mtime_ns":1787467933669934500,"indexed_at_ns":1789270622145808400,"word_count":1254},"frontend/admin-panel/src/pages/Login.tsx":{"size":11573,"mtime_ns":1788587906733886000,"indexed_at_ns":1789270622152808300,"word_count":838},"frontend/admin-panel/src/pages/Media.tsx":{"size":29374,"mtime_ns":1787467799885925200,"indexed_at_ns":1789270622159929500,"word_count":2304},"frontend/admin-panel/src/pages/MenuManager.tsx":{"size":19625,"mtime_ns":1787469989146215000,"indexed_at_ns":1789270622167896100,"word_count":1512},"frontend/admin-panel/src/pages/MonitoringPage.tsx":{"size":16455,"mtime_ns":1787466234965980200,"indexed_at_ns":1789270622174986700,"word_count":1289},"frontend/admin-panel/src/pages/Orders.tsx":{"size":64822,"mtime_ns":1788609394330111700,"indexed_at_ns":1789270622183019600,"word_count":4808},"frontend/admin-panel/src/pages/PaymentGatewaysPage.tsx":{"size":37893,"mtime_ns":1787467799889939500,"indexed_at_ns":1789270622191604400,"word_count":2521},"frontend/admin-panel/src/pages/Pets.tsx":{"size":16631,"mtime_ns":1787467799891938300,"indexed_at_ns":1789270622199262800,"word_count":1209},"frontend/admin-panel/src/pages/PrescriptionsManager.tsx":{"size":19424,"mtime_ns":1787467799892935800,"indexed_at_ns":1789270622205968100,"word_count":1419},"frontend/admin-panel/src/pages/Products.tsx":{"size":248144,"mtime_ns":1788351605801883800,"indexed_at_ns":1789270622214377400,"word_count":16079},"frontend/admin-panel/src/pages/Reports.tsx":{"size":24050,"mtime_ns":1787729523442451300,"indexed_at_ns":1789270622228783000,"word_count":1832},"frontend/admin-panel/src/pages/Reviews.tsx":{"size":30539,"mtime_ns":1787740536670948600,"indexed_at_ns":1789270622235782700,"word_count":2140},"frontend/admin-panel/src/pages/SeoSettingsPage.tsx":{"size":50513,"mtime_ns":1788343360494035900,"indexed_at_ns":1789270622244128800,"word_count":3404},"frontend/admin-panel/src/pages/Settings.tsx":{"size":24256,"mtime_ns":1787468615457819400,"indexed_at_ns":1789270622252833800,"word_count":1701},"frontend/admin-panel/src/pages/ShippingSettingsPage.tsx":{"size":7615,"mtime_ns":1787467799901935300,"indexed_at_ns":1789270622260342200,"word_count":585},"frontend/admin-panel/src/pages/SmartAdvisorManager.tsx":{"size":13745,"mtime_ns":1787467799902933600,"indexed_at_ns":1789270622267103500,"word_count":1014},"frontend/admin-panel/src/pages/SmsSettingsPage.tsx":{"size":133924,"mtime_ns":1788625198956980200,"indexed_at_ns":1789270622273776000,"word_count":9185},"frontend/admin-panel/src/pages/SslSettingsPage.tsx":{"size":25502,"mtime_ns":1787467799905446700,"indexed_at_ns":1789270622284909800,"word_count":1847},"frontend/admin-panel/src/pages/SystemSettingsPage.tsx":{"size":25018,"mtime_ns":1789276760433608700,"indexed_at_ns":1789277222430253200,"word_count":1626},"frontend/admin-panel/src/pages/TestimonialsManager.tsx":{"size":18547,"mtime_ns":1787467799908955400,"indexed_at_ns":1789270622297721200,"word_count":1297},"frontend/admin-panel/src/pages/Tickets.tsx":{"size":20254,"mtime_ns":1787467799909962900,"indexed_at_ns":1789270622304788100,"word_count":1455},"frontend/admin-panel/src/pages/Transactions.tsx":{"size":45136,"mtime_ns":1787471434872188300,"indexed_at_ns":1789270622313454800,"word_count":3213},"frontend/admin-panel/src/pages/UITexts.tsx":{"size":64687,"mtime_ns":1788587906738676600,"indexed_at_ns":1789270622325121300,"word_count":5471},"frontend/admin-panel/src/pages/Users.tsx":{"size":42038,"mtime_ns":1788587906739671200,"indexed_at_ns":1789270622337715000,"word_count":2827},"frontend/admin-panel/src/pages/Videos.tsx":{"size":25920,"mtime_ns":1787740536675689700,"indexed_at_ns":1789270622347050000,"word_count":1845},"frontend/admin-panel/src/pages/WholesaleApplications.tsx":{"size":6713,"mtime_ns":1787467799916852500,"indexed_at_ns":1789270622381307100,"word_count":505},"frontend/admin-panel/src/pages/Wiki.tsx":{"size":15651,"mtime_ns":1787469989158212800,"indexed_at_ns":1789270622392626000,"word_count":1221},"frontend/admin-panel/src/pages/ZibalPortalPage.tsx":{"size":55699,"mtime_ns":1787570438155805200,"indexed_at_ns":1789270622402243200,"word_count":3753},"frontend/admin-panel/src/routes/adminRoutes.tsx":{"size":6385,"mtime_ns":1788859667828173200,"indexed_at_ns":1789270622410652700,"word_count":616},"frontend/admin-panel/src/services/api.ts":{"size":5190,"mtime_ns":1787997670262225000,"indexed_at_ns":1789270622417651300,"word_count":479},"frontend/admin-panel/src/store/adminAuthStore.ts":{"size":666,"mtime_ns":1786799852469037000,"indexed_at_ns":1789270622425098600,"word_count":65},"frontend/admin-panel/src/types/admin.ts":{"size":4979,"mtime_ns":1789279689075003800,"indexed_at_ns":1789279875552177900,"word_count":533},"frontend/admin-panel/src/utils/lazyWithRetry.ts":{"size":1129,"mtime_ns":1787062174626227900,"indexed_at_ns":1789270622438096100,"word_count":114},"frontend/admin-panel/src/utils/useTableParams.ts":{"size":4060,"mtime_ns":1787461920855096000,"indexed_at_ns":1789270622453462000,"word_count":441},"frontend/admin-panel/tailwind.config.js":{"size":182,"mtime_ns":1783764561861721300,"indexed_at_ns":1789270622459543900,"word_count":20},"frontend/admin-panel/tsconfig.app.json":{"size":633,"mtime_ns":1787055476779566300,"indexed_at_ns":1789270628010321600,"word_count":48,"hashes":{"frontend/admin-panel/tsconfig.app.json":"2d9838ee1119342fd03bf7644781b8b6aced2cbdc908ff186cdd6ab7ab9ba1c4"}},"frontend/admin-panel/tsconfig.json":{"size":119,"mtime_ns":1783764561863393600,"indexed_at_ns":1789270628011322400,"word_count":15,"hashes":{"frontend/admin-panel/tsconfig.json":"7a6c2e21b6eaa2355b4e2ed29db2a767499a88498bde745cdccf3ba8c7f64f2b"}},"frontend/admin-panel/tsconfig.node.json":{"size":591,"mtime_ns":1783764561863923100,"indexed_at_ns":1789270628012321100,"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":1789270622482398900,"word_count":18},"frontend/application/AGENTS.md":{"size":717,"mtime_ns":1787127978268943700,"indexed_at_ns":1789270622493401000,"word_count":88},"frontend/application/CLAUDE.md":{"size":11,"mtime_ns":1783764561866744500,"indexed_at_ns":1789270628110456700,"word_count":1,"hashes":{"frontend/application/claude.md":"0776fbbe8c29c6dc861efa70683090a370ab56dc77c22cb9de74895b4c783320"}},"frontend/application/README.md":{"size":1450,"mtime_ns":1783764561867354300,"indexed_at_ns":1789270628111453900,"word_count":155,"hashes":{"frontend/application/readme.md":"dd829cdf325092d859080ac1db3cbf2cca3198e72834f0f228495ef3c49a2240"}},"frontend/application/app/ClientLayout.tsx":{"size":10217,"mtime_ns":1789272909856072400,"indexed_at_ns":1789276692225916900,"word_count":982},"frontend/application/app/HomeClient.tsx":{"size":18691,"mtime_ns":1788683449026016700,"indexed_at_ns":1789270622515683900,"word_count":1204},"frontend/application/app/about/page.tsx":{"size":5706,"mtime_ns":1787139270959412500,"indexed_at_ns":1789270622523704900,"word_count":474},"frontend/application/app/api/revalidate/route.ts":{"size":1889,"mtime_ns":1787579631780106700,"indexed_at_ns":1789270622546913200,"word_count":220},"frontend/application/app/b2b/error.tsx":{"size":380,"mtime_ns":1787645037377262000,"indexed_at_ns":1789270622582311100,"word_count":50},"frontend/application/app/b2b/page.tsx":{"size":1506,"mtime_ns":1787644197141618200,"indexed_at_ns":1789270622590319400,"word_count":135},"frontend/application/app/blog/[slug]/page.tsx":{"size":8201,"mtime_ns":1787641161057694000,"indexed_at_ns":1789270622600858600,"word_count":767},"frontend/application/app/blog/error.tsx":{"size":382,"mtime_ns":1787645037378268200,"indexed_at_ns":1789270622608113600,"word_count":50},"frontend/application/app/blog/loading.tsx":{"size":1293,"mtime_ns":1787645037379262800,"indexed_at_ns":1789270622614811700,"word_count":115},"frontend/application/app/blog/page.tsx":{"size":3378,"mtime_ns":1787993003772568700,"indexed_at_ns":1789270622620981900,"word_count":346},"frontend/application/app/blog/rss.xml/route.ts":{"size":3076,"mtime_ns":1787577523710351300,"indexed_at_ns":1789270622628981400,"word_count":280},"frontend/application/app/catalog/CatalogClient.tsx":{"size":1416,"mtime_ns":1788683206845973300,"indexed_at_ns":1789270622634981900,"word_count":131},"frontend/application/app/catalog/page.tsx":{"size":671,"mtime_ns":1787139270965525300,"indexed_at_ns":1789270622641452100,"word_count":66},"frontend/application/app/checkout/page.tsx":{"size":604,"mtime_ns":1787139270967535500,"indexed_at_ns":1789270622648493900,"word_count":60},"frontend/application/app/checkout/success/[id]/page.tsx":{"size":629,"mtime_ns":1788624822997484300,"indexed_at_ns":1789270622655493300,"word_count":73},"frontend/application/app/contact/page.tsx":{"size":2655,"mtime_ns":1787644197143198500,"indexed_at_ns":1789270622662409800,"word_count":214},"frontend/application/app/dashboard/page.tsx":{"size":903,"mtime_ns":1787394935318217400,"indexed_at_ns":1789270622676614100,"word_count":83},"frontend/application/app/error.tsx":{"size":383,"mtime_ns":1785148022478709000,"indexed_at_ns":1789270622691988100,"word_count":50},"frontend/application/app/layout.tsx":{"size":6818,"mtime_ns":1788354488237712300,"indexed_at_ns":1789270622707465800,"word_count":547},"frontend/application/app/loading.tsx":{"size":1373,"mtime_ns":1785148022487650000,"indexed_at_ns":1789270622714073200,"word_count":122},"frontend/application/app/not-found.tsx":{"size":124,"mtime_ns":1783764561891411400,"indexed_at_ns":1789270622720463700,"word_count":15},"frontend/application/app/page.tsx":{"size":1093,"mtime_ns":1788587906745671800,"indexed_at_ns":1789270622725462900,"word_count":120},"frontend/application/app/payment/verify/page.tsx":{"size":14338,"mtime_ns":1786891855356078600,"indexed_at_ns":1789270622732462300,"word_count":1094},"frontend/application/app/privacy/page.tsx":{"size":4098,"mtime_ns":1787139270976563700,"indexed_at_ns":1789270622741461600,"word_count":336},"frontend/application/app/profile/page.tsx":{"size":623,"mtime_ns":1787139270978803200,"indexed_at_ns":1789270622749507200,"word_count":63},"frontend/application/app/robots.ts":{"size":825,"mtime_ns":1787578481501464000,"indexed_at_ns":1789270622754497300,"word_count":72},"frontend/application/app/search/page.tsx":{"size":786,"mtime_ns":1787139270979946700,"indexed_at_ns":1789270622761872300,"word_count":82},"frontend/application/app/shop/[slug]/page.tsx":{"size":11321,"mtime_ns":1788624822998554000,"indexed_at_ns":1789270622768907500,"word_count":1018},"frontend/application/app/shop/error.tsx":{"size":382,"mtime_ns":1787645037380267900,"indexed_at_ns":1789270622775906400,"word_count":50},"frontend/application/app/shop/feed.xml/route.ts":{"size":3698,"mtime_ns":1788000526323436900,"indexed_at_ns":1789270622782877700,"word_count":333},"frontend/application/app/shop/loading.tsx":{"size":1596,"mtime_ns":1787645037380267900,"indexed_at_ns":1789270622789885600,"word_count":144},"frontend/application/app/shop/page.tsx":{"size":2619,"mtime_ns":1788624822999597300,"indexed_at_ns":1789270622796911500,"word_count":283},"frontend/application/app/sitemap-categories.xml/route.ts":{"size":1797,"mtime_ns":1787578481507462100,"indexed_at_ns":1789270622803456300,"word_count":179},"frontend/application/app/sitemap-products.xml/route.ts":{"size":1980,"mtime_ns":1787578481508464300,"indexed_at_ns":1789270622810022500,"word_count":186},"frontend/application/app/sitemap.ts":{"size":3510,"mtime_ns":1787578481510463300,"indexed_at_ns":1789270622816686700,"word_count":350},"frontend/application/app/track/page.tsx":{"size":612,"mtime_ns":1787139270984213600,"indexed_at_ns":1789270622829722200,"word_count":60},"frontend/application/app/trust-seals/page.tsx":{"size":7155,"mtime_ns":1787394001609306700,"indexed_at_ns":1789270622836291600,"word_count":566},"frontend/application/app/videos/page.tsx":{"size":2822,"mtime_ns":1787644197147196700,"indexed_at_ns":1789270622843291000,"word_count":266},"frontend/application/app/wiki/[slug]/page.tsx":{"size":8912,"mtime_ns":1787644197149197300,"indexed_at_ns":1789270622850325700,"word_count":702},"frontend/application/app/wiki/page.tsx":{"size":910,"mtime_ns":1787139270987830800,"indexed_at_ns":1789270622869777200,"word_count":85},"frontend/application/components/AddressModal.tsx":{"size":16470,"mtime_ns":1787739535190383900,"indexed_at_ns":1789270622879785100,"word_count":1146},"frontend/application/components/ArchivePage.tsx":{"size":64308,"mtime_ns":1789276760435609400,"indexed_at_ns":1789277222846904700,"word_count":4678},"frontend/application/components/AuthModal.tsx":{"size":56009,"mtime_ns":1788624450968147000,"indexed_at_ns":1789270622900748100,"word_count":3838},"frontend/application/components/B2BLandingClient.tsx":{"size":25866,"mtime_ns":1787645037381267600,"indexed_at_ns":1789270622909456800,"word_count":1824},"frontend/application/components/B2BPortal.tsx":{"size":14014,"mtime_ns":1786894580156857600,"indexed_at_ns":1789270622916836500,"word_count":1094},"frontend/application/components/BackButton.tsx":{"size":1120,"mtime_ns":1786965281357277800,"indexed_at_ns":1789270622923363900,"word_count":117},"frontend/application/components/BannerPlacement.tsx":{"size":7703,"mtime_ns":1788346274841175500,"indexed_at_ns":1789270622929368100,"word_count":527},"frontend/application/components/BlogPage.tsx":{"size":21976,"mtime_ns":1787729523446453700,"indexed_at_ns":1789270622936368400,"word_count":1583},"frontend/application/components/BlogPostClient.tsx":{"size":20329,"mtime_ns":1787740536679696900,"indexed_at_ns":1789270622943367400,"word_count":1361},"frontend/application/components/BlogPreviewSection.tsx":{"size":8830,"mtime_ns":1788683449027687600,"indexed_at_ns":1789270622950370600,"word_count":645},"frontend/application/components/BrandLogo.tsx":{"size":3307,"mtime_ns":1788674415913774600,"indexed_at_ns":1789270622958370200,"word_count":287},"frontend/application/components/CartDrawer.tsx":{"size":23017,"mtime_ns":1789277276049420900,"indexed_at_ns":1789279875941688000,"word_count":1515},"frontend/application/components/CheckoutPage.tsx":{"size":48782,"mtime_ns":1789279810613449700,"indexed_at_ns":1789279875947228800,"word_count":3255},"frontend/application/components/ContactFormClient.tsx":{"size":10833,"mtime_ns":1787729527935396400,"indexed_at_ns":1789270622978214100,"word_count":784},"frontend/application/components/DeleteConfirmModal.tsx":{"size":2328,"mtime_ns":1786799852608752300,"indexed_at_ns":1789270622985218700,"word_count":195},"frontend/application/components/EnamadBadge.tsx":{"size":1516,"mtime_ns":1786799852612361900,"indexed_at_ns":1789270622991221900,"word_count":114},"frontend/application/components/ErrorBoundary.tsx":{"size":2617,"mtime_ns":1786799852614549600,"indexed_at_ns":1789270622997728500,"word_count":235},"frontend/application/components/ErrorPages.tsx":{"size":2809,"mtime_ns":1787661485945074600,"indexed_at_ns":1789270623004737900,"word_count":243},"frontend/application/components/FAQSection.tsx":{"size":5086,"mtime_ns":1787729995239614600,"indexed_at_ns":1789270623010778000,"word_count":414},"frontend/application/components/FeaturedProducts.tsx":{"size":12779,"mtime_ns":1789272909860072800,"indexed_at_ns":1789276692655699700,"word_count":1094},"frontend/application/components/Footer.tsx":{"size":19594,"mtime_ns":1788683206848047600,"indexed_at_ns":1789270623023406300,"word_count":1330},"frontend/application/components/Header.tsx":{"size":33165,"mtime_ns":1789272909860072800,"indexed_at_ns":1789276692667724000,"word_count":2247},"frontend/application/components/HeaderButton.tsx":{"size":2242,"mtime_ns":1786799852637156100,"indexed_at_ns":1789270623036431400,"word_count":208},"frontend/application/components/Hero.tsx":{"size":20086,"mtime_ns":1788674415916525200,"indexed_at_ns":1789270623043406700,"word_count":1647},"frontend/application/components/IngredientWiki.tsx":{"size":20337,"mtime_ns":1786965281374206800,"indexed_at_ns":1789270623050403900,"word_count":1496},"frontend/application/components/LoginModal.tsx":{"size":15298,"mtime_ns":1788624450969207300,"indexed_at_ns":1789270623058407000,"word_count":1330},"frontend/application/components/MaintenancePage.tsx":{"size":3686,"mtime_ns":1786946249984693000,"indexed_at_ns":1789270623066482600,"word_count":313},"frontend/application/components/NetworkBanner.tsx":{"size":2350,"mtime_ns":1786799852662138900,"indexed_at_ns":1789270623086020400,"word_count":214},"frontend/application/components/OrderDetailsModal.tsx":{"size":36797,"mtime_ns":1788609394333189500,"indexed_at_ns":1789270623093020500,"word_count":2547},"frontend/application/components/OrderSuccess.tsx":{"size":6396,"mtime_ns":1786799852665542300,"indexed_at_ns":1789270623100533900,"word_count":521},"frontend/application/components/OrderTracking.tsx":{"size":9269,"mtime_ns":1787729527937447000,"indexed_at_ns":1789270623106529800,"word_count":681},"frontend/application/components/PetProfile.tsx":{"size":83779,"mtime_ns":1789279784690119100,"indexed_at_ns":1789279876059556800,"word_count":5886},"frontend/application/components/PodcastInlinePlayer.tsx":{"size":18123,"mtime_ns":1787993003774220500,"indexed_at_ns":1789270623128124700,"word_count":1464},"frontend/application/components/PodcastPlayerModal.tsx":{"size":18105,"mtime_ns":1787748657155136900,"indexed_at_ns":1789270623135123100,"word_count":1487},"frontend/application/components/PrescriptionUploadModal.tsx":{"size":19183,"mtime_ns":1787741735267947500,"indexed_at_ns":1789270623142862400,"word_count":1356},"frontend/application/components/ProductPage.tsx":{"size":98121,"mtime_ns":1789276760439606100,"indexed_at_ns":1789277223048238900,"word_count":7013},"frontend/application/components/ProductReviews.tsx":{"size":16113,"mtime_ns":1788333723592862900,"indexed_at_ns":1789270623167883100,"word_count":1195},"frontend/application/components/SafeImage.tsx":{"size":4289,"mtime_ns":1788354488242911600,"indexed_at_ns":1789270623175451600,"word_count":399},"frontend/application/components/SearchResultsPage.tsx":{"size":8335,"mtime_ns":1786799852701578200,"indexed_at_ns":1789270623182452100,"word_count":594},"frontend/application/components/SearchableSelect.tsx":{"size":4375,"mtime_ns":1785575516155554800,"indexed_at_ns":1789270623189457300,"word_count":336},"frontend/application/components/Skeleton.tsx":{"size":3882,"mtime_ns":1788674415918645600,"indexed_at_ns":1789270623196895100,"word_count":364},"frontend/application/components/SmartAdvisor.tsx":{"size":37402,"mtime_ns":1788587906747669800,"indexed_at_ns":1789270623202907200,"word_count":2836},"frontend/application/components/TestimonialsSection.tsx":{"size":6677,"mtime_ns":1788346274843208600,"indexed_at_ns":1789270623210638100,"word_count":516},"frontend/application/components/TickerBanner.tsx":{"size":4241,"mtime_ns":1788678950452937000,"indexed_at_ns":1789270623216881000,"word_count":352},"frontend/application/components/Tooltip.tsx":{"size":5237,"mtime_ns":1788333306923629700,"indexed_at_ns":1789270623224258100,"word_count":438},"frontend/application/components/TopUpModal.tsx":{"size":9381,"mtime_ns":1787406597303349300,"indexed_at_ns":1789270623230830300,"word_count":741},"frontend/application/components/UserDashboard.tsx":{"size":98602,"mtime_ns":1789272909864072500,"indexed_at_ns":1789276692842087400,"word_count":6258},"frontend/application/components/VetGallery.tsx":{"size":9368,"mtime_ns":1788683449030884500,"indexed_at_ns":1789270623243831300,"word_count":730},"frontend/application/components/VideoModalPlayer.tsx":{"size":24822,"mtime_ns":1787993003775855300,"indexed_at_ns":1789270623249830700,"word_count":1846},"frontend/application/components/VideosPage.tsx":{"size":8815,"mtime_ns":1787729523450452600,"indexed_at_ns":1789270623256831000,"word_count":672},"frontend/application/components/__tests__/CartDrawer.test.tsx":{"size":5152,"mtime_ns":1789277276050540200,"indexed_at_ns":1789279876164363000,"word_count":432},"frontend/application/components/__tests__/FeaturedProducts.test.tsx":{"size":2922,"mtime_ns":1787729523451454700,"indexed_at_ns":1789270623271921100,"word_count":246},"frontend/application/components/__tests__/Footer.test.tsx":{"size":1200,"mtime_ns":1787729523452453700,"indexed_at_ns":1789270623277923000,"word_count":97},"frontend/application/components/__tests__/Header.test.tsx":{"size":3336,"mtime_ns":1787729523452453700,"indexed_at_ns":1789270623286922600,"word_count":266},"frontend/application/components/__tests__/Hero.test.tsx":{"size":1980,"mtime_ns":1786799852776010800,"indexed_at_ns":1789270623293994800,"word_count":192},"frontend/application/components/__tests__/Tooltip.test.tsx":{"size":1508,"mtime_ns":1786799852784348900,"indexed_at_ns":1789270623300858100,"word_count":137},"frontend/application/components/catalog/CatalogPageSpread.tsx":{"size":29302,"mtime_ns":1788616028624863400,"indexed_at_ns":1789270623307364900,"word_count":2428},"frontend/application/components/catalog/FlipbookCatalog.tsx":{"size":40856,"mtime_ns":1788683206850044500,"indexed_at_ns":1789270623315423600,"word_count":3533},"frontend/application/components/catalog/ProductDetailModal.tsx":{"size":8265,"mtime_ns":1787981163247727400,"indexed_at_ns":1789270623323426600,"word_count":589},"frontend/application/eslint.config.mjs":{"size":747,"mtime_ns":1787148092358055900,"indexed_at_ns":1789270623329425700,"word_count":61},"frontend/application/lib/data/products.ts":{"size":104414,"mtime_ns":1788351605806390800,"indexed_at_ns":1789270623335545900,"word_count":9765},"frontend/application/lib/data/provinces.ts":{"size":2993,"mtime_ns":1785571725610676000,"indexed_at_ns":1789270623344552200,"word_count":203},"frontend/application/lib/data/scientificTerms.ts":{"size":18042,"mtime_ns":1786958978743097300,"indexed_at_ns":1789270623350551900,"word_count":1756},"frontend/application/lib/fonts.ts":{"size":561,"mtime_ns":1788351855943419900,"indexed_at_ns":1789270623356550400,"word_count":55},"frontend/application/lib/hooks/useNetworkStatus.ts":{"size":610,"mtime_ns":1786799852793488000,"indexed_at_ns":1789270623363657700,"word_count":59},"frontend/application/lib/schema.ts":{"size":7336,"mtime_ns":1787644197156205400,"indexed_at_ns":1789270623382653900,"word_count":609},"frontend/application/lib/seo.ts":{"size":10853,"mtime_ns":1788624823000658600,"indexed_at_ns":1789270623388658700,"word_count":989},"frontend/application/lib/services/api.ts":{"size":3694,"mtime_ns":1787997670265470700,"indexed_at_ns":1789270623396048500,"word_count":391},"frontend/application/lib/services/authService.ts":{"size":4524,"mtime_ns":1786885876986184800,"indexed_at_ns":1789270623403556200,"word_count":509},"frontend/application/lib/services/orderService.ts":{"size":2428,"mtime_ns":1786799852810726500,"indexed_at_ns":1789270623411775100,"word_count":279},"frontend/application/lib/services/productService.ts":{"size":14085,"mtime_ns":1788354488244444100,"indexed_at_ns":1789270623418315600,"word_count":1287},"frontend/application/lib/services/ticketService.ts":{"size":1569,"mtime_ns":1786890779340901800,"indexed_at_ns":1789270623426315000,"word_count":170},"frontend/application/lib/services/videoService.ts":{"size":1867,"mtime_ns":1787993003779460300,"indexed_at_ns":1789270623432314200,"word_count":210},"frontend/application/lib/store/__tests__/cartStore.test.ts":{"size":4430,"mtime_ns":1786799852822036900,"indexed_at_ns":1789270623440314800,"word_count":386},"frontend/application/lib/store/__tests__/settingsStore.test.ts":{"size":1949,"mtime_ns":1783856793043803200,"indexed_at_ns":1789270623448320000,"word_count":194},"frontend/application/lib/store/__tests__/userStore.test.ts":{"size":3639,"mtime_ns":1786799852825547700,"indexed_at_ns":1789270623455824200,"word_count":289},"frontend/application/lib/store/cartStore.ts":{"size":6972,"mtime_ns":1787660831220289700,"indexed_at_ns":1789270623463863700,"word_count":697},"frontend/application/lib/store/settingsStore.ts":{"size":3630,"mtime_ns":1786948119787096800,"indexed_at_ns":1789270623471500200,"word_count":371},"frontend/application/lib/store/uiStore.ts":{"size":872,"mtime_ns":1786799852833588000,"indexed_at_ns":1789270623478499800,"word_count":100},"frontend/application/lib/store/usePetStore.ts":{"size":8680,"mtime_ns":1786954681845300600,"indexed_at_ns":1789270623485009700,"word_count":850},"frontend/application/lib/store/userStore.ts":{"size":10467,"mtime_ns":1789272909864072500,"indexed_at_ns":1789276693065948700,"word_count":906},"frontend/application/lib/types.ts":{"size":2222,"mtime_ns":1787729527940443900,"indexed_at_ns":1789270623497008000,"word_count":239},"frontend/application/lib/utils.ts":{"size":478,"mtime_ns":1786799852847284000,"indexed_at_ns":1789270623509822400,"word_count":61},"frontend/application/next.config.ts":{"size":3153,"mtime_ns":1788353540761527200,"indexed_at_ns":1789270623519101600,"word_count":279},"frontend/application/package.json":{"size":879,"mtime_ns":1788000055992497300,"indexed_at_ns":1789270628013322700,"word_count":74,"hashes":{"frontend/application/package.json":"7a1fa68660fc9ab2089ea4e22c7d889b8efd8dbdc9faf56ce7d354319ac081b9"}},"frontend/application/postcss.config.mjs":{"size":94,"mtime_ns":1783764561988252100,"indexed_at_ns":1789270623531101900,"word_count":13},"frontend/application/public/assets/images/canina-product-placeholder.png":{"size":6990105,"mtime_ns":1787461919505024400,"indexed_at_ns":1789270623539099700,"word_count":267685},"frontend/application/public/assets/images/regenerated_image_1779109861747.png":{"size":2269101,"mtime_ns":1783764562014110300,"indexed_at_ns":1789270623683425400,"word_count":84979},"frontend/application/public/file.svg":{"size":391,"mtime_ns":1783764562016213600,"indexed_at_ns":1789270623742603100,"word_count":50},"frontend/application/public/fonts/A-Iranian-Sans/A-Iranian-Sans/read me!.txt":{"size":281,"mtime_ns":1783856793098052000,"indexed_at_ns":1789270623767404800,"word_count":15},"frontend/application/public/fonts/IranNastaliq/IranNastaliq/read me!.txt":{"size":281,"mtime_ns":1783856793107660400,"indexed_at_ns":1789270623791441300,"word_count":15},"frontend/application/public/fonts/sahel-font-v3.4.0/CHANGELOG.md":{"size":8519,"mtime_ns":1783856793113660500,"indexed_at_ns":1789270628112453700,"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":1789270628113454400,"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":1789270624334038900,"word_count":10881},"frontend/application/public/fonts/shabnam-font-v5.0.1/CHANGELOG.md":{"size":7177,"mtime_ns":1783856793230118600,"indexed_at_ns":1789270624362479900,"word_count":951},"frontend/application/public/fonts/shabnam-font-v5.0.1/README.md":{"size":3696,"mtime_ns":1783856793279542700,"indexed_at_ns":1789270624629707400,"word_count":283},"frontend/application/public/fonts/shabnam-font-v5.0.1/sample.png":{"size":85019,"mtime_ns":1783856793315146800,"indexed_at_ns":1789270624871234300,"word_count":2615},"frontend/application/public/fonts/vazirmatn-v33.003/AUTHORS.txt":{"size":339,"mtime_ns":1783856793316155600,"indexed_at_ns":1789270624882233500,"word_count":55},"frontend/application/public/fonts/vazirmatn-v33.003/CHANGELOG.md":{"size":38550,"mtime_ns":1783856793317690100,"indexed_at_ns":1789270624890235800,"word_count":5086},"frontend/application/public/fonts/vazirmatn-v33.003/OFL.txt":{"size":4391,"mtime_ns":1783856793319422000,"indexed_at_ns":1789270624898235100,"word_count":671},"frontend/application/public/fonts/vazirmatn-v33.003/README.md":{"size":2339,"mtime_ns":1783856793320489000,"indexed_at_ns":1789270624905744200,"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":1789270627105656100,"word_count":14},"frontend/application/public/globe.svg":{"size":1035,"mtime_ns":1783764562016720700,"indexed_at_ns":1789270627110193000,"word_count":154},"frontend/application/public/images/vets/vet1.webp":{"size":6990105,"mtime_ns":1787461919541761600,"indexed_at_ns":1789270627193649800,"word_count":267685},"frontend/application/public/next.svg":{"size":1375,"mtime_ns":1783764562018238900,"indexed_at_ns":1789270627328975600,"word_count":183},"frontend/application/public/vercel.svg":{"size":128,"mtime_ns":1783764562019253000,"indexed_at_ns":1789270627334974100,"word_count":12},"frontend/application/public/window.svg":{"size":385,"mtime_ns":1783764562019253000,"indexed_at_ns":1789270627343485100,"word_count":63},"frontend/application/tsconfig.json":{"size":750,"mtime_ns":1786799852865640000,"indexed_at_ns":1789270628014321700,"word_count":61,"hashes":{"frontend/application/tsconfig.json":"adcade0f962ec5888be99b4b1402d98812cfd570b0c5669bda73142b2cb9210d"}},"frontend/application/vitest.config.ts":{"size":244,"mtime_ns":1786799852868652900,"indexed_at_ns":1789270627357988100,"word_count":25},"frontend/application/vitest.setup.ts":{"size":1237,"mtime_ns":1787729523454452000,"indexed_at_ns":1789270627363507800,"word_count":141},"manual-test-scenarios.md":{"size":0,"mtime_ns":1787729528073006400,"indexed_at_ns":1789270628114453600,"word_count":0,"hashes":{"manual-test-scenarios.md":"c6e53ad8216c7ae7d9e1449511caca4c768d1c68b0b859ae24f0add4afe8e502"}},"metadata.json":{"size":334,"mtime_ns":1783856793672137200,"indexed_at_ns":1789270628015321000,"word_count":35,"hashes":{"metadata.json":"c44b4c4ba60752554ceae65e2f22bddb756cbeb25a4a31ee79160b6eb182255a"}},"package.json":{"size":1237,"mtime_ns":1787729528076005200,"indexed_at_ns":1789270628016321100,"word_count":136,"hashes":{"package.json":"3ca5b265c68cc5660e5fd57b0aeb13de7eb49732740eafe405f6f0804671ceeb"}},"playwright.config.ts":{"size":2710,"mtime_ns":1787729528077005300,"indexed_at_ns":1789270627388115200,"word_count":270},"prometheus.yml":{"size":164,"mtime_ns":1783764562027779300,"indexed_at_ns":1789270627394217100,"word_count":13},"scripts/backup_db.sh":{"size":1362,"mtime_ns":1786799852876784600,"indexed_at_ns":1789270628017320700,"word_count":134,"hashes":{"scripts/backup_db.sh":"f90cf2d0c954f3eaca83566ccb365bff62fd97a2af0225816c19902ee4dfdd6c"}},"scripts/compose.prod.yml":{"size":2248,"mtime_ns":1787998075631988900,"indexed_at_ns":1789270627406733100,"word_count":126},"scripts/compose.stage.yml":{"size":2557,"mtime_ns":1787077093991779700,"indexed_at_ns":1789270627413312800,"word_count":137},"scripts/deploy.sh":{"size":3346,"mtime_ns":1787136904559094200,"indexed_at_ns":1789270628018320400,"word_count":351,"hashes":{"scripts/deploy.sh":"64d276bb6eb6cfb83690c529b9d1c0c71fa46aa912a458f684dfcf842fab2aea"}},"scripts/open-browsers.js":{"size":1551,"mtime_ns":1788000056009180700,"indexed_at_ns":1789270627427942400,"word_count":202},"scripts/start-dev.js":{"size":1689,"mtime_ns":1787997670335055900,"indexed_at_ns":1789270627434290600,"word_count":186},"start.sh":{"size":26,"mtime_ns":1784033954813080300,"indexed_at_ns":1789270628019320800,"word_count":4,"hashes":{"start.sh":"694c258b963c309734a3316c770f5fef29703bc6f24754b04155fd8db94cf862"}},"swagger.yml":{"size":95785,"mtime_ns":1786799852892091600,"indexed_at_ns":1789270627447010900,"word_count":7031},"test-coverage-map.md":{"size":13899,"mtime_ns":1787729528078006200,"indexed_at_ns":1789270628116106700,"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":1789270627460023400,"word_count":742},"tests/e2e/admin/admin-blogs-crud.spec.ts":{"size":5540,"mtime_ns":1787729528080005900,"indexed_at_ns":1789270627467499500,"word_count":490},"tests/e2e/admin/admin-crud.spec.ts":{"size":6485,"mtime_ns":1787729528081005800,"indexed_at_ns":1789270627474024300,"word_count":569},"tests/e2e/admin/admin-orders-flow.spec.ts":{"size":4130,"mtime_ns":1787729528082005000,"indexed_at_ns":1789270627481024200,"word_count":352},"tests/e2e/admin/admin-rbac-roles.spec.ts":{"size":4011,"mtime_ns":1787729528083005700,"indexed_at_ns":1789270627486530800,"word_count":327},"tests/e2e/security/xss-ratelimit.spec.ts":{"size":5646,"mtime_ns":1787729528085005800,"indexed_at_ns":1789270627493595300,"word_count":491},"tests/e2e/storefront/auth-otp-recovery.spec.ts":{"size":4540,"mtime_ns":1787729528086009200,"indexed_at_ns":1789270627499555700,"word_count":384},"tests/e2e/storefront/b2b-flow.spec.ts":{"size":3521,"mtime_ns":1787729528086516700,"indexed_at_ns":1789270627506128700,"word_count":288},"tests/e2e/storefront/blog-wiki.spec.ts":{"size":2107,"mtime_ns":1787729528087532400,"indexed_at_ns":1789270627511940600,"word_count":185},"tests/e2e/storefront/cart-operations.spec.ts":{"size":3910,"mtime_ns":1787729528089034600,"indexed_at_ns":1789270627517924300,"word_count":332},"tests/e2e/storefront/checkout-flow.spec.ts":{"size":2766,"mtime_ns":1787729528089034600,"indexed_at_ns":1789270627523916100,"word_count":251},"tests/e2e/storefront/concurrency-stock.spec.ts":{"size":5868,"mtime_ns":1787729528090041700,"indexed_at_ns":1789270627529914800,"word_count":537},"tests/e2e/storefront/contact.spec.ts":{"size":2899,"mtime_ns":1787729528091042800,"indexed_at_ns":1789270627536915600,"word_count":238},"tests/e2e/storefront/error-pages-404-500.spec.ts":{"size":1238,"mtime_ns":1787729528092042000,"indexed_at_ns":1789270627542241200,"word_count":121},"tests/e2e/storefront/order-tracking.spec.ts":{"size":3125,"mtime_ns":1787729528093041900,"indexed_at_ns":1789270627548762400,"word_count":282},"tests/e2e/storefront/shop-filter-search.spec.ts":{"size":2151,"mtime_ns":1787729528094048800,"indexed_at_ns":1789270627555761100,"word_count":187},"tests/fixtures/admin-auth.setup.ts":{"size":1950,"mtime_ns":1787729528095047800,"indexed_at_ns":1789270627560882900,"word_count":195},"tests/fixtures/index.ts":{"size":194,"mtime_ns":1787729528095047800,"indexed_at_ns":1789270627567229200,"word_count":32},"tsconfig.json":{"size":439,"mtime_ns":1787729528096047500,"indexed_at_ns":1789270628020324200,"word_count":37,"hashes":{"tsconfig.json":"12f2e30da1a34da7d06440370b7d1930cd5a3c3293f485789f5cfa2434aeea6f"}},"frontend/application/app/smart-advisor/page.tsx":{"size":2634,"mtime_ns":1787740536678699600,"indexed_at_ns":1789270622822724000,"word_count":232},"frontend/application/app/dashboard/orders/page.tsx":{"size":132,"mtime_ns":1787741941302806200,"indexed_at_ns":1789270622670614600,"word_count":13},"frontend/application/app/dashboard/pets/page.tsx":{"size":128,"mtime_ns":1787741941303809300,"indexed_at_ns":1789270622683635300,"word_count":13},"frontend/application/components/ProductImageZoomModal.tsx":{"size":12596,"mtime_ns":1788609394334189600,"indexed_at_ns":1789270623150373200,"word_count":1139},"frontend/application/app/api/media/[...path]/route.ts":{"size":6739,"mtime_ns":1788353078508488900,"indexed_at_ns":1789270622530937500,"word_count":613},"frontend/application/app/api/uploads/[...path]/route.ts":{"size":6805,"mtime_ns":1788353078510085700,"indexed_at_ns":1789270622574278700,"word_count":622},"frontend/application/lib/media.ts":{"size":2051,"mtime_ns":1788353540759919900,"indexed_at_ns":1789270623369656200,"word_count":227},"frontend/application/components/NavigationProgressBar.tsx":{"size":3658,"mtime_ns":1787999006325061100,"indexed_at_ns":1789270623078480000,"word_count":380},"frontend/application/app/api/torob/products/route.ts":{"size":6649,"mtime_ns":1788328838746612700,"indexed_at_ns":1789270622560654000,"word_count":738},"backend/src/products/torob.controller.ts":{"size":6562,"mtime_ns":1788334048806380400,"indexed_at_ns":1789270617282526800,"word_count":681},"backend/src/admin/dto/pricing.dto.ts":{"size":5033,"mtime_ns":1788334048800615600,"indexed_at_ns":1789270616398534000,"word_count":444},"backend/src/common/utils/pricing.utils.ts":{"size":1516,"mtime_ns":1788330948589741100,"indexed_at_ns":1789270616834643000,"word_count":205},"frontend/admin-panel/src/utils/pricing.ts":{"size":1127,"mtime_ns":1788330948594740900,"indexed_at_ns":1789270622445833300,"word_count":147},"backend/src/common/services/sms-events.constants.ts":{"size":10144,"mtime_ns":1788609394319095700,"indexed_at_ns":1789270616805543200,"word_count":956},"frontend/application/components/AnalyticsDeferred.tsx":{"size":3286,"mtime_ns":1788609394332188600,"indexed_at_ns":1789270622887777100,"word_count":303},"frontend/application/public/images/favicons/android-chrome-192x192.png":{"size":62883,"mtime_ns":1788587906752677800,"indexed_at_ns":1789270627129864300,"word_count":2247},"frontend/application/public/images/favicons/android-chrome-512x512.png":{"size":395793,"mtime_ns":1788587906757218700,"indexed_at_ns":1789270627137864700,"word_count":13917},"frontend/application/public/images/favicons/apple-touch-icon.png":{"size":56230,"mtime_ns":1788587906759218700,"indexed_at_ns":1789270627153865300,"word_count":2032},"frontend/application/public/images/favicons/favicon-16x16.png":{"size":943,"mtime_ns":1788587906761187700,"indexed_at_ns":1789270627161375900,"word_count":36},"frontend/application/public/images/favicons/favicon-32x32.png":{"size":2797,"mtime_ns":1788587906763190700,"indexed_at_ns":1789270627169639400,"word_count":103},"frontend/application/lib/petCompatibility.ts":{"size":3636,"mtime_ns":1788613668265750300,"indexed_at_ns":1789270623375654400,"word_count":324},"frontend/application/components/OtpInput5.tsx":{"size":4558,"mtime_ns":1788619769607313700,"indexed_at_ns":1789270623114126100,"word_count":478},"frontend/application/components/MobileBottomNav.tsx":{"size":25241,"mtime_ns":1789276760437611100,"indexed_at_ns":1789277222984028900,"word_count":1877},"backend/src/admin/api-keys.controller.ts":{"size":2159,"mtime_ns":1789272909851063400,"indexed_at_ns":1789276685179648000,"word_count":210},"backend/src/admin/api-keys.service.ts":{"size":4244,"mtime_ns":1789272909851063400,"indexed_at_ns":1789276685190187600,"word_count":453},"backend/src/admin/dto/api-key.dto.ts":{"size":1027,"mtime_ns":1789272909852062500,"indexed_at_ns":1789276685253846000,"word_count":88},"frontend/admin-panel/src/pages/ApiKeysPage.tsx":{"size":24665,"mtime_ns":1788859667826175400,"indexed_at_ns":1789270622051199700,"word_count":1802},"frontend/application/lib/useCatalogMode.ts":{"size":2171,"mtime_ns":1789279718568636700,"indexed_at_ns":1789279876351507500,"word_count":183}} \ No newline at end of file diff --git a/graphify-out/graph.html b/graphify-out/graph.html index 137a5da..a1f29ee 100644 --- a/graphify-out/graph.html +++ b/graphify-out/graph.html @@ -63,12 +63,12 @@
-
4304 nodes · 7950 edges · 312 communities
+
4304 nodes · 7953 edges · 327 communities