UNPKG

ang-readmore

Version:

This is a simple angular component to add "read more"/"read less" links to your long sentenses/paragraphs.

80 lines 6.07 kB
/** * @fileoverview added by tsickle * Generated from: lib/ang-readmore.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Input } from "@angular/core"; var AngReadmoreComponent = /** @class */ (function () { function AngReadmoreComponent() { this.show = true; this.showReadMore = true; this.text = "NO-TEXT"; this.length = 20; this.linkColor = "#26A69A"; this.isCollapsed = true; } /** * @return {?} */ AngReadmoreComponent.prototype.ngOnInit = /** * @return {?} */ function () { this.stringToShow = this.text; if (this.text.length > this.length) { this.stringToShow = this.text.slice(0, this.length - 1) + "..."; } else { this.showReadMore = false; } if (this.text.length === 0) { this.show = false; } }; /** * @return {?} */ AngReadmoreComponent.prototype.toggle = /** * @return {?} */ function () { this.isCollapsed = !this.isCollapsed; if (this.isCollapsed) { this.stringToShow = this.text.slice(0, this.length - 1) + "..."; } else { this.stringToShow = this.text; } }; AngReadmoreComponent.decorators = [ { type: Component, args: [{ selector: "ang-readmore", template: "\n <p *ngIf=\"show\">\n {{ stringToShow }}\n <span *ngIf=\"showReadMore\" (click)=\"toggle()\" [style.color]=\"linkColor\">{{\n isCollapsed ? \"read more\" : \"read less\"\n }}</span>\n </p>\n ", styles: ["span{cursor: pointer;} p{white-space: pre-line;}"] }] } ]; AngReadmoreComponent.propDecorators = { text: [{ type: Input }], length: [{ type: Input }], linkColor: [{ type: Input }] }; return AngReadmoreComponent; }()); export { AngReadmoreComponent }; if (false) { /** @type {?} */ AngReadmoreComponent.prototype.show; /** @type {?} */ AngReadmoreComponent.prototype.showReadMore; /** @type {?} */ AngReadmoreComponent.prototype.stringToShow; /** @type {?} */ AngReadmoreComponent.prototype.text; /** @type {?} */ AngReadmoreComponent.prototype.length; /** @type {?} */ AngReadmoreComponent.prototype.linkColor; /** @type {?} */ AngReadmoreComponent.prototype.isCollapsed; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5nLXJlYWRtb3JlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZy1yZWFkbW9yZS8iLCJzb3VyY2VzIjpbImxpYi9hbmctcmVhZG1vcmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekQ7SUFBQTtRQWFFLFNBQUksR0FBRyxJQUFJLENBQUM7UUFDWixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUVYLFNBQUksR0FBRyxTQUFTLENBQUM7UUFDakIsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUNaLGNBQVMsR0FBRyxTQUFTLENBQUM7UUFDL0IsZ0JBQVcsR0FBRyxJQUFJLENBQUM7SUF3QnJCLENBQUM7Ozs7SUF0QkMsdUNBQVE7OztJQUFSO1FBQ0UsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztTQUNqRTthQUFNO1lBQ0wsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7U0FDM0I7UUFFRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUMxQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztTQUNuQjtJQUNILENBQUM7Ozs7SUFFRCxxQ0FBTTs7O0lBQU47UUFDRSxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUVyQyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7U0FDakU7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztTQUMvQjtJQUNILENBQUM7O2dCQTFDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFFBQVEsRUFBRSxnT0FPVDs2QkFDUSxrREFBa0Q7aUJBQzVEOzs7dUJBS0UsS0FBSzt5QkFDTCxLQUFLOzRCQUNMLEtBQUs7O0lBeUJSLDJCQUFDO0NBQUEsQUEzQ0QsSUEyQ0M7U0EvQlksb0JBQW9COzs7SUFDL0Isb0NBQVk7O0lBQ1osNENBQW9COztJQUNwQiw0Q0FBYTs7SUFDYixvQ0FBMEI7O0lBQzFCLHNDQUFxQjs7SUFDckIseUNBQStCOztJQUMvQiwyQ0FBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYW5nLXJlYWRtb3JlXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHAgKm5nSWY9XCJzaG93XCI+XG4gICAgICB7eyBzdHJpbmdUb1Nob3cgfX1cbiAgICAgIDxzcGFuICpuZ0lmPVwic2hvd1JlYWRNb3JlXCIgKGNsaWNrKT1cInRvZ2dsZSgpXCIgW3N0eWxlLmNvbG9yXT1cImxpbmtDb2xvclwiPnt7XG4gICAgICAgIGlzQ29sbGFwc2VkID8gXCJyZWFkIG1vcmVcIiA6IFwicmVhZCBsZXNzXCJcbiAgICAgIH19PC9zcGFuPlxuICAgIDwvcD5cbiAgYCxcbiAgc3R5bGVzOiBbXCJzcGFue2N1cnNvcjogcG9pbnRlcjt9IHB7d2hpdGUtc3BhY2U6IHByZS1saW5lO31cIl0sXG59KVxuZXhwb3J0IGNsYXNzIEFuZ1JlYWRtb3JlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgc2hvdyA9IHRydWU7XG4gIHNob3dSZWFkTW9yZSA9IHRydWU7XG4gIHN0cmluZ1RvU2hvdztcbiAgQElucHV0KCkgdGV4dCA9IFwiTk8tVEVYVFwiO1xuICBASW5wdXQoKSBsZW5ndGggPSAyMDtcbiAgQElucHV0KCkgbGlua0NvbG9yID0gXCIjMjZBNjlBXCI7XG4gIGlzQ29sbGFwc2VkID0gdHJ1ZTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0cmluZ1RvU2hvdyA9IHRoaXMudGV4dDtcbiAgICBpZiAodGhpcy50ZXh0Lmxlbmd0aCA+IHRoaXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLnN0cmluZ1RvU2hvdyA9IHRoaXMudGV4dC5zbGljZSgwLCB0aGlzLmxlbmd0aCAtIDEpICsgXCIuLi5cIjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93UmVhZE1vcmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50ZXh0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5zaG93ID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlKCkge1xuICAgIHRoaXMuaXNDb2xsYXBzZWQgPSAhdGhpcy5pc0NvbGxhcHNlZDtcblxuICAgIGlmICh0aGlzLmlzQ29sbGFwc2VkKSB7XG4gICAgICB0aGlzLnN0cmluZ1RvU2hvdyA9IHRoaXMudGV4dC5zbGljZSgwLCB0aGlzLmxlbmd0aCAtIDEpICsgXCIuLi5cIjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdHJpbmdUb1Nob3cgPSB0aGlzLnRleHQ7XG4gICAgfVxuICB9XG59XG4iXX0=