@burdenoff/microfe-kadaikodi 2026.704.4 → 2026.710.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-types.d.ts +23527 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +2 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-types.d.ts +57851 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -1
- package/dist/kadaikodi/KadaikodiRoot.d.ts +5 -0
- package/dist/kadaikodi/KadaikodiRoot.d.ts.map +1 -0
- package/dist/kadaikodi/KadaikodiRoutes.d.ts +4 -0
- package/dist/kadaikodi/KadaikodiRoutes.d.ts.map +1 -0
- package/dist/kadaikodi/KadaikodiRoutes.js +30 -26
- package/dist/kadaikodi/KadaikodiRoutes.js.map +1 -1
- package/dist/kadaikodi/components/CartCard.d.ts +18 -0
- package/dist/kadaikodi/components/CartCard.d.ts.map +1 -0
- package/dist/kadaikodi/components/EmptyState.d.ts +17 -0
- package/dist/kadaikodi/components/EmptyState.d.ts.map +1 -0
- package/dist/kadaikodi/components/InvestmentCard.d.ts +18 -0
- package/dist/kadaikodi/components/InvestmentCard.d.ts.map +1 -0
- package/dist/kadaikodi/components/MetricsCard.d.ts +16 -0
- package/dist/kadaikodi/components/MetricsCard.d.ts.map +1 -0
- package/dist/kadaikodi/components/OrderCard.d.ts +18 -0
- package/dist/kadaikodi/components/OrderCard.d.ts.map +1 -0
- package/dist/kadaikodi/components/PageLayout.d.ts +12 -0
- package/dist/kadaikodi/components/PageLayout.d.ts.map +1 -0
- package/dist/kadaikodi/components/RatingDisplay.d.ts +12 -0
- package/dist/kadaikodi/components/RatingDisplay.d.ts.map +1 -0
- package/dist/kadaikodi/components/StatusBadge.d.ts +9 -0
- package/dist/kadaikodi/components/StatusBadge.d.ts.map +1 -0
- package/dist/kadaikodi/components/index.d.ts +13 -0
- package/dist/kadaikodi/components/index.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/AllocationBar.d.ts +21 -0
- package/dist/kadaikodi/components/viz/AllocationBar.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/AllocationBar.js +68 -0
- package/dist/kadaikodi/components/viz/AllocationBar.js.map +1 -0
- package/dist/kadaikodi/components/viz/AreaChart.d.ts +18 -0
- package/dist/kadaikodi/components/viz/AreaChart.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/AreaChart.js +102 -0
- package/dist/kadaikodi/components/viz/AreaChart.js.map +1 -0
- package/dist/kadaikodi/components/viz/AvatarStack.d.ts +13 -0
- package/dist/kadaikodi/components/viz/AvatarStack.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/AvatarStack.js +36 -0
- package/dist/kadaikodi/components/viz/AvatarStack.js.map +1 -0
- package/dist/kadaikodi/components/viz/BarChart.d.ts +17 -0
- package/dist/kadaikodi/components/viz/BarChart.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/BarChart.js +83 -0
- package/dist/kadaikodi/components/viz/BarChart.js.map +1 -0
- package/dist/kadaikodi/components/viz/CertificateCard.d.ts +14 -0
- package/dist/kadaikodi/components/viz/CertificateCard.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/CertificateCard.js +4 -0
- package/dist/kadaikodi/components/viz/DonutChart.d.ts +20 -0
- package/dist/kadaikodi/components/viz/DonutChart.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/DonutChart.js +109 -0
- package/dist/kadaikodi/components/viz/DonutChart.js.map +1 -0
- package/dist/kadaikodi/components/viz/HBarFunnel.d.ts +17 -0
- package/dist/kadaikodi/components/viz/HBarFunnel.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/HBarFunnel.js +54 -0
- package/dist/kadaikodi/components/viz/HBarFunnel.js.map +1 -0
- package/dist/kadaikodi/components/viz/Heatmap.d.ts +26 -0
- package/dist/kadaikodi/components/viz/Heatmap.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/Heatmap.js +3 -0
- package/dist/kadaikodi/components/viz/KanbanBoard.d.ts +17 -0
- package/dist/kadaikodi/components/viz/KanbanBoard.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/KanbanBoard.js +50 -0
- package/dist/kadaikodi/components/viz/KanbanBoard.js.map +1 -0
- package/dist/kadaikodi/components/viz/LineChart.d.ts +20 -0
- package/dist/kadaikodi/components/viz/LineChart.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/LineChart.js +4 -0
- package/dist/kadaikodi/components/viz/OrgTree.d.ts +14 -0
- package/dist/kadaikodi/components/viz/OrgTree.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/OrgTree.js +2 -0
- package/dist/kadaikodi/components/viz/PathSteps.d.ts +17 -0
- package/dist/kadaikodi/components/viz/PathSteps.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/PathSteps.js +3 -0
- package/dist/kadaikodi/components/viz/ProgressRing.d.ts +20 -0
- package/dist/kadaikodi/components/viz/ProgressRing.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/ProgressRing.js +68 -0
- package/dist/kadaikodi/components/viz/ProgressRing.js.map +1 -0
- package/dist/kadaikodi/components/viz/RatingStars.d.ts +14 -0
- package/dist/kadaikodi/components/viz/RatingStars.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/RatingStars.js +51 -0
- package/dist/kadaikodi/components/viz/RatingStars.js.map +1 -0
- package/dist/kadaikodi/components/viz/SegmentedTabs.d.ts +26 -0
- package/dist/kadaikodi/components/viz/SegmentedTabs.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/SegmentedTabs.js +69 -0
- package/dist/kadaikodi/components/viz/SegmentedTabs.js.map +1 -0
- package/dist/kadaikodi/components/viz/SkillBar.d.ts +17 -0
- package/dist/kadaikodi/components/viz/SkillBar.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/SkillBar.js +3 -0
- package/dist/kadaikodi/components/viz/Sparkline.d.ts +16 -0
- package/dist/kadaikodi/components/viz/Sparkline.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/Sparkline.js +74 -0
- package/dist/kadaikodi/components/viz/Sparkline.js.map +1 -0
- package/dist/kadaikodi/components/viz/StatCard.d.ts +22 -0
- package/dist/kadaikodi/components/viz/StatCard.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/StatCard.js +60 -0
- package/dist/kadaikodi/components/viz/StatCard.js.map +1 -0
- package/dist/kadaikodi/components/viz/StepProgress.d.ts +17 -0
- package/dist/kadaikodi/components/viz/StepProgress.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/StepProgress.js +64 -0
- package/dist/kadaikodi/components/viz/StepProgress.js.map +1 -0
- package/dist/kadaikodi/components/viz/Timeline.d.ts +21 -0
- package/dist/kadaikodi/components/viz/Timeline.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/Timeline.js +66 -0
- package/dist/kadaikodi/components/viz/Timeline.js.map +1 -0
- package/dist/kadaikodi/components/viz/index.d.ts +35 -0
- package/dist/kadaikodi/components/viz/index.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/index.js +23 -0
- package/dist/kadaikodi/components/viz/lib/Avatar.d.ts +15 -0
- package/dist/kadaikodi/components/viz/lib/Avatar.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/Avatar.js +30 -0
- package/dist/kadaikodi/components/viz/lib/Avatar.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/CartesianFrame.d.ts +44 -0
- package/dist/kadaikodi/components/viz/lib/CartesianFrame.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/CartesianFrame.js +119 -0
- package/dist/kadaikodi/components/viz/lib/CartesianFrame.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/ResponsiveSvg.d.ts +27 -0
- package/dist/kadaikodi/components/viz/lib/ResponsiveSvg.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/ResponsiveSvg.js +35 -0
- package/dist/kadaikodi/components/viz/lib/ResponsiveSvg.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/format.d.ts +10 -0
- package/dist/kadaikodi/components/viz/lib/format.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/format.js +21 -0
- package/dist/kadaikodi/components/viz/lib/format.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/geometry.d.ts +41 -0
- package/dist/kadaikodi/components/viz/lib/geometry.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/geometry.js +61 -0
- package/dist/kadaikodi/components/viz/lib/geometry.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/hooks.d.ts +18 -0
- package/dist/kadaikodi/components/viz/lib/hooks.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/hooks.js +39 -0
- package/dist/kadaikodi/components/viz/lib/hooks.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/palette.d.ts +31 -0
- package/dist/kadaikodi/components/viz/lib/palette.d.ts.map +1 -0
- package/dist/kadaikodi/components/viz/lib/palette.js +27 -0
- package/dist/kadaikodi/components/viz/lib/palette.js.map +1 -0
- package/dist/kadaikodi/components/viz/lib/types.d.ts +27 -0
- package/dist/kadaikodi/components/viz/lib/types.d.ts.map +1 -0
- package/dist/kadaikodi/context/KadaikodiContext.d.ts +16 -0
- package/dist/kadaikodi/context/KadaikodiContext.d.ts.map +1 -0
- package/dist/kadaikodi/context/index.d.ts +6 -0
- package/dist/kadaikodi/context/index.d.ts.map +1 -0
- package/dist/kadaikodi/hooks/index.d.ts +2 -0
- package/dist/kadaikodi/hooks/index.d.ts.map +1 -0
- package/dist/kadaikodi/hooks/useKadaikodiApi.d.ts +169 -0
- package/dist/kadaikodi/hooks/useKadaikodiApi.d.ts.map +1 -0
- package/dist/kadaikodi/hooks/useKadaikodiApi.js +18 -10
- package/dist/kadaikodi/hooks/useKadaikodiApi.js.map +1 -1
- package/dist/kadaikodi/index.d.ts +11 -0
- package/dist/kadaikodi/index.d.ts.map +1 -0
- package/dist/kadaikodi/pages/HomePage.d.ts +14 -0
- package/dist/kadaikodi/pages/HomePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/HomePage.js +373 -631
- package/dist/kadaikodi/pages/HomePage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.d.ts +13 -0
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js +304 -169
- package/dist/kadaikodi/pages/admin/AdminAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminDashboard.d.ts +13 -0
- package/dist/kadaikodi/pages/admin/AdminDashboard.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/AdminDashboard.js +255 -271
- package/dist/kadaikodi/pages/admin/AdminDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.d.ts +12 -0
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.js +185 -125
- package/dist/kadaikodi/pages/admin/AdminFinancialPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.d.ts +11 -0
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js +141 -102
- package/dist/kadaikodi/pages/admin/AdminOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/AdminProfilePage.d.ts +11 -0
- package/dist/kadaikodi/pages/admin/AdminProfilePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/AdminSettingsPage.d.ts +10 -0
- package/dist/kadaikodi/pages/admin/AdminSettingsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/CartManagementPage.d.ts +13 -0
- package/dist/kadaikodi/pages/admin/CartManagementPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/CartManagementPage.js +558 -718
- package/dist/kadaikodi/pages/admin/CartManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/admin/UserManagementPage.d.ts +10 -0
- package/dist/kadaikodi/pages/admin/UserManagementPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/admin/UserManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.d.ts +13 -0
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js +142 -55
- package/dist/kadaikodi/pages/cart-owner/AnalyticsDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/BusinessSettingsPage.d.ts +11 -0
- package/dist/kadaikodi/pages/cart-owner/BusinessSettingsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.d.ts +12 -0
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js +129 -164
- package/dist/kadaikodi/pages/cart-owner/CartOwnerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/CartOwnerProfilePage.d.ts +12 -0
- package/dist/kadaikodi/pages/cart-owner/CartOwnerProfilePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/CartServiceConfigPage.d.ts +11 -0
- package/dist/kadaikodi/pages/cart-owner/CartServiceConfigPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.d.ts +11 -0
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js +379 -361
- package/dist/kadaikodi/pages/cart-owner/InventoryManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/InvestmentListingPage.d.ts +2 -0
- package/dist/kadaikodi/pages/cart-owner/InvestmentListingPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/InvestmentListingPage.js +266 -166
- package/dist/kadaikodi/pages/cart-owner/InvestmentListingPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.d.ts +2 -0
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.js +373 -0
- package/dist/kadaikodi/pages/cart-owner/MerchantOnboardingPage.js.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.d.ts +10 -0
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js +288 -161
- package/dist/kadaikodi/pages/cart-owner/OrderManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.d.ts +12 -0
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js +180 -181
- package/dist/kadaikodi/pages/cart-owner/StaffManagementPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/HelpSupportPage.d.ts +11 -0
- package/dist/kadaikodi/pages/common/HelpSupportPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/common/HelpSupportPage.js.map +1 -1
- package/dist/kadaikodi/pages/common/NotificationCenterPage.d.ts +10 -0
- package/dist/kadaikodi/pages/common/NotificationCenterPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/common/SettingsPage.d.ts +19 -0
- package/dist/kadaikodi/pages/common/SettingsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/common/SettingsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.d.ts +12 -0
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.js +17 -34
- package/dist/kadaikodi/pages/customer/BookingDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDetailPage.d.ts +13 -0
- package/dist/kadaikodi/pages/customer/CartDetailPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/CartDetailPage.js +405 -248
- package/dist/kadaikodi/pages/customer/CartDetailPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.d.ts +11 -0
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js +258 -232
- package/dist/kadaikodi/pages/customer/CartDiscoveryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CheckoutPage.d.ts +9 -0
- package/dist/kadaikodi/pages/customer/CheckoutPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/CheckoutPage.js +254 -205
- package/dist/kadaikodi/pages/customer/CheckoutPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/CustomerDashboard.d.ts +10 -0
- package/dist/kadaikodi/pages/customer/CustomerDashboard.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/CustomerProfilePage.d.ts +10 -0
- package/dist/kadaikodi/pages/customer/CustomerProfilePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.d.ts +12 -0
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js +270 -230
- package/dist/kadaikodi/pages/customer/DirectServiceBookingPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/FavoritesPage.d.ts +11 -0
- package/dist/kadaikodi/pages/customer/FavoritesPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/FavoritesPage.js +149 -412
- package/dist/kadaikodi/pages/customer/FavoritesPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.d.ts +9 -0
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.js +173 -134
- package/dist/kadaikodi/pages/customer/OrderHistoryPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.d.ts +9 -0
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js +176 -175
- package/dist/kadaikodi/pages/customer/OrderTrackingPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/PaymentMethodsPage.d.ts +11 -0
- package/dist/kadaikodi/pages/customer/PaymentMethodsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/ReviewsPage.d.ts +12 -0
- package/dist/kadaikodi/pages/customer/ReviewsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/ReviewsPage.js +295 -438
- package/dist/kadaikodi/pages/customer/ReviewsPage.js.map +1 -1
- package/dist/kadaikodi/pages/customer/SavedAddressesPage.d.ts +10 -0
- package/dist/kadaikodi/pages/customer/SavedAddressesPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/shared.d.ts +41 -0
- package/dist/kadaikodi/pages/customer/shared.d.ts.map +1 -0
- package/dist/kadaikodi/pages/customer/shared.js +181 -0
- package/dist/kadaikodi/pages/customer/shared.js.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.d.ts +13 -0
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js +438 -311
- package/dist/kadaikodi/pages/investor/InvestmentDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.d.ts +10 -0
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js +320 -293
- package/dist/kadaikodi/pages/investor/InvestmentOpportunitiesPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.d.ts +11 -0
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js +159 -91
- package/dist/kadaikodi/pages/investor/InvestorAnalyticsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorDashboard.d.ts +10 -0
- package/dist/kadaikodi/pages/investor/InvestorDashboard.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestorDashboard.js +137 -107
- package/dist/kadaikodi/pages/investor/InvestorDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.d.ts +10 -0
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js +157 -135
- package/dist/kadaikodi/pages/investor/InvestorInvestmentsPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.d.ts +11 -0
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js +280 -206
- package/dist/kadaikodi/pages/investor/InvestorPortfolioPage.js.map +1 -1
- package/dist/kadaikodi/pages/investor/InvestorProfilePage.d.ts +20 -0
- package/dist/kadaikodi/pages/investor/InvestorProfilePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/investor/InvestorProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.d.ts +18 -0
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js +424 -448
- package/dist/kadaikodi/pages/worker/TaskDetailsPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerDashboard.d.ts +14 -0
- package/dist/kadaikodi/pages/worker/WorkerDashboard.d.ts.map +1 -0
- package/dist/kadaikodi/pages/worker/WorkerDashboard.js +328 -445
- package/dist/kadaikodi/pages/worker/WorkerDashboard.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.d.ts +18 -0
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js +141 -164
- package/dist/kadaikodi/pages/worker/WorkerOrdersPage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.d.ts +18 -0
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.js +300 -296
- package/dist/kadaikodi/pages/worker/WorkerProfilePage.js.map +1 -1
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.d.ts +16 -0
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.d.ts.map +1 -0
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js +284 -309
- package/dist/kadaikodi/pages/worker/WorkerSchedulePage.js.map +1 -1
- package/dist/kadaikodi/store/index.d.ts +6 -0
- package/dist/kadaikodi/store/index.d.ts.map +1 -0
- package/dist/kadaikodi/store/kadaikodiStore.d.ts +60 -0
- package/dist/kadaikodi/store/kadaikodiStore.d.ts.map +1 -0
- package/dist/kadaikodi/types/index.d.ts +464 -0
- package/dist/kadaikodi/types/index.d.ts.map +1 -0
- package/dist/kadaikodi/utils/cn.d.ts +4 -0
- package/dist/kadaikodi/utils/cn.d.ts.map +1 -0
- package/dist/kadaikodi/utils/formatters.d.ts +78 -0
- package/dist/kadaikodi/utils/formatters.d.ts.map +1 -0
- package/dist/kadaikodi/utils/index.d.ts +8 -0
- package/dist/kadaikodi/utils/index.d.ts.map +1 -0
- package/dist/kadaikodi/utils/navigation.d.ts +20 -0
- package/dist/kadaikodi/utils/navigation.d.ts.map +1 -0
- package/dist/services/createSandboxAssistantTransport.d.ts +43 -0
- package/dist/services/createSandboxAssistantTransport.d.ts.map +1 -0
- package/dist/services/createSandboxAssistantTransport.js +15 -0
- package/dist/services/createSandboxAssistantTransport.js.map +1 -0
- package/package.json +5 -1
|
@@ -4,9 +4,11 @@ import { PageLayout as n } from "../../components/PageLayout.js";
|
|
|
4
4
|
import { EmptyState as r } from "../../components/EmptyState.js";
|
|
5
5
|
import { useCreateOffering as i, useDeleteOffering as ee, useOfferings as te, useProviders as ne, useUpdateOffering as re } from "../../hooks/useKadaikodiApi.js";
|
|
6
6
|
import { formatCurrency as a } from "../../utils/formatters.js";
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
7
|
+
import { StatCard as o } from "../../components/viz/StatCard.js";
|
|
8
|
+
import "../../components/viz/index.js";
|
|
9
|
+
import { useEffect as ie, useMemo as s, useState as c } from "react";
|
|
10
|
+
import { AlertCircle as l, CheckCircle2 as ae, Download as oe, Edit2 as se, Filter as ce, Package as u, Plus as d, Search as le, Trash2 as ue, Upload as de, X as fe } from "lucide-react";
|
|
11
|
+
import { Fragment as pe, jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
10
12
|
import { EmphasisPanel as me, PagePurpose as he } from "@burdenoff/fe-libs/ui";
|
|
11
13
|
//#region src/kadaikodi/pages/cart-owner/InventoryManagementPage.tsx
|
|
12
14
|
var ge = [
|
|
@@ -18,7 +20,7 @@ var ge = [
|
|
|
18
20
|
"Health",
|
|
19
21
|
"Wellness",
|
|
20
22
|
"Education"
|
|
21
|
-
],
|
|
23
|
+
], m = (e) => ge.some((t) => e.includes(t)), _e = (e) => e === "Food & Beverage", h = {
|
|
22
24
|
FOOD_BEVERAGE: "Food & Beverage",
|
|
23
25
|
PERSONAL_CARE_BEAUTY: "Personal Care & Beauty",
|
|
24
26
|
CLOTHING_FASHION: "Clothing & Fashion",
|
|
@@ -28,7 +30,7 @@ var ge = [
|
|
|
28
30
|
EDUCATION_SKILLS: "Education & Skills",
|
|
29
31
|
RETAIL_MERCHANDISE: "Retail & Merchandise",
|
|
30
32
|
GROCERY_ESSENTIALS: "Grocery & Essentials"
|
|
31
|
-
}, ve = Object.fromEntries(Object.entries(
|
|
33
|
+
}, ve = Object.fromEntries(Object.entries(h).map(([e, t]) => [t, e])), ye = Object.values(h).sort(), be = (e) => `${e.toLowerCase().trim().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "") || "offering"}-${Date.now().toString(36)}`, xe = (e) => {
|
|
32
34
|
let t = String(e ?? "");
|
|
33
35
|
return /[",\n]/.test(t) ? `"${t.replace(/"/g, "\"\"")}"` : t;
|
|
34
36
|
}, Se = (e, t) => ({
|
|
@@ -37,7 +39,9 @@ var ge = [
|
|
|
37
39
|
description: e.description ?? "",
|
|
38
40
|
price: e.price,
|
|
39
41
|
originalPrice: e.originalPrice ?? void 0,
|
|
40
|
-
category:
|
|
42
|
+
category: h[e.category] ?? e.category,
|
|
43
|
+
kind: e.kind === "SERVICE" ? "Service" : "Product",
|
|
44
|
+
image: e.media?.[0] ?? void 0,
|
|
41
45
|
stock: e.stock ?? 0,
|
|
42
46
|
isAvailable: e.isAvailable,
|
|
43
47
|
cartName: t,
|
|
@@ -52,7 +56,7 @@ var ge = [
|
|
|
52
56
|
duration: e.durationMinutes ?? 0,
|
|
53
57
|
serviceType: e.serviceType ?? "",
|
|
54
58
|
requirements: []
|
|
55
|
-
}),
|
|
59
|
+
}), Ce = {
|
|
56
60
|
name: "",
|
|
57
61
|
description: "",
|
|
58
62
|
category: "",
|
|
@@ -71,18 +75,18 @@ var ge = [
|
|
|
71
75
|
duration: 30,
|
|
72
76
|
serviceType: "instant",
|
|
73
77
|
requirements: []
|
|
74
|
-
},
|
|
75
|
-
let { navigateTo: ge, currentUser:
|
|
78
|
+
}, g = () => {
|
|
79
|
+
let { navigateTo: ge, currentUser: h } = e(), { data: g = [] } = ne(), _ = s(() => g.find((e) => e.ownerId === h?.id) ?? g[0], [g, h?.id]), v = _?.id, { data: y = [], isLoading: we } = te(v), b = re(), Te = i(), Ee = ee(), [x, S] = c([]);
|
|
76
80
|
ie(() => {
|
|
77
|
-
|
|
78
|
-
}, [
|
|
79
|
-
let [
|
|
80
|
-
let e = [...
|
|
81
|
-
if (
|
|
82
|
-
let t =
|
|
81
|
+
S(y.map((e) => Se(e, _?.name ?? "")));
|
|
82
|
+
}, [y, _?.name]);
|
|
83
|
+
let [C, w] = c(""), [T, E] = c(""), [D, O] = c(""), [k, A] = c("name"), [De, Oe] = c(!1), [ke, j] = c(!1), [M, N] = c(null), [P, F] = c(Ce), [I, L] = c(""), [R, z] = c(""), [B, V] = c(""), [H, U] = c(null), Ae = s(() => [...new Set(x.map((e) => e.category))].sort(), [x]), W = s(() => {
|
|
84
|
+
let e = [...x];
|
|
85
|
+
if (C) {
|
|
86
|
+
let t = C.toLowerCase();
|
|
83
87
|
e = e.filter((e) => e.name.toLowerCase().includes(t) || e.description.toLowerCase().includes(t) || e.category.toLowerCase().includes(t) || e.tags.some((e) => e.toLowerCase().includes(t)));
|
|
84
88
|
}
|
|
85
|
-
switch (
|
|
89
|
+
switch (T && (e = e.filter((e) => e.category === T)), D === "available" ? e = e.filter((e) => e.isAvailable) : D === "unavailable" && (e = e.filter((e) => !e.isAvailable)), k) {
|
|
86
90
|
case "name":
|
|
87
91
|
e.sort((e, t) => e.name.localeCompare(t.name));
|
|
88
92
|
break;
|
|
@@ -98,23 +102,23 @@ var ge = [
|
|
|
98
102
|
}
|
|
99
103
|
return e;
|
|
100
104
|
}, [
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
]),
|
|
107
|
-
|
|
105
|
+
x,
|
|
106
|
+
C,
|
|
107
|
+
T,
|
|
108
|
+
D,
|
|
109
|
+
k
|
|
110
|
+
]), je = x.length, Me = x.filter((e) => e.isAvailable).length, Ne = x.filter((e) => !m(e.category) && e.stock === 0).length, Pe = x.filter((e) => !m(e.category) && e.stock > 0 && e.stock < 10).length, G = (e, t) => {
|
|
111
|
+
U({
|
|
108
112
|
text: e,
|
|
109
113
|
type: t
|
|
110
|
-
}), setTimeout(() =>
|
|
111
|
-
},
|
|
112
|
-
|
|
113
|
-
...
|
|
114
|
+
}), setTimeout(() => U(null), 3e3);
|
|
115
|
+
}, K = () => {
|
|
116
|
+
N(null), F({
|
|
117
|
+
...Ce,
|
|
114
118
|
category: ""
|
|
115
|
-
}),
|
|
116
|
-
},
|
|
117
|
-
|
|
119
|
+
}), L(""), z(""), V(""), j(!0);
|
|
120
|
+
}, q = (e) => {
|
|
121
|
+
N(e), F({
|
|
118
122
|
name: e.name,
|
|
119
123
|
description: e.description,
|
|
120
124
|
category: e.category,
|
|
@@ -133,95 +137,95 @@ var ge = [
|
|
|
133
137
|
duration: e.duration,
|
|
134
138
|
serviceType: e.serviceType,
|
|
135
139
|
requirements: e.requirements
|
|
136
|
-
}),
|
|
137
|
-
},
|
|
138
|
-
if (!
|
|
139
|
-
|
|
140
|
+
}), L(e.tags.join(", ")), z(e.allergens.join(", ")), V(e.requirements.join(", ")), j(!0);
|
|
141
|
+
}, Fe = () => {
|
|
142
|
+
if (!P.name || !P.description || !P.category || P.price <= 0) {
|
|
143
|
+
G("Please fill all required fields (name, description, category, price > 0)", "error");
|
|
140
144
|
return;
|
|
141
145
|
}
|
|
142
|
-
let e =
|
|
143
|
-
if (
|
|
146
|
+
let e = I.split(",").map((e) => e.trim()).filter(Boolean), t = R.split(",").map((e) => e.trim()).filter(Boolean), n = B.split(",").map((e) => e.trim()).filter(Boolean), r = m(P.category), i = r ? "Service" : "Product";
|
|
147
|
+
if (M) S((r) => r.map((r) => r.id === M.id ? {
|
|
144
148
|
...r,
|
|
145
|
-
...
|
|
149
|
+
...P,
|
|
146
150
|
tags: e,
|
|
147
151
|
allergens: t,
|
|
148
152
|
requirements: n
|
|
149
|
-
} : r)),
|
|
150
|
-
id:
|
|
153
|
+
} : r)), b.mutate({
|
|
154
|
+
id: M.id,
|
|
151
155
|
input: {
|
|
152
|
-
name:
|
|
153
|
-
description:
|
|
154
|
-
price:
|
|
155
|
-
originalPrice:
|
|
156
|
-
stock: r ? void 0 :
|
|
156
|
+
name: P.name,
|
|
157
|
+
description: P.description,
|
|
158
|
+
price: P.price,
|
|
159
|
+
originalPrice: P.originalPrice,
|
|
160
|
+
stock: r ? void 0 : P.stock,
|
|
157
161
|
tags: e,
|
|
158
|
-
serviceType:
|
|
159
|
-
durationMinutes: r ?
|
|
162
|
+
serviceType: P.serviceType || void 0,
|
|
163
|
+
durationMinutes: r ? P.duration : void 0
|
|
160
164
|
}
|
|
161
|
-
}, { onError: () =>
|
|
165
|
+
}, { onError: () => G("Could not save changes to the server", "error") }), G(`${i} updated successfully`, "success"), j(!1);
|
|
162
166
|
else {
|
|
163
|
-
if (!
|
|
164
|
-
|
|
167
|
+
if (!v) {
|
|
168
|
+
G("Create your cart before adding offerings", "error");
|
|
165
169
|
return;
|
|
166
170
|
}
|
|
167
|
-
let t = ve[
|
|
171
|
+
let t = ve[P.category];
|
|
168
172
|
if (!t) {
|
|
169
|
-
|
|
173
|
+
G("Please choose a valid category", "error");
|
|
170
174
|
return;
|
|
171
175
|
}
|
|
172
|
-
|
|
173
|
-
providerId:
|
|
174
|
-
name:
|
|
175
|
-
slug: be(
|
|
176
|
-
description:
|
|
176
|
+
Te.mutate({
|
|
177
|
+
providerId: v,
|
|
178
|
+
name: P.name,
|
|
179
|
+
slug: be(P.name),
|
|
180
|
+
description: P.description,
|
|
177
181
|
category: t,
|
|
178
182
|
kind: r ? "SERVICE" : "PRODUCT",
|
|
179
|
-
price:
|
|
180
|
-
originalPrice:
|
|
181
|
-
stock: r ? void 0 :
|
|
183
|
+
price: P.price,
|
|
184
|
+
originalPrice: P.originalPrice,
|
|
185
|
+
stock: r ? void 0 : P.stock,
|
|
182
186
|
tags: e,
|
|
183
|
-
serviceType: r &&
|
|
184
|
-
durationMinutes: r ?
|
|
187
|
+
serviceType: r && P.serviceType || void 0,
|
|
188
|
+
durationMinutes: r ? P.duration : void 0
|
|
185
189
|
}, {
|
|
186
190
|
onSuccess: () => {
|
|
187
|
-
|
|
191
|
+
G(`${i} added successfully`, "success"), j(!1);
|
|
188
192
|
},
|
|
189
|
-
onError: () =>
|
|
193
|
+
onError: () => G(`Could not create the ${i.toLowerCase()}`, "error")
|
|
190
194
|
});
|
|
191
195
|
}
|
|
192
|
-
},
|
|
196
|
+
}, J = (e) => {
|
|
193
197
|
if (!confirm("Are you sure you want to delete this offering?")) return;
|
|
194
|
-
let t =
|
|
195
|
-
|
|
196
|
-
onSuccess: () =>
|
|
198
|
+
let t = x;
|
|
199
|
+
S((t) => t.filter((t) => t.id !== e)), Ee.mutate(e, {
|
|
200
|
+
onSuccess: () => G("Offering deleted successfully", "success"),
|
|
197
201
|
onError: () => {
|
|
198
|
-
|
|
202
|
+
S(t), G("Could not delete the offering", "error");
|
|
199
203
|
}
|
|
200
204
|
});
|
|
201
|
-
},
|
|
202
|
-
|
|
205
|
+
}, Y = (e, t) => {
|
|
206
|
+
S((n) => n.map((n) => n.id === e ? {
|
|
203
207
|
...n,
|
|
204
208
|
isAvailable: t
|
|
205
|
-
} : n)),
|
|
209
|
+
} : n)), b.mutate({
|
|
206
210
|
id: e,
|
|
207
211
|
input: { isAvailable: t }
|
|
208
|
-
}, { onError: () =>
|
|
209
|
-
},
|
|
210
|
-
let t = e === "enable", n =
|
|
212
|
+
}, { onError: () => G("Could not update availability on the server", "error") }), G(`Offering ${t ? "enabled" : "disabled"} successfully`, "success");
|
|
213
|
+
}, X = (e) => {
|
|
214
|
+
let t = e === "enable", n = x.filter((e) => e.isAvailable !== t);
|
|
211
215
|
if (n.length === 0) {
|
|
212
|
-
|
|
216
|
+
G(`No offerings to ${e}`, "error");
|
|
213
217
|
return;
|
|
214
218
|
}
|
|
215
|
-
|
|
219
|
+
S((e) => e.map((e) => ({
|
|
216
220
|
...e,
|
|
217
221
|
isAvailable: t
|
|
218
|
-
}))), n.forEach((e) =>
|
|
222
|
+
}))), n.forEach((e) => b.mutate({
|
|
219
223
|
id: e.id,
|
|
220
224
|
input: { isAvailable: t }
|
|
221
|
-
}, { onError: () =>
|
|
222
|
-
},
|
|
223
|
-
if (
|
|
224
|
-
|
|
225
|
+
}, { onError: () => G("Some offerings could not be updated on the server", "error") })), G(`${n.length} offerings ${e}d successfully`, "success");
|
|
226
|
+
}, Ie = () => {
|
|
227
|
+
if (x.length === 0) {
|
|
228
|
+
G("There are no offerings to export yet", "error");
|
|
225
229
|
return;
|
|
226
230
|
}
|
|
227
231
|
let e = [[
|
|
@@ -232,17 +236,17 @@ var ge = [
|
|
|
232
236
|
"Stock",
|
|
233
237
|
"Available",
|
|
234
238
|
"Tags"
|
|
235
|
-
], ...
|
|
239
|
+
], ...x.map((e) => [
|
|
236
240
|
e.name,
|
|
237
241
|
e.category,
|
|
238
242
|
e.price,
|
|
239
243
|
e.originalPrice ?? "",
|
|
240
|
-
|
|
244
|
+
m(e.category) ? "" : e.stock,
|
|
241
245
|
e.isAvailable ? "Yes" : "No",
|
|
242
246
|
e.tags.join("; ")
|
|
243
247
|
])].map((e) => e.map(xe).join(",")).join("\n"), t = new Blob([e], { type: "text/csv;charset=utf-8;" }), n = URL.createObjectURL(t), r = document.createElement("a");
|
|
244
|
-
r.href = n, r.download = `offerings-${(/* @__PURE__ */ new Date()).toISOString().slice(0, 10)}.csv`, document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n),
|
|
245
|
-
},
|
|
248
|
+
r.href = n, r.download = `offerings-${(/* @__PURE__ */ new Date()).toISOString().slice(0, 10)}.csv`, document.body.appendChild(r), r.click(), document.body.removeChild(r), URL.revokeObjectURL(n), G(`Exported ${x.length} offerings to CSV`, "success");
|
|
249
|
+
}, Le = (e) => m(e.category) ? {
|
|
246
250
|
color: "text-status-success-text",
|
|
247
251
|
label: "Available"
|
|
248
252
|
} : e.stock === 0 ? {
|
|
@@ -254,182 +258,171 @@ var ge = [
|
|
|
254
258
|
} : {
|
|
255
259
|
color: "text-status-success-text",
|
|
256
260
|
label: `In Stock (${e.stock})`
|
|
257
|
-
}, Z =
|
|
258
|
-
return /* @__PURE__ */
|
|
261
|
+
}, Z = P.category ? m(P.category) : !1, Re = P.category ? _e(P.category) : !1, Q = !Z && Re, $ = P.name && P.description && P.category && P.price > 0 && (!Z || P.duration && P.duration > 0) && (Z || P.stock >= 0);
|
|
262
|
+
return /* @__PURE__ */ p(n, {
|
|
259
263
|
title: "Offerings Management",
|
|
260
264
|
description: "Manage your products and services",
|
|
261
|
-
actions: /* @__PURE__ */
|
|
265
|
+
actions: /* @__PURE__ */ p("button", {
|
|
262
266
|
type: "button",
|
|
263
|
-
onClick:
|
|
267
|
+
onClick: K,
|
|
264
268
|
className: "inline-flex items-center gap-2 rounded-md bg-accent px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
265
|
-
children: [/* @__PURE__ */
|
|
269
|
+
children: [/* @__PURE__ */ f(d, { className: "h-4 w-4" }), "Add Item"]
|
|
266
270
|
}),
|
|
267
271
|
children: [
|
|
268
|
-
/* @__PURE__ */
|
|
272
|
+
/* @__PURE__ */ f(he, {
|
|
269
273
|
className: "mb-6",
|
|
270
274
|
children: "The menu and stock control room for your cart. Use this page to add and edit the products and services you offer, set prices and availability, and keep stock levels accurate so customers never order something you can't fulfil. Watch the out-of-stock and low-stock counts and restock before they cost you sales."
|
|
271
275
|
}),
|
|
272
|
-
/* @__PURE__ */
|
|
276
|
+
/* @__PURE__ */ p("div", {
|
|
273
277
|
className: "space-y-4",
|
|
274
278
|
children: [
|
|
275
|
-
|
|
276
|
-
className: t("flex items-center gap-2 rounded-lg border p-3",
|
|
277
|
-
children: [
|
|
278
|
-
className: t("text-sm font-medium",
|
|
279
|
-
children:
|
|
279
|
+
H && /* @__PURE__ */ p("div", {
|
|
280
|
+
className: t("flex items-center gap-2 rounded-lg border p-3", H.type === "success" ? "border-status-success-text/30 bg-status-success-bg-subtle" : "border-status-error-text/30 bg-status-error-bg-subtle"),
|
|
281
|
+
children: [H.type === "success" ? /* @__PURE__ */ f(ae, { className: "h-4 w-4 text-status-success-text" }) : /* @__PURE__ */ f(l, { className: "h-4 w-4 text-status-error-text" }), /* @__PURE__ */ f("span", {
|
|
282
|
+
className: t("text-sm font-medium", H.type === "success" ? "text-status-success-text" : "text-status-error-text"),
|
|
283
|
+
children: H.text
|
|
280
284
|
})]
|
|
281
285
|
}),
|
|
282
|
-
/* @__PURE__ */
|
|
286
|
+
/* @__PURE__ */ p(me, { children: [/* @__PURE__ */ f("h2", {
|
|
283
287
|
className: "mb-4 text-base font-semibold text-text-primary",
|
|
284
288
|
children: "Stock at a Glance"
|
|
285
|
-
}), /* @__PURE__ */
|
|
289
|
+
}), /* @__PURE__ */ p("div", {
|
|
286
290
|
className: "grid grid-cols-2 lg:grid-cols-4 gap-3",
|
|
287
291
|
children: [
|
|
288
|
-
/* @__PURE__ */
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
children: "Total Items"
|
|
293
|
-
}), /* @__PURE__ */ u("p", {
|
|
294
|
-
className: "text-2xl font-bold text-text-primary",
|
|
295
|
-
children: Ae
|
|
296
|
-
})]
|
|
292
|
+
/* @__PURE__ */ f(o, {
|
|
293
|
+
label: "Total Items",
|
|
294
|
+
value: je,
|
|
295
|
+
icon: /* @__PURE__ */ f(u, { className: "h-4 w-4" })
|
|
297
296
|
}),
|
|
298
|
-
/* @__PURE__ */
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
className: "text-
|
|
302
|
-
children: "Available"
|
|
303
|
-
}), /* @__PURE__ */ u("p", {
|
|
304
|
-
className: "text-2xl font-bold text-status-success-text",
|
|
305
|
-
children: je
|
|
306
|
-
})]
|
|
307
|
-
}),
|
|
308
|
-
/* @__PURE__ */ d("div", {
|
|
309
|
-
className: "rounded-lg border border-border-subtle bg-bg-surface p-4 shadow-sm",
|
|
310
|
-
children: [/* @__PURE__ */ u("p", {
|
|
311
|
-
className: "text-xs text-text-secondary",
|
|
312
|
-
children: "Out of Stock"
|
|
313
|
-
}), /* @__PURE__ */ u("p", {
|
|
314
|
-
className: "text-2xl font-bold text-status-error-text",
|
|
297
|
+
/* @__PURE__ */ f(o, {
|
|
298
|
+
label: "Available",
|
|
299
|
+
value: /* @__PURE__ */ f("span", {
|
|
300
|
+
className: "text-status-success-text",
|
|
315
301
|
children: Me
|
|
316
|
-
})
|
|
302
|
+
}),
|
|
303
|
+
icon: /* @__PURE__ */ f(ae, { className: "h-4 w-4" })
|
|
317
304
|
}),
|
|
318
|
-
/* @__PURE__ */
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
className: "text-
|
|
322
|
-
children: "Low Stock"
|
|
323
|
-
}), /* @__PURE__ */ u("p", {
|
|
324
|
-
className: "text-2xl font-bold text-status-warning-text",
|
|
305
|
+
/* @__PURE__ */ f(o, {
|
|
306
|
+
label: "Out of Stock",
|
|
307
|
+
value: /* @__PURE__ */ f("span", {
|
|
308
|
+
className: "text-status-error-text",
|
|
325
309
|
children: Ne
|
|
326
|
-
})
|
|
310
|
+
}),
|
|
311
|
+
icon: /* @__PURE__ */ f(l, { className: "h-4 w-4" })
|
|
312
|
+
}),
|
|
313
|
+
/* @__PURE__ */ f(o, {
|
|
314
|
+
label: "Low Stock",
|
|
315
|
+
value: /* @__PURE__ */ f("span", {
|
|
316
|
+
className: "text-status-warning-text",
|
|
317
|
+
children: Pe
|
|
318
|
+
}),
|
|
319
|
+
icon: /* @__PURE__ */ f(ce, { className: "h-4 w-4" })
|
|
327
320
|
})
|
|
328
321
|
]
|
|
329
322
|
})] }),
|
|
330
|
-
/* @__PURE__ */
|
|
323
|
+
/* @__PURE__ */ p("div", {
|
|
331
324
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-4 shadow-sm space-y-4",
|
|
332
|
-
children: [/* @__PURE__ */
|
|
325
|
+
children: [/* @__PURE__ */ p("div", {
|
|
333
326
|
className: "flex flex-col lg:flex-row lg:items-center lg:justify-between gap-3",
|
|
334
|
-
children: [/* @__PURE__ */
|
|
327
|
+
children: [/* @__PURE__ */ p("div", {
|
|
335
328
|
className: "flex flex-wrap gap-2",
|
|
336
329
|
children: [
|
|
337
|
-
/* @__PURE__ */
|
|
330
|
+
/* @__PURE__ */ p("button", {
|
|
338
331
|
type: "button",
|
|
339
|
-
onClick:
|
|
332
|
+
onClick: K,
|
|
340
333
|
className: "inline-flex items-center gap-1.5 rounded-md bg-accent px-3 py-2 text-sm font-medium text-text-primary hover:bg-accent/80 transition-colors",
|
|
341
|
-
children: [/* @__PURE__ */
|
|
334
|
+
children: [/* @__PURE__ */ f(d, { className: "h-4 w-4" }), "Add Item"]
|
|
342
335
|
}),
|
|
343
|
-
/* @__PURE__ */
|
|
336
|
+
/* @__PURE__ */ f("button", {
|
|
344
337
|
type: "button",
|
|
345
|
-
onClick: () =>
|
|
338
|
+
onClick: () => X("enable"),
|
|
346
339
|
className: "rounded-md border border-border-subtle px-3 py-2 text-sm text-text-primary hover:bg-bg-sunken transition-colors",
|
|
347
340
|
children: "Enable All"
|
|
348
341
|
}),
|
|
349
|
-
/* @__PURE__ */
|
|
342
|
+
/* @__PURE__ */ f("button", {
|
|
350
343
|
type: "button",
|
|
351
|
-
onClick: () =>
|
|
344
|
+
onClick: () => X("disable"),
|
|
352
345
|
className: "rounded-md border border-border-subtle px-3 py-2 text-sm text-text-primary hover:bg-bg-sunken transition-colors",
|
|
353
346
|
children: "Disable All"
|
|
354
347
|
})
|
|
355
348
|
]
|
|
356
|
-
}), /* @__PURE__ */
|
|
349
|
+
}), /* @__PURE__ */ p("div", {
|
|
357
350
|
className: "flex flex-wrap gap-2",
|
|
358
|
-
children: [/* @__PURE__ */
|
|
351
|
+
children: [/* @__PURE__ */ p("button", {
|
|
359
352
|
type: "button",
|
|
360
|
-
onClick:
|
|
353
|
+
onClick: Ie,
|
|
361
354
|
className: "inline-flex items-center gap-1.5 rounded-md border border-border-subtle px-3 py-2 text-sm text-text-primary hover:bg-bg-sunken transition-colors",
|
|
362
|
-
children: [/* @__PURE__ */
|
|
363
|
-
}), /* @__PURE__ */
|
|
355
|
+
children: [/* @__PURE__ */ f(oe, { className: "h-4 w-4" }), "Export CSV"]
|
|
356
|
+
}), /* @__PURE__ */ p("button", {
|
|
364
357
|
type: "button",
|
|
365
358
|
disabled: !0,
|
|
366
359
|
title: "Bulk import is coming soon",
|
|
367
360
|
className: "inline-flex items-center gap-1.5 rounded-md border border-border-subtle px-3 py-2 text-sm text-text-secondary opacity-60 cursor-not-allowed",
|
|
368
|
-
children: [/* @__PURE__ */
|
|
361
|
+
children: [/* @__PURE__ */ f(de, { className: "h-4 w-4" }), "Import (coming soon)"]
|
|
369
362
|
})]
|
|
370
363
|
})]
|
|
371
|
-
}), /* @__PURE__ */
|
|
364
|
+
}), /* @__PURE__ */ p("div", {
|
|
372
365
|
className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-3",
|
|
373
366
|
children: [
|
|
374
|
-
/* @__PURE__ */
|
|
367
|
+
/* @__PURE__ */ p("div", {
|
|
375
368
|
className: "relative sm:col-span-2 lg:col-span-1",
|
|
376
|
-
children: [/* @__PURE__ */
|
|
369
|
+
children: [/* @__PURE__ */ f(le, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary" }), /* @__PURE__ */ f("input", {
|
|
377
370
|
type: "text",
|
|
378
371
|
placeholder: "Search offerings...",
|
|
379
|
-
value:
|
|
380
|
-
onChange: (e) =>
|
|
372
|
+
value: C,
|
|
373
|
+
onChange: (e) => w(e.target.value),
|
|
381
374
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface pl-10 pr-4 py-2 text-sm text-text-primary placeholder:text-text-secondary focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)]"
|
|
382
375
|
})]
|
|
383
376
|
}),
|
|
384
|
-
/* @__PURE__ */
|
|
385
|
-
value:
|
|
386
|
-
onChange: (e) =>
|
|
377
|
+
/* @__PURE__ */ p("select", {
|
|
378
|
+
value: T,
|
|
379
|
+
onChange: (e) => E(e.target.value),
|
|
387
380
|
className: "rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
388
|
-
children: [/* @__PURE__ */
|
|
381
|
+
children: [/* @__PURE__ */ f("option", {
|
|
389
382
|
value: "",
|
|
390
383
|
children: "All Categories"
|
|
391
|
-
}),
|
|
384
|
+
}), Ae.map((e) => /* @__PURE__ */ f("option", {
|
|
392
385
|
value: e,
|
|
393
386
|
children: e
|
|
394
387
|
}, e))]
|
|
395
388
|
}),
|
|
396
|
-
/* @__PURE__ */
|
|
397
|
-
value:
|
|
398
|
-
onChange: (e) =>
|
|
389
|
+
/* @__PURE__ */ p("select", {
|
|
390
|
+
value: D,
|
|
391
|
+
onChange: (e) => O(e.target.value),
|
|
399
392
|
className: "rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
400
393
|
children: [
|
|
401
|
-
/* @__PURE__ */
|
|
394
|
+
/* @__PURE__ */ f("option", {
|
|
402
395
|
value: "",
|
|
403
396
|
children: "All Status"
|
|
404
397
|
}),
|
|
405
|
-
/* @__PURE__ */
|
|
398
|
+
/* @__PURE__ */ f("option", {
|
|
406
399
|
value: "available",
|
|
407
400
|
children: "Available"
|
|
408
401
|
}),
|
|
409
|
-
/* @__PURE__ */
|
|
402
|
+
/* @__PURE__ */ f("option", {
|
|
410
403
|
value: "unavailable",
|
|
411
404
|
children: "Unavailable"
|
|
412
405
|
})
|
|
413
406
|
]
|
|
414
407
|
}),
|
|
415
|
-
/* @__PURE__ */
|
|
416
|
-
value:
|
|
417
|
-
onChange: (e) =>
|
|
408
|
+
/* @__PURE__ */ p("select", {
|
|
409
|
+
value: k,
|
|
410
|
+
onChange: (e) => A(e.target.value),
|
|
418
411
|
className: "rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
419
412
|
children: [
|
|
420
|
-
/* @__PURE__ */
|
|
413
|
+
/* @__PURE__ */ f("option", {
|
|
421
414
|
value: "name",
|
|
422
415
|
children: "Name A-Z"
|
|
423
416
|
}),
|
|
424
|
-
/* @__PURE__ */
|
|
417
|
+
/* @__PURE__ */ f("option", {
|
|
425
418
|
value: "price_low",
|
|
426
419
|
children: "Price: Low to High"
|
|
427
420
|
}),
|
|
428
|
-
/* @__PURE__ */
|
|
421
|
+
/* @__PURE__ */ f("option", {
|
|
429
422
|
value: "price_high",
|
|
430
423
|
children: "Price: High to Low"
|
|
431
424
|
}),
|
|
432
|
-
/* @__PURE__ */
|
|
425
|
+
/* @__PURE__ */ f("option", {
|
|
433
426
|
value: "stock",
|
|
434
427
|
children: "Stock: Low to High"
|
|
435
428
|
})
|
|
@@ -438,133 +431,147 @@ var ge = [
|
|
|
438
431
|
]
|
|
439
432
|
})]
|
|
440
433
|
}),
|
|
441
|
-
|
|
434
|
+
we ? /* @__PURE__ */ f("div", {
|
|
442
435
|
className: "flex items-center justify-center py-16",
|
|
443
|
-
children: /* @__PURE__ */
|
|
444
|
-
}) :
|
|
445
|
-
illustration:
|
|
436
|
+
children: /* @__PURE__ */ f("div", { className: "h-10 w-10 animate-spin rounded-full border-b-2 border-foreground" })
|
|
437
|
+
}) : W.length === 0 ? /* @__PURE__ */ f(r, {
|
|
438
|
+
illustration: C || T || D ? "empty-search" : "empty-files",
|
|
446
439
|
title: "No items found",
|
|
447
|
-
description:
|
|
448
|
-
action: /* @__PURE__ */
|
|
440
|
+
description: C || T || D ? "No items match your current filters. Try adjusting your search criteria." : "You haven't added any items yet. Start building your offerings so customers can order from you.",
|
|
441
|
+
action: /* @__PURE__ */ p("div", {
|
|
449
442
|
className: "flex flex-wrap justify-center gap-3",
|
|
450
|
-
children: [/* @__PURE__ */
|
|
443
|
+
children: [/* @__PURE__ */ p("button", {
|
|
451
444
|
type: "button",
|
|
452
|
-
onClick:
|
|
445
|
+
onClick: K,
|
|
453
446
|
className: "inline-flex items-center gap-2 rounded-md bg-accent px-4 py-2 text-sm font-medium text-text-primary hover:bg-accent/80",
|
|
454
|
-
children: [/* @__PURE__ */
|
|
455
|
-
}), (
|
|
447
|
+
children: [/* @__PURE__ */ f(d, { className: "h-4 w-4" }), "Add Your First Item"]
|
|
448
|
+
}), (C || T || D) && /* @__PURE__ */ f("button", {
|
|
456
449
|
type: "button",
|
|
457
450
|
onClick: () => {
|
|
458
|
-
|
|
451
|
+
w(""), E(""), O(""), A("name");
|
|
459
452
|
},
|
|
460
453
|
className: "rounded-md border border-border-subtle px-4 py-2 text-sm text-text-primary hover:bg-bg-sunken",
|
|
461
454
|
children: "Clear Filters"
|
|
462
455
|
})]
|
|
463
456
|
})
|
|
464
|
-
}) : /* @__PURE__ */
|
|
457
|
+
}) : /* @__PURE__ */ p(pe, { children: [/* @__PURE__ */ f("div", {
|
|
465
458
|
className: "hidden lg:block rounded-lg border border-border-subtle bg-bg-surface shadow-sm overflow-hidden",
|
|
466
|
-
children: /* @__PURE__ */
|
|
459
|
+
children: /* @__PURE__ */ f("div", {
|
|
467
460
|
className: "overflow-x-auto",
|
|
468
|
-
children: /* @__PURE__ */
|
|
461
|
+
children: /* @__PURE__ */ p("table", {
|
|
469
462
|
className: "w-full text-sm",
|
|
470
|
-
children: [/* @__PURE__ */
|
|
463
|
+
children: [/* @__PURE__ */ f("thead", { children: /* @__PURE__ */ p("tr", {
|
|
471
464
|
className: "border-b border-border-subtle bg-bg-sunken/50",
|
|
472
465
|
children: [
|
|
473
|
-
/* @__PURE__ */
|
|
466
|
+
/* @__PURE__ */ f("th", {
|
|
474
467
|
className: "px-5 py-3 text-left font-medium text-text-secondary",
|
|
475
468
|
children: "Item"
|
|
476
469
|
}),
|
|
477
|
-
/* @__PURE__ */
|
|
470
|
+
/* @__PURE__ */ f("th", {
|
|
478
471
|
className: "px-5 py-3 text-left font-medium text-text-secondary",
|
|
479
472
|
children: "Category"
|
|
480
473
|
}),
|
|
481
|
-
/* @__PURE__ */
|
|
474
|
+
/* @__PURE__ */ f("th", {
|
|
482
475
|
className: "px-5 py-3 text-right font-medium text-text-secondary",
|
|
483
476
|
children: "Price"
|
|
484
477
|
}),
|
|
485
|
-
/* @__PURE__ */
|
|
478
|
+
/* @__PURE__ */ f("th", {
|
|
486
479
|
className: "px-5 py-3 text-left font-medium text-text-secondary",
|
|
487
480
|
children: "Stock/Status"
|
|
488
481
|
}),
|
|
489
|
-
/* @__PURE__ */
|
|
482
|
+
/* @__PURE__ */ f("th", {
|
|
490
483
|
className: "px-5 py-3 text-center font-medium text-text-secondary",
|
|
491
484
|
children: "Available"
|
|
492
485
|
}),
|
|
493
|
-
/* @__PURE__ */
|
|
486
|
+
/* @__PURE__ */ f("th", {
|
|
494
487
|
className: "px-5 py-3 text-right font-medium text-text-secondary",
|
|
495
488
|
children: "Actions"
|
|
496
489
|
})
|
|
497
490
|
]
|
|
498
|
-
}) }), /* @__PURE__ */
|
|
499
|
-
let n =
|
|
500
|
-
return /* @__PURE__ */
|
|
491
|
+
}) }), /* @__PURE__ */ f("tbody", { children: W.map((e) => {
|
|
492
|
+
let n = Le(e);
|
|
493
|
+
return /* @__PURE__ */ p("tr", {
|
|
501
494
|
className: "border-b border-border-subtle last:border-0 hover:bg-bg-sunken/30 transition-colors",
|
|
502
495
|
children: [
|
|
503
|
-
/* @__PURE__ */
|
|
496
|
+
/* @__PURE__ */ f("td", {
|
|
504
497
|
className: "px-5 py-3",
|
|
505
|
-
children: /* @__PURE__ */
|
|
498
|
+
children: /* @__PURE__ */ p("div", {
|
|
506
499
|
className: "flex items-center gap-3",
|
|
507
|
-
children: [/* @__PURE__ */
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
className: "
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
className: "
|
|
515
|
-
|
|
516
|
-
|
|
500
|
+
children: [e.image ? /* @__PURE__ */ f("img", {
|
|
501
|
+
src: e.image,
|
|
502
|
+
alt: "",
|
|
503
|
+
loading: "lazy",
|
|
504
|
+
className: "h-10 w-10 shrink-0 rounded-md object-cover"
|
|
505
|
+
}) : /* @__PURE__ */ f("div", {
|
|
506
|
+
className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-md bg-bg-sunken",
|
|
507
|
+
children: /* @__PURE__ */ f(u, { className: "h-4 w-4 text-text-secondary" })
|
|
508
|
+
}), /* @__PURE__ */ p("div", {
|
|
509
|
+
className: "min-w-0",
|
|
510
|
+
children: [/* @__PURE__ */ p("div", {
|
|
511
|
+
className: "flex items-center gap-2",
|
|
512
|
+
children: [/* @__PURE__ */ f("p", {
|
|
513
|
+
className: "font-medium text-text-primary",
|
|
514
|
+
children: e.name
|
|
515
|
+
}), /* @__PURE__ */ f("span", {
|
|
516
|
+
className: "inline-flex shrink-0 rounded bg-status-info-bg-subtle px-1.5 py-0.5 text-[10px] font-medium text-status-info-text",
|
|
517
|
+
children: e.kind
|
|
518
|
+
})]
|
|
519
|
+
}), e.description && /* @__PURE__ */ f("p", {
|
|
520
|
+
className: "text-xs text-text-secondary line-clamp-1",
|
|
521
|
+
children: e.description
|
|
522
|
+
})]
|
|
523
|
+
})]
|
|
517
524
|
})
|
|
518
525
|
}),
|
|
519
|
-
/* @__PURE__ */
|
|
526
|
+
/* @__PURE__ */ f("td", {
|
|
520
527
|
className: "px-5 py-3",
|
|
521
|
-
children: /* @__PURE__ */
|
|
528
|
+
children: /* @__PURE__ */ f("span", {
|
|
522
529
|
className: "inline-flex rounded-full bg-bg-sunken px-2.5 py-0.5 text-xs font-medium text-text-secondary",
|
|
523
530
|
children: e.category
|
|
524
531
|
})
|
|
525
532
|
}),
|
|
526
|
-
/* @__PURE__ */
|
|
533
|
+
/* @__PURE__ */ p("td", {
|
|
527
534
|
className: "px-5 py-3 text-right",
|
|
528
|
-
children: [/* @__PURE__ */
|
|
535
|
+
children: [/* @__PURE__ */ f("p", {
|
|
529
536
|
className: "font-medium text-text-primary",
|
|
530
537
|
children: a(e.price, { minimumFractionDigits: 0 })
|
|
531
|
-
}), e.originalPrice && /* @__PURE__ */
|
|
538
|
+
}), e.originalPrice && /* @__PURE__ */ f("p", {
|
|
532
539
|
className: "text-xs text-text-secondary line-through",
|
|
533
540
|
children: a(e.originalPrice, { minimumFractionDigits: 0 })
|
|
534
541
|
})]
|
|
535
542
|
}),
|
|
536
|
-
/* @__PURE__ */
|
|
543
|
+
/* @__PURE__ */ f("td", {
|
|
537
544
|
className: "px-5 py-3",
|
|
538
|
-
children: /* @__PURE__ */
|
|
545
|
+
children: /* @__PURE__ */ f("span", {
|
|
539
546
|
className: t("text-sm font-medium", n.color),
|
|
540
547
|
children: n.label
|
|
541
548
|
})
|
|
542
549
|
}),
|
|
543
|
-
/* @__PURE__ */
|
|
550
|
+
/* @__PURE__ */ f("td", {
|
|
544
551
|
className: "px-5 py-3 text-center",
|
|
545
|
-
children: /* @__PURE__ */
|
|
552
|
+
children: /* @__PURE__ */ f("button", {
|
|
546
553
|
type: "button",
|
|
547
|
-
onClick: () =>
|
|
554
|
+
onClick: () => Y(e.id, !e.isAvailable),
|
|
548
555
|
className: t("h-6 w-11 rounded-full transition-colors relative inline-block", e.isAvailable ? "bg-action-primary-bg" : "bg-muted-foreground/30"),
|
|
549
|
-
children: /* @__PURE__ */
|
|
556
|
+
children: /* @__PURE__ */ f("div", { className: t("absolute top-0.5 h-5 w-5 rounded-full bg-white transition-transform", e.isAvailable ? "translate-x-5" : "translate-x-0.5") })
|
|
550
557
|
})
|
|
551
558
|
}),
|
|
552
|
-
/* @__PURE__ */
|
|
559
|
+
/* @__PURE__ */ f("td", {
|
|
553
560
|
className: "px-5 py-3",
|
|
554
|
-
children: /* @__PURE__ */
|
|
561
|
+
children: /* @__PURE__ */ p("div", {
|
|
555
562
|
className: "flex items-center justify-end gap-1",
|
|
556
|
-
children: [/* @__PURE__ */
|
|
563
|
+
children: [/* @__PURE__ */ f("button", {
|
|
557
564
|
type: "button",
|
|
558
|
-
onClick: () =>
|
|
565
|
+
onClick: () => q(e),
|
|
559
566
|
className: "rounded p-1.5 text-text-secondary hover:bg-bg-sunken hover:text-text-primary transition-colors",
|
|
560
567
|
title: "Edit",
|
|
561
|
-
children: /* @__PURE__ */
|
|
562
|
-
}), /* @__PURE__ */
|
|
568
|
+
children: /* @__PURE__ */ f(se, { className: "h-4 w-4" })
|
|
569
|
+
}), /* @__PURE__ */ f("button", {
|
|
563
570
|
type: "button",
|
|
564
|
-
onClick: () =>
|
|
571
|
+
onClick: () => J(e.id),
|
|
565
572
|
className: "rounded p-1.5 text-text-secondary hover:bg-status-error-bg-subtle hover:text-status-error-text transition-colors",
|
|
566
573
|
title: "Delete",
|
|
567
|
-
children: /* @__PURE__ */
|
|
574
|
+
children: /* @__PURE__ */ f(ue, { className: "h-4 w-4" })
|
|
568
575
|
})]
|
|
569
576
|
})
|
|
570
577
|
})
|
|
@@ -573,69 +580,80 @@ var ge = [
|
|
|
573
580
|
}) })]
|
|
574
581
|
})
|
|
575
582
|
})
|
|
576
|
-
}), /* @__PURE__ */
|
|
583
|
+
}), /* @__PURE__ */ f("div", {
|
|
577
584
|
className: "lg:hidden space-y-3",
|
|
578
|
-
children:
|
|
579
|
-
let n =
|
|
580
|
-
return /* @__PURE__ */
|
|
585
|
+
children: W.map((e) => {
|
|
586
|
+
let n = Le(e);
|
|
587
|
+
return /* @__PURE__ */ f("div", {
|
|
581
588
|
className: "rounded-lg border border-border-subtle bg-bg-surface p-4 shadow-sm",
|
|
582
|
-
children: /* @__PURE__ */
|
|
589
|
+
children: /* @__PURE__ */ p("div", {
|
|
583
590
|
className: "flex items-start gap-3",
|
|
584
|
-
children: [/* @__PURE__ */
|
|
591
|
+
children: [e.image ? /* @__PURE__ */ f("img", {
|
|
592
|
+
src: e.image,
|
|
593
|
+
alt: "",
|
|
594
|
+
loading: "lazy",
|
|
595
|
+
className: "h-14 w-14 shrink-0 rounded-md object-cover"
|
|
596
|
+
}) : /* @__PURE__ */ f("div", {
|
|
585
597
|
className: "flex h-14 w-14 items-center justify-center rounded-md bg-bg-sunken shrink-0",
|
|
586
|
-
children: /* @__PURE__ */ u
|
|
587
|
-
}), /* @__PURE__ */
|
|
598
|
+
children: /* @__PURE__ */ f(u, { className: "h-6 w-6 text-text-secondary" })
|
|
599
|
+
}), /* @__PURE__ */ p("div", {
|
|
588
600
|
className: "flex-1 min-w-0",
|
|
589
601
|
children: [
|
|
590
|
-
/* @__PURE__ */
|
|
602
|
+
/* @__PURE__ */ p("div", {
|
|
591
603
|
className: "flex items-start justify-between mb-1",
|
|
592
|
-
children: [/* @__PURE__ */
|
|
604
|
+
children: [/* @__PURE__ */ p("div", {
|
|
593
605
|
className: "flex-1",
|
|
594
|
-
children: [/* @__PURE__ */
|
|
595
|
-
className: "
|
|
596
|
-
children:
|
|
597
|
-
|
|
606
|
+
children: [/* @__PURE__ */ p("div", {
|
|
607
|
+
className: "flex items-center gap-2",
|
|
608
|
+
children: [/* @__PURE__ */ f("h3", {
|
|
609
|
+
className: "text-sm font-medium text-text-primary line-clamp-1",
|
|
610
|
+
children: e.name
|
|
611
|
+
}), /* @__PURE__ */ f("span", {
|
|
612
|
+
className: "inline-flex shrink-0 rounded bg-status-info-bg-subtle px-1.5 py-0.5 text-[10px] font-medium text-status-info-text",
|
|
613
|
+
children: e.kind
|
|
614
|
+
})]
|
|
615
|
+
}), /* @__PURE__ */ f("p", {
|
|
598
616
|
className: "text-xs text-text-secondary mt-0.5 line-clamp-2",
|
|
599
617
|
children: e.description
|
|
600
618
|
})]
|
|
601
|
-
}), /* @__PURE__ */
|
|
619
|
+
}), /* @__PURE__ */ f("button", {
|
|
602
620
|
type: "button",
|
|
603
|
-
onClick: () =>
|
|
621
|
+
onClick: () => Y(e.id, !e.isAvailable),
|
|
604
622
|
className: t("h-5 w-9 rounded-full transition-colors relative ml-2 shrink-0", e.isAvailable ? "bg-action-primary-bg" : "bg-muted-foreground/30"),
|
|
605
|
-
children: /* @__PURE__ */
|
|
623
|
+
children: /* @__PURE__ */ f("div", { className: t("absolute top-0.5 h-4 w-4 rounded-full bg-white transition-transform", e.isAvailable ? "translate-x-4" : "translate-x-0.5") })
|
|
606
624
|
})]
|
|
607
625
|
}),
|
|
608
|
-
/* @__PURE__ */
|
|
626
|
+
/* @__PURE__ */ p("div", {
|
|
609
627
|
className: "flex flex-wrap items-center gap-2 mt-2 text-xs",
|
|
610
|
-
children: [/* @__PURE__ */
|
|
628
|
+
children: [/* @__PURE__ */ f("span", {
|
|
611
629
|
className: "px-2 py-0.5 rounded-full bg-bg-sunken text-text-secondary",
|
|
612
630
|
children: e.category
|
|
613
|
-
}), /* @__PURE__ */
|
|
631
|
+
}), /* @__PURE__ */ f("span", {
|
|
614
632
|
className: t("font-medium", n.color),
|
|
615
633
|
children: n.label
|
|
616
634
|
})]
|
|
617
635
|
}),
|
|
618
|
-
/* @__PURE__ */
|
|
636
|
+
/* @__PURE__ */ p("div", {
|
|
619
637
|
className: "flex items-center justify-between mt-3",
|
|
620
|
-
children: [/* @__PURE__ */
|
|
638
|
+
children: [/* @__PURE__ */ p("div", {
|
|
621
639
|
className: "flex items-center gap-2",
|
|
622
|
-
children: [/* @__PURE__ */
|
|
640
|
+
children: [/* @__PURE__ */ f("span", {
|
|
623
641
|
className: "font-semibold text-text-primary",
|
|
624
642
|
children: a(e.price, { minimumFractionDigits: 0 })
|
|
625
|
-
}), e.originalPrice && /* @__PURE__ */
|
|
643
|
+
}), e.originalPrice && /* @__PURE__ */ f("span", {
|
|
626
644
|
className: "text-xs text-text-secondary line-through",
|
|
627
645
|
children: a(e.originalPrice, { minimumFractionDigits: 0 })
|
|
628
646
|
})]
|
|
629
|
-
}), /* @__PURE__ */
|
|
647
|
+
}), /* @__PURE__ */ p("div", {
|
|
630
648
|
className: "flex gap-1",
|
|
631
|
-
children: [/* @__PURE__ */
|
|
649
|
+
children: [/* @__PURE__ */ f("button", {
|
|
632
650
|
type: "button",
|
|
633
|
-
onClick: () =>
|
|
651
|
+
onClick: () => q(e),
|
|
634
652
|
className: "rounded px-2 py-1 text-xs border border-border-subtle text-text-primary hover:bg-bg-sunken",
|
|
635
653
|
children: "Edit"
|
|
636
|
-
}), /* @__PURE__ */
|
|
654
|
+
}), /* @__PURE__ */ f("button", {
|
|
637
655
|
type: "button",
|
|
638
|
-
onClick: () =>
|
|
656
|
+
onClick: () => J(e.id),
|
|
639
657
|
className: "rounded px-2 py-1 text-xs border border-border-subtle text-status-error-text hover:bg-status-error-bg-subtle",
|
|
640
658
|
children: "Delete"
|
|
641
659
|
})]
|
|
@@ -649,75 +667,75 @@ var ge = [
|
|
|
649
667
|
})] })
|
|
650
668
|
]
|
|
651
669
|
}),
|
|
652
|
-
|
|
670
|
+
ke && /* @__PURE__ */ f("div", {
|
|
653
671
|
className: "fixed inset-0 z-50 flex items-center justify-center bg-black/50 p-4",
|
|
654
|
-
children: /* @__PURE__ */
|
|
672
|
+
children: /* @__PURE__ */ f("div", {
|
|
655
673
|
className: "w-full max-w-2xl max-h-[90vh] overflow-y-auto rounded-lg border border-border-subtle bg-bg-surface shadow-xl",
|
|
656
|
-
children: /* @__PURE__ */
|
|
674
|
+
children: /* @__PURE__ */ p("div", {
|
|
657
675
|
className: "p-6",
|
|
658
676
|
children: [
|
|
659
|
-
/* @__PURE__ */
|
|
677
|
+
/* @__PURE__ */ p("div", {
|
|
660
678
|
className: "flex items-center justify-between mb-4",
|
|
661
|
-
children: [/* @__PURE__ */
|
|
679
|
+
children: [/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("h3", {
|
|
662
680
|
className: "text-lg font-semibold text-text-primary",
|
|
663
|
-
children:
|
|
664
|
-
}),
|
|
681
|
+
children: M ? "Edit Item" : "Add New Item"
|
|
682
|
+
}), P.category && /* @__PURE__ */ p("p", {
|
|
665
683
|
className: "text-sm text-text-secondary mt-0.5",
|
|
666
684
|
children: [
|
|
667
685
|
"Type: ",
|
|
668
686
|
Z ? "Service" : "Product",
|
|
669
687
|
" | Category: ",
|
|
670
|
-
|
|
688
|
+
P.category
|
|
671
689
|
]
|
|
672
|
-
})] }), /* @__PURE__ */
|
|
690
|
+
})] }), /* @__PURE__ */ f("button", {
|
|
673
691
|
type: "button",
|
|
674
|
-
onClick: () =>
|
|
692
|
+
onClick: () => j(!1),
|
|
675
693
|
className: "rounded p-1.5 text-text-secondary hover:text-text-primary hover:bg-bg-sunken transition-colors",
|
|
676
|
-
children: /* @__PURE__ */
|
|
694
|
+
children: /* @__PURE__ */ f(fe, { className: "h-5 w-5" })
|
|
677
695
|
})]
|
|
678
696
|
}),
|
|
679
|
-
/* @__PURE__ */
|
|
697
|
+
/* @__PURE__ */ p("div", {
|
|
680
698
|
className: "space-y-4",
|
|
681
699
|
children: [
|
|
682
|
-
/* @__PURE__ */
|
|
700
|
+
/* @__PURE__ */ p("div", {
|
|
683
701
|
className: "grid grid-cols-1 sm:grid-cols-2 gap-4",
|
|
684
|
-
children: [/* @__PURE__ */
|
|
702
|
+
children: [/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
685
703
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
686
704
|
children: "Item Name *"
|
|
687
|
-
}), /* @__PURE__ */
|
|
705
|
+
}), /* @__PURE__ */ f("input", {
|
|
688
706
|
type: "text",
|
|
689
|
-
value:
|
|
690
|
-
onChange: (e) =>
|
|
707
|
+
value: P.name,
|
|
708
|
+
onChange: (e) => F((t) => ({
|
|
691
709
|
...t,
|
|
692
710
|
name: e.target.value
|
|
693
711
|
})),
|
|
694
712
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary",
|
|
695
713
|
placeholder: "Enter item name"
|
|
696
|
-
})] }), /* @__PURE__ */
|
|
714
|
+
})] }), /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
697
715
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
698
716
|
children: "Category *"
|
|
699
|
-
}), /* @__PURE__ */
|
|
700
|
-
value:
|
|
701
|
-
onChange: (e) =>
|
|
717
|
+
}), /* @__PURE__ */ p("select", {
|
|
718
|
+
value: P.category,
|
|
719
|
+
onChange: (e) => F((t) => ({
|
|
702
720
|
...t,
|
|
703
721
|
category: e.target.value
|
|
704
722
|
})),
|
|
705
723
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
706
|
-
children: [/* @__PURE__ */
|
|
724
|
+
children: [/* @__PURE__ */ f("option", {
|
|
707
725
|
value: "",
|
|
708
726
|
children: "Select category"
|
|
709
|
-
}), ye.map((e) => /* @__PURE__ */
|
|
727
|
+
}), ye.map((e) => /* @__PURE__ */ f("option", {
|
|
710
728
|
value: e,
|
|
711
729
|
children: e
|
|
712
730
|
}, e))]
|
|
713
731
|
})] })]
|
|
714
732
|
}),
|
|
715
|
-
/* @__PURE__ */
|
|
733
|
+
/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
716
734
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
717
735
|
children: "Description *"
|
|
718
|
-
}), /* @__PURE__ */
|
|
719
|
-
value:
|
|
720
|
-
onChange: (e) =>
|
|
736
|
+
}), /* @__PURE__ */ f("textarea", {
|
|
737
|
+
value: P.description,
|
|
738
|
+
onChange: (e) => F((t) => ({
|
|
721
739
|
...t,
|
|
722
740
|
description: e.target.value
|
|
723
741
|
})),
|
|
@@ -725,26 +743,26 @@ var ge = [
|
|
|
725
743
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary resize-none",
|
|
726
744
|
placeholder: "Describe the offering..."
|
|
727
745
|
})] }),
|
|
728
|
-
/* @__PURE__ */
|
|
746
|
+
/* @__PURE__ */ p("div", {
|
|
729
747
|
className: "grid grid-cols-1 sm:grid-cols-2 gap-4",
|
|
730
|
-
children: [/* @__PURE__ */
|
|
748
|
+
children: [/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
731
749
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
732
750
|
children: "Price *"
|
|
733
|
-
}), /* @__PURE__ */
|
|
751
|
+
}), /* @__PURE__ */ f("input", {
|
|
734
752
|
type: "number",
|
|
735
|
-
value:
|
|
736
|
-
onChange: (e) =>
|
|
753
|
+
value: P.price,
|
|
754
|
+
onChange: (e) => F((t) => ({
|
|
737
755
|
...t,
|
|
738
756
|
price: parseInt(e.target.value) || 0
|
|
739
757
|
})),
|
|
740
758
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary"
|
|
741
|
-
})] }), /* @__PURE__ */
|
|
759
|
+
})] }), /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
742
760
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
743
761
|
children: "Original Price"
|
|
744
|
-
}), /* @__PURE__ */
|
|
762
|
+
}), /* @__PURE__ */ f("input", {
|
|
745
763
|
type: "number",
|
|
746
|
-
value:
|
|
747
|
-
onChange: (e) =>
|
|
764
|
+
value: P.originalPrice ?? "",
|
|
765
|
+
onChange: (e) => F((t) => ({
|
|
748
766
|
...t,
|
|
749
767
|
originalPrice: e.target.value ? parseInt(e.target.value) : void 0
|
|
750
768
|
})),
|
|
@@ -752,40 +770,40 @@ var ge = [
|
|
|
752
770
|
placeholder: "Optional"
|
|
753
771
|
})] })]
|
|
754
772
|
}),
|
|
755
|
-
!Z && /* @__PURE__ */
|
|
773
|
+
!Z && /* @__PURE__ */ p("div", {
|
|
756
774
|
className: "grid grid-cols-1 sm:grid-cols-3 gap-4",
|
|
757
775
|
children: [
|
|
758
|
-
/* @__PURE__ */
|
|
776
|
+
/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
759
777
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
760
778
|
children: "Stock Quantity *"
|
|
761
|
-
}), /* @__PURE__ */
|
|
779
|
+
}), /* @__PURE__ */ f("input", {
|
|
762
780
|
type: "number",
|
|
763
|
-
value:
|
|
764
|
-
onChange: (e) =>
|
|
781
|
+
value: P.stock,
|
|
782
|
+
onChange: (e) => F((t) => ({
|
|
765
783
|
...t,
|
|
766
784
|
stock: parseInt(e.target.value) || 0
|
|
767
785
|
})),
|
|
768
786
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary"
|
|
769
787
|
})] }),
|
|
770
|
-
/* @__PURE__ */
|
|
788
|
+
/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
771
789
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
772
790
|
children: "Preparation Time (min)"
|
|
773
|
-
}), /* @__PURE__ */
|
|
791
|
+
}), /* @__PURE__ */ f("input", {
|
|
774
792
|
type: "number",
|
|
775
|
-
value:
|
|
776
|
-
onChange: (e) =>
|
|
793
|
+
value: P.preparationTime,
|
|
794
|
+
onChange: (e) => F((t) => ({
|
|
777
795
|
...t,
|
|
778
796
|
preparationTime: parseInt(e.target.value) || 0
|
|
779
797
|
})),
|
|
780
798
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary"
|
|
781
799
|
})] }),
|
|
782
|
-
Q && /* @__PURE__ */
|
|
800
|
+
Q && /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
783
801
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
784
802
|
children: "Calories"
|
|
785
|
-
}), /* @__PURE__ */
|
|
803
|
+
}), /* @__PURE__ */ f("input", {
|
|
786
804
|
type: "number",
|
|
787
|
-
value:
|
|
788
|
-
onChange: (e) =>
|
|
805
|
+
value: P.calories,
|
|
806
|
+
onChange: (e) => F((t) => ({
|
|
789
807
|
...t,
|
|
790
808
|
calories: parseInt(e.target.value) || 0
|
|
791
809
|
})),
|
|
@@ -793,81 +811,81 @@ var ge = [
|
|
|
793
811
|
})] })
|
|
794
812
|
]
|
|
795
813
|
}),
|
|
796
|
-
Z && /* @__PURE__ */
|
|
814
|
+
Z && /* @__PURE__ */ p("div", {
|
|
797
815
|
className: "grid grid-cols-1 sm:grid-cols-2 gap-4",
|
|
798
|
-
children: [/* @__PURE__ */
|
|
816
|
+
children: [/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
799
817
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
800
818
|
children: "Service Duration (min) *"
|
|
801
|
-
}), /* @__PURE__ */
|
|
819
|
+
}), /* @__PURE__ */ f("input", {
|
|
802
820
|
type: "number",
|
|
803
|
-
value:
|
|
804
|
-
onChange: (e) =>
|
|
821
|
+
value: P.duration,
|
|
822
|
+
onChange: (e) => F((t) => ({
|
|
805
823
|
...t,
|
|
806
824
|
duration: parseInt(e.target.value) || 30
|
|
807
825
|
})),
|
|
808
826
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary"
|
|
809
|
-
})] }), /* @__PURE__ */
|
|
827
|
+
})] }), /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
810
828
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
811
829
|
children: "Setup Time (min)"
|
|
812
|
-
}), /* @__PURE__ */
|
|
830
|
+
}), /* @__PURE__ */ f("input", {
|
|
813
831
|
type: "number",
|
|
814
|
-
value:
|
|
815
|
-
onChange: (e) =>
|
|
832
|
+
value: P.preparationTime,
|
|
833
|
+
onChange: (e) => F((t) => ({
|
|
816
834
|
...t,
|
|
817
835
|
preparationTime: parseInt(e.target.value) || 0
|
|
818
836
|
})),
|
|
819
837
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary"
|
|
820
838
|
})] })]
|
|
821
839
|
}),
|
|
822
|
-
Q && /* @__PURE__ */
|
|
840
|
+
Q && /* @__PURE__ */ p("div", {
|
|
823
841
|
className: "grid grid-cols-1 sm:grid-cols-2 gap-4",
|
|
824
|
-
children: [/* @__PURE__ */
|
|
842
|
+
children: [/* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
825
843
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
826
844
|
children: "Spice Level"
|
|
827
|
-
}), /* @__PURE__ */
|
|
828
|
-
value:
|
|
829
|
-
onChange: (e) =>
|
|
845
|
+
}), /* @__PURE__ */ p("select", {
|
|
846
|
+
value: P.spiceLevel,
|
|
847
|
+
onChange: (e) => F((t) => ({
|
|
830
848
|
...t,
|
|
831
849
|
spiceLevel: e.target.value
|
|
832
850
|
})),
|
|
833
851
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
834
852
|
children: [
|
|
835
|
-
/* @__PURE__ */
|
|
853
|
+
/* @__PURE__ */ f("option", {
|
|
836
854
|
value: "none",
|
|
837
855
|
children: "None"
|
|
838
856
|
}),
|
|
839
|
-
/* @__PURE__ */
|
|
857
|
+
/* @__PURE__ */ f("option", {
|
|
840
858
|
value: "mild",
|
|
841
859
|
children: "Mild"
|
|
842
860
|
}),
|
|
843
|
-
/* @__PURE__ */
|
|
861
|
+
/* @__PURE__ */ f("option", {
|
|
844
862
|
value: "medium",
|
|
845
863
|
children: "Medium"
|
|
846
864
|
}),
|
|
847
|
-
/* @__PURE__ */
|
|
865
|
+
/* @__PURE__ */ f("option", {
|
|
848
866
|
value: "spicy",
|
|
849
867
|
children: "Spicy"
|
|
850
868
|
}),
|
|
851
|
-
/* @__PURE__ */
|
|
869
|
+
/* @__PURE__ */ f("option", {
|
|
852
870
|
value: "very-spicy",
|
|
853
871
|
children: "Very Spicy"
|
|
854
872
|
})
|
|
855
873
|
]
|
|
856
|
-
})] }), /* @__PURE__ */
|
|
874
|
+
})] }), /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
857
875
|
className: "block text-sm font-medium text-text-primary mb-2",
|
|
858
876
|
children: "Dietary Options"
|
|
859
|
-
}), /* @__PURE__ */
|
|
877
|
+
}), /* @__PURE__ */ f("div", {
|
|
860
878
|
className: "space-y-2",
|
|
861
879
|
children: [
|
|
862
880
|
"isVegetarian",
|
|
863
881
|
"isVegan",
|
|
864
882
|
"isGlutenFree"
|
|
865
|
-
].map((e) => /* @__PURE__ */
|
|
883
|
+
].map((e) => /* @__PURE__ */ p("label", {
|
|
866
884
|
className: "flex items-center gap-2 text-sm text-text-primary",
|
|
867
|
-
children: [/* @__PURE__ */
|
|
885
|
+
children: [/* @__PURE__ */ f("input", {
|
|
868
886
|
type: "checkbox",
|
|
869
|
-
checked:
|
|
870
|
-
onChange: (t) =>
|
|
887
|
+
checked: P[e],
|
|
888
|
+
onChange: (t) => F((n) => ({
|
|
871
889
|
...n,
|
|
872
890
|
[e]: t.target.checked
|
|
873
891
|
})),
|
|
@@ -876,91 +894,91 @@ var ge = [
|
|
|
876
894
|
}, e))
|
|
877
895
|
})] })]
|
|
878
896
|
}),
|
|
879
|
-
Z && /* @__PURE__ */
|
|
897
|
+
Z && /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
880
898
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
881
899
|
children: "Service Type *"
|
|
882
|
-
}), /* @__PURE__ */
|
|
883
|
-
value:
|
|
884
|
-
onChange: (e) =>
|
|
900
|
+
}), /* @__PURE__ */ p("select", {
|
|
901
|
+
value: P.serviceType,
|
|
902
|
+
onChange: (e) => F((t) => ({
|
|
885
903
|
...t,
|
|
886
904
|
serviceType: e.target.value
|
|
887
905
|
})),
|
|
888
906
|
className: "w-full sm:w-64 rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary",
|
|
889
907
|
children: [
|
|
890
|
-
/* @__PURE__ */
|
|
908
|
+
/* @__PURE__ */ f("option", {
|
|
891
909
|
value: "instant",
|
|
892
910
|
children: "Instant Service"
|
|
893
911
|
}),
|
|
894
|
-
/* @__PURE__ */
|
|
912
|
+
/* @__PURE__ */ f("option", {
|
|
895
913
|
value: "appointment",
|
|
896
914
|
children: "Appointment Based"
|
|
897
915
|
}),
|
|
898
|
-
/* @__PURE__ */
|
|
916
|
+
/* @__PURE__ */ f("option", {
|
|
899
917
|
value: "recurring",
|
|
900
918
|
children: "Recurring Service"
|
|
901
919
|
}),
|
|
902
|
-
/* @__PURE__ */
|
|
920
|
+
/* @__PURE__ */ f("option", {
|
|
903
921
|
value: "consultation",
|
|
904
922
|
children: "Consultation"
|
|
905
923
|
})
|
|
906
924
|
]
|
|
907
925
|
})] }),
|
|
908
|
-
/* @__PURE__ */
|
|
909
|
-
/* @__PURE__ */
|
|
926
|
+
/* @__PURE__ */ p("div", { children: [
|
|
927
|
+
/* @__PURE__ */ f("label", {
|
|
910
928
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
911
929
|
children: "Tags (comma separated)"
|
|
912
930
|
}),
|
|
913
|
-
/* @__PURE__ */
|
|
931
|
+
/* @__PURE__ */ f("input", {
|
|
914
932
|
type: "text",
|
|
915
|
-
value:
|
|
916
|
-
onChange: (e) =>
|
|
933
|
+
value: I,
|
|
934
|
+
onChange: (e) => L(e.target.value),
|
|
917
935
|
placeholder: Z ? "professional, certified, quick" : "popular, spicy, traditional",
|
|
918
936
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary"
|
|
919
937
|
}),
|
|
920
|
-
/* @__PURE__ */
|
|
938
|
+
/* @__PURE__ */ p("p", {
|
|
921
939
|
className: "text-xs text-text-secondary mt-1",
|
|
922
940
|
children: [
|
|
923
|
-
|
|
941
|
+
I.split(",").map((e) => e.trim()).filter(Boolean).length,
|
|
924
942
|
" ",
|
|
925
943
|
"tags"
|
|
926
944
|
]
|
|
927
945
|
})
|
|
928
946
|
] }),
|
|
929
|
-
Q && /* @__PURE__ */
|
|
947
|
+
Q && /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
930
948
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
931
949
|
children: "Allergens (comma separated)"
|
|
932
|
-
}), /* @__PURE__ */
|
|
950
|
+
}), /* @__PURE__ */ f("input", {
|
|
933
951
|
type: "text",
|
|
934
|
-
value:
|
|
935
|
-
onChange: (e) =>
|
|
952
|
+
value: R,
|
|
953
|
+
onChange: (e) => z(e.target.value),
|
|
936
954
|
placeholder: "nuts, dairy, gluten, soy",
|
|
937
955
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary"
|
|
938
956
|
})] }),
|
|
939
|
-
Z && /* @__PURE__ */
|
|
957
|
+
Z && /* @__PURE__ */ p("div", { children: [/* @__PURE__ */ f("label", {
|
|
940
958
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
941
959
|
children: "Service Requirements (comma separated)"
|
|
942
|
-
}), /* @__PURE__ */
|
|
960
|
+
}), /* @__PURE__ */ f("input", {
|
|
943
961
|
type: "text",
|
|
944
|
-
value:
|
|
945
|
-
onChange: (e) =>
|
|
962
|
+
value: B,
|
|
963
|
+
onChange: (e) => V(e.target.value),
|
|
946
964
|
placeholder: "advance booking, payment required, tools provided",
|
|
947
965
|
className: "w-full rounded-md border border-border-subtle bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-secondary"
|
|
948
966
|
})] })
|
|
949
967
|
]
|
|
950
968
|
}),
|
|
951
|
-
/* @__PURE__ */
|
|
969
|
+
/* @__PURE__ */ p("div", {
|
|
952
970
|
className: "flex gap-3 mt-6",
|
|
953
|
-
children: [/* @__PURE__ */
|
|
971
|
+
children: [/* @__PURE__ */ f("button", {
|
|
954
972
|
type: "button",
|
|
955
|
-
onClick: () =>
|
|
973
|
+
onClick: () => j(!1),
|
|
956
974
|
className: "flex-1 rounded-md border border-border-subtle px-4 py-2 text-sm font-medium text-text-primary hover:bg-bg-sunken transition-colors",
|
|
957
975
|
children: "Cancel"
|
|
958
|
-
}), /* @__PURE__ */
|
|
976
|
+
}), /* @__PURE__ */ f("button", {
|
|
959
977
|
type: "button",
|
|
960
|
-
onClick:
|
|
978
|
+
onClick: Fe,
|
|
961
979
|
disabled: !$,
|
|
962
980
|
className: t("flex-1 rounded-md px-4 py-2 text-sm font-medium transition-colors", $ ? "bg-accent text-text-primary hover:bg-accent/80" : "bg-bg-sunken text-text-secondary cursor-not-allowed"),
|
|
963
|
-
children:
|
|
981
|
+
children: M ? "Update Item" : "Add Item"
|
|
964
982
|
})]
|
|
965
983
|
})
|
|
966
984
|
]
|
|
@@ -971,6 +989,6 @@ var ge = [
|
|
|
971
989
|
});
|
|
972
990
|
};
|
|
973
991
|
//#endregion
|
|
974
|
-
export {
|
|
992
|
+
export { g as InventoryManagementPage };
|
|
975
993
|
|
|
976
994
|
//# sourceMappingURL=InventoryManagementPage.js.map
|