UNPKG

@namefully/ng

Version:
90 lines 6.68 kB
/** * @fileoverview added by tsickle * Generated from: namefully.service.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable, Inject } from '@angular/core'; import { Namefully, Config } from 'namefully'; import { CONFIG_TOKEN } from './namefully-config'; import * as i0 from "@angular/core"; import * as i1 from "./namefully-config"; /** * Inject this service into your Angular component to handle person names * * \@usageNotes * - import the module first to your app * - then use it with the following props bindings * // in the AppModule for example: * ```ts * import { NamefullyModule } from '\@namefully/ng' * * \@NgModule({ * imports: [BrowserModule, NamefullyModule.forRoot(...)], * declarations: [AppComponent], * bootstrap: [AppComponent] * }) * export class AppModule {} * ``` * * // in the AppComponent.ts * ```ts * \@Component({ template: `<p>{{ superName.shorten() }}</p>` }) * class AppComponent implements OnInit { * name = 'Mr Smith John Joe PhD'; * superName: Namefully; * * constructor(private service: NamefullyService) {} * * ngOnInit(): void { * this.superName = this.service.build( * this.name, * // override forRoot config here * ); * } * } * ``` */ var NamefullyService = /** @class */ (function () { function NamefullyService(config) { this.config = !!config.custom ? Config.merge(config.custom) : config.default; } /** * Constructs `Namefully` * @param raw data to construct the name parts of a full name * @param options fallback config to override preset forRoot(config) */ /** * Constructs `Namefully` * @param {?} raw data to construct the name parts of a full name * @param {?=} options fallback config to override preset forRoot(config) * @return {?} */ NamefullyService.prototype.build = /** * Constructs `Namefully` * @param {?} raw data to construct the name parts of a full name * @param {?=} options fallback config to override preset forRoot(config) * @return {?} */ function (raw, options) { return new Namefully(raw, options || this.config); }; NamefullyService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ NamefullyService.ctorParameters = function () { return [ { type: undefined, decorators: [{ type: Inject, args: [CONFIG_TOKEN,] }] } ]; }; /** @nocollapse */ NamefullyService.ɵprov = i0.ɵɵdefineInjectable({ factory: function NamefullyService_Factory() { return new NamefullyService(i0.ɵɵinject(i1.CONFIG_TOKEN)); }, token: NamefullyService, providedIn: "root" }); return NamefullyService; }()); export { NamefullyService }; if (false) { /** * Holds a json-like copy of the preset configuration injected by Angular * @type {?} * @private */ NamefullyService.prototype.config; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZWZ1bGx5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbmFtZWZ1bGx5L25nLyIsInNvdXJjZXMiOlsibmFtZWZ1bGx5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBMEIsTUFBTSxXQUFXLENBQUE7QUFDckUsT0FBTyxFQUFlLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzQzlEO0lBT0ksMEJBQWtDLE1BQW1CO1FBQ2pELElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFBO0lBQ2hGLENBQUM7SUFFRDs7OztPQUlHOzs7Ozs7O0lBQ0gsZ0NBQUs7Ozs7OztJQUFMLFVBQU0sR0FBbUQsRUFBRSxPQUF5QjtRQUNoRixPQUFPLElBQUksU0FBUyxDQUFDLEdBQUcsRUFBRSxPQUFPLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ3JELENBQUM7O2dCQWxCSixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7O2dEQU9qQixNQUFNLFNBQUMsWUFBWTs7OzJCQS9DcEM7Q0EyREMsQUFuQkQsSUFtQkM7U0FsQlksZ0JBQWdCOzs7Ozs7O0lBSXpCLGtDQUErQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBOYW1lZnVsbHksIENvbmZpZywgTmFtZSwgSnNvbk5hbWUsIFBhcnNlciB9IGZyb20gJ25hbWVmdWxseSdcbmltcG9ydCB7IENvbmZpZ1Rva2VuLCBDT05GSUdfVE9LRU4gfSBmcm9tICcuL25hbWVmdWxseS1jb25maWcnXG5cbi8qKlxuICogSW5qZWN0IHRoaXMgc2VydmljZSBpbnRvIHlvdXIgQW5ndWxhciBjb21wb25lbnQgdG8gaGFuZGxlIHBlcnNvbiBuYW1lc1xuICpcbiAqIEB1c2FnZU5vdGVzXG4gKiAtIGltcG9ydCB0aGUgbW9kdWxlIGZpcnN0IHRvIHlvdXIgYXBwXG4gKiAtIHRoZW4gdXNlIGl0IHdpdGggdGhlIGZvbGxvd2luZyBwcm9wcyBiaW5kaW5nc1xuICogLy8gaW4gdGhlIEFwcE1vZHVsZSBmb3IgZXhhbXBsZTpcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBOYW1lZnVsbHlNb2R1bGUgfSBmcm9tICdAbmFtZWZ1bGx5L25nJ1xuICpcbiAqIEBOZ01vZHVsZSh7XG4gKiAgIGltcG9ydHM6IFtCcm93c2VyTW9kdWxlLCBOYW1lZnVsbHlNb2R1bGUuZm9yUm9vdCguLi4pXSxcbiAqICAgZGVjbGFyYXRpb25zOiBbQXBwQ29tcG9uZW50XSxcbiAqICAgYm9vdHN0cmFwOiBbQXBwQ29tcG9uZW50XVxuICogfSlcbiAqIGV4cG9ydCBjbGFzcyBBcHBNb2R1bGUge31cbiAqIGBgYFxuICpcbiAqIC8vIGluIHRoZSBBcHBDb21wb25lbnQudHNcbiAqIGBgYHRzXG4gKiBAQ29tcG9uZW50KHsgdGVtcGxhdGU6IGA8cD57eyBzdXBlck5hbWUuc2hvcnRlbigpIH19PC9wPmAgfSlcbiAqIGNsYXNzIEFwcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gKiAgIG5hbWUgPSAnTXIgU21pdGggSm9obiBKb2UgUGhEJztcbiAqICAgc3VwZXJOYW1lOiBOYW1lZnVsbHk7XG4gKlxuICogICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6IE5hbWVmdWxseVNlcnZpY2UpIHt9XG4gKlxuICogICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAqICAgICAgIHRoaXMuc3VwZXJOYW1lID0gdGhpcy5zZXJ2aWNlLmJ1aWxkKFxuICogICAgICAgICAgIHRoaXMubmFtZSxcbiAqICAgICAgICAgICAgLy8gb3ZlcnJpZGUgZm9yUm9vdCBjb25maWcgaGVyZVxuICogICAgICAgICAgICk7XG4gKiAgICAgICB9XG4gKiAgIH1cbiAqICBgYGBcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBOYW1lZnVsbHlTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBIb2xkcyBhIGpzb24tbGlrZSBjb3B5IG9mIHRoZSBwcmVzZXQgY29uZmlndXJhdGlvbiBpbmplY3RlZCBieSBBbmd1bGFyXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IENvbmZpZ1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChDT05GSUdfVE9LRU4pIGNvbmZpZzogQ29uZmlnVG9rZW4pIHtcbiAgICAgICAgdGhpcy5jb25maWcgPSAhIWNvbmZpZy5jdXN0b20gPyBDb25maWcubWVyZ2UoY29uZmlnLmN1c3RvbSkgOiBjb25maWcuZGVmYXVsdFxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbnN0cnVjdHMgYE5hbWVmdWxseWBcbiAgICAgKiBAcGFyYW0gcmF3IGRhdGEgdG8gY29uc3RydWN0IHRoZSBuYW1lIHBhcnRzIG9mIGEgZnVsbCBuYW1lXG4gICAgICogQHBhcmFtIG9wdGlvbnMgZmFsbGJhY2sgY29uZmlnIHRvIG92ZXJyaWRlIHByZXNldCBmb3JSb290KGNvbmZpZylcbiAgICAgKi9cbiAgICBidWlsZChyYXc6IHN0cmluZyB8IHN0cmluZ1tdIHwgTmFtZVtdIHwgSnNvbk5hbWUgfCBQYXJzZXIsIG9wdGlvbnM/OiBQYXJ0aWFsPENvbmZpZz4pOiBOYW1lZnVsbHkge1xuICAgICAgICByZXR1cm4gbmV3IE5hbWVmdWxseShyYXcsIG9wdGlvbnMgfHwgdGhpcy5jb25maWcpXG4gICAgfVxufVxuIl19