UNPKG

@spartacus/core

Version:

Spartacus - the core framework

35 lines 5.96 kB
import { Injectable } from '@angular/core'; import { pluck } from 'rxjs/operators'; import { CMS_COMPONENT_NORMALIZER } from '../../../cms/connectors/component/converters'; import { OccCmsComponentAdapter } from './occ-cms-component.adapter'; import * as i0 from "@angular/core"; /** * Before 1905, the OCC CMS component API required was using POST method * to load a (potentially large) number of components. With 1905, the endpoint * evaluated to use GET. Switching from POST to GET has been initially implemented * with the `legacy` flag, but from version 3.0 onwards, we're moving the * implementation to this optional Adapter. * * If you like to connect to a pre 1905 version, you can provide this adapter for the * `CmsComponentAdapter` injection token. */ export class LegacyOccCmsComponentAdapter extends OccCmsComponentAdapter { findComponentsByIds(ids, pageContext, fields = 'DEFAULT', currentPage = 0, pageSize = ids.length, sort) { const idList = { idList: ids }; const requestParams = Object.assign(Object.assign({}, this.getContextParams(pageContext)), this.getPaginationParams(currentPage, pageSize, sort)); return this.http .post(this.getComponentsEndpoint(requestParams, fields), idList, { headers: this.headers, }) .pipe(pluck('component'), this.converter.pipeableMany(CMS_COMPONENT_NORMALIZER)); } } LegacyOccCmsComponentAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: LegacyOccCmsComponentAdapter, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); LegacyOccCmsComponentAdapter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: LegacyOccCmsComponentAdapter, providedIn: 'root' }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: LegacyOccCmsComponentAdapter, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LW9jYy1jbXMtY29tcG9uZW50LmFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9vY2MvYWRhcHRlcnMvY21zL2xlZ2FjeS1vY2MtY21zLWNvbXBvbmVudC5hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBSXhGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUVyRTs7Ozs7Ozs7O0dBU0c7QUFJSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsc0JBQXNCO0lBQ3RFLG1CQUFtQixDQUNqQixHQUFhLEVBQ2IsV0FBd0IsRUFDeEIsTUFBTSxHQUFHLFNBQVMsRUFDbEIsV0FBVyxHQUFHLENBQUMsRUFDZixRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sRUFDckIsSUFBYTtRQUViLE1BQU0sTUFBTSxHQUF3QixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUVwRCxNQUFNLGFBQWEsbUNBQ2QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxHQUNsQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FDekQsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLElBQUk7YUFDYixJQUFJLENBQ0gsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsRUFDakQsTUFBTSxFQUNOO1lBQ0UsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3RCLENBQ0Y7YUFDQSxJQUFJLENBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyx3QkFBd0IsQ0FBQyxDQUN0RCxDQUFDO0lBQ04sQ0FBQzs7eUhBNUJVLDRCQUE0Qjs2SEFBNUIsNEJBQTRCLGNBRjNCLE1BQU07MkZBRVAsNEJBQTRCO2tCQUh4QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHBsdWNrIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ01TX0NPTVBPTkVOVF9OT1JNQUxJWkVSIH0gZnJvbSAnLi4vLi4vLi4vY21zL2Nvbm5lY3RvcnMvY29tcG9uZW50L2NvbnZlcnRlcnMnO1xuaW1wb3J0IHsgQ21zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvY21zLm1vZGVsJztcbmltcG9ydCB7IFBhZ2VDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vcm91dGluZyc7XG5pbXBvcnQgeyBPY2MgfSBmcm9tICcuLi8uLi9vY2MtbW9kZWxzL29jYy5tb2RlbHMnO1xuaW1wb3J0IHsgT2NjQ21zQ29tcG9uZW50QWRhcHRlciB9IGZyb20gJy4vb2NjLWNtcy1jb21wb25lbnQuYWRhcHRlcic7XG5cbi8qKlxuICogQmVmb3JlIDE5MDUsIHRoZSBPQ0MgQ01TIGNvbXBvbmVudCBBUEkgcmVxdWlyZWQgd2FzIHVzaW5nIFBPU1QgbWV0aG9kXG4gKiB0byBsb2FkIGEgKHBvdGVudGlhbGx5IGxhcmdlKSBudW1iZXIgb2YgY29tcG9uZW50cy4gV2l0aCAxOTA1LCB0aGUgZW5kcG9pbnRcbiAqIGV2YWx1YXRlZCB0byB1c2UgR0VULiBTd2l0Y2hpbmcgZnJvbSBQT1NUIHRvIEdFVCBoYXMgYmVlbiBpbml0aWFsbHkgaW1wbGVtZW50ZWRcbiAqIHdpdGggdGhlIGBsZWdhY3lgIGZsYWcsIGJ1dCBmcm9tIHZlcnNpb24gMy4wIG9ud2FyZHMsIHdlJ3JlIG1vdmluZyB0aGVcbiAqIGltcGxlbWVudGF0aW9uIHRvIHRoaXMgb3B0aW9uYWwgQWRhcHRlci5cbiAqXG4gKiBJZiB5b3UgbGlrZSB0byBjb25uZWN0IHRvIGEgcHJlIDE5MDUgdmVyc2lvbiwgeW91IGNhbiBwcm92aWRlIHRoaXMgYWRhcHRlciBmb3IgdGhlXG4gKiBgQ21zQ29tcG9uZW50QWRhcHRlcmAgaW5qZWN0aW9uIHRva2VuLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTGVnYWN5T2NjQ21zQ29tcG9uZW50QWRhcHRlciBleHRlbmRzIE9jY0Ntc0NvbXBvbmVudEFkYXB0ZXIge1xuICBmaW5kQ29tcG9uZW50c0J5SWRzKFxuICAgIGlkczogc3RyaW5nW10sXG4gICAgcGFnZUNvbnRleHQ6IFBhZ2VDb250ZXh0LFxuICAgIGZpZWxkcyA9ICdERUZBVUxUJyxcbiAgICBjdXJyZW50UGFnZSA9IDAsXG4gICAgcGFnZVNpemUgPSBpZHMubGVuZ3RoLFxuICAgIHNvcnQ/OiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxDbXNDb21wb25lbnRbXT4ge1xuICAgIGNvbnN0IGlkTGlzdDogT2NjLkNvbXBvbmVudElETGlzdCA9IHsgaWRMaXN0OiBpZHMgfTtcblxuICAgIGNvbnN0IHJlcXVlc3RQYXJhbXMgPSB7XG4gICAgICAuLi50aGlzLmdldENvbnRleHRQYXJhbXMocGFnZUNvbnRleHQpLFxuICAgICAgLi4udGhpcy5nZXRQYWdpbmF0aW9uUGFyYW1zKGN1cnJlbnRQYWdlLCBwYWdlU2l6ZSwgc29ydCksXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PE9jYy5Db21wb25lbnRMaXN0PihcbiAgICAgICAgdGhpcy5nZXRDb21wb25lbnRzRW5kcG9pbnQocmVxdWVzdFBhcmFtcywgZmllbGRzKSxcbiAgICAgICAgaWRMaXN0LFxuICAgICAgICB7XG4gICAgICAgICAgaGVhZGVyczogdGhpcy5oZWFkZXJzLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgcGx1Y2soJ2NvbXBvbmVudCcpLFxuICAgICAgICB0aGlzLmNvbnZlcnRlci5waXBlYWJsZU1hbnkoQ01TX0NPTVBPTkVOVF9OT1JNQUxJWkVSKVxuICAgICAgKTtcbiAgfVxufVxuIl19