Files
syscom-master-admin-ui/preview/chunk-ABNUGVBJ.js
T
2026-07-13 11:57:09 +05:30

2 lines
5.2 KiB
JavaScript

import{a as E,b as q,c as O}from"./chunk-X3NT2Y72.js";import"./chunk-65RPSMRQ.js";import"./chunk-JELJKPCD.js";import{b as s}from"./chunk-C4H2R2IP.js";import{d as x}from"./chunk-7HJ6OBS4.js";import"./chunk-4YKLO6PP.js";import{$b as u,G as C,Hb as w,Ib as N,Nb as b,Ob as l,Pb as d,Xb as A,Zb as h,_a as S,aa as v,cb as g,fa as c,la as f,ma as _,nc as I,pc as R,sb as T,xa as i,xb as D,zc as k}from"./chunk-COCHPIBX.js";import{a as p,b as y}from"./chunk-Q7L6LLAK.js";var L={dataTable:s("masterAdmin","/v1/countries/datatable"),create:s("masterAdmin","/v1/countries"),getById:n=>s("masterAdmin",`/v1/countries/${encodeURIComponent(n)}`),update:n=>s("masterAdmin",`/v1/countries/${encodeURIComponent(n)}`),delete:n=>s("masterAdmin",`/v1/countries/${encodeURIComponent(n)}`),changeStatus:n=>s("masterAdmin",`/v1/countries/${encodeURIComponent(n)}/status`)};var m=class n{http=c(x);getCountryDataTable(e){return this.http.post(`${L.dataTable}`,e)}static \u0275fac=function(t){return new(t||n)};static \u0275prov=v({token:n,factory:n.\u0275fac,providedIn:"root"})};var Q=()=>[5,10,20,50];function z(n,e){if(n&1){let t=A();l(0,"img",5),h("error",function(r){f(t);let o=u(2);return _(o.onFlagError(r))}),d()}if(n&2){let t=u().value;b("src",e,S)("alt",t+" flag")}}function M(n,e){if(n&1&&(l(0,"div",2),w(1,z,1,2,"img",3),l(2,"span",4),I(3),d()()),n&2){let t,a=e.$implicit,r=e.value,o=u();g(),N((t=o.getFlagUrl(a.iso2))?1:-1,t),g(2),R(" ",r," ")}}var P=class n{countryApi=c(m);queryState=new E;countries=i([]);totalRecords=i(0);filteredRecords=i(0);loading=i(!1);columns=i([{key:"serialNumber",label:"Sr.No.",header:"Sr.No.",sortable:!1,width:"60px"},{key:"name",label:"Name",header:"Name",sortable:!0,align:"left"},{key:"iso2",label:"ISO2",header:"ISO2",sortable:!0},{key:"iso3",label:"ISO3",header:"ISO3",sortable:!0},{key:"phoneCode",label:"Phone Code",header:"Phone Code",sortable:!0},{key:"isActive",label:"Status",header:"Status",sortable:!0,badge:!0,badgeClass:e=>e===!0?"badge bg-success/10 text-success":"badge bg-danger/10 text-danger",formatter:e=>e?"Active":"Inactive"}]);actions=i([{type:"view",label:"View",icon:"ti ti-eye",className:"text-info"},{type:"edit",label:"Edit",icon:"ti ti-edit",className:"text-primary"},{type:"delete",label:"Delete",icon:"ti ti-trash",className:"text-danger",visible:e=>e.isActive},{type:"activate",label:"Activate",icon:"ti ti-check",className:"text-success",visible:e=>!e.isActive},{type:"activate",label:"Activated",icon:"ti ti-check",className:"text-success"}]);ngOnInit(){this.loadCountries(this.queryState.getQuery())}loadCountries(e){this.loading.set(!0),this.countryApi.getCountryDataTable(e).pipe(C(()=>{this.loading.set(!1)})).subscribe({next:t=>{if(console.log("Country data loaded:",t),t.draw!==this.queryState.getQuery().draw)return;let a=t.rows.map((r,o)=>y(p({},r),{serialNumber:(e.page-1)*e.pageSize+o+1}));this.countries.set(a),this.totalRecords.set(t.total),this.filteredRecords.set(t.filtered)},error:t=>{console.error("Unable to load countries.",t),this.countries.set([]),this.totalRecords.set(0),this.filteredRecords.set(0)}})}onSearch(e){let t=this.queryState.setSearch(e.trim());this.loadCountries(t)}onPageChange(e){let t=this.queryState.setPage(e);this.loadCountries(t)}onSortChange(e){let t=this.queryState.setSort(e);this.loadCountries(t)}onRefresh(){let e=this.queryState.getQuery(),t=y(p({},e),{draw:e.draw+1});this.loadCountries(t)}onReset(){let e=this.queryState.reset();this.loadCountries(e)}onActionClick(e){let t=e.action.type,a=e.row;switch(t){case"view":this.viewCountry(a);break;case"edit":this.editCountry(a);break;case"delete":this.deleteCountry(a);break;case"activate":this.activateCountry(a);break}}viewCountry(e){console.log("Viewing country:",e)}editCountry(e){console.log("Editing country:",e)}deleteCountry(e){console.log("Deleting country:",e)}activateCountry(e){console.log("Activating country:",e)}getFlagUrl(e){let t=e?.trim().toLowerCase();return t&&/^[a-z]{2}$/.test(t)?`https://flagcdn.com/24x18/${t}.png`:""}onFlagError(e){let t=e.target;t.style.display="none"}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=T({type:n,selectors:[["country-list"]],decls:2,vars:11,consts:[["title","Countries","buttonTitle","Add Country","searchPlaceholder","Search countries...",3,"searchChanged","pageChanged","sortChanged","actionClicked","columns","rows","actions","loading","totalRecords","pageIndex","pageSize","pageSizeOptions","showSearch","searchDebounceTime"],["appDataTableCell","name"],[1,"flex","items-center","gap-2"],[1,"w-6","h-[18px]","object-cover","rounded-sm","shrink-0",3,"src","alt"],[1,"font-semibold"],[1,"w-6","h-[18px]","object-cover","rounded-sm","shrink-0",3,"error","src","alt"]],template:function(t,a){t&1&&(l(0,"app-data-table",0),h("searchChanged",function(o){return a.onSearch(o)})("pageChanged",function(o){return a.onPageChange(o)})("sortChanged",function(o){return a.onSortChange(o)})("actionClicked",function(o){return a.onActionClick(o)}),D(1,M,4,2,"ng-template",1),d()),t&2&&b("columns",a.columns())("rows",a.countries())("actions",a.actions())("loading",a.loading())("totalRecords",a.totalRecords())("pageIndex",a.queryState.pageIndex())("pageSize",a.queryState.pageSize())("pageSizeOptions",k(10,Q))("showSearch",!0)("searchDebounceTime",300)},dependencies:[O,q],encapsulation:2})};export{P as CountryList};