PageSourceSearch

https://aslitools.com/_next/static/chunks/20978.e4ce97e811fb37c5.js

js aslitools.com collected 2026-10-09 00:36:57 UTC 5,397 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[20978],{20978:(e,l,t)=>{t.r(l),t.d(l,{QifToCsvTool:()=>j});var o=t(95155),s=t(94251),i=t(63054),n=t(12115),a=t(47339),c=t(57420),d=t(5872),r=t(45442),u=t(88444),p=t(2943),m=t(48106),g=t(94514),b=t(78916),x=t(93687),C=t(33024),f=t(83952),h=t(58092),S=t(60753),F=t(47910),v=t(83899),y=t(37765);function j({onViewChange:e}={}){let l=(0,f.c)().qifToCsv,[t,k]=(0,n.useState)("landing"),[M,I]=(0,n.useState)("iso"),[T,w]=(0,n.useState)("single"),[A,N]=(0,n.useState)("summary"),[V,Y]=(0,n.useState)(!0),[_,D]=(0,n.useState)(!0),[Q,q]=(0,n.useState)(!0),[E,B]=(0,n.useState)(!0),[U,z]=(0,n.useState)(!0),[P,R]=(0,n.useState)(!1),[$,G]=(0,n.useState)(!1),[H,O]=(0,n.useState)(!0),[Z,K]=(0,n.useState)(!1),L=(0,n.useMemo)(()=>({dateFormat:M,amountMode:T,splitMode:A,includeMemo:V,includeCategory:_,includeCheckNumber:Q,includeClearedStatus:E,includeAccountType:U,includeAddress:P,includeSourceFile:$,includeUtf8Bom:H}),[M,T,A,V,_,Q,E,U,P,$,H]),J=(0,n.useCallback)(async(e,l)=>{let t=[];for(let l=0;l<e.length;l+=1){let o=e[l],s=(0,y.UL)(await o.text());if(0===s.transactions.length)throw Error(`No transactions found in ${o.name}.`);t.push({fileName:o.name,statement:s})}if(Z){let e=(0,y.Ou)(t,{...L,includeSourceFile:!0});return l?.onProgress?.(100),[{id:`qif-csv-merged-${Date.now()}`,fileName:e.fileName,blob:e.blob,size:e.blob.size}]}return t.map((e,o)=>{let s=(0,y.yo)(e.fileName,e.statement,L);return l?.onProgress?.((o+1)/t.length*100),{id:`qif-csv-${o}-${Date.now()}`,fileName:s.fileName,blob:s.blob,size:s.blob.size}})},[L,Z]),W=l?.title??"QIF to CSV",X={title:l?.title??"Convert QIF to CSV",description:l?.description??"Convert Quicken QIF files into Excel-ready CSV spreadsheets.",subtitle:l?.subtitle??"Browser-based QIF to CSV converter with preview and batch export.",badge:l?.badge??"QIF to CSV",icon:a.A,accept:".qif,text/plain,application/octet-stream",maxFiles:i.kH,maxFileSizeBytes:i.fR,supportedFormatsLabel:"Max 20 files - Max file size: 50MB - Supported: .qif"},ee={selectFiles:l?.selectFiles??"Select QIF files",dragDropHint:l?.dragDropHint??"or drag QIF files here",selectedFilesTitle:l?.selectedFilesTitle??"Selected QIF files",addFiles:l?.addFiles??"Add files",convertButton:l?.convert??"Convert to CSV",processingTitle:l?.processingTitle??"Building CSV file",processingStatus:l?.processingStatus??"Reading QIF transactions...",cancelProcessing:l?.cancelProcessing??"Cancel",processingComplete:l?.processingComplete??"CSV file ready",yourFileReady:l?.yourFileReady??"Your CSV file is ready",yourFilesReady:l?.yourFilesReady??"Your CSV files are ready",download:l?.download??"Download",processMoreFiles:l?.processMoreFiles??"Convert more QIF files",clearAll:l?.clearAll,settingsTitle:l?.settingsTitle??"CSV settings"},el=(0,o.jsxs)("div",{className:"space-y-5",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)(S.wG,{label:l?.dateFormat??"Date format",tooltip:s.x.dateFormat,icon:c.A}),(0,o.jsx)(h.Z,{value:M,onChange:e=>I(e),options:[{value:"iso",label:l?.dateIso??"ISO (YYYY-MM-DD)"},{value:"us",label:l?.dateUs??"US (MM/DD/YYYY)"},{value:"eu",label:l?.dateEu??"EU (DD/MM/YYYY)"},{value:"source",label:l?.dateSource??"Keep source date"}]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)(S.wG,{label:l?.amountMode??"Amount columns",tooltip:s.x.amountMode,icon:d.A}),(0,o.jsx)(h.Z,{value:T,onChange:e=>w(e),options:[{value:"single",label:l?.amountSingle??"Single amount column"},{value:"debit-credit",label:l?.amountSplit??"Separate debit and credit"}]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)(S.wG,{label:l?.splitMode??"Split transactions",tooltip:s.x.qifSplitMode,icon:r.A}),(0,o.jsx)(h.Z,{value:A,onChange:e=>N(e),options:[{value:"summary",label:l?.splitSummary??"Keep split transactions on one row"},{value:"expanded",label:l?.splitExpanded??"Expand splits into separate rows"}]})]}),(0,o.jsxs)(S.fN,{title:l?.csvOptions??"CSV columns",children:[(0,o.jsx)(S.T_,{label:l?.includeMemo??"Include memo column",checked:V,onChange:Y,icon:u.A,tooltip:s.x.includeMemo}),(0,o.jsx)(S.T_,{label:l?.includeCategory??"Include category column",checked:_,onChange:D,icon:p.A,tooltip:s.x.includeCategory}),(0,o.jsx)(S.T_,{label:l?.includeCheckNumber??"Include check number column",checked:Q,onChange:q,icon:m.A,tooltip:s.x.includeCheckNumber}),(0,o.jsx)(S.T_,{label:l?.includeClearedStatus??"Include cleared status column",checked:E,onChange:B,icon:g.A,tooltip:s.x.includeFitId}),(0,o.jsx)(S.T_,{label:l?.includeAccountType??"Include account type column",checked:U,onChange:z,tooltip:s.x.outputMode}),(0,o.jsx)(S.T_,{label:l?.includeAddress??"Include address column",checked:P,onChange:R,tooltip:s.x.outputMode}),(0,o.jsx)(S.T_,{label:l?.includeSourceFile??"Include source file column",checked:$,onChange:G,icon:b.A,tooltip:s.x.includeSourceFile}),(0,o.jsx)(S.T_,{label:l?.includeUtf8Bom??"Add Excel-friendly UTF-8 marker",checked:H,onChange:O,icon:x.A,tooltip:s.x.includeUtf8Bom}),(0,o.jsx)(S.T_,{label:l?.mergeFiles??"Merge uploaded files into one CSV",checked:Z,onChange:K,icon:C.A,tooltip:s.x.mergeFiles})]})]});return(0,o.jsxs)("div",{className:"flex-1 flex flex-col min-h-0 bg-background",children:[(0,o.jsx)(F.B,{config:X,labels:ee,settingsPanel:el,onConvert:J,toolName:W,toolPath:"/tools/qif-to-csv",onViewChange:l=>{k(l),e?.(l)}}),"landing"===t&&l?.seoContent&&(0,o.jsx)(v.u,{seoContent:l.seoContent,faq:l.faq})]})}}}]);

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.