@adobe/cq-angular-editable-components
Version:
* [API](#api) * [Documentation](#documentation) * [Changelog](#changelog)
76 lines • 7.27 kB
JavaScript
/*
* 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=