1!function(){try{("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).__faroGitHash_myeroad="5ce3e63ee526711d9fdee9e150f093852f3a7cc4"}catch(e){}}(),function(){try{("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).__faroBundleId_myeroad="10.1.5092-apac"}catch(e){}}();try{let e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="1ba1dbde-baf6-425e-875b-a8edbab289ee",e._sentryDebugIdIdentifier="sentry-dbid-1ba1dbde-baf6-425e-875b-a8edbab289ee")}catch(e){}("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{}).SENTRY_RELEASE={id:"10.1.5092-apac"},(self.webpackChunk_eroad_myeroad=self.webpackChunk_eroad_myeroad||[]).push([[1576],{41576:(e,t,a)=>{a.r(t),a.d(t,{BulkImports:()=>Re,default:()=>ze});var l=a(14041),o=a(70541),r=a(43420),n=a(37506),s=a(40421);const i=(0,s.E)("bulkUpload",e=>({fetchJobs:e.asyncAction(),setPageNumber:e.action(),setPageSize:e.action(),bulkImportDrawerOpened:e.action(),bulkImportDrawerClosed:e.action()}));var u=a(15195),d=a(93815),p=a(69225),c=a(13821),m=a(24529),b=a(18198);const f=b.$n.BULK,g=e=>e[f].bulkImportType,k=e=>e[f].jobs,y=e=>e[f].jobsQueryParams,h=e=>e[f].isFetchingJobs,E=e=>e[f].isFetchingSilently;var I=a(80601),v=a(62397),w=a(79623),T=a(28542),U=a(62009),S=a(94386),A=a(93753);var N=a(1454);const O=(0,N.wY)(e=>({root:{padding:`${e.spacing(8)}px 0`},upload:{"& .ant-upload":{display:"block",width:"100%"},"& .ant-btn":{width:"100%"}}}));var C=a(26660),x=a(53275),P=a(76866);const D=(0,N.wY)(e=>({root:{padding:`${e.spacing(3)}px 0`},filename:{marginLeft:`${e.spacing(1)}px`,color:e.colors.ragRed}}));var F=a(14041);const B=({error:e,filename:t})=>{const a=D(),{t:l}=(0,I.t)();return F.createElement(F.Fragment,null,F.createElement("div",{className:a.root},F.createElement(x.A,null),F.createElement("span",{className:a.filename,"data-testid":"filename"},t)),F.createElement(P.F,{type:"error",showIcon:!0,message:l("bulkUpload.file-upload.error-alert.title"),description:J(e)}))};function J(e){var t,a;return"string"==typeof e?e:e instanceof C.AxiosError?null==(a=null==(t=null==e?void 0:e.response)?void 0:t.data)?void 0:a.data:void 0}var M=a(14041);const R=({uploadUrl:e,uploadType:t,successHandler:a})=>{const o=(0,U.F)("bulkUpload.maximumFileSizeInMb",void 0,void 0,5),n=O(),{t:s}=(0,I.t)(),[i,u]=(0,l.useState)(),[d,p]=(0,l.useState)(!1),[c,m]=(0,l.useState)(),b=e=>{e&&(m(e),w.i.error(s("bulkUpload.file-upload.toast-message.error")))};return M.createElement(M.Fragment,null,c&&M.createElement(B,{error:c,filename:i}),M.createElement("div",{className:n.root},M.createElement(T._O,{accept:".csv",disabled:d,showUploadList:!1,beforeUpload:({name:e,size:t})=>!("number"==typeof o&&t>o*A.P4&&(u(e),b(`File size must be less than ${o}MB`),1)),customRequest:a=>{return l=[a],o=function*({file:a,onSuccess:l,onError:o}){const r=new FormData;r.append("file",a),r.append("uploadType",t);const n={url:e,data:r,headers:{"Content-Type":"multipart/form-data"},isAuth:!0,method:"POST"};p(!0);try{const e=yield(0,S.F)(n);null==l||l(e)}catch(e){p(!1),e instanceof Error&&(null==o||o(e))}},new Promise((e,t)=>{var a=e=>{try{n(o.next(e))}catch(e){t(e)}},r=e=>{try{n(o.throw(e))}catch(e){t(e)}},n=t=>t.done?e(t.value):Promise.resolve(t.value).then(a,r);n((o=o.apply(void 0,l)).next())});var l,o},onChange:({file:{name:e,error:t,status:l}})=>{switch(l){case"uploading":u(e);break;case"done":w.i.info(s("bulkUpload.file-upload.toast-message.info")),a();break;case"error":b(t)}},onClick:()=>{u(void 0),m(void 0)},className:n.upload},M.createElement(v.$,{type:"primary",loading:d,"data-testid":"file-upload-button","data-pendoid":"bulk-import-upload-file-button"},d?M.createElement(r.s,{id:"bulkUpload.file-upload.button.uploading",tagName:"span"}):M.createElement(r.s,{id:"bulkUpload.file-upload.button.select",tagName:"span"})))))};var z=a(34191),j=a(14041);const _=({fileExtension:e="csv",fileName:t="Template",url:a})=>{const l=`${t}.${e}`;return j.createElement(v.$,{"data-pendoid":"bulk-import-template-download-button",icon:j.createElement(z.A,null),type:"link",onClick:()=>function(e,t){const a=document.createElement("a");a.setAttribute("href",e),a.setAttribute("download",t),document.body.appendChild(a),a.click(),document.body.removeChild(a)}(a,l)},j.createElement(r.s,{id:"bulkUpload.template-download.button.text",tagName:"span"}))},$=(0,N.wY)(()=>({message:{margin:0},buttonMargin:{marginLeft:"5px"}
1,sampleFileDownloadButton:{"& .ant-btn-link":{padding:0,margin:0,fontSize:"14px"}},helpLink:{display:"flex",alignItems:"center","& > svg":{alignSelf:"center"},"& > span":{fontSize:"14px !important",fontWeight:"normal !important",lineHeight:"1rem !important"}}}),{name:"BulkImportDrawer"});var H=a(14041);const L={p:e=>H.createElement("p",null,e),ul:e=>H.createElement("ul",null,e),li:e=>H.createElement("li",null,e),b:e=>H.createElement("b",null,e)},q=({successAction:e})=>{var t;const a=$(),{bulkUploadTemplates:l}=(0,c.J)(),n=null!=(t=(0,o.d4)(g))?t:"",s=(0,o.wA)(),b=()=>{return e=function*(){s(i.bulkImportDrawerClosed())},new Promise((t,a)=>{var l=t=>{try{r(e.next(t))}catch(e){a(e)}},o=t=>{try{r(e.throw(t))}catch(e){a(e)}},r=e=>e.done?t(e.value):Promise.resolve(e.value).then(l,o);r((e=e.apply(void 0,null)).next())});var e},f="machine-bulk-update"===n?m.yO[n]:m.yO["general-message"],k=["machine-bulk-import","machine-bulk-update"].includes(n)?"xlsx":"csv";return H.createElement(d._s,{type:d.ts.STANDARD,open:!!n,title:n?H.createElement(r.s,{id:m.wj[n]}):null,mask:!0,onClose:b},H.createElement(d.Tm,null,H.createElement("div",{className:a.message},H.createElement(r.s,{"data-testid":"bulk-import-drawer-message",id:f,values:L})),H.createElement(p.e,{style:{borderTop:"none"}},H.createElement("span",{className:a.sampleFileDownloadButton},H.createElement(_,{"data-testid":"bulkUpload-sampleFileDownload-button",url:l[m.PC[n]],fileName:`${m.PC[n]}-TEMPLATE`,fileExtension:k})),H.createElement("a",{className:a.helpLink,target:"_blank",rel:"noreferrer","data-pendoid":"bulk-import-drawer-help-link","data-testid":"bulk-import-drawer-help-link",href:"https://help.eroad.com/nz"},H.createElement(u.A,null),H.createElement("span",{className:a.buttonMargin},H.createElement(r.s,{id:"bulkImport.drawer.help-link.text",tagName:"span"})))),H.createElement(R,{uploadUrl:m.lP,uploadType:n,successHandler:()=>{s(e),b()},"data-testid":"bulkImport-fileUpload-button"})))};var V=a(5358),Q=a(22284),Y=a(14041);const G=[{title:Y.createElement(r.s,{id:"bulkUpload.table.column.requestTime.title"}),dataIndex:"requestTime",key:"requestTime",render:e=>Y.createElement(Q.X,{value:e})},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.fileName.title"}),dataIndex:"filename",key:"fileName",width:250},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.bulkType.title"}),dataIndex:"batchType",key:"bulkType",width:250},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.numberOfItems.title"}),dataIndex:"numberOfItems",key:"numberOfItems"},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.numberOfQueuedItems.title"}),dataIndex:"numberOfQueuedItems",key:"numberOfQueuedItems"},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.numberOfFailedItems.title"}),dataIndex:"numberOfFailedItems",key:"numberOfFailedItems"},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.numberOfSuccessfulItems.title"}),dataIndex:"numberOfSuccessfulItems",key:"numberOfSuccessfulItems"},{title:Y.createElement(r.s,{id:"bulkUpload.table.column.completionTime.title"}),dataIndex:"completionTime",key:"completionTime",render:e=>Y.createElement(Q.X,{value:e})}];var K=a(14041),W=Object.defineProperty,X=Object.defineProperties,Z=Object.getOwnPropertyDescriptors,ee=Object.getOwnPropertySymbols,te=Object.prototype.hasOwnProperty,ae=Object.prototype.propertyIsEnumerable,le=(e,t,a)=>t in e?W(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a;const oe=()=>{var e;const t=Number((0,U.F)("bulkUpload.jobsTableRefreshTimerInSeconds",void 0,void 0,30)),{t:a}=(0,I.t)(),l=(0,o.wA)(),{result:n}=(0,o.d4)(k),{pageNumber:s,pageSize:u}=(0,o.d4)(y);re({pageNumber:s,pageSize:u});const d=(0,o.d4)(h),p=(0,o.d4)(E);return ne({pageNumber:s,pageSize:u,bulkJobsRefreshInterval:t}),K.createElement(K.Fragment,null,K.createElement("h3",null,K.createElement(r.s,{id:"bulkUpload.table.header"})),K.createElement(V.XI,{loading:!!d&&!p,dataSource:null==(e=null==n?void 0:n.data)?void 0:e.map(e=>{return t=((e,t)=>{for(var a in t||(t={}))te.call(t,a)&&le(e,a,t[a]);if(ee)for(var a of ee(t))ae.call(t,a)&&le(e,a,t[a]);return e})({},e),a={id:e.batchId},X(t,Z(a));var t,a}),columns:G,onPageNumberChange:e=>l(i.setPageNumber(e)),onPageSizeChange:e=>l(i.setPageSize(e)),pagination:{current:s,pageSize:u,total:n.totalRecords},locale:{emptyText:a("bulkUpload.table.empty.message")}}))},re=({pageNumber:e,pageSize:t})=>{const a=(0,o.wA)();(0,l.useEffect)(()=>{a(i.fetchJobs({pageNumber:e,pageSize:t}))},[a,e,t])},ne=({pageNumber:e,pageSize:t,bulkJobsRefreshInterval:a})=>{const r=(0,o.wA)();(0,l.useEffect)(()=>{const l=a&&setInterval(()=>r(i.fetchJobs({pageNumber:e,pageSize:t,isSilentUpdate:!0})),1e3*a);return()=>clearInterval(l)},[a,e,t,r])};var se=a(14041);const ie=({onClick:e})=>
1se.createElement(v.$,{type:"primary","data-pendoid":"select-bulk-import-type-button",onClick:e},se.createElement(r.s,{id:"bulkUpload.import-new.button.text",tagName:"span"}));var ue=a(42453),de=a(4078),pe=a(67595),ce=a(95538);const me=()=>{const{userHasAccessToGeneralBulkImport:e}=(0,ce.M)(),t=(0,pe.T)("CREATE.DEVICE"),a=(0,pe.T)("UPDATE.DEVICE");return e&&t&&a},be=()=>{const{userHasAccessToDriverBulkImport:e}=(0,ce.M)(),t=(0,pe.T)("CREATE.DRIVER"),a=(0,pe.T)("UPDATE.DRIVER");return e&&t&&a},fe=()=>{const{userHasAccessToGeneralBulkImport:e}=(0,ce.M)(),t=(0,pe.T)("CREATE.MACHINE"),a=(0,pe.T)("UPDATE.MACHINE"),l=(0,pe.T)("CREATE.FLEET"),o=(0,pe.T)("UPDATE.FLEET");return{userHasAccessToMachineCreateBulkImport:e&&t&&l&&o,userHasAccessToMachineUpdateBulkImport:e&&a&&l&&o,userHasAccessToMachineServicePlanBulkImport:e&&a}},ge=(0,N.wY)(e=>({root:{"& .ant-modal-body":{padding:"0"},"& .ant-modal-header":{borderBottom:`1px solid ${e.colors.onsurfaceGrayBorders}`}},importOptions:{listStyle:"none",paddingInlineStart:"initial"},importOptionsItem:{padding:"16px 24px",borderBottom:`1px solid ${e.colors.surfaceLevel3}`,cursor:"pointer"},importOptionItem_notAllowed:{cursor:"default"}}),{name:"SelectImportTypeModal"});var ke=a(14041);const ye=({show:e=!1,onClose:t=()=>{}})=>{const a=(0,o.wA)(),{t:l}=(0,I.t)(),n=ge(),s=(0,U.F)("bulkUpload.enableFtcBulkImport"),u=(()=>{const{userHasAccessToGeneralBulkImport:e}=(0,ce.M)(),t=(0,pe.T)("CREATE.DEVICE"),a=(0,pe.T)("UPDATE.DEVICE");return e&&t&&a})(),d={[m.uL.CREATE_MACHINE]:fe().userHasAccessToMachineCreateBulkImport,[m.uL.UPDATE_MACHINE]:fe().userHasAccessToMachineUpdateBulkImport,[m.uL.MACHINE_SERVICE_PLAN]:fe().userHasAccessToMachineServicePlanBulkImport,[m.uL.DRIVER]:be(),[m.uL.DEVICE]:me(),[m.uL.FTC]:Boolean(s&&u)},p=m.Ky.filter(e=>d[e.key]);return ke.createElement(de.a,{title:l("bulkUpload.select-import-type.modal.heading"),open:e,"data-testid":"select-import-type-modal",footer:null,onCancel:t,className:n.root},ke.createElement("ul",{className:n.importOptions},p.length?p.map(({key:e,label:l})=>ke.createElement("li",{key:e,className:n.importOptionsItem,onClick:()=>{return l=e,a(i.bulkImportDrawerOpened(l)),void t();var l}},l)):ke.createElement("li",{className:(0,ue.$)(n.importOptionsItem,n.importOptionItem_notAllowed)},ke.createElement(r.s,{id:"bulkUpload.select-import-type.modal.not-allowed"}))))};var he=a(19615),Ee=a(62664),Ie=a(83381),ve=a(90645),we=a(96711),Te=a(44013),Ue=a(89590),Se=a(74652);const Ae={jobs:Ue.AL,jobsQueryParams:Se.sw,bulkImportType:null,isFetchingJobs:!1,isFetchingSilently:!1},Ne=(0,ve.HY)({jobs:(0,s.v)([we.o.user.logout.success.reduce(()=>Ae.jobs),i.fetchJobs.request.reduce(Te.m$),i.fetchJobs.success.reduce(Te.gn),i.fetchJobs.failure.reduce(Te.C1)],Ae.jobs),isFetchingJobs:(0,s.v)([i.fetchJobs.request.reduce(()=>!0),i.fetchJobs.success.reduce(()=>!1),i.fetchJobs.failure.reduce(()=>!1)],Ae.isFetchingJobs),isFetchingSilently:(0,s.v)([i.fetchJobs.request.reduce((e,{isSilentUpdate:t=!1})=>t),i.fetchJobs.success.reduce(()=>!1),i.fetchJobs.failure.reduce(()=>!1)],Ae.isFetchingSilently),jobsQueryParams:(0,s.v)([i.setPageNumber.reduce(Se.ou),i.setPageSize.reduce(Se.On)],Ae.jobsQueryParams),bulkImportType:(0,s.v)([i.bulkImportDrawerOpened.reduce((e,t)=>t),i.bulkImportDrawerClosed.reduce(()=>Ae.bulkImportType)],Ae.bulkImportType)});var Oe=a(24392),Ce=a(76787);const xe=m.JR,Pe=({pageNumber:e,pageSize:t})=>(0,S.F)({baseURL:xe,data:{pageNumber:e,pageSize:t},method:Ce.ym.POST,url:m.H$.FETCH_JOBS});function*De({payload:e}){const{isSilentUpdate:t=!1,pageNumber:a,pageSize:l}=e;yield(0,Oe.yJ)(i.fetchJobs.request({isSilentUpdate:t,pageNumber:a,pageSize:l}));try{const e=yield(0,Oe.T1)(Pe,{pageNumber:a,pageSize:l});yield(0,Oe.yJ)(i.fetchJobs.success(e))}catch(e){yield(0,Oe.yJ)(i.fetchJobs.failure())}}const Fe={enAU:{},enNZ:JSON.parse('{"bulkImport.beta-testing.in-progress.message":"Contact your Account Manager if you\'d like to join our bulk import Early Bird users and give us valuable pre-release feedback!","bulkImport.beta-testing.in-progress.title":"Bulk import is going through final tests.","bulkImport.drawer.general.message":"Please upload your data in .csv format","bulkImport.drawer.help-link.text":"Help","bulkImport.drawer.machine-update.message":"<p>To ensure a successful update, please: </p> <ul><li>Save the file in <b>.csv</b> format.</li><li>Include existing <b>VIN</b> for registered machines, or existing <b>Display Name</b> if no VIN exists (bulk update of these fields is not supported).</li><li>Blank fields will be ignored.</li></ul>","bulkUpload.drawer.device-create-import":"Import Devices","bulkUpload.drawer.driver-create-import":"Import Drivers","bulkUpload.drawer.ftc-create-import":"Import FTC Configurations","bulkUpload.drawer.machine-create-import":"Import Machines","bulkUpload.drawer.machine-service-plan-import":"Machines - Plans, Features and Addons","bulkUpload.drawer.machine-update-import":"Update Machines","bulkUpload.file-upload.button.select":"Select a file","bulkUpload.file-upload.button.uploading":"Uploading","bulkUpload.file-upload.error-alert.title":"Import Error","bulkUpload.file-upload.toast-message.error":"There was an error uploading the file","bulkUpload.file-upload.toast-message.info":"Processing. Please check your email","bulkUpload.import-new.button.text":"Import new","bulkUpload.page.description":"Access data templates and import bulk data","bulkUpload.page.title":"Bulk import","bulkUpload.select-import-type.modal.heading":"Select import type","bulkUpload.select-import-type.modal.not-allowed":"Sorry, you don\'t have permission to perform bulk operations","bulkUpload.table.column.bulkType.title":"Operation type","bulkUpload.table.column.completionTime.title":"Completion time","bulkUpload.table.column.fileName.title":"File","bulkUpload.table.column.numberOfFailedItems.title":"Failed","bulkUpload.table.column.numberOfItems.title":"Total items","bulkUpload.table.column.numberOfQueuedItems.title":"Queued","bulkUpload.table.column.numberOfSuccessfulItems.title":"Successful","bulkUpload.table.column.requester.title":"Requested by","bulkUpload.table.column.requestTime.title":"Request time","bulkUpload.table.empty.message":"No jobs","bulkUpload.table.header":"Upload history","bulkUpload.template-download.button.text":"Download template","bulkUpload.upload.device-bulk-import.name":"Devices","bulkUpload.upload.driver-bulk-import.name":"Drivers","bulkUpload.upload.ftc-bulk-import.name":"Subscribe vehicle to FTC","bulkUpload.upload.machine-bulk-create.name":"Machines - Add new","bulkUpload.upload.machine-bulk-update.name":"Machines - Update","bulkUpload.upload.machine-service-plan.name":"Machines - Plans, Features and Addons"}'),enUS:{},frCA:{}},Be=(0,Ie.G)({key:b.$n.BULK,reducer:Ne,saga:function*(){yield(0,Oe.Q7)([(0,Oe.p8)(i.fetchJobs.type,De)])},translations:Fe}),Je=(0,N.wY)(e=>({content:{padding:`${e.spacing(2)}px`}}));var Me=a(14041);const Re=()=>{const{pageNumber:e,pageSize:t}=(0,o.d4)(y),a=Je(),[s,u]=(0,l.useState)(!1);return(()=>{var e;const t=(0,o.wA)(),a=(0,Ee.Zp)(),{type:r}=(0,Ee.g)()||{},n=null!=(e=(0,o.d4)(g))?e:"";(0,he.y)(()=>{var e;r&&(null==(e=m.wj)?void 0:e[r])&&t(i.bulkImportDrawerOpened(r))}),(0,l.useEffect)(()=>{n!==r&&a(`/bulk-import/${n}`)},[n,r,a])})(),Me.createElement(n.YW,null,Me.createElement(n.zY,null,Me.createElement(n.sT,{title:Me.createElement(r.s,{id:"bulkUpload.page.title"}),actions:Me.createElement(ie,{onClick:()=>u(!0)})}),Me.createElement(n.Kw,{text:Me.createElement(r.s,{id:"bulkUpload.page.description"})})),Me.createElement(n.TK,null,Me.createElement("div",{className:a.content},Me.createElement(oe,null),Me.createElement(ye,{show:s,onClose:()=>u(!1)}),Me.createElement(q,{successAction:i.fetchJobs({pageNumber:e,pageSize:t})}))))},ze=Be(Re)},69225:(e,t,a)=>{a.d(t,{e:()=>f});var l=a(93815),o=a(1454),r=Object.defineProperty,n=Object.defineProperties,s=Object.getOwnPropertyDescriptors,i=Object.getOwnPropertySymbols,u=Object.prototype.hasOwnProperty,d=Object.prototype.propertyIsEnumerable,p=(e,t,a)=>t in e?r(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,c=(e,t)=>{for(var a in t||(t={}))u.call(t,a)&&p(e,a,t[a]);if(i)for(var a of i(t))d.call(t,a)&&p(e,a,t[a]);return e};const m=(0,o.wY)(e=>{return{buttonGroup:{display:"flex",padding:`${e.spacing(3)}px 0`,paddingRight:`calc(100% - ${l.R6}px)`,borderTop:`1px solid ${e.colors.surfaceLevel3}`,"&:empty":{display:"none"},"$info:not(:empty) + &":{borderTop:0},"& > *":{margin:`0 ${e.spacing(2)}px`,flexBasis:"50%"},"& > a > span":(t=c({},e.typography.sizes.md),a={fontWeight:e.typography.weights.medium,textTransform:"lowercase","&:first-letter":{textTransform:"uppercase"}},n(t,s(a)))}};var t,a},{name:"ButtonGroup"});var b=a(14041);const f=({children:e,style:t})=>{const a=m();return b.createElement("div",{className:a.buttonGroup,style:t},e)}}}]); 2//# sourceMappingURL=1576.myeroad.b86a19811fc50576c133.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.