agmission/Development/server/helpers/glob_options.js

64 lines
1.9 KiB
JavaScript

'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
};