{"_id":"@acrolinx/nextgen-toolkit","_rev":"9-9f5e2abdd3d30010a555d79a4c279040","name":"@acrolinx/nextgen-toolkit","dist-tags":{"latest":"0.0.69"},"versions":{"0.0.67":{"name":"@acrolinx/nextgen-toolkit","version":"0.0.67","author":{"name":"Acrolinx"},"license":"Apache-2.0","_id":"@acrolinx/nextgen-toolkit@0.0.67","maintainers":[{"name":"acromarco","email":"marco.stahl@acrolinx.com"},{"name":"acrolinxjenkins","email":"support.npm@acrolinx.com"}],"homepage":"https://github.com/acrolinx/nextgen-toolkit","bugs":{"url":"https://github.com/acrolinx/nextgen-toolkit/issues"},"dist":{"shasum":"b86462fc467d8f2338f4605747bf0f93e5e2f64c","tarball":"https://registry.npmjs.org/@acrolinx/nextgen-toolkit/-/nextgen-toolkit-0.0.67.tgz","fileCount":8,"integrity":"sha512-g8sM5iFALySIziUhJLl41cBhVSgtOoUNJykg3ItjqFSJKdTl61jF3ZxYrJ0W+FboyKRWB5aDXMqCGeIQ9H6j/Q==","signatures":[{"sig":"MEQCIHUJ4m44ATkl3FZ13H3ISUZkaVIbXMnfZgyLdjykW5/uAiBprrE6ZhlZvqVl8z+9KX9rjXpLJX8B/7aNKaNEMGAurQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":710257},"main":"./dist/acrolinx-nextgen-toolkit.umd.cjs","type":"module","types":"./dist/types/main.d.ts","module":"./dist/acrolinx-nextgen-toolkit.js","exports":{".":{"types":"./dist/types/main.d.ts","import":"./dist/acrolinx-nextgen-toolkit.js","require":"./dist/acrolinx-nextgen-toolkit.umd.cjs"}},"gitHead":"c9ebc089e024ad0b2070c52fdc175055ef535d4d","scripts":{"dev":"vite","lint":"eslint .","test":"npm run test:unit && npm run test:integration","build":"tsc && vite build","format":"prettier . --write","preview":"vite preview","coverage":"vitest run --coverage","lint:fix":"eslint . --fix","test:unit":"vitest run -c vitest.unit.config.ts","test:integration":"vitest -c vitest.integration.config.ts"},"_npmUser":{"name":"acrolinxjenkins","email":"support.npm@acrolinx.com"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.","repository":{"url":"git+ssh://git@github.com/acrolinx/nextgen-toolkit.git","type":"git"},"_npmVersion":"10.9.2","description":"A TypeScript toolkit for integrating with the Acrolinx NextGen API. This toolkit provides a type-safe way to interact with Acrolinx services including style analysis, style guide management, and batch operations.","directories":{},"_nodeVersion":"22.17.1","dependencies":{"acrolinx-nextgen-api":"^0.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^2.10.4","vite":"^7.1.1","dotenv":"^17.2.1","eslint":"^9.32.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.9.2","@types/node":"^24.2.0","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.0","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/nextgen-toolkit_0.0.67_1754665986990_0.2887823465023833","host":"s3://npm-registry-packages-npm-production"}},"0.0.68":{"name":"@acrolinx/nextgen-toolkit","version":"0.0.68","author":{"name":"Acrolinx"},"license":"Apache-2.0","_id":"@acrolinx/nextgen-toolkit@0.0.68","maintainers":[{"name":"acromarco","email":"marco.stahl@acrolinx.com"},{"name":"acrolinxjenkins","email":"support.npm@acrolinx.com"}],"homepage":"https://github.com/acrolinx/nextgen-toolkit","bugs":{"url":"https://github.com/acrolinx/nextgen-toolkit/issues"},"dist":{"shasum":"084b352be6d4e18392052ea6b49cecfb8669695a","tarball":"https://registry.npmjs.org/@acrolinx/nextgen-toolkit/-/nextgen-toolkit-0.0.68.tgz","fileCount":6,"integrity":"sha512-nMRmT24xHD/9wTBg9zXxCMf2YpePHZS9xmrWH8MkbX/LQHZMcblgzQZ713PK2mBxxPyxsq6H9rGwdYC4DkgY3w==","signatures":[{"sig":"MEUCIFH8VJKAFsLGJnJ8eV1jW5peKuhdzl+zNjpP1x51gSZ0AiEAjMKqFNdSPatzqnqFL00BM4NSc8FTsax8cW/bkoanFW4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":637554},"main":"./dist/acrolinx-nextgen-toolkit.umd.cjs","type":"module","types":"./dist/types/main.d.ts","module":"./dist/acrolinx-nextgen-toolkit.js","exports":{".":{"types":"./dist/types/main.d.ts","import":"./dist/acrolinx-nextgen-toolkit.js","require":"./dist/acrolinx-nextgen-toolkit.umd.cjs"}},"gitHead":"50d7673e34f228bee43bf864de28b58b02bf6a5a","scripts":{"dev":"vite","lint":"eslint .","test":"npm run test:unit && npm run test:integration","build":"tsc && vite build","format":"prettier . --write","preview":"vite preview","coverage":"vitest run --coverage","lint:fix":"eslint . --fix","test:unit":"vitest run -c vitest.unit.config.ts","test:integration":"vitest -c vitest.integration.config.ts"},"_npmUser":{"name":"acrolinxjenkins","email":"support.npm@acrolinx.com"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.","repository":{"url":"git+ssh://git@github.com/acrolinx/nextgen-toolkit.git","type":"git"},"_npmVersion":"10.9.3","description":"A TypeScript toolkit for integrating with the Acrolinx NextGen API. This toolkit provides a type-safe way to interact with Acrolinx services including style analysis, style guide management, and batch operations.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"acrolinx-nextgen-api":"^0.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^2.10.4","vite":"^7.1.1","dotenv":"^17.2.1","eslint":"^9.32.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.9.2","@types/node":"^24.2.0","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.0","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/nextgen-toolkit_0.0.68_1754918006695_0.9583634064066353","host":"s3://npm-registry-packages-npm-production"}},"0.0.69":{"name":"@acrolinx/nextgen-toolkit","version":"0.0.69","author":{"name":"Acrolinx"},"license":"Apache-2.0","_id":"@acrolinx/nextgen-toolkit@0.0.69","maintainers":[{"name":"acromarco","email":"marco.stahl@acrolinx.com"},{"name":"acrolinxjenkins","email":"support.npm@acrolinx.com"}],"homepage":"https://github.com/acrolinx/nextgen-toolkit","bugs":{"url":"https://github.com/acrolinx/nextgen-toolkit/issues"},"dist":{"shasum":"65bef4ec070c4ae75636a98b060c33cb9cb57d75","tarball":"https://registry.npmjs.org/@acrolinx/nextgen-toolkit/-/nextgen-toolkit-0.0.69.tgz","fileCount":6,"integrity":"sha512-LADDx+bAICagNg1HhvUX8RhtchkQAQM862Zp+kxIs8RmtXHZuArr/rkQJshQRSrwPdFVpx8ipelGKeKA/xnMdQ==","signatures":[{"sig":"MEYCIQDpkZGFLq7DzFhJFp1854oSIeclLva6c3JJwSC60LzubwIhAMwSHrVwM+hcgTtJ2rDCML0Pg6c4jPDcp+HVlN9Xy1m/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":637566},"main":"./dist/acrolinx-nextgen-toolkit.umd.cjs","type":"module","types":"./dist/types/main.d.ts","module":"./dist/acrolinx-nextgen-toolkit.js","exports":{".":{"types":"./dist/types/main.d.ts","import":"./dist/acrolinx-nextgen-toolkit.js","require":"./dist/acrolinx-nextgen-toolkit.umd.cjs"}},"gitHead":"91ddfeae597c783c8753a0575545411516e04838","scripts":{"dev":"vite","lint":"eslint .","test":"npm run test:unit && npm run test:integration","build":"tsc && vite build","format":"prettier . --write","preview":"vite preview","coverage":"vitest run --coverage","lint:fix":"eslint . --fix","test:unit":"vitest run -c vitest.unit.config.ts","test:integration":"vitest -c vitest.integration.config.ts"},"_npmUser":{"name":"acrolinxjenkins","email":"support.npm@acrolinx.com"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.","repository":{"url":"git+ssh://git@github.com/acrolinx/nextgen-toolkit.git","type":"git"},"_npmVersion":"10.9.3","description":"A TypeScript toolkit for integrating with the NextGen API. This toolkit provides a type-safe way to interact with NextGen services including style analysis, style guide management, and batch operations.","directories":{},"_nodeVersion":"22.18.0","dependencies":{"acrolinx-nextgen-api":"^0.0.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^2.10.4","vite":"^7.1.1","dotenv":"^17.2.1","eslint":"^9.32.0","prettier":"^3.6.2","@eslint/js":"^9.32.0","typescript":"^5.9.2","@types/node":"^24.2.0","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.0","@vitest/coverage-v8":"^3.2.4"},"_npmOperationalInternal":{"tmp":"tmp/nextgen-toolkit_0.0.69_1755015860095_0.7794381765980598","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2025-08-08T15:13:06.886Z","modified":"2025-09-05T07:18:26.520Z","0.0.67":"2025-08-08T15:13:07.208Z","0.0.68":"2025-08-11T13:13:26.921Z","0.0.69":"2025-08-12T16:24:20.382Z"},"bugs":{"url":"https://github.com/acrolinx/nextgen-toolkit/issues"},"author":{"name":"Acrolinx"},"license":"Apache-2.0","homepage":"https://github.com/acrolinx/nextgen-toolkit","repository":{"url":"git+ssh://git@github.com/acrolinx/nextgen-toolkit.git","type":"git"},"description":"A TypeScript toolkit for integrating with the NextGen API. This toolkit provides a type-safe way to interact with NextGen services including style analysis, style guide management, and batch operations.","maintainers":[{"email":"support.npm@acrolinx.com","name":"acrolinxjenkins"},{"email":"karl.shrubb@acrolinx.com","name":"karl0r"},{"email":"sanja.batkovic@acrolinx.com","name":"sanjab"},{"email":"abhijeet.narvekar@acrolinx.com","name":"abhijeet_narvekar"},{"email":"borbala.soros@acrolinx.com","name":"sorosbo"}],"readme":"# NextGen Toolkit\n\nA TypeScript toolkit for integrating with the NextGen API. This toolkit provides a type-safe way to interact with NextGen services including style analysis, style guide management, and batch operations.\n\n## Installation\n\n```bash\nnpm install @acrolinx/nextgen-toolkit\n```\n\n## Usage\n\n### Style Analysis\n\nThe toolkit supports string content, File objects, and Buffer objects for style analysis with automatic MIME type detection for binary files:\n\n```typescript\nimport {\n  styleCheck,\n  styleSuggestions,\n  styleRewrite,\n  getStyleCheck,\n  getStyleSuggestion,\n  getStyleRewrite,\n} from '@acrolinx/nextgen-toolkit';\n\n// Using string content\nconst stringRequest = {\n  content: 'This is a sample text for style analysis.',\n  style_guide: 'ap',\n  dialect: 'american_english',\n  tone: 'formal',\n};\n\n// Using File object (browser environments)\nconst file = new File(['This is content from a file.'], 'document.txt', { type: 'text/plain' });\nconst fileRequest = {\n  content: file,\n  style_guide: 'chicago',\n  dialect: 'american_english',\n  tone: 'academic',\n  documentName: 'my-document.txt', // Optional custom filename\n};\n\n// Using Buffer object (Node.js environments) - BINARY FILES SUPPORTED\nconst fs = require('fs');\nconst pdfBuffer = fs.readFileSync('technical-report.pdf');\nconst bufferRequest = {\n  content: pdfBuffer,\n  style_guide: 'ap',\n  dialect: 'american_english',\n  tone: 'academic',\n  documentName: 'technical-report.pdf', // Filename determines MIME type\n};\n\n// Perform style analysis with polling\nconst result = await styleCheck(stringRequest, config);\nconst fileResult = await styleCheck(fileRequest, config);\nconst pdfResult = await styleCheck(bufferRequest, config); // Works with PDFs!\n\n// Get style suggestions\nconst suggestionResult = await styleSuggestions(stringRequest, config);\n\n// Get style rewrites\nconst rewriteResult = await styleRewrite(stringRequest, config);\n```\n\n### Batch Operations\n\nFor processing multiple documents efficiently, the toolkit provides batch operations:\n\n```typescript\nimport { styleBatchCheckRequests, styleBatchSuggestions, styleBatchRewrites } from '@acrolinx/nextgen-toolkit';\n\nconst requests = [\n  { content: 'First document content', style_guide: 'ap', dialect: 'american_english', tone: 'formal' },\n  { content: 'Second document content', style_guide: 'chicago', dialect: 'american_english', tone: 'academic' },\n  // ... more requests\n];\n\n// Batch style checks\nconst batchCheck = styleBatchCheckRequests(requests, config, {\n  maxConcurrent: 5,\n  retryAttempts: 3,\n  retryDelay: 1000,\n  timeout: 30000,\n});\n\n// Monitor progress\nbatchCheck.progress.then((finalProgress) => {\n  console.log(`Completed: ${finalProgress.completed}/${finalProgress.total}`);\n  console.log(`Failed: ${finalProgress.failed}`);\n\n  finalProgress.results.forEach((result, index) => {\n    if (result.status === 'completed') {\n      console.log(`Request ${index}: ${result.result?.scores.quality.score}`);\n    } else if (result.status === 'failed') {\n      console.log(`Request ${index} failed: ${result.error?.message}`);\n    }\n  });\n});\n\n// Batch suggestions\nconst batchSuggestions = styleBatchSuggestions(requests, config);\n\n// Batch rewrites\nconst batchRewrites = styleBatchRewrites(requests, config);\n\n// Cancel batch operations if needed\nbatchCheck.cancel();\n```\n\n### Response Types\n\nThe toolkit provides comprehensive response types for different operations:\n\n```typescript\nimport type {\n  StyleAnalysisSuccessResp,\n  StyleAnalysisSuggestionResp,\n  StyleAnalysisRewriteResp,\n  StyleScores,\n  Issue,\n  IssueWithSuggestion,\n} from '@acrolinx/nextgen-toolkit';\n\n// Style check response\nconst checkResult: StyleAnalysisSuccessResp = await styleCheck(request, config);\nconsole.log(`Quality score: ${checkResult.scores.quality.score}`);\nconsole.log(`Issues found: ${checkResult.issues.length}`);\n\n// Style suggestion response\nconst suggestionResult: StyleAnalysisSuggestionResp = await styleSuggestions(request, config);\nsuggestionResult.issues.forEach((issue) => {\n  console.log(`Issue: \"${issue.original}\" → Suggestion: \"${issue.suggestion}\"`);\n});\n\n// Style rewrite response\nconst rewriteResult: StyleAnalysisRewriteResp = await styleRewrite(request, config);\nconsole.log(`Rewritten content: ${rewriteResult.rewrite}`);\nconsole.log(`Rewrite quality score: ${rewriteResult.rewrite_scores.quality.score}`);\n```\n\n## Configuration\n\nThe toolkit requires a configuration object with your API key and platform settings:\n\n```typescript\nimport { Config, Environment, PlatformType } from '@acrolinx/nextgen-toolkit';\n\n// Using environment-based configuration\nconst config: Config = {\n  apiKey: 'your-api-key-here',\n  platform: {\n    type: PlatformType.Environment,\n    value: Environment.Prod, // or Environment.Stage, Environment.Dev\n  },\n};\n\n// Using custom URL configuration\nconst configWithUrl: Config = {\n  apiKey: 'your-api-key-here',\n  platform: {\n    type: PlatformType.Url,\n    value: 'https://your-custom-acrolinx-instance.com',\n  },\n};\n```\n\n## Development\n\n### Prerequisites\n\n- Node.js (Latest LTS version recommended)\n- npm\n\n### Setup\n\n1. Clone the repository:\n\n```bash\ngit clone https://github.com/acrolinx/nextgen-toolkit.git\ncd nextgen-toolkit\n```\n\n2. Install dependencies:\n\n```bash\nnpm install\n```\n\n### Building\n\nTo build the project:\n\n```bash\nnpm run build\n```\n\nThis will:\n\n1. Compile TypeScript files\n2. Generate type definitions\n3. Create both ESM and UMD bundles\n\n### Testing\n\nThe project uses Vitest for testing. There are two types of tests:\n\n1. Unit Tests: Located in `test/unit/`\n2. Integration Tests: Located in `test/integration/`\n\nTo run all tests:\n\n```bash\nnpm test\n```\n\nTo run unit tests only:\n\n```bash\nnpm run test:unit\n```\n\nTo run integration tests only:\n\n```bash\nnpm run test:integration\n```\n\n### Code Quality\n\nThe project includes linting and formatting tools:\n\n```bash\n# Lint the code\nnpm run lint\n\n# Fix linting issues\nnpm run lint:fix\n\n# Format code with Prettier\nnpm run format\n```\n\n## License\n\nThis project is licensed under the Apache-2.0 License - see the LICENSE file for details.\n","readmeFilename":"README.md"}