utilzify 1.14.1 → 1.14.4
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/README.md +689 -1
- package/lib/browser/bundle.iife.js +1 -1
- package/lib/browser/bundle.umd.js +1 -1
- package/lib/cjs/_virtual/customParseFormat.js +1 -0
- package/lib/cjs/_virtual/dayjs.min.js +1 -0
- package/lib/cjs/node_modules/dayjs/dayjs.min.js +1 -0
- package/lib/cjs/node_modules/dayjs/plugin/customParseFormat.js +1 -0
- package/lib/cjs/utils/_dayjs.d.ts +3 -0
- package/lib/cjs/utils/_dayjs.d.ts.map +1 -0
- package/lib/cjs/utils/_dayjs.js +1 -0
- package/lib/cjs/utils/axios-handlers.js +1 -1
- package/lib/cjs/utils/column-parser.js +1 -1
- package/lib/cjs/utils/convert-base64-to-file.js +1 -1
- package/lib/cjs/utils/dom.js +1 -1
- package/lib/cjs/utils/excel.js +1 -1
- package/lib/cjs/utils/extract-error-message.js +1 -1
- package/lib/cjs/utils/mappers.d.ts.map +1 -1
- package/lib/cjs/utils/mappers.js +1 -1
- package/lib/cjs/utils/save-file.js +1 -1
- package/lib/cjs/utils/tools.js +1 -1
- package/lib/esm/_virtual/customParseFormat.js +1 -0
- package/lib/esm/_virtual/dayjs.min.js +1 -0
- package/lib/esm/node_modules/dayjs/dayjs.min.js +1 -0
- package/lib/esm/node_modules/dayjs/plugin/customParseFormat.js +1 -0
- package/lib/esm/utils/_dayjs.d.ts +3 -0
- package/lib/esm/utils/_dayjs.d.ts.map +1 -0
- package/lib/esm/utils/_dayjs.js +1 -0
- package/lib/esm/utils/axios-handlers.js +1 -1
- package/lib/esm/utils/column-parser.js +1 -1
- package/lib/esm/utils/convert-base64-to-file.js +1 -1
- package/lib/esm/utils/dom.js +1 -1
- package/lib/esm/utils/excel.js +1 -1
- package/lib/esm/utils/extract-error-message.js +1 -1
- package/lib/esm/utils/mappers.d.ts.map +1 -1
- package/lib/esm/utils/mappers.js +1 -1
- package/lib/esm/utils/save-file.js +1 -1
- package/lib/esm/utils/tools.js +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import o from"../node_modules/dayjs/dayjs.min.js";export{default}from"../node_modules/dayjs/dayjs.min.js";import d from"../node_modules/dayjs/plugin/customParseFormat.js";o.extend(d);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./header-generator.js";import"
|
|
1
|
+
import"./header-generator.js";import"lodash";import"./_dayjs.js";import"../node_modules/lodash/_baseGetTag.js";import"../node_modules/lodash/_stringToPath.js";import"../node_modules/lodash/_baseToString.js";import"exceljs";import{extractErrorMessage as s}from"./extract-error-message.js";import"../helpers/objects.js";const e=s=>e=>(s?.(e.data),{...e,type:"SUCCESS"}),t=(e,t=!0)=>o=>{const r=(o.message||"").trim();o.message="";const a=s(o).trim()||r,m={error:a,data:o.response?.data,status:o.response?.status,statusText:o.response?.statusText,type:"ERROR"};return e?.(o,a),t?Promise.reject(m):Promise.resolve(m)};export{t as axiosErrorHandler,e as axiosSuccessHandler};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{get as r}from"lodash";import"./_dayjs.js";import{getColumnIndex as t}from"./mappers.js";import{formatStringToFloat as n,getFormattedDate as s}from"./tools.js";import i from"../node_modules/dayjs/dayjs.min.js";const o={string(n,s,i){const o=i??null;if(!Array.isArray(n))return o;const e=t(s),a=r(n,`[${e}]`,o);return"number"==typeof a?String(a):a?String(a).trim():o},number(n,s,i){const o=i??null;if(!Array.isArray(n))return o;const e=t(s),a=String(r(n,`[${e}]`)).replace(/\s/g,"");if(!a)return o;const u=Number(a);return isNaN(u)?o:u},boolean(n,s,i){const o=i??null;if(!Array.isArray(n))return o;const e=t(s),a=r(n,`[${e}]`);return a?["TRUE","FALSE"].includes(String(a).trim().toUpperCase())?"TRUE"===a:Boolean(a):o},price(r,t,s){const i=s??null;if(!Array.isArray(r))return i;const o=this.string(r,t);if(!o)return i;const e=n(o,i);return isNaN(e)?i:e},date(r,t,n,s){const o=s??null;if(!Array.isArray(r))return o;const e=this.string(r,t);if(!e)return o;const a=i(e,n);return a.isValid()?a.toDate():o},formattedDate(r,t,n,o,e){const a=e??null;if(!Array.isArray(r))return a;const u=this.string(r,t);if(!u)return a;const l=i(u,n);return l.isValid()?s(l.toDate(),o):a}};export{o as ColumnParser};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./header-generator.js";import"
|
|
1
|
+
import"./header-generator.js";import"lodash";import"./_dayjs.js";import"../node_modules/lodash/_baseGetTag.js";import"../node_modules/lodash/_stringToPath.js";import"../node_modules/lodash/_baseToString.js";import"exceljs";import{saveFile as e}from"./save-file.js";import{checkEnvironment as o}from"./check-environment.js";import{fileConfigs as t,FileType as r}from"../helpers/objects.js";const s=(s,n="converted_file",i)=>{o("frontend");const a=t[r[i]];if(!a)throw new Error(`Invalid file type: ${i}`);const{mimeType:m,extension:d}=a,l=s.replace(/^data:.*;base64,/,""),p=window.atob(l),c=p.length,h=new Uint8Array(c);for(let e=0;e<c;e++)h[e]=p.charCodeAt(e);const j=new Blob([h],{type:m});e(j,`${n}.${d}`)};export{s as convertBase64ToFile};
|
package/lib/esm/utils/dom.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./header-generator.js";import"
|
|
1
|
+
import"./header-generator.js";import"lodash";import"./_dayjs.js";import"../node_modules/lodash/_baseGetTag.js";import"../node_modules/lodash/_stringToPath.js";import"../node_modules/lodash/_baseToString.js";import"exceljs";import{checkEnvironment as o}from"./check-environment.js";import"../helpers/objects.js";const e=e=>{o("frontend");const s=document.querySelector(e);s&&s.scrollIntoView({behavior:"smooth"})};export{e as scrollToElement};
|
package/lib/esm/utils/excel.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"exceljs";import"./header-generator.js";import"
|
|
1
|
+
import e from"exceljs";import"./header-generator.js";import"lodash";import"./_dayjs.js";import"../node_modules/lodash/_baseGetTag.js";import"../node_modules/lodash/_stringToPath.js";import"../node_modules/lodash/_baseToString.js";import{getNestedValue as t}from"./objecters.js";import{saveFile as r}from"./save-file.js";import{checkEnvironment as o}from"./check-environment.js";import{extractErrorMessage as a}from"./extract-error-message.js";import"../helpers/objects.js";class s{constructor(){o("frontend")}async readFromArrayBuffer(t,r){try{let o;o=t instanceof Buffer?t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength):await t.arrayBuffer();const a=new e.Workbook;await a.xlsx.load(o);const s=a.getWorksheet(r),n=[];return s?(s.eachRow({includeEmpty:!0},(e=>{const t=[];e.eachCell({includeEmpty:!0},(e=>{t.push(void 0!==e.value?e.value:null)})),n.push(t)})),n):[]}catch(e){return[]}}async read(t,r=1){try{const o=new e.Workbook;await o.xlsx.readFile(t);const a=o.getWorksheet(r);if(!a)throw new Error(`Excelda ${r}-raqamli jadval topilmadi. Iltimos, faylda ushbu jadval mavjudligini tekshiring.`);const s=[];return a.eachRow({includeEmpty:!0},(e=>{const t=[];e.eachCell({includeEmpty:!0},(e=>{t.push(void 0!==e.value?e.value:null)})),s.push(t)})),s}catch(e){return this.handleError(e,this.read),[]}}async write(o,a,s,n="file",i="Sheet1",l=""){try{const d=new e.Workbook,c=d.addWorksheet(i);c.addRow(a),o.forEach((e=>{const r=s.map((r=>{const o=t(e,r);return!(null==o||"null"===o||"undefined"===o||"NaN"===o||"number"==typeof o&&isNaN(o))?o:l}));c.addRow(r)}));const h=`${n}_${(new Date).toISOString().slice(0,10)}.xlsx`,m=await d.xlsx.writeBuffer(),u=new Blob([m],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});return await r(u,h),!0}catch(e){return this.handleError(e,this.write),!1}}async writeFromArray(t,o=[],a="file",s="Sheet1",n=""){try{const i=new e.Workbook,l=i.addWorksheet(s);o.length>0&&l.addRow(o),t.forEach((e=>{const t=e.map((e=>null==e||"null"===e||"undefined"===e||"NaN"===e||"number"==typeof e&&isNaN(e)?n:e));l.addRow(t)}));const d=`${a}_${(new Date).toISOString().slice(0,10)}.xlsx`,c=await i.xlsx.writeBuffer(),h=new Blob([c],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});return await r(h,d),!0}catch(e){return this.handleError(e,this.writeFromArray),!1}}handleError(e,t){const r=t.name;throw new Error(`Xatolik Excel.${r} metodida yuz berdi: ${a(e)}`)}}export{s as Excel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{stripHtmlTags as e}from"./tools.js";const r=["err.cause.message","cause.message","cause.stack","detailMessage","error_description","error.message","description","msg","message","error","errors","errorDetails","errorMessage","error_type","errorMsg","errorMessages","error_info","error_info.message","error_info.error_message","error_info.details","data.message","response.message","response.error_message","response.details","httpError","validationError","status_description","messages","alert_message","alert","userMessage","user_error","client_error","response.data.error","response.data.message","response.data.error_description","response.data.details","errorMessages[*].message","errors[*].msg","
|
|
1
|
+
import{stripHtmlTags as e}from"./tools.js";const r=["errors[*].message","err.cause.message","cause.message","cause.stack","detailMessage","error_description","error.message","description","msg","message","error","errors","errorDetails","errorMessage","error_type","errorMsg","errorMessages","error_info","error_info.message","error_info.error_message","error_info.details","data.message","response.message","response.error_message","response.details","httpError","validationError","status_description","messages","alert_message","alert","userMessage","user_error","client_error","response.data.error","response.data.message","response.data.error_description","response.data.details","errorMessages[*].message","errors[*].msg","[*].msg","[*].message"],s=e=>{if("string"==typeof e)try{return JSON.parse(e)}catch(r){return e}return e},t=(r,o,n=0,a=5)=>{if(n>a||"object"!=typeof r||null===r)return null;for(const i of o){const f=i.split(".");let l=r;for(const e of f){if(null==l)break;if("[*]"===e){if(Array.isArray(l)){for(const r of l){const s=t(r,[f.slice(f.indexOf(e)+1).join(".")],n+1,a);if(s)return s}l=null;break}l=null;break}if(e.endsWith("]")){const r=e.match(/(\w+)\[(\d+)\]/);if(r){const[,e,s]=r;l=l?.[e]?.[Number(s)]}else l=l?.[e]}else l=l?.[e]}if(l=s(l),Array.isArray(l)){const e=l.map((e=>"string"==typeof e?e:e?.message||e?.msg||"")).filter(Boolean).join("\n");if(e)return e}if("string"==typeof l)return e(l);if("object"==typeof l&&null!==l){const e=t(l,o,n+1,a);if(e)return e}}return null},o=(r,t,n=0,a=5)=>{if(n>a||"object"!=typeof r||null===r)return[];const i=[];for(const f of t){const l=f.split(".");let c=r;for(let e=0;e<l.length;e++){const r=l[e];if(null==c)break;if("[*]"===r){if(Array.isArray(c)){const r=l.slice(e+1).join(".");for(const e of c)i.push(...o(e,[r],n+1,a))}c=null;break}if(r.endsWith("]")){const e=r.match(/(\w+)\[(\d+)\]/);if(e){const[,r,s]=e;c=c?.[r]?.[Number(s)]}else c=c?.[r]}else c=c?.[r]}if(c=s(c),"string"==typeof c)i.push(e(c));else if(Array.isArray(c)){for(const r of c)if("string"==typeof r)i.push(e(r));else if("object"==typeof r){const s=r?.message||r?.msg;"string"==typeof s?i.push(e(s)):i.push(...o(r,t,n+1,a))}}else"object"==typeof c&&i.push(...o(c,t,n+1,a))}return i},n=(o,n="",a=[])=>{const i=[...a,...r];if(!o)return n;if("string"==typeof o){const r=s(o);return"object"==typeof r?t(r,i)||n:e(o)}const f=s(o?.response?.data||o?.data||o),l=t(f,i)||o?.message;return e(l||"").trim()||n},a=(e,t=[])=>{const n=[...r,...t];if(!e)return[];const a=s("string"==typeof e?e:e?.response?.data||e?.data||e);return o(a,n)};export{n as extractErrorMessage,a as extractErrorMessages};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../src/utils/mappers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["../../../src/utils/mappers.ts"],"names":[],"mappings":"AAYA,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAczD;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CActD;AAGD,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,YAAK,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,GAAE,GAAU,GAAG,GAAG,CAKjG;AAED,eAAO,MAAM,WAAW;gBACV,GAAG,EAAE,mBAAY,MAAM,eAAc,MAAM;gBAK3C,GAAG,EAAE,mBAAY,MAAM,eAAc,MAAM;iBAM1C,GAAG,EAAE,mBAAY,MAAM;kBAQtB,GAAG,EAAE,mBAAY,MAAM;iBAMxB,GAAG,EAAE,mBAAY,MAAM,gBAAgB,MAAM;0BAOpC,GAAG,EAAE,mBAAY,MAAM,iBAAiB,MAAM,gBAAgB,MAAM;CAO3F,CAAC;AAEF,eAAO,MAAM,YAAY;gBACX,GAAG,EAAE,0BAAmB,MAAM,eAAc,MAAM;gBAMlD,GAAG,EAAE,0BAAmB,MAAM,eAAc,MAAM;iBAOjD,GAAG,EAAE,0BAAmB,MAAM;kBAS7B,GAAG,EAAE,0BAAmB,MAAM;iBAM/B,GAAG,EAAE,0BAAmB,MAAM,gBAAgB,MAAM;0BAO3C,GAAG,EAAE,0BAAmB,MAAM,iBAAiB,MAAM,gBAAgB,MAAM;CAOlG,CAAC;AAGF,eAAO,MAAM,mBAAmB,YAAa,MAAM,EAAE,QAAQ,MAAM,eAAc,MAAM,KAAQ,MAI9F,CAAC;AAEF,KAAK,cAAc,GAAG,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEhD,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,WAAW,MAAM,EAAE,SAAS,CAAC,KAAG,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,GAwBtI,CAAC"}
|
package/lib/esm/utils/mappers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import t from"../node_modules/lodash/get.js";import{formatStringToFloat as r,getFormattedDate as e}from"./tools.js";import n from"
|
|
1
|
+
import t from"../node_modules/lodash/get.js";import"./_dayjs.js";import{formatStringToFloat as r,getFormattedDate as e}from"./tools.js";import n from"../node_modules/dayjs/dayjs.min.js";const o={columnIndexCache:new Map,columnNameCache:new Map};function s(t){const r=t.toUpperCase();if(o.columnIndexCache.has(r))return o.columnIndexCache.get(r);let e=0;for(let t=0;t<r.length;t++)e=26*e+(r.charCodeAt(t)-65+1);const n=e-1;return o.columnIndexCache.set(r,n),n}function c(t){if(o.columnNameCache.has(t))return o.columnNameCache.get(t);let r="";for(;t>=0;){const e=t%26;r=String.fromCharCode(65+e)+r,t=Math.floor(t/26)-1}return o.columnNameCache.set(t,r),r}function u(r=[],e,n=null){if(!Array.isArray(r))return n;const o=s(e);return t(r,`[${o}]`,n)}const a={getStr(r=[],e,n=""){const o=t(r,`[${e}]`,"");return"number"==typeof o?String(o):String(o||n).trim()},getNum(r=[],e,n=0){const o=String(t(r,`[${e}]`,"")).replace(/\s/g,"");if(!o)return n;const s=Number(o);return isNaN(s)?n:s},getBool(r=[],e,n=!1){if(!Array.isArray(r))return n;const o=t(r,`[${e}]`,n);return["TRUE","FALSE"].includes(o)?"TRUE"===o:"boolean"==typeof o?o:n},getPrice(t=[],e){const n=this.getStr(t,e);if(!n)return 0;const o=r(n);return isNaN(o)?0:o},getDate(t=[],r,e){const o=this.getStr(t,r);if(!o)return null;return n(o,e).toDate()},getDateFormatted(t=[],r,o,s){const c=this.getStr(t,r);if(!c)return null;const u=n(c,s);return o?e(u.toDate(),o):e(u.toDate())}},i={getStr(r=[],e,n=""){const o=s(e),c=t(r,`[${o}]`,"");return"number"==typeof c?String(c):String(c||n).trim()},getNum(r=[],e,n=0){const o=s(e),c=String(t(r,`[${o}]`,"")).replace(/\s/g,"");if(!c)return n;const u=Number(c);return isNaN(u)?n:u},getBool(r=[],e,n=!1){const o=s(e);if(!Array.isArray(r))return n;const c=t(r,`[${o}]`,n);return["TRUE","FALSE"].includes(c)?"TRUE"===c:"boolean"==typeof c?c:n},getPrice(t=[],e){const n=this.getStr(t,e);if(!n)return 0;const o=r(n);return isNaN(o)?0:o},getDate(t=[],r,e){const o=this.getStr(t,r);if(!o)return null;return n(o,e).toDate()},getDateFormatted(t=[],r,o,s){const c=this.getStr(t,r);if(!c)return null;const u=n(c,s);return o?e(u.toDate(),o):e(u.toDate())}},l=(t,r,e="")=>{const n=t.indexOf(r);return-1===n?e:c(n)},f=(t,r)=>{const e={},n=Object.entries(r);for(let r=0;r<t.length;r++){const o=t[r];for(const[t,s]of n){if(void 0!==e[t])continue;o===(Array.isArray(s)?s[0]:s)&&(e[t]=c(r))}}return n.forEach((([t,r])=>{const n=Array.isArray(r)?r[1]:null,o=e[t];n&&void 0===o&&(e[t]=n)})),e};export{i as ColumnMapper,a as IndexMapper,s as getColumnIndex,c as getColumnName,u as getValueByName,l as resolveHeaderColumn,f as resolveHeaderColumnMap};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./header-generator.js";import"
|
|
1
|
+
import"./header-generator.js";import"lodash";import"./_dayjs.js";import"../node_modules/lodash/_baseGetTag.js";import"../node_modules/lodash/_stringToPath.js";import"../node_modules/lodash/_baseToString.js";import"exceljs";import{checkEnvironment as e}from"./check-environment.js";import"../helpers/objects.js";const o=(o,t)=>{if(e("frontend"),window.navigator){const e=window.URL.createObjectURL(o),n=document.createElement("a");n.style.display="none",n.href=e,n.download=t,document.body.appendChild(n),n.click(),setTimeout((()=>{window.URL.revokeObjectURL(e),document.body.removeChild(n)}),1e3)}},t=async(t,n,s)=>{e("frontend");let d=t.join(";")+"\n";n.forEach((e=>{const o=t.map((o=>e[o]||"")).join(";")+"\n";d+=o}));const r=new Blob(["\ufeff"+d],{type:"text/csv; charset=utf-8"});await o(r,s.endsWith(".xls")?s:`${s}.xls`)};export{t as default,o as saveFile};
|
package/lib/esm/utils/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"
|
|
1
|
+
import"./_dayjs.js";import e from"../node_modules/dayjs/dayjs.min.js";const t=e=>new Promise((t=>setTimeout(t,e)));function r(e,t){return new Promise((r=>{setTimeout((async()=>{if(t)try{const e=await t();r(e)}catch(e){throw e}r(null)}),e)}))}const s=(e,t="en-GB",r="Asia/Tashkent")=>new Date(e).toLocaleString(t,{timeZone:r}),n=(e,t,r="en-US")=>e?.toLocaleString(r,{style:"currency",currency:t}),a=e=>{const t=Number(e?.replace(/,/g,""));return isNaN(t)?0:t},o=e=>/^(\d{1,3}(,\d{2})*(\.\d+)?)$/.test(e)||/^(\d{1,3}(,\d{3})*(\.\d+)?)$/.test(e),c=e=>parseFloat(e.replace(/,/g,"")),i=e=>parseFloat(e.replace(/\./g,"").replace(",",".")),l=(e,t=0)=>null==e?t:"number"==typeof e?e:e&&"string"==typeof e&&/[\d,.]/.test(e)?(e=e.replace(/\s/g,"").trim(),o(e)?c(e):e.includes(",")?i(e):e.includes(".")||!e.includes(",")?parseFloat(e.replace(/,/g,"")):t):t,m=(t=Date.now(),r="DD/MM/YYYY HH:mm:ss")=>{const s=e(t);return s.isValid()?s.format(r):""},d=e=>e.replace(/<[^>]*>/g,"").trim(),u=(t,r)=>e(t,r).toDate();export{t as delay,r as delayRun,n as formatCurrencyPrice,s as formatDateLocaleString,l as formatStringToFloat,m as getFormattedDate,u as getValidDate,o as isIndianFormat,i as parseEuropeanFormat,c as parseIndianFormat,a as parseSeparatedNumber,d as stripHtmlTags};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "utilzify",
|
|
3
|
-
"version": "1.14.
|
|
3
|
+
"version": "1.14.4",
|
|
4
4
|
"outputDir": "./lib",
|
|
5
5
|
"exports": {
|
|
6
6
|
"import": {
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
37
37
|
"@rollup/plugin-typescript": "^11.1.6",
|
|
38
38
|
"@types/lodash": "^4.17.15",
|
|
39
|
-
"@types/node": "^25.
|
|
39
|
+
"@types/node": "^25.8.0",
|
|
40
40
|
"autoprefixer": "^10.4.19",
|
|
41
41
|
"prettier": "^3.4.2",
|
|
42
42
|
"rimraf": "^6.0.1",
|
|
@@ -56,8 +56,8 @@
|
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
58
|
"axios": "^1.7.9",
|
|
59
|
+
"dayjs": "^1.11.13",
|
|
59
60
|
"exceljs": "^4.4.0",
|
|
60
|
-
"lodash": "^4.17.21"
|
|
61
|
-
"moment": "^2.30.1"
|
|
61
|
+
"lodash": "^4.17.21"
|
|
62
62
|
}
|
|
63
63
|
}
|