angular-t9n
Version:
A translation tool for Angular i18n
2 lines (1 loc) • 1.98 kB
JavaScript
import{c as U}from"./chunk-PTK3D5EO.js";import{a as o}from"./chunk-QTUSJNUZ.js";import{a as C}from"./chunk-DK3NDEDW.js";import{$ as u,B as v,C as p,F as g,Ic as b,N as f,O as m,P as i,Q as c,S as _,W as k,o as s,x as d}from"./chunk-KWXDDR2S.js";import{a as h,b as l}from"./chunk-4CLCTAJ7.js";var I=(()=>{class n{constructor(){this._translationService=u(C),this._activatedRoute=u(U),this._http=u(b),this.target=this._activatedRoute.params.pipe(i(e=>this._translationService.target(e.language)),d(e=>!!e))}unit(e){return this.target.pipe(p(1),s(t=>t._links.unit.href.replace("{id}",e)),i(t=>this._http.get(t)))}units(e){let t=o(e);return this.target.pipe(p(1),s(a=>a._links.units.href),i(a=>this._http.get(a,{params:t})))}updateUnitOnChange(e,t,a){t.target.valueChanges.pipe(c(a),m(t.target.value),v(500),g(),f(1),_(r=>r?t.state.enable({emitEvent:!1}):t.state.disable({emitEvent:!1})),i(r=>this.updateUnit(l(h({},e),{target:r,state:t.state.value})))).subscribe(r=>t.state.setValue(r.state,{emitEvent:!1})),t.state.valueChanges.pipe(c(a),m(t.state.value),g(),f(1),i(r=>this.updateUnit(l(h({},e),{target:t.target.value,state:r})))).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(p(1),s(t=>t._links.orphan.href.replace("{id}",e)),i(t=>this._http.get(t)))}orphans(e){let t=o(e);return this.target.pipe(p(1),s(a=>a._links.orphans.href),i(a=>this._http.get(a,{params:t})))}migrateOrphan(e,t){return this.updateUnit(l(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(p(1),i(t=>this._translationService.updateTarget(t.language)))),s(t=>({orphansRemaining:t.orphanCount>0})))}static{this.\u0275fac=function(t){return new(t||n)}}static{this.\u0275prov=k({token:n,factory:n.\u0275fac})}}return n})();export{I as a};