UNPKG

@spartacus/storefront

Version:

Spartacus Storefront is a package that you can include in your application, which allows you to add default storefront features.

50 lines (49 loc) 2.56 kB
import { CmsService, Page } from '@spartacus/core'; import { Observable } from 'rxjs'; import { BreakpointService } from '../../../layout/breakpoint/breakpoint.service'; import { BREAKPOINT, LayoutConfig, LayoutSlotConfig, SlotConfig } from '../../../layout/config/layout-config'; import { PageLayoutHandler } from './page-layout-handler'; import * as i0 from "@angular/core"; export declare class PageLayoutService { private cms; private config; private breakpointService; private handlers; constructor(cms: CmsService, config: LayoutConfig, breakpointService: BreakpointService, handlers: PageLayoutHandler[]); private warnLogMessages; private logSlots; getSlots(section?: string): Observable<string[]>; /** * Returns an observable with the last page slot above-the-fold * for the given pageTemplate / breakpoint. * * The page fold is configurable in the `LayoutConfig` for each page layout. */ getPageFoldSlot(pageTemplate: string): Observable<string>; private resolveSlots; get page$(): Observable<Page>; get templateName$(): Observable<string>; /** * load slots from the layout configuration. The breakpoint is used * to load a specific configuration for the given breakpoint. If there's * no configuration available for the given breakpoint the default slot * configuration is returned. */ protected getSlotConfig(templateUid: string, configAttribute: string, section?: string, breakpoint?: BREAKPOINT): SlotConfig; protected getSlotConfigForSection(templateUid: string, configAttribute: string, section?: string, breakpoint?: BREAKPOINT): SlotConfig; /** * Returns a list of slots for a breakpoint specific configuration * If there's no specific configuration for the breakpoint, * the closest available configuration will be returned. */ protected getResponsiveSlotConfig(layoutSlotConfig: LayoutSlotConfig, configAttribute: string, breakpoint?: BREAKPOINT): SlotConfig; /** * In order to help developers, we print some detailed log information in * case there's no layout configuration available for the given page template * or section. Additionally, the slot positions are printed in the console * in a format that can be copied / paste to the configuration. */ private logMissingLayoutConfig; static ɵfac: i0.ɵɵFactoryDeclaration<PageLayoutService, [null, null, null, { optional: true; }]>; static ɵprov: i0.ɵɵInjectableDeclaration<PageLayoutService>; }