feat(catalog): implement sprint 10 advanced search experience
Some checks failed
Architecture Governance / architecture (push) Has been cancelled
Some checks failed
Architecture Governance / architecture (push) Has been cancelled
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { ApiEndpointsConfig } from './api-endpoints.model';
|
||||
import { BrandingConfig } from './branding.model';
|
||||
import { CatalogConfig } from './catalog-config.model';
|
||||
import { CompanyConfig } from './company.model';
|
||||
import { FeatureFlagsConfig } from './feature-flags.model';
|
||||
import { FooterConfig } from './footer-config.model';
|
||||
@@ -27,6 +28,7 @@ export interface BootstrapConfig {
|
||||
localization: LocalizationConfig;
|
||||
seo: SeoConfig;
|
||||
permissions: PermissionsConfig;
|
||||
catalog?: CatalogConfig;
|
||||
layout?: PlatformLayoutConfig;
|
||||
navigation: NavigationConfig;
|
||||
footer?: FooterConfig;
|
||||
|
||||
34
src/app/shared/models/config/catalog-config.model.ts
Normal file
34
src/app/shared/models/config/catalog-config.model.ts
Normal file
@@ -0,0 +1,34 @@
|
||||
export type CatalogLayoutModeConfig = 'grid' | 'large-grid' | 'compact-grid' | 'list';
|
||||
export type CatalogNavigationModeConfig = 'default' | 'left-category-navigation' | 'mega-category-layout' | 'top-category-carousel';
|
||||
|
||||
export interface CatalogConfig {
|
||||
layout?: CatalogLayoutModeConfig;
|
||||
navigationMode?: CatalogNavigationModeConfig;
|
||||
defaultSort?: 'relevance' | 'latest' | 'price_asc' | 'price_desc' | 'rating' | 'popular' | 'discount';
|
||||
availableSorts?: Array<'relevance' | 'latest' | 'price_asc' | 'price_desc' | 'rating' | 'popular' | 'discount'>;
|
||||
enabledFilters?: string[];
|
||||
showBreadcrumbs?: boolean;
|
||||
showCategoryBanner?: boolean;
|
||||
showSubcategoryChips?: boolean;
|
||||
showRatings?: boolean;
|
||||
showDiscounts?: boolean;
|
||||
showAvailability?: boolean;
|
||||
suggestionsEnabled?: boolean;
|
||||
searchHistoryEnabled?: boolean;
|
||||
}
|
||||
|
||||
export const DEFAULT_CATALOG_CONFIG: Required<CatalogConfig> = {
|
||||
layout: 'grid',
|
||||
navigationMode: 'default',
|
||||
defaultSort: 'relevance',
|
||||
availableSorts: ['relevance', 'latest', 'price_asc', 'price_desc', 'rating', 'popular', 'discount'],
|
||||
enabledFilters: ['price', 'availability', 'rating', 'brand', 'category', 'subcategory', 'discount', 'new', 'color', 'size', 'attributes'],
|
||||
showBreadcrumbs: true,
|
||||
showCategoryBanner: true,
|
||||
showSubcategoryChips: true,
|
||||
showRatings: true,
|
||||
showDiscounts: true,
|
||||
showAvailability: true,
|
||||
suggestionsEnabled: true,
|
||||
searchHistoryEnabled: true
|
||||
};
|
||||
@@ -1,6 +1,7 @@
|
||||
export * from './api-endpoints.model';
|
||||
export * from './bootstrap-config.model';
|
||||
export * from './branding.model';
|
||||
export * from './catalog-config.model';
|
||||
export * from './company.model';
|
||||
export * from './feature-flags.model';
|
||||
export * from './footer-config.model';
|
||||
|
||||
Reference in New Issue
Block a user