{"_id":"@berkozturk/filequery","_rev":"1-4a8949cb120ed0703499082c499f6df4","name":"@berkozturk/filequery","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@berkozturk/filequery","version":"1.0.0","description":"Query files with size or type","repository":{"type":"git","url":"git+https://github.com/berkoztrk/filequery.git"},"publishConfig":{"access":"public"},"main":"index.js","scripts":{"start":"nodemon --exec babel-node test.js","startdev":"nodemon --exec babel-node --exec \"npm run lint && node index\"","test":"echo \"Error: no test specified\" && exit 1","lint":"eslint **/*.js"},"keywords":["file","query","utility","search","video","image"],"author":{"name":"Berk Öztürk"},"license":"ISC","devDependencies":{"@babel/core":"^7.5.5","@babel/node":"^7.5.5","@babel/preset-env":"^7.5.5","eslint":"^6.1.0","eslint-config-google":"^0.13.0","nodemon":"^1.19.1"},"dependencies":{"glob":"^7.1.4","lodash":"^4.17.15"},"gitHead":"89e9d938e832aceec4a47a4b468f1dfae8405feb","bugs":{"url":"https://github.com/berkoztrk/filequery/issues"},"homepage":"https://github.com/berkoztrk/filequery#readme","_id":"@berkozturk/filequery@1.0.0","_nodeVersion":"10.16.2","_npmVersion":"6.10.3","dist":{"integrity":"sha512-Kn99GmSFKtkh7mjlLSqWX38K7NmZbmXugs0yVKxmyQe3AmBWAPPG8y3+XTr5DmgXO1WQSOcjHbaZshIna3GTqw==","shasum":"fb6beec57c0467350e08582360c25546b9ed66a9","tarball":"https://registry.npmjs.org/@berkozturk/filequery/-/filequery-1.0.0.tgz","fileCount":7,"unpackedSize":10576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVpSWCRA9TVsSAnZWagAAS1wQAJcWGXziMIyuXczE2Xvl\noTIvbqfeYzhlYU+1fWNG1I3+8ujK859yK/IL5FlInElCbdisEtin2YY1rpuo\n7RplE8gmHVd1N+4MKXTB7o9qb5JcffdfxApx3atUui2/nHL+9hB8hFG3Mi1q\n4zXu/SPk67+FNF+B0d4/6gOMa4iQaiCXsJjIKkjeIqiiTThucT9nk2uKeBrE\npbpJBQWMX4AZG2Cpwjzw8P1jvqxrd6nKuAPQ+utwll6Nt5FXWXMJItm/Tw16\nUI6WEqRcvQ3p+S/9YSp15Ztql/RUS6qSLqkfaPo5jfi5HkBHRVDeUB7joqWq\nxvMHe2BmJAOjFq+uYJwCYR4E5MysY720cptLlIcflAtU3QIEh12q0OXBXUo3\nnec7dfglGM3JdJ191ewJOtLG8DyIK0EgfOuhlNaI/EuINM4IDq4WlgrcF3vH\nL8Snnw0Q9U04wogibMGiX4+KS1h3o9mrKEmPB8YBojJhiIz6Q0R+XbX5Fb9G\nOQJXYKA2v9c0HV2YtzB1K2pKRvOGsZv3sDe55bD3zML1IHdZ1pnBo+6cUhmJ\nZzVBN4XYuajrm826hdP3ptb5aZ5N0u1+nFnwuDwx4mMptI/JiJrALfWAC2bu\nPU2CF6AGtYU0rULlLV6IJDybgNOw+MRhv3/IxAe6plhqO5iV44ROxItleE9g\nbiTd\r\n=ts1O\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcE3tQIuTGxbZI1GLADytc8ULXjxrp+W3wZd6PgtfrWQIhAOJHQQZuvrcNDRVIAnd/8N6PT2rurzZ7VNd2Ns/2FKZZ"}]},"maintainers":[{"name":"berkozturk","email":"berkozturkw@outlook.com"}],"_npmUser":{"name":"berkozturk","email":"berkozturkw@outlook.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/filequery_1.0.0_1565955221487_0.2299878496554011"},"_hasShrinkwrap":false}},"time":{"created":"2019-08-16T11:33:41.269Z","1.0.0":"2019-08-16T11:33:41.631Z","modified":"2022-04-04T18:29:16.743Z"},"maintainers":[{"name":"berkozturk","email":"berkozturkw@outlook.com"}],"description":"Query files with size or type","homepage":"https://github.com/berkoztrk/filequery#readme","keywords":["file","query","utility","search","video","image"],"repository":{"type":"git","url":"git+https://github.com/berkoztrk/filequery.git"},"author":{"name":"Berk Öztürk"},"bugs":{"url":"https://github.com/berkoztrk/filequery/issues"},"license":"ISC","readme":"# filequery\nfile query utility for nodejs\n\n## Installation\n``\n    npm i @berkozturk/filequery\n``\n\n## Options\n```\n  {\n    directory: 'C:/Project',              // Parent directory. Query returns files starting this directory. REQUIRED.\n    fileType : fq.FileTypeOptions.video,  // Currently only supports video and image. If video is selected returns video files\n    isRecursive: true,                    // Should query search subfolders of parent directory. DEFAULT: false\n    returnFolders: true,                  // Should query return folders with files. DEFAULT: true\n    includeBaseDirectoryOnReturn: true,   // Should return path values start with directory string. DEFAULT: true\n    extension: '.pdf',                    // Filter file extensions. Only returns pdf files. DEFAULT: '*'\n    sizeQuery: '$gt 1 $BYTE'              // Size query. This example returns files that size greater than 1 BYTE.  \n  }\n```\n### Size query format\n#### Query formats\n```\n  // Only these operators supported. Greater than, equals and less than.\n  const OPERATORS = {\n    GT: '$gt',\n    EQ: '$eq',\n    LT: '$lt',\n  };\n  // Only these file size types supported.\n  const SIZE_TYPES = {\n    BYTE: '$BYTE',\n    KB: '$KB',\n    MB: '$MB',\n    GB: '$GB',\n  };\n\n```\n#### Query syntax\nQuery syntax should follow like `OPERATOR AMOUNT FILE_SIZE_TYPE'. Each token should seperated with 1 whitespace character.  \n\n#### Example queries\n```\n  sizeQuery : '$gt 1 $MB' // Returns file size greater than 1 MB files.\n  sizeQuery : '$eq 1 $GB' // Returns file size equals 1 Gigabyte files.\n  sizeQuery : '$lt 10 $KB'// Returns file size less than 10 Kilobytes files.\n```\n\n\n## Example Usage\n\n```\n    const fq = require(\"filequery\");\n\n    (async() => {\n      // This query returns javascript files with size greater than 1 Kilobytes.\n      // Only searches directory and doesn't includes subfolders.\n      // No folders will be on resultset\n      const result = await fq.query({\n        directory: 'C:/Project',              // Query directory\n        extension: '.js',                     // Only javascript files\n        isRecursive: false,                   // Don't search subfolders\n        includeBaseDirectoryOnReturn: false,  // Don't include directory path on result paths. \n        returnFolders: false,                 // Only return files. Can be blank because extension property is provided.\n        sizeQuery: '$gt 1 $KB'                // Return only files that size greater than 1 Kilobytes.\n      });\n    })();\n\n```","readmeFilename":"readme.md"}