angular-phonetic
Version:
A simple component to easily render ruby text.
63 lines • 4.29 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, Input } from '@angular/core';
var AngularPhoneticComponent = /** @class */ (function () {
function AngularPhoneticComponent() {
this.brackets = '()';
}
/**
* @return {?}
*/
AngularPhoneticComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
/** @type {?} */
var parsed = this.parseBrackets();
this.left = parsed[0];
this.right = parsed[1];
};
/**
* @private
* @return {?}
*/
AngularPhoneticComponent.prototype.parseBrackets = /**
* @private
* @return {?}
*/
function () {
switch (this.brackets.length) {
case 0:
return ['', ''];
case 1:
return [this.brackets, this.brackets];
default:
return [this.brackets[0], this.brackets[1]];
}
};
AngularPhoneticComponent.decorators = [
{ type: Component, args: [{
selector: 'ng-phonetic',
template: "\n <ruby>\n <ng-content></ng-content> <rp>{{left}}</rp> <rt>{{phonetic}}</rt><rp>{{right}}</rp>\n </ruby>\n "
}] }
];
AngularPhoneticComponent.propDecorators = {
phonetic: [{ type: Input }],
brackets: [{ type: Input }]
};
return AngularPhoneticComponent;
}());
export { AngularPhoneticComponent };
if (false) {
/** @type {?} */
AngularPhoneticComponent.prototype.phonetic;
/** @type {?} */
AngularPhoneticComponent.prototype.brackets;
/** @type {?} */
AngularPhoneticComponent.prototype.left;
/** @type {?} */
AngularPhoneticComponent.prototype.right;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1waG9uZXRpYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9hbmd1bGFyLXBob25ldGljLyIsInNvdXJjZXMiOlsibGliL2FuZ3VsYXItcGhvbmV0aWMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RDtJQUFBO1FBWVcsYUFBUSxHQUFHLElBQUksQ0FBQztJQXFCM0IsQ0FBQzs7OztJQWpCQywyQ0FBUTs7O0lBQVI7O1lBQ1EsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUU7UUFDbkMsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7Ozs7SUFFTyxnREFBYTs7OztJQUFyQjtRQUNFLFFBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDNUIsS0FBSyxDQUFDO2dCQUNKLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbEIsS0FBSyxDQUFDO2dCQUNKLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN4QztnQkFDRSxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDOztnQkEvQkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixRQUFRLEVBQUUsMEhBSVQ7aUJBRUY7OzsyQkFHRSxLQUFLOzJCQUNMLEtBQUs7O0lBcUJSLCtCQUFDO0NBQUEsQUFqQ0QsSUFpQ0M7U0F4Qlksd0JBQXdCOzs7SUFFbkMsNENBQTBCOztJQUMxQiw0Q0FBeUI7O0lBQ3pCLHdDQUFhOztJQUNiLHlDQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nLXBob25ldGljJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cnVieT5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD4gPHJwPnt7bGVmdH19PC9ycD4gPHJ0Pnt7cGhvbmV0aWN9fTwvcnQ+PHJwPnt7cmlnaHR9fTwvcnA+XG4gICAgPC9ydWJ5PlxuICBgLFxuICBzdHlsZXM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJQaG9uZXRpY0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgcGhvbmV0aWM6IHN0cmluZztcbiAgQElucHV0KCkgYnJhY2tldHMgPSAnKCknO1xuICBsZWZ0OiBzdHJpbmc7XG4gIHJpZ2h0OiBzdHJpbmc7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgcGFyc2VkID0gdGhpcy5wYXJzZUJyYWNrZXRzKCk7XG4gICAgdGhpcy5sZWZ0ID0gcGFyc2VkWzBdO1xuICAgIHRoaXMucmlnaHQgPSBwYXJzZWRbMV07XG4gIH1cblxuICBwcml2YXRlIHBhcnNlQnJhY2tldHMoKTogW3N0cmluZywgc3RyaW5nXSB7XG4gICAgc3dpdGNoICh0aGlzLmJyYWNrZXRzLmxlbmd0aCkge1xuICAgICAgY2FzZSAwOlxuICAgICAgICByZXR1cm4gWycnLCAnJ107XG4gICAgICBjYXNlIDE6XG4gICAgICAgIHJldHVybiBbdGhpcy5icmFja2V0cywgdGhpcy5icmFja2V0c107XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gW3RoaXMuYnJhY2tldHNbMF0sIHRoaXMuYnJhY2tldHNbMV1dO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=