UNPKG

@fdot/angular-dotcodes

Version:

`npm install @fdot/angular-dotcodes --save`

2 lines 6.4 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common/http"),require("rxjs"),require("rxjs/operators"),require("@angular/common"),require("@angular/forms")):"function"==typeof define&&define.amd?define("@fdot/angular-dotcodes",["exports","@angular/core","@angular/common/http","rxjs","rxjs/operators","@angular/common","@angular/forms"],t):t((e.fdot=e.fdot||{},e.fdot["angular-dotcodes"]={}),e.ng.core,e.ng.common.http,null,e.Rx.Observable.prototype,e.ng.common,e.ng.forms)}(this,function(e,o,c,i,r,n,s){"use strict";var t=function(e,t,o,n){this.host=e,this.apiKey=t,this.useDefaultSelect=o,this.defaultSelectText=n},d=function(){function e(e,t){if(this.http=e,this.config=t,this.codesCache=new Map,this.codeCache=new Map,!t)throw Error("Call AngularDotcodesService with for root passing in the config object")}return e.prototype.GetCode=function(e,t){var o=e+"-"+t;if(this.codeCache.get(o))this.codeCache.get(e+"-"+t);else if(this.codesCache.get(e)){var n=this.codesCache.get(e).value;if(n){var s=n.filter(function(e){return e.value===t});s&&1===s.length?(this.codeCache.get(o)||this.codeCache.set(o,new i.BehaviorSubject(null)),this.codeCache.get(o).next(s[0])):this.loadCodes(o,e,t)}else this.loadCodes(o,e,t)}else this.loadCodes(o,e,t);return this.codeCache.get(o)},e.prototype.loadCodes=function(t,e,o){var n=this;this.codeCache.set(t,new i.BehaviorSubject(null));var s=new c.HttpHeaders,r=new c.HttpParams;e!==undefined&&null!==e&&(r=r.set("column",e+"")),o!==undefined&&null!==o&&(r=r.set("codeValue",o+"")),this.sendRequest("get","/GetCode",s,r,null).toPromise().then(function(e){e&&e.body&&n.codeCache.get(t).next(e.body)})},e.prototype.GetCodes=function(t){var o=this;if(this.codesCache.get(t))this.codesCache.get(t);else{this.codesCache.set(t,new i.BehaviorSubject(null));var e=new c.HttpHeaders,n=new c.HttpParams;t!==undefined&&null!==t&&(n=n.set("column",t+"")),this.sendRequest("get","/GetCodes",e,n,null).toPromise().then(function(e){e&&e.body&&o.codesCache.get(t).next(e.body)})}return this.codesCache.get(t)},e.prototype.GetRelatedCodes=function(e,t,o){var n=new c.HttpHeaders,s=new c.HttpParams;return e!==undefined&&null!==e&&(s=s.set("column",e+"")),t!==undefined&&null!==t&&(s=s.set("codeValue",t+"")),o!==undefined&&null!==o&&(s=s.set("relatedCode",o+"")),this.sendRequest("get","/GetRelatedCodes",n,s,null).pipe(r.map(function(e){if(e&&e.body)return e.body}))},e.prototype.sendRequest=function(e,t,o,n,s){return o=o.set("Ocp-Apim-Subscription-Key",this.config.apiKey),"get"===e?this.http.get(this.config.host+t,{headers:o.set("Accept","application/json"),params:n,observe:"response"}):"put"===e?this.http.put(this.config.host+t,s,{headers:o.set("Content-Type","application/json"),params:n,observe:"response"}):"post"===e?this.http.post(this.config.host+t,s,{headers:o.set("Content-Type","application/json"),params:n,observe:"response"}):"delete"===e?this.http["delete"](this.config.host+t,{headers:o,params:n,observe:"response"}):(console.error("Unsupported request: "+e),i.Observable["throw"]("Unsupported request: "+e))},e.decorators=[{type:o.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:c.HttpClient},{type:t,decorators:[{type:o.Inject,args:["config"]}]}]},e.ngInjectableDef=o.defineInjectable({factory:function(){return new e(o.inject(c.HttpClient),o.inject("config"))},token:e,providedIn:"root"}),e}(),u=function(){function e(e){this.dotcodeService=e}return e.prototype.ngOnInit=function(){var t=this;console.log("init"),this.dotcodeService.GetCode(this.column,this.value).subscribe(function(e){console.log(e),t.code=e})},e.decorators=[{type:o.Component,args:[{selector:"fdot-angular-dotcodes",template:'\n <span *ngIf="code">\n {{code.description}}\n </span>\n ',styles:[]}]}],e.ctorParameters=function(){return[{type:d}]},e.propDecorators={column:[{type:o.Input}],value:[{type:o.Input}]},e}(),a=function(){function e(e,t){this.dotCodeService=e,this.config=t,this.selectedDotcode=new o.EventEmitter}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){this._value=e,this.setSelectedCode()},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;!1!==this.useDefaultSelect&&"false"!==this.useDefaultSelect&&null!=this.config&&this.config.useDefaultSelect?this.useDefaultSelect=!0:this.useDefaultSelect=!1,!this.defaultSelectText&&null!=this.config&&this.config.defaultSelectText&&(this.defaultSelectText=this.config.defaultSelectText),this.dotCodeService.GetCodes(this.column).subscribe(function(e){t.codes=e,t.setSelectedCode()})},e.prototype.setSelectedCode=function(){var t=this;if(this.codes&&this.value){var e=this.codes.find(function(e){return e.value===t.value});e&&(this.selectedCode=e,this.codeChanged())}},e.prototype.codeChanged=function(){this.selectedDotcode.emit(this.selectedCode)},e.decorators=[{type:o.Component,args:[{selector:"fdot-dotcodes-select",template:'<select [(ngModel)]="selectedCode" (change)="codeChanged()" class="form-control" [disabled]="disabled">\n <option *ngIf="useDefaultSelect" value="">\n {{defaultSelectText}}\n </option>\n <option *ngFor="let code of codes" [ngValue]="code">\n {{code.description}}\n </option>\n</select>\n',styles:[""]}]}],e.ctorParameters=function(){return[{type:d},{type:t,decorators:[{type:o.Inject,args:["config"]}]}]},e.propDecorators={column:[{type:o.Input}],value:[{type:o.Input}],disabled:[{type:o.Input}],selectedDotcode:[{type:o.Output}],useDefaultSelect:[{type:o.Input}],defaultSelectText:[{type:o.Input}]},e}(),l=function(){function e(e){this.dotcodeService=e}return e.prototype.transform=function(e,t){return this.dotcodeService.GetCode(t,e).pipe(r.map(function(e){if(e)return e.description}))},e.decorators=[{type:o.Pipe,args:[{name:"dotcode"}]}],e.ctorParameters=function(){return[{type:d}]},e}(),p=function(){function t(){}return t.forRoot=function(e){return{ngModule:t,providers:[d,{provide:"config",useValue:e}]}},t.decorators=[{type:o.NgModule,args:[{imports:[c.HttpClientModule,n.CommonModule,s.FormsModule],declarations:[u,a,l],exports:[u,a,l]}]}],t}();e.AngularDotcodesService=d,e.AngularDotcodesComponent=u,e.Config=t,e.DotcodesSelectComponent=a,e.AngularDotcodesModule=p,e.ɵa=l,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=fdot-angular-dotcodes.umd.min.js.map