Commit Graph

14 Commits

Author SHA1 Message Date
Ruslan Bakiev
03485b77a5 Refactor: use topnav layout + CatalogPage component
All checks were successful
Build Docker Image / build (push) Successful in 4m11s
- Remove catalog.vue layout and useCatalogLayout.ts (broken provide/inject)
- All catalog/clientarea list pages now use topnav layout
- Pages use CatalogPage component for SearchBar + Map functionality
- Clean architecture: layout handles nav, component handles features
2026-01-15 11:18:57 +07:00
Ruslan Bakiev
7ea96a97b3 Refactor catalog layout: replace Teleport with provide/inject
All checks were successful
Build Docker Image / build (push) Successful in 4m1s
- Create useCatalogLayout composable for data transfer from pages to layout
- Layout now owns SearchBar and CatalogMap components directly
- Pages provide data via provideCatalogLayout()
- Fixes navigation glitches (multiple SearchBars) when switching tabs
- Support custom subNavItems for clientarea pages
- Unify 6 pages to use catalog layout:
  - catalog/offers, suppliers, hubs
  - clientarea/orders, addresses, offers
2026-01-15 10:49:40 +07:00
Ruslan Bakiev
c10c085b70 feat: new catalog layout with all fixed layers
All checks were successful
Build Docker Image / build (push) Successful in 4m38s
- Add catalog.vue layout with all layers position:fixed
- Layer 1: MainNavigation (fixed top-0, bg-base-200)
- Layer 2: SubNavigation (fixed top-16, bg-base-200)
- Layer 3: SearchBar (fixed, bg-base-100)
- Layer 4: Map (fixed, right side, to bottom)
- Update hubs page to use new layout with Teleport
- Collapsible header on scroll
2026-01-14 21:48:09 +07:00
Ruslan Bakiev
479412d901 Hide duplicate counter in pagination when search bar is present
All checks were successful
Build Docker Image / build (push) Successful in 5m27s
Add hideCounter prop to PaginationLoadMore and use it on hubs page
2026-01-14 12:57:58 +07:00
Ruslan Bakiev
134b8a5eb4 Add CatalogSearchBar component with filter badges
All checks were successful
Build Docker Image / build (push) Successful in 5m8s
- Create CatalogSearchBar.vue with search input, filter badges (× to remove), filter dropdown, counter, sort dropdown
- Integrate searchBar slot into CatalogPage with displayedCount and totalCount
- Update hubs page to use CatalogSearchBar with transport type and country filters
- Add translations for search bar in common.json
- Add transport/country filter labels in catalogHubsSection.json
2026-01-14 12:31:38 +07:00
Ruslan Bakiev
46f8e97ee9 feat: add server-side clustering to CatalogPage for hubs
All checks were successful
Build Docker Image / build (push) Successful in 5m8s
2026-01-14 11:16:26 +07:00
Ruslan Bakiev
8d1b7c6dc7 Unify CatalogPage: fixed map, hover support, delete ListMapLayout
All checks were successful
Build Docker Image / build (push) Successful in 4m31s
2026-01-08 11:15:54 +07:00
Ruslan Bakiev
d6865d2129 UI improvements: filters, map layout, search bar
Some checks failed
Build Docker Image / build (push) Failing after 1m29s
- Add hubCountries query and country filter for hubs page
- Add getAvailableProducts query for offers (only products with active offers)
- Add sourceLatitude/sourceLongitude to orders GraphQL
- Fix ListMapLayout with position fixed for proper map height
- GlobalSearchBar: make fields wider, remove unit selector
- Remove status/isVerified filters from suppliers/offers (backend handles this)
2026-01-08 10:42:59 +07:00
Ruslan Bakiev
0c88cf383c Refactor catalog filters: remove badges, use select dropdowns
All checks were successful
Build Docker Image / build (push) Successful in 4m21s
- Remove filter from suppliers page (not needed)
- Offers: show all active offers directly, add product type filter as select
- Hubs: change filter from pills to select dropdown
- Create CatalogFilterSelect component for dropdown filters
- Update useCatalogOffers to always filter active, use product filter
2026-01-08 10:08:05 +07:00
Ruslan Bakiev
b8de322dd2 Unify layouts and create CatalogPage component
All checks were successful
Build Docker Image / build (push) Successful in 3m45s
- MainNavigation: center tabs on page (absolute positioning)
- SubNavigation: align left instead of center
- Create CatalogPage universal component for list+map pages
- Migrate catalog pages (offers, suppliers, hubs) to CatalogPage
- Remove PageHeader from clientarea pages (redundant with navigation)
- Add topnav layout to supplier detail page

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 09:38:53 +07:00
Ruslan Bakiev
f34c484561 Fix navigation layout and search behavior
All checks were successful
Build Docker Image / build (push) Successful in 3m40s
- Reorder topnav components: search bar before submenu
- GlobalSearchBar: use page navigation instead of dropdowns
- Remove icons from MainNavigation and SubNavigation
- Create ListMapLayout universal component for list+map pages
- Migrate catalog pages (offers, suppliers, hubs) to ListMapLayout
2026-01-08 09:16:56 +07:00
Ruslan Bakiev
1a2693bcd6 feat(ui): redesign GlobalSearchBar, split layouts, and remove hero section
All checks were successful
Build Docker Image / build (push) Successful in 5m25s
- Make GlobalSearchBar functional with searchStore integration
- Add destination search using hubs/nodes GraphQL query
- Navigate to /request page instead of /catalog/offers
- Remove hero section from index.vue (search is now in header)
- Add padding (px-3 lg:px-6) to topnav layout
- Implement split layout for catalog pages (offers, hubs, suppliers)
  - Left side: filters + scrollable card list (40%)
  - Right side: map (60%, hidden on mobile)
2026-01-08 08:13:22 +07:00
Ruslan Bakiev
5d1ce88927 Migrate pages to topnav layout
Some checks failed
Build Docker Image / build (push) Failing after 1m20s
2026-01-08 01:08:25 +07:00
Ruslan Bakiev
3db50d9637 Initial commit from monorepo 2026-01-07 09:10:35 +07:00