@erpsquad/common 1.8.137 → 1.8.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hooks/index.esm.js +156 -1
- package/dist/hooks/index.esm.js.map +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/index.js.map +1 -1
- package/dist/index.esm.js +3 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/src/hooks/index.d.ts +1 -0
- package/package.json +1 -1
package/dist/hooks/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("moment"),r=require("../useAuth-CAGdM4-_.js"),t=require("lodash"),a=require("libphonenumber-js"),s=require("../use-permissions-BvWyxCIi.js"),n=require("react"),l=require("react-i18next"),i=require("../translations-BBmXEo-m.js"),o=require("../modules-DPYgAr7T.js"),u=require("../common-BIh2EW0W.js"),c=require("../ERPUIProvider-Cb9M5U8E.js"),d=require("../useLangauge-W2BwdTim.js"),p=require("../all-language-XhvdjcQg.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=/* @__PURE__ */v(e),g=/* @__PURE__ */v(t);const h=e=>()=>Promise.resolve([]),f=h(),y=h(),b=h(),_=h(),E=h(),x=h(),C=h(),S=h(),k=h(),T=h(),A=h(),I=h(),L=h(),V=h(),O=h(),w=h(),R=h(),N=h(),$=h(),F=h(),M=h(),j=h(),q=(e,r,t)=>g.default.orderBy(e,r,t);function W(e,r){return r.some(r=>e.includes(r))}const U={company:E,items:A,currency:x,salesperson:$,party:L,department:S,location:I,uom:j,discountedItems:k,taxTemplate:M,paymentTerm:O,incoTerms:T,shippingRules:F,bins:y,agreement:f,accounts:_,invoices:w,purchaseOrderReceipts:R,representatives:N,industry:V,categoryItems:b,customerSegment:C,countries:a.getCountries},H={STEEL_DENSITY:7.85,LENGTH_CONVERSION_FACTOR:1e3,TUBE_CALCULATION_FACTOR:.024662,COIL_WEIGHTS:{GI:2879.95,HR:2356.59}},D=e=>{if(null==e||""===e)return{value:0,isValid:!1,error:"Empty value"};const r="string"==typeof e?parseFloat(e.trim()):Number(e);return isNaN(r)?{value:0,isValid:!1,error:"Invalid number format"}:isFinite(r)?{value:r,isValid:!0}:{value:0,isValid:!1,error:"Number is not finite"}},P=(...e)=>e.every(e=>{const r=D(e);return r.isValid&&r.value>0}),G=e=>e?["face_width","bending","height","total_width","boards_thickness","boards_length","steel_length","steel_width","steel_thickness","steel_type","tube_type","tube_od","shape_width","shape_height","material_thickness","material_length"].map(r=>`${r}:${e[r]??""}`).join("|"):"empty";let B="",Y=!1,z=!0;const K={fallbackOrder:["en","en-US",p.DEFAULT_LANG],enableConsoleWarnings:!0,retryOnError:!1,maxRetries:3};exports.useAuth=r.useAuth,exports.useDeepMemo=s.useDeepMemo,exports.useLocationFilter=s.useLocationFilter,exports.useMultipleLocationFilters=s.useMultipleLocationFilters,exports.usePages=s.usePages,exports.usePermissions=s.usePermissions,exports.apiHelper=c.apiHelper,exports.useDataFetcher=c.useGenericDataFetcher,exports.useLanguage=d.useLanguage,exports.apiType=U,exports.capitalizeWords=function(e){return e?e.split(" ").map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(" "):""},exports.convertEmptyToNull=function e(r){return Object.entries(r).reduce((r,[t,a])=>(""===a||Array.isArray(a)&&0===a.length||"object"==typeof a&&null!==a&&!Array.isArray(a)&&0===Object.keys(a).length?r[t]=null:Array.isArray(a)?r[t]=a.map(r=>"object"==typeof r&&null!==r?e(r):r):r[t]="object"==typeof a&&null!==a?e(a):a,r),{})},exports.defaultUserCurrency=()=>{var e;const{user:t}=r.useAuth();return(null==(e=null==t?void 0:t.currency_data)?void 0:e.symbol)||""},exports.formatNumber=(e,r="$")=>e>=1e6?`${r} ${(e/1e6).toFixed(1)} M`:e>=1e5?`${r} ${(e/1e5).toFixed(1)} L`:e>=1e3?`${(e/1e3).toFixed(1)} K`:`${r} ${e.toFixed(2)}`,exports.formatTime=function(e,r="HH:mm:ss"){if(!e)return;const t=new Date(e),a=e=>(e<10?"0":"")+e,s=t.getHours(),n=t.getMinutes(),l=t.getSeconds();if("HH:mm:ss"===r)return`${a(s)}:${a(n)}:${a(l)}`;if("HH:mm"===r)return`${a(s)}:${a(n)}`;if("hh:mm A"===r){const e=s>=12?"PM":"AM";return`${a(s%12||12)}:${a(n)} ${e}`}return t.toTimeString().slice(0,8)},exports.formateDate=function(e,r="DD-MM-YYYY"){if(e)return m.default(e).format(r)},exports.getAvailableSteelTypes=()=>Object.keys(H.COIL_WEIGHTS),exports.getAvailableTubeTypes=()=>["Round","Square","Rectangle"],exports.recursiveSort=function e(r,t,a,s){if(!t.length)return q(r,a,s);const[n,...l]=t;return null==r?void 0:r.map(r=>({...r,[n]:e(r[n],l||[],a,s)}))},exports.removeExtraKeys=function e(r,t=[]){const a=["_at","_by","_data","created_user","updated_user",...t];for(const s in r)W(s,a)?delete r[s]:"object"!=typeof r[s]||Array.isArray(r[s])||e(r[s],["_at","_by","_data"]);return r},exports.sortData=q,exports.useApi=function(){const[e,r]=n.useState(!1),[t,a]=n.useState(null);return{callApi:n.useCallback(async({apiFunc:e,onSuccess:s,onError:n,successMessage:l,errorMessage:i,loadingState:o,enableLoading:c=!0,showError:d=!0})=>{c&&r(!0),null==o||o(!0);const p=await e();return c&&r(!1),null==o||o(!1),function({res:e,callBack:r,showError:t=!0,errorCallback:a,succsessMessage:s=null}){var n,l;if("rejected"===(null==(n=null==e?void 0:e.meta)?void 0:n.requestStatus)){const r=(()=>{var r;try{return(null==(r=e.error)?void 0:r.message)?JSON.parse(e.error.message):null}catch{return{message:"Something went wrong"}}})(),s=(null==(l=null==r?void 0:r.message)?void 0:l.replace("Error:","").trim())||"Something went wrong";return t&&u.enqueueSnackbar(s,{variant:"error"}),void(a&&"function"==typeof a&&a(s))}s&&u.enqueueSnackbar(s),r&&"function"==typeof r&&r()}({res:p,callBack:()=>{null==s||s(p)},errorCallback:e=>{null==n||n(p),a(i||e)},succsessMessage:l,showError:d}),{response:p,error:t}},[]),loading:e,error:t}},exports.useAppTranslations=()=>{const[e,r]=n.useState(z),t=window.location,{t:a}=l.useTranslation();return n.useEffect(()=>{const e=o.modules(a),s=t.pathname.toLowerCase(),n=e.find(e=>{var r;return e.link.toLowerCase()===s||(null==(r=e.connectedRoutes)?void 0:r.some(e=>s.startsWith(e.toLowerCase())))});let l=[];if((null==n?void 0:n.translationModule)?l=[...n.translationModule,"common"]:n||"/dashboard"!==s||(l=["common"]),l.length>0){const e=[...l].sort().join(",");if(B===e||Y)return void(z&&(r(!1),z=!1));Y=!0,B=e,r(!0),i.loadModuleTranslations(l).finally(()=>{Y=!1,r(!1),z=!1})}else z&&(r(!1),z=!1)},[t.pathname,a]),{isLoading:e}},exports.useLanguageFallback=(e={})=>{const r={...K,...e},[t,a]=n.useState(0),s=(e,r)=>e.some(e=>e.code===r);return{findBestAvailableLanguage:(e,t)=>{if(!e||0===e.length)return r.enableConsoleWarnings,{code:"en",label:"English",direction:"ltr"};if(t){const a=e.find(e=>e.code===t);if(a)return a;r.enableConsoleWarnings}for(const s of r.fallbackOrder){const t=e.find(e=>e.code===s);if(t)return r.enableConsoleWarnings,t}const a=e.find(e=>"en"===e.code);return a?(r.enableConsoleWarnings,a):(r.enableConsoleWarnings,e[0]||{code:"en",label:"English",direction:"ltr"})},createEmergencyFallback:()=>({code:"en",label:"English",direction:"ltr"}),createEnglishFallback:()=>({code:"en",label:"English",direction:"ltr"}),validateLanguageCode:s,getSavedLanguage:e=>{const t=localStorage.getItem("_language");return t?s(e,t)?t:(r.enableConsoleWarnings,null):null},ensureEnglishAvailable:e=>e.some(e=>"en"===e.code)?e:[{code:"en",label:"English",direction:"ltr"},...e],shouldRetry:()=>r.retryOnError&&t<r.maxRetries,incrementRetry:()=>{a(e=>e+1)},resetRetry:()=>{a(0)},retryCount:t,config:r}},exports.useLanguageState=()=>{const[e,r]=n.useState(!1),[t,a]=n.useState(!1),[s,l]=n.useState(null);return{isInitialized:e,hasError:t,errorMessage:s,markInitialized:()=>r(!0),setError:e=>{a(!0),l(e)},clearError:()=>{a(!1),l(null)}}},exports.useMaterialCalculations=e=>n.useMemo(()=>{if(!e)return{totalWidth:0,materialUnit:0,boardsWeight:0,steelWeight:0,materialWeight:0};const r=(e=>{const{face_width:r,bending:t,height:a}=e;if(!P(r,t,a))return{value:0,isValid:!1,error:"Invalid input values for boards total width calculation"};const s=D(r),n=D(t),l=D(a);return[s,n,l].every(e=>e.isValid)?{value:2*(l.value+n.value)+s.value,isValid:!0}:{value:0,isValid:!1,error:"Failed to parse input values"}})(e),t=(e=>{const{steel_type:r}=e;return r?r in H.COIL_WEIGHTS?{value:H.COIL_WEIGHTS[r],isValid:!0}:{value:0,isValid:!1,error:`Unsupported steel type: ${r}`}:{value:0,isValid:!1,error:"Steel type not specified"}})(e),a=(e=>{const{total_width:r,boards_thickness:t,boards_length:a}=e;if(!P(r,t,a))return{value:0,isValid:!1,error:"Invalid input values for boards weight calculation"};const s=D(r),n=D(t),l=D(a);return[s,n,l].every(e=>e.isValid)?{value:s.value*n.value*(l.value/H.LENGTH_CONVERSION_FACTOR)*H.STEEL_DENSITY,isValid:!0}:{value:0,isValid:!1,error:"Failed to parse input values"}})(e),s=(e=>{const{steel_length:r,steel_width:t,steel_thickness:a}=e;if(!P(r,t,a))return{value:0,isValid:!1,error:"Invalid input values for steel weight calculation"};const s=D(r),n=D(t),l=D(a);return[s,n,l].every(e=>e.isValid)?{value:s.value*n.value*l.value*H.STEEL_DENSITY/H.LENGTH_CONVERSION_FACTOR,isValid:!0}:{value:0,isValid:!1,error:"Failed to parse input values"}})(e),n=(e=>{const{tube_type:r,tube_od:t,shape_width:a,shape_height:s,material_thickness:n,material_length:l}=e;if(!r)return{value:0,isValid:!1,error:"Tube type not specified"};const i=D(n),o=D(l);if(!i.isValid||!o.isValid)return{value:0,isValid:!1,error:"Invalid thickness or length values"};let u=0;switch(r){case"Round":{const e=D(t);if(!e.isValid||e.value<=i.value)return{value:0,isValid:!1,error:"Invalid outer diameter for round tube"};u=(e.value-i.value)*i.value*H.TUBE_CALCULATION_FACTOR*o.value;break}case"Square":case"Rectangle":{const e=D(a),r=D(s);if(!e.isValid||!r.isValid)return{value:0,isValid:!1,error:"Invalid width or height for rectangular tube"};u=(2*(e.value+r.value)/Math.PI-i.value)*i.value*H.TUBE_CALCULATION_FACTOR*o.value;break}default:return{value:0,isValid:!1,error:`Unsupported tube type: ${r}`}}return{value:Math.max(0,u),isValid:!0}})(e);return"development"===process.env.NODE_ENV&&[r,t,a,s,n].filter(e=>!e.isValid&&e.error).forEach(e=>{}),{totalWidth:r.value,materialUnit:t.value,boardsWeight:a.value,steelWeight:s.value,materialWeight:n.value}},[G(e)]),exports.useNameSkuUniquenessCheck=({fieldPrefix:e,formMethods:r,data:t})=>{const{watch:a=()=>{},setError:s=()=>{}}=r||{},l=a(e),i=null==t?void 0:t.name,o=null==t?void 0:t.sku;return{checkNameAndSkuUniqueness:n.useCallback(async()=>{let r=!0;try{if(i===(null==l?void 0:l.name)&&o===(null==l?void 0:l.sku))return!0;const a=await u.checkSkuAndItemName({name:null==l?void 0:l.name,sku:null==l?void 0:l.sku,...(null==t?void 0:t.id)&&{id:null==t?void 0:t.id}});return a.name&&(s(`${e}.name`,{message:"Name already exists",type:"manual",ref:`${e}.name`}),r=!1),a.sku&&(s(`${e}.sku`,{message:"SKU already exists",type:"manual",ref:`${e}.sku`}),r=!1),r}catch(a){return r}},[null==l?void 0:l.name,null==l?void 0:l.sku,s])}},exports.useReduxIntegration=()=>{const{useRedux:e,apiClient:r}=c.useERPUI();return{useRedux:e,apiClient:r,useConditionalRedux:(r,t)=>{if(!e)return t;try{return r()}catch(a){return t}},conditionalDispatch:r=>{if(!e)return Promise.resolve();try{const{useAppDispatch:e}=require("../redux/hooks");return e()(r)}catch(t){return Promise.reject(t)}}}},exports.validateFormValues=e=>{const r=[],{tube_type:t,steel_type:a}=e;return a&&!(a in H.COIL_WEIGHTS)&&r.push(`Invalid steel type: ${a}`),t&&!["Round","Square","Rectangle"].includes(t)&&r.push(`Invalid tube type: ${t}`),{isValid:0===r.length,errors:r}},exports.valueWithCurrency=e=>{var t;const{user:a}=r.useAuth();if(e)return`${(null==(t=null==a?void 0:a.currency_data)?void 0:t.symbol)||""} ${e}`};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("moment"),t=require("../useAuth-CAGdM4-_.js"),r=require("lodash"),n=require("libphonenumber-js"),a=require("../use-permissions-BvWyxCIi.js"),s=require("react"),i=require("react-i18next"),l=require("../translations-BBmXEo-m.js"),o=require("../modules-DPYgAr7T.js"),u=require("../common-BIh2EW0W.js"),c=require("../ERPUIProvider-Cb9M5U8E.js"),d=require("../useLangauge-W2BwdTim.js"),p=require("../all-language-XhvdjcQg.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=/* @__PURE__ */v(e),f=/* @__PURE__ */v(r);const g=e=>()=>Promise.resolve([]),h=g(),y=g(),_=g(),b=g(),x=g(),E=g(),S=g(),k=g(),C=g(),A=g(),T=g(),$=g(),V=g(),w=g(),L=g(),O=g(),F=g(),I=g(),N=g(),R=g(),j=g(),q=g(),M=(e,t,r)=>f.default.orderBy(e,t,r);function U(e,t){return t.some(t=>e.includes(t))}const W={company:x,items:T,currency:E,salesperson:N,party:V,department:k,location:$,uom:q,discountedItems:C,taxTemplate:j,paymentTerm:L,incoTerms:A,shippingRules:R,bins:y,agreement:h,accounts:b,invoices:O,purchaseOrderReceipts:F,representatives:I,industry:w,categoryItems:_,customerSegment:S,countries:n.getCountries},D={STEEL_DENSITY:7.85,LENGTH_CONVERSION_FACTOR:1e3,TUBE_CALCULATION_FACTOR:.024662,COIL_WEIGHTS:{GI:2879.95,HR:2356.59}},H=e=>{if(null==e||""===e)return{value:0,isValid:!1,error:"Empty value"};const t="string"==typeof e?parseFloat(e.trim()):Number(e);return isNaN(t)?{value:0,isValid:!1,error:"Invalid number format"}:isFinite(t)?{value:t,isValid:!0}:{value:0,isValid:!1,error:"Number is not finite"}},P=(...e)=>e.every(e=>{const t=H(e);return t.isValid&&t.value>0}),G=e=>e?["face_width","bending","height","total_width","boards_thickness","boards_length","steel_length","steel_width","steel_thickness","steel_type","tube_type","tube_od","shape_width","shape_height","material_thickness","material_length"].map(t=>`${t}:${e[t]??""}`).join("|"):"empty";let B="",z=!1,J=!0;const Y={fallbackOrder:["en","en-US",p.DEFAULT_LANG],enableConsoleWarnings:!0,retryOnError:!1,maxRetries:3};function K(){const[e,t]=s.useState(!1),[r,n]=s.useState(null);return{callApi:s.useCallback(async({apiFunc:e,onSuccess:a,onError:s,successMessage:i,errorMessage:l,loadingState:o,enableLoading:c=!0,showError:d=!0})=>{c&&t(!0),null==o||o(!0);const p=await e();return c&&t(!1),null==o||o(!1),function({res:e,callBack:t,showError:r=!0,errorCallback:n,succsessMessage:a=null}){var s,i;if("rejected"===(null==(s=null==e?void 0:e.meta)?void 0:s.requestStatus)){const t=(()=>{var t;try{return(null==(t=e.error)?void 0:t.message)?JSON.parse(e.error.message):null}catch{return{message:"Something went wrong"}}})(),a=(null==(i=null==t?void 0:t.message)?void 0:i.replace("Error:","").trim())||"Something went wrong";return r&&u.enqueueSnackbar(a,{variant:"error"}),void(n&&"function"==typeof n&&n(a))}a&&u.enqueueSnackbar(a),t&&"function"==typeof t&&t()}({res:p,callBack:()=>{null==a||a(p)},errorCallback:e=>{null==s||s(p),n(l||e)},succsessMessage:i,showError:d}),{response:p,error:r}},[]),loading:e,error:r}}let Q={};const X=({control:e,setValue:t,fieldToUpdate:r,transformResponse:n,watch:a,fieldArrayName:i,companyField:l="company_id",locationField:o="location_id",departmentField:c="department_id",customDependencies:d=[]})=>{const{callApi:p}=K(),[v,m]=s.useState(null),f=i?`${i}.${l}`:l,g=i?`${i}.${o}`:o,h=i?`${i}.${c}`:c,y=(null==a?void 0:a(`${i}`))||{},_=(null==y?void 0:y[l])||null,b=(null==y?void 0:y[o])||null,x=(null==y?void 0:y[c])||null;s.useEffect(()=>{if(a&&!v){const e={[l]:_,[o]:b,[c]:x},t={};Object.keys(r).forEach(e=>{const r=i?`${i}.${e}`:e;t[e]=a(r)}),m({filters:e,values:t})}},[a,_,b,x,v,f,g,h]);const E=s.useCallback(e=>{if(!t||!e)return;const a=n?n(e):e;a&&Object.entries(r).forEach(([e,r])=>{const n=null==a?void 0:a.find(e=>(null==e?void 0:e.config_key)==("object"==typeof r?r.key:r));null!=n&&("object"==typeof r?r.value((null==n?void 0:n.reference_id)||(null==n?void 0:n.reference_text)):t(i?`${i}.${e}`:e,(null==n?void 0:n.reference_id)||(null==n?void 0:n.reference_text)))})},[t,r,n,i,...d]),S=s.useCallback(async()=>{var e,r,n;if(!_||!v)return;if(JSON.stringify(null==(e=null==v?void 0:v.filters)?void 0:e[l])===JSON.stringify(_)&&JSON.stringify(null==(r=null==v?void 0:v.filters)?void 0:r[o])===JSON.stringify(b)&&JSON.stringify(null==(n=null==v?void 0:v.filters)?void 0:n[c])===JSON.stringify(x))return void Object.entries(v.values).forEach(([e,r])=>{null==t||t(i?`${i}.${e}`:e,r)});const a=`(company_id.eq=${_||1}&location_id.eq=${b||null}&department_id.eq=${x||null})`;p({apiFunc:()=>(async e=>await(async(e,t)=>{const r=new URLSearchParams;["skip","limit","order","filters","search","select"].forEach(e=>{var n;t[e]&&(Array.isArray(t[e])?t[e].forEach(t=>{r.append(e,t)}):r.append(e,(null==(n=t[e])?void 0:n.toString())||"")),delete t[e]});const n={...Q};void 0!==t["x-token"]&&(n["x-token"]=t["x-token"],delete t["x-token"]),void 0!==t["x-timezone"]&&(n["x-timezone"]=t["x-timezone"],delete t["x-timezone"]);const a=await fetch(`/v1/settings/configurations?${r.toString()}`,{headers:n});if(!a.ok)throw new Error(await a.text());return await a.json()})(0,e))({...u.getToken(),filters:a}),onSuccess:e=>{var t;E(null==(t=null==e?void 0:e.data)?void 0:t.configuration_list)},onError:e=>{}})},[_,b,x,v,p,t]);return s.useEffect(()=>{S()},[S]),{selectedCompany:_,selectedLocation:b,selectedDepartment:x}};exports.useAuth=t.useAuth,exports.useDeepMemo=a.useDeepMemo,exports.useLocationFilter=a.useLocationFilter,exports.useMultipleLocationFilters=a.useMultipleLocationFilters,exports.usePages=a.usePages,exports.usePermissions=a.usePermissions,exports.apiHelper=c.apiHelper,exports.useDataFetcher=c.useGenericDataFetcher,exports.useLanguage=d.useLanguage,exports.apiType=W,exports.capitalizeWords=function(e){return e?e.split(" ").map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(" "):""},exports.convertEmptyToNull=function e(t){return Object.entries(t).reduce((t,[r,n])=>(""===n||Array.isArray(n)&&0===n.length||"object"==typeof n&&null!==n&&!Array.isArray(n)&&0===Object.keys(n).length?t[r]=null:Array.isArray(n)?t[r]=n.map(t=>"object"==typeof t&&null!==t?e(t):t):t[r]="object"==typeof n&&null!==n?e(n):n,t),{})},exports.defaultUserCurrency=()=>{var e;const{user:r}=t.useAuth();return(null==(e=null==r?void 0:r.currency_data)?void 0:e.symbol)||""},exports.formatNumber=(e,t="$")=>e>=1e6?`${t} ${(e/1e6).toFixed(1)} M`:e>=1e5?`${t} ${(e/1e5).toFixed(1)} L`:e>=1e3?`${(e/1e3).toFixed(1)} K`:`${t} ${e.toFixed(2)}`,exports.formatTime=function(e,t="HH:mm:ss"){if(!e)return;const r=new Date(e),n=e=>(e<10?"0":"")+e,a=r.getHours(),s=r.getMinutes(),i=r.getSeconds();if("HH:mm:ss"===t)return`${n(a)}:${n(s)}:${n(i)}`;if("HH:mm"===t)return`${n(a)}:${n(s)}`;if("hh:mm A"===t){const e=a>=12?"PM":"AM";return`${n(a%12||12)}:${n(s)} ${e}`}return r.toTimeString().slice(0,8)},exports.formateDate=function(e,t="DD-MM-YYYY"){if(e)return m.default(e).format(t)},exports.getAvailableSteelTypes=()=>Object.keys(D.COIL_WEIGHTS),exports.getAvailableTubeTypes=()=>["Round","Square","Rectangle"],exports.recursiveSort=function e(t,r,n,a){if(!r.length)return M(t,n,a);const[s,...i]=r;return null==t?void 0:t.map(t=>({...t,[s]:e(t[s],i||[],n,a)}))},exports.removeExtraKeys=function e(t,r=[]){const n=["_at","_by","_data","created_user","updated_user",...r];for(const a in t)U(a,n)?delete t[a]:"object"!=typeof t[a]||Array.isArray(t[a])||e(t[a],["_at","_by","_data"]);return t},exports.sortData=M,exports.useAccountingSetting=({fieldToUpdate:e,fieldArrayName:t,companyField:r="company_id",locationField:n="location_id",departmentField:a="department_id",formMethods:s,customDependencies:i=[]})=>{const{setValue:l,control:o,watch:u}=s||{};return X({control:o,setValue:l,watch:u,companyField:r,locationField:n,departmentField:a,fieldToUpdate:e,fieldArrayName:t,customDependencies:i})},exports.useApi=K,exports.useAppTranslations=()=>{const[e,t]=s.useState(J),r=window.location,{t:n}=i.useTranslation();return s.useEffect(()=>{const e=o.modules(n),a=r.pathname.toLowerCase(),s=e.find(e=>{var t;return e.link.toLowerCase()===a||(null==(t=e.connectedRoutes)?void 0:t.some(e=>a.startsWith(e.toLowerCase())))});let i=[];if((null==s?void 0:s.translationModule)?i=[...s.translationModule,"common"]:s||"/dashboard"!==a||(i=["common"]),i.length>0){const e=[...i].sort().join(",");if(B===e||z)return void(J&&(t(!1),J=!1));z=!0,B=e,t(!0),l.loadModuleTranslations(i).finally(()=>{z=!1,t(!1),J=!1})}else J&&(t(!1),J=!1)},[r.pathname,n]),{isLoading:e}},exports.useFormFieldUpdater=X,exports.useLanguageFallback=(e={})=>{const t={...Y,...e},[r,n]=s.useState(0),a=(e,t)=>e.some(e=>e.code===t);return{findBestAvailableLanguage:(e,r)=>{if(!e||0===e.length)return t.enableConsoleWarnings,{code:"en",label:"English",direction:"ltr"};if(r){const n=e.find(e=>e.code===r);if(n)return n;t.enableConsoleWarnings}for(const a of t.fallbackOrder){const r=e.find(e=>e.code===a);if(r)return t.enableConsoleWarnings,r}const n=e.find(e=>"en"===e.code);return n?(t.enableConsoleWarnings,n):(t.enableConsoleWarnings,e[0]||{code:"en",label:"English",direction:"ltr"})},createEmergencyFallback:()=>({code:"en",label:"English",direction:"ltr"}),createEnglishFallback:()=>({code:"en",label:"English",direction:"ltr"}),validateLanguageCode:a,getSavedLanguage:e=>{const r=localStorage.getItem("_language");return r?a(e,r)?r:(t.enableConsoleWarnings,null):null},ensureEnglishAvailable:e=>e.some(e=>"en"===e.code)?e:[{code:"en",label:"English",direction:"ltr"},...e],shouldRetry:()=>t.retryOnError&&r<t.maxRetries,incrementRetry:()=>{n(e=>e+1)},resetRetry:()=>{n(0)},retryCount:r,config:t}},exports.useLanguageState=()=>{const[e,t]=s.useState(!1),[r,n]=s.useState(!1),[a,i]=s.useState(null);return{isInitialized:e,hasError:r,errorMessage:a,markInitialized:()=>t(!0),setError:e=>{n(!0),i(e)},clearError:()=>{n(!1),i(null)}}},exports.useMaterialCalculations=e=>s.useMemo(()=>{if(!e)return{totalWidth:0,materialUnit:0,boardsWeight:0,steelWeight:0,materialWeight:0};const t=(e=>{const{face_width:t,bending:r,height:n}=e;if(!P(t,r,n))return{value:0,isValid:!1,error:"Invalid input values for boards total width calculation"};const a=H(t),s=H(r),i=H(n);return[a,s,i].every(e=>e.isValid)?{value:2*(i.value+s.value)+a.value,isValid:!0}:{value:0,isValid:!1,error:"Failed to parse input values"}})(e),r=(e=>{const{steel_type:t}=e;return t?t in D.COIL_WEIGHTS?{value:D.COIL_WEIGHTS[t],isValid:!0}:{value:0,isValid:!1,error:`Unsupported steel type: ${t}`}:{value:0,isValid:!1,error:"Steel type not specified"}})(e),n=(e=>{const{total_width:t,boards_thickness:r,boards_length:n}=e;if(!P(t,r,n))return{value:0,isValid:!1,error:"Invalid input values for boards weight calculation"};const a=H(t),s=H(r),i=H(n);return[a,s,i].every(e=>e.isValid)?{value:a.value*s.value*(i.value/D.LENGTH_CONVERSION_FACTOR)*D.STEEL_DENSITY,isValid:!0}:{value:0,isValid:!1,error:"Failed to parse input values"}})(e),a=(e=>{const{steel_length:t,steel_width:r,steel_thickness:n}=e;if(!P(t,r,n))return{value:0,isValid:!1,error:"Invalid input values for steel weight calculation"};const a=H(t),s=H(r),i=H(n);return[a,s,i].every(e=>e.isValid)?{value:a.value*s.value*i.value*D.STEEL_DENSITY/D.LENGTH_CONVERSION_FACTOR,isValid:!0}:{value:0,isValid:!1,error:"Failed to parse input values"}})(e),s=(e=>{const{tube_type:t,tube_od:r,shape_width:n,shape_height:a,material_thickness:s,material_length:i}=e;if(!t)return{value:0,isValid:!1,error:"Tube type not specified"};const l=H(s),o=H(i);if(!l.isValid||!o.isValid)return{value:0,isValid:!1,error:"Invalid thickness or length values"};let u=0;switch(t){case"Round":{const e=H(r);if(!e.isValid||e.value<=l.value)return{value:0,isValid:!1,error:"Invalid outer diameter for round tube"};u=(e.value-l.value)*l.value*D.TUBE_CALCULATION_FACTOR*o.value;break}case"Square":case"Rectangle":{const e=H(n),t=H(a);if(!e.isValid||!t.isValid)return{value:0,isValid:!1,error:"Invalid width or height for rectangular tube"};u=(2*(e.value+t.value)/Math.PI-l.value)*l.value*D.TUBE_CALCULATION_FACTOR*o.value;break}default:return{value:0,isValid:!1,error:`Unsupported tube type: ${t}`}}return{value:Math.max(0,u),isValid:!0}})(e);return"development"===process.env.NODE_ENV&&[t,r,n,a,s].filter(e=>!e.isValid&&e.error).forEach(e=>{}),{totalWidth:t.value,materialUnit:r.value,boardsWeight:n.value,steelWeight:a.value,materialWeight:s.value}},[G(e)]),exports.useNameSkuUniquenessCheck=({fieldPrefix:e,formMethods:t,data:r})=>{const{watch:n=()=>{},setError:a=()=>{}}=t||{},i=n(e),l=null==r?void 0:r.name,o=null==r?void 0:r.sku;return{checkNameAndSkuUniqueness:s.useCallback(async()=>{let t=!0;try{if(l===(null==i?void 0:i.name)&&o===(null==i?void 0:i.sku))return!0;const n=await u.checkSkuAndItemName({name:null==i?void 0:i.name,sku:null==i?void 0:i.sku,...(null==r?void 0:r.id)&&{id:null==r?void 0:r.id}});return n.name&&(a(`${e}.name`,{message:"Name already exists",type:"manual",ref:`${e}.name`}),t=!1),n.sku&&(a(`${e}.sku`,{message:"SKU already exists",type:"manual",ref:`${e}.sku`}),t=!1),t}catch(n){return t}},[null==i?void 0:i.name,null==i?void 0:i.sku,a])}},exports.useReduxIntegration=()=>{const{useRedux:e,apiClient:t}=c.useERPUI();return{useRedux:e,apiClient:t,useConditionalRedux:(t,r)=>{if(!e)return r;try{return t()}catch(n){return r}},conditionalDispatch:t=>{if(!e)return Promise.resolve();try{const{useAppDispatch:e}=require("../redux/hooks");return e()(t)}catch(r){return Promise.reject(r)}}}},exports.validateFormValues=e=>{const t=[],{tube_type:r,steel_type:n}=e;return n&&!(n in D.COIL_WEIGHTS)&&t.push(`Invalid steel type: ${n}`),r&&!["Round","Square","Rectangle"].includes(r)&&t.push(`Invalid tube type: ${r}`),{isValid:0===t.length,errors:t}},exports.valueWithCurrency=e=>{var r;const{user:n}=t.useAuth();if(e)return`${(null==(r=null==n?void 0:n.currency_data)?void 0:r.symbol)||""} ${e}`};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|