UNPKG

@adobe/cq-angular-editable-components

Version:

* [API](#api) * [Documentation](#documentation) * [Changelog](#changelog)

76 lines 7.27 kB
/* * ADOBE CONFIDENTIAL * * Copyright 2018 Adobe Systems Incorporated * All Rights Reserved. * * NOTICE: All information contained herein is, and remains * the property of Adobe Systems Incorporated and its suppliers, * if any. The intellectual and technical concepts contained * herein are proprietary to Adobe Systems Incorporated and its * suppliers and may be covered by U.S. and Foreign Patents, * patents in process, and are protected by trade secret or copyright law. * Dissemination of this information or reproduction of this material * is strictly forbidden unless prior written permission is obtained * from Adobe Systems Incorporated. */ import { __decorate, __metadata } from "tslib"; import { Component, Input, ViewChild } from '@angular/core'; import { ModelManager } from "@adobe/cq-spa-page-model-manager"; import { AEMComponentDirective } from "../aem-component.directive"; let AEMModelProviderComponent = /** * The current component is responsible for providing access to the ModelManager and the model of a component */ class AEMModelProviderComponent { constructor() { } /** * Updates the item data */ updateItem() { ModelManager.getData({ path: this.cqPath }).then(model => { this.cqItem = model; this.aemComponent.changeDetectorRef.markForCheck(); }); } ngOnInit() { ModelManager.addListener(this.cqPath, this.updateItem.bind(this)); } ngDestroy() { ModelManager.removeListener(this.cqPath, this.updateItem.bind(this)); } }; __decorate([ Input(), __metadata("design:type", Object) ], AEMModelProviderComponent.prototype, "cqPath", void 0); __decorate([ Input(), __metadata("design:type", Object) ], AEMModelProviderComponent.prototype, "cqItem", void 0); __decorate([ Input(), __metadata("design:type", Object) ], AEMModelProviderComponent.prototype, "itemName", void 0); __decorate([ Input(), __metadata("design:type", Object) ], AEMModelProviderComponent.prototype, "aemModelProvider", void 0); __decorate([ ViewChild(AEMComponentDirective), __metadata("design:type", AEMComponentDirective) ], AEMModelProviderComponent.prototype, "aemComponent", void 0); AEMModelProviderComponent = __decorate([ Component({ selector: 'aem-model-provider,[aemModelProvider]', template: `<ng-container aemComponent [cqItem]='cqItem' [cqPath]='cqPath' [itemName]='itemName'></ng-container>` }) /** * The current component is responsible for providing access to the ModelManager and the model of a component */ , __metadata("design:paramtypes", []) ], AEMModelProviderComponent); export { AEMModelProviderComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWVtLW1vZGVsLXByb3ZpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhZG9iZS9jcS1hbmd1bGFyLWVkaXRhYmxlLWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJsaWIvbGF5b3V0L2FlbS1tb2RlbC1wcm92aWRlci9hZW0tbW9kZWwtcHJvdmlkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRzs7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBU2pFLElBQWEseUJBQXlCO0FBSHRDOztHQUVHO0FBQ0gsTUFBYSx5QkFBeUI7SUFrQnBDO0lBQ0EsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVTtRQUNSLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JELElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLFlBQVksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxTQUFTO1FBQ1AsWUFBWSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztDQUNGLENBQUE7QUFsQ1U7SUFBUixLQUFLLEVBQUU7O3lEQUFRO0FBSVA7SUFBUixLQUFLLEVBQUU7O3lEQUFRO0FBSVA7SUFBUixLQUFLLEVBQUU7OzJEQUFVO0FBRVQ7SUFBUixLQUFLLEVBQUU7O21FQUFrQjtBQUVRO0lBQWpDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQzs4QkFBZSxxQkFBcUI7K0RBQUM7QUFoQjNELHlCQUF5QjtJQVByQyxTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUsdUNBQXVDO1FBQ2pELFFBQVEsRUFBRSxzR0FBc0c7S0FDakgsQ0FBQztJQUNGOztPQUVHOzs7R0FDVSx5QkFBeUIsQ0FzQ3JDO1NBdENZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBBRE9CRSBDT05GSURFTlRJQUxcbiAqXG4gKiBDb3B5cmlnaHQgMjAxOCBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZFxuICogQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBOT1RJQ0U6ICBBbGwgaW5mb3JtYXRpb24gY29udGFpbmVkIGhlcmVpbiBpcywgYW5kIHJlbWFpbnNcbiAqIHRoZSBwcm9wZXJ0eSBvZiBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZCBhbmQgaXRzIHN1cHBsaWVycyxcbiAqIGlmIGFueS4gIFRoZSBpbnRlbGxlY3R1YWwgYW5kIHRlY2huaWNhbCBjb25jZXB0cyBjb250YWluZWRcbiAqIGhlcmVpbiBhcmUgcHJvcHJpZXRhcnkgdG8gQWRvYmUgU3lzdGVtcyBJbmNvcnBvcmF0ZWQgYW5kIGl0c1xuICogc3VwcGxpZXJzIGFuZCBtYXkgYmUgY292ZXJlZCBieSBVLlMuIGFuZCBGb3JlaWduIFBhdGVudHMsXG4gKiBwYXRlbnRzIGluIHByb2Nlc3MsIGFuZCBhcmUgcHJvdGVjdGVkIGJ5IHRyYWRlIHNlY3JldCBvciBjb3B5cmlnaHQgbGF3LlxuICogRGlzc2VtaW5hdGlvbiBvZiB0aGlzIGluZm9ybWF0aW9uIG9yIHJlcHJvZHVjdGlvbiBvZiB0aGlzIG1hdGVyaWFsXG4gKiBpcyBzdHJpY3RseSBmb3JiaWRkZW4gdW5sZXNzIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbiBpcyBvYnRhaW5lZFxuICogZnJvbSBBZG9iZSBTeXN0ZW1zIEluY29ycG9yYXRlZC5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RlbE1hbmFnZXIgfSBmcm9tIFwiQGFkb2JlL2NxLXNwYS1wYWdlLW1vZGVsLW1hbmFnZXJcIjtcbmltcG9ydCB7QUVNQ29tcG9uZW50RGlyZWN0aXZlfSBmcm9tIFwiLi4vYWVtLWNvbXBvbmVudC5kaXJlY3RpdmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWVtLW1vZGVsLXByb3ZpZGVyLFthZW1Nb2RlbFByb3ZpZGVyXScsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRhaW5lciBhZW1Db21wb25lbnQgW2NxSXRlbV09J2NxSXRlbScgW2NxUGF0aF09J2NxUGF0aCcgW2l0ZW1OYW1lXT0naXRlbU5hbWUnPjwvbmctY29udGFpbmVyPmBcbn0pXG4vKipcbiAqIFRoZSBjdXJyZW50IGNvbXBvbmVudCBpcyByZXNwb25zaWJsZSBmb3IgcHJvdmlkaW5nIGFjY2VzcyB0byB0aGUgTW9kZWxNYW5hZ2VyIGFuZCB0aGUgbW9kZWwgb2YgYSBjb21wb25lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEFFTU1vZGVsUHJvdmlkZXJDb21wb25lbnQge1xuICAvKipcbiAgICogUGF0aCB0byB0aGUgbW9kZWwgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IGluc3RhbmNlIG9mIHRoZSBjb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGNxUGF0aDtcbiAgLyoqXG4gICAqIE1vZGVsIGl0ZW0gYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IG1vZGVsIHByb3ZpZGVyIGNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgY3FJdGVtO1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgaXRlbSBhc3NvY2lhdGVkIHdpdGggdGhlIGN1cnJlbnQgbW9kZWwgcHJvdmlkZXIgY29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBpdGVtTmFtZTtcblxuICBASW5wdXQoKSBhZW1Nb2RlbFByb3ZpZGVyO1xuXG4gIEBWaWV3Q2hpbGQoQUVNQ29tcG9uZW50RGlyZWN0aXZlKSBhZW1Db21wb25lbnQ6IEFFTUNvbXBvbmVudERpcmVjdGl2ZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBpdGVtIGRhdGFcbiAgICovXG4gIHVwZGF0ZUl0ZW0oKSB7XG4gICAgTW9kZWxNYW5hZ2VyLmdldERhdGEoe3BhdGg6IHRoaXMuY3FQYXRofSkudGhlbihtb2RlbCA9PiB7XG4gICAgICB0aGlzLmNxSXRlbSA9IG1vZGVsO1xuICAgICAgdGhpcy5hZW1Db21wb25lbnQuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBNb2RlbE1hbmFnZXIuYWRkTGlzdGVuZXIodGhpcy5jcVBhdGgsIHRoaXMudXBkYXRlSXRlbS5iaW5kKHRoaXMpKTtcbiAgfVxuXG4gIG5nRGVzdHJveSgpIHtcbiAgICBNb2RlbE1hbmFnZXIucmVtb3ZlTGlzdGVuZXIodGhpcy5jcVBhdGgsIHRoaXMudXBkYXRlSXRlbS5iaW5kKHRoaXMpKTtcbiAgfVxufVxuXG4iXX0=