UNPKG

angular-t9n

Version:

A translation tool for Angular i18n

2 lines (1 loc) 1.97 kB
import{d as C}from"./chunk-6DDCRX73.js";import{a as d}from"./chunk-FK6IRHWX.js";import{a as O}from"./chunk-4NKRI2IB.js";import{D as _,F as n,I as f,S as m,T as c,U as i,V as o,X as k,_ as b,da as l,q as p,yc as U,z as v}from"./chunk-IRWV2DJQ.js";import{a as h,b as u}from"./chunk-4CLCTAJ7.js";var x=(()=>{let r=class r{constructor(){this._translationService=l(O),this._activatedRoute=l(C),this._http=l(U),this.target=this._activatedRoute.params.pipe(i(e=>this._translationService.target(e.language)),v(e=>!!e))}unit(e){return this.target.pipe(n(1),p(t=>t._links.unit.href.replace("{id}",e)),i(t=>this._http.get(t)))}units(e){let t=d(e);return this.target.pipe(n(1),p(a=>a._links.units.href),i(a=>this._http.get(a,{params:t})))}updateUnitOnChange(e,t,a){t.target.valueChanges.pipe(o(a),c(t.target.value),_(500),f(),m(1),k(s=>s?t.state.enable({emitEvent:!1}):t.state.disable({emitEvent:!1})),i(s=>this.updateUnit(u(h({},e),{target:s,state:t.state.value})))).subscribe(s=>t.state.setValue(s.state,{emitEvent:!1})),t.state.valueChanges.pipe(o(a),c(t.state.value),f(),m(1),i(s=>this.updateUnit(u(h({},e),{target:t.target.value,state:s})))).subscribe()}updateUnit(e){e.target!==""&&e.state==="initial"&&(e.state="translated");let{target:t,state:a}=e;return this._http.put(e._links.self.href,{target:t,state:a})}orphan(e){return this.target.pipe(n(1),p(t=>t._links.orphan.href.replace("{id}",e)),i(t=>this._http.get(t)))}orphans(e){let t=d(e);return this.target.pipe(n(1),p(a=>a._links.orphans.href),i(a=>this._http.get(a,{params:t})))}migrateOrphan(e,t){return this.updateUnit(u(h({},t),{target:e.target,state:e.state})).pipe(i(()=>this.deleteOrphan(e)))}deleteOrphan(e){return this._http.delete(e._links.self.href).pipe(i(()=>this.target.pipe(n(1),i(t=>this._translationService.updateTarget(t.language)))),p(t=>({orphansRemaining:t.orphanCount>0})))}};r.\u0275fac=function(t){return new(t||r)},r.\u0275prov=b({token:r,factory:r.\u0275fac});let g=r;return g})();export{x as a};