'use strict'; /** * Shared glob options for file processing across the application * Provides standardized ignore patterns and options for job files, shapefiles, and other data */ /** * Standard glob options with drift file exclusion */ const globOps = { nonull: false, nocase: true, dot: true, ignore: [ '**/*drift.{shp,dbf,prj,shx}' // ignore all "drift" shape files using brace expansion ] }; /** * Spray items glob options with comprehensive ignore patterns * Used for processing job files and filtering out unwanted data files */ const sprayItemsOps = { nonull: false, nocase: true, dot: true, ignore: [ '**/q[0-9]*.t*', // q followed by numbers and .t extension '**/n[0-9]*.t*', // n followed by numbers and .t extension '**/n[0-9]*spr{on,off}.{dbf,prj,shp,shx}', // n followed by numbers, spr, on/off, then specific extensions '**/*drift.{shp,dbf,prj,shx}' // ignore all "drift" shape files using brace expansion ] }; /** * Data files pattern for processing specific agricultural data formats * Matches: * - n*[0-9]*.t[0-9]* (numeric data files with t extension) * - n*[0-9]*?(spr){on,off}*.dbf (spray on/off DBF files) * - *.asc (ASCII grid files) */ const dataFilesPattern = "**/{n*[0-9]*.t[0-9]*,n*[0-9]*?(spr){on,off}*.dbf,*.asc}"; /** * Area files pattern for job and map data processing * Standard pattern without VFR files */ const areaFilesPattern = "**/*.{job,kml,kmz,no1,prj,shp,dbf,agn,dsp,xcl}"; /** * Extended area files pattern including Vector Flight Records (VFR) * Used in worker processes that need to handle flight data */ const areaFilesExtendedPattern = "**/*.{job,kml,kmz,no1,prj,shp,dbf,agn,dsp,xcl,vfr}"; module.exports = { globOps, sprayItemsOps, dataFilesPattern, areaFilesPattern, areaFilesExtendedPattern };