feat(product): implement sprint 9 product engagement module
This commit is contained in:
@@ -8,6 +8,7 @@ import { LocalizationConfig } from './localization.model';
|
||||
import { NavigationConfig } from './navigation.model';
|
||||
import { PageConfig } from './page.model';
|
||||
import { PermissionsConfig } from './permissions.model';
|
||||
import { ProductPageConfig } from './product-page-config.model';
|
||||
import { SeoConfig } from './seo.model';
|
||||
import { StaticPagesConfig } from './static-page.model';
|
||||
import { TenantConfig } from './tenant.model';
|
||||
@@ -29,6 +30,7 @@ export interface BootstrapConfig {
|
||||
layout?: PlatformLayoutConfig;
|
||||
navigation: NavigationConfig;
|
||||
footer?: FooterConfig;
|
||||
productPage?: ProductPageConfig;
|
||||
pages: PageConfig[];
|
||||
staticPages?: StaticPagesConfig;
|
||||
widgetRegistry?: WidgetRegistryConfig;
|
||||
|
||||
@@ -9,6 +9,7 @@ export * from './localization.model';
|
||||
export * from './navigation.model';
|
||||
export * from './page.model';
|
||||
export * from './permissions.model';
|
||||
export * from './product-page-config.model';
|
||||
export * from './section.model';
|
||||
export * from './seo.model';
|
||||
export * from './static-page.model';
|
||||
|
||||
50
src/app/shared/models/config/product-page-config.model.ts
Normal file
50
src/app/shared/models/config/product-page-config.model.ts
Normal file
@@ -0,0 +1,50 @@
|
||||
export interface ProductSectionConfig {
|
||||
enabled?: boolean;
|
||||
}
|
||||
|
||||
export interface ProductRatingConfig extends ProductSectionConfig {}
|
||||
|
||||
export interface ProductReviewsConfig extends ProductSectionConfig {
|
||||
pageSize?: number;
|
||||
showSummary?: boolean;
|
||||
}
|
||||
|
||||
export interface ProductQuestionsConfig extends ProductSectionConfig {
|
||||
pageSize?: number;
|
||||
}
|
||||
|
||||
export interface ProductTabsConfig extends ProductSectionConfig {
|
||||
items?: Array<'description' | 'specifications' | 'reviews' | 'questions' | 'delivery' | 'warranty'>;
|
||||
}
|
||||
|
||||
export interface ProductRelatedConfig extends ProductSectionConfig {}
|
||||
|
||||
export interface ProductPageConfig {
|
||||
rating?: ProductRatingConfig;
|
||||
reviews?: ProductReviewsConfig;
|
||||
questions?: ProductQuestionsConfig;
|
||||
tabs?: ProductTabsConfig;
|
||||
relatedProducts?: ProductRelatedConfig;
|
||||
}
|
||||
|
||||
export const DEFAULT_PRODUCT_PAGE_CONFIG: Required<ProductPageConfig> = {
|
||||
rating: {
|
||||
enabled: true
|
||||
},
|
||||
reviews: {
|
||||
enabled: true,
|
||||
pageSize: 5,
|
||||
showSummary: true
|
||||
},
|
||||
questions: {
|
||||
enabled: true,
|
||||
pageSize: 5
|
||||
},
|
||||
tabs: {
|
||||
enabled: true,
|
||||
items: ['description', 'specifications', 'reviews', 'questions', 'delivery', 'warranty']
|
||||
},
|
||||
relatedProducts: {
|
||||
enabled: true
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user