- Update all packages to latest versions via pnpm update --latest - Downgrade Prisma 7 to 6 (v7 requires schema migration) - Downgrade Tailwind CSS 4 to 3 (v4 requires PostCSS migration) - Downgrade Storybook 10 to 8 (addons not available in v10) - Pin cheerio to 1.0.0-rc.12 via pnpm override (type exports changed) - Fix AI SDK tool definitions: parameters -> inputSchema - Fix cheerio types in extract-meta and table-extract tools - Add explicit type annotations to tool execute functions - Migrate biome config to v2.3.11 schema All type-checks, tests, and builds pass.
82 lines
1.9 KiB
JSON
82 lines
1.9 KiB
JSON
{
|
|
"name": "@tpmjs/tools-dedupe-by-key",
|
|
"version": "0.2.0",
|
|
"description": "Remove duplicate objects from an array based on one or more key fields",
|
|
"type": "module",
|
|
"keywords": [
|
|
"tpmjs",
|
|
"data",
|
|
"dedupe",
|
|
"unique",
|
|
"array"
|
|
],
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"default": "./dist/index.js"
|
|
}
|
|
},
|
|
"files": [
|
|
"dist"
|
|
],
|
|
"scripts": {
|
|
"build": "tsup",
|
|
"dev": "tsup --watch",
|
|
"type-check": "tsc --noEmit",
|
|
"clean": "rm -rf dist .turbo"
|
|
},
|
|
"devDependencies": {
|
|
"@tpmjs/tsconfig": "workspace:*",
|
|
"tsup": "^8.5.1",
|
|
"typescript": "^5.9.3"
|
|
},
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/anthropics/tpmjs.git",
|
|
"directory": "packages/tools/official/dedupe-by-key"
|
|
},
|
|
"homepage": "https://tpmjs.com",
|
|
"license": "MIT",
|
|
"tpmjs": {
|
|
"category": "data",
|
|
"frameworks": [
|
|
"vercel-ai"
|
|
],
|
|
"tools": [
|
|
{
|
|
"name": "dedupeByKeyTool",
|
|
"description": "Remove duplicate objects from an array based on one or more key fields",
|
|
"parameters": [
|
|
{
|
|
"name": "rows",
|
|
"type": "array",
|
|
"description": "Array of objects to deduplicate",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "key",
|
|
"type": "string | array",
|
|
"description": "Field name(s) to use as unique key",
|
|
"required": true
|
|
},
|
|
{
|
|
"name": "keepLast",
|
|
"type": "boolean",
|
|
"description": "If true, keep last occurrence; if false, keep first",
|
|
"required": false
|
|
}
|
|
],
|
|
"returns": {
|
|
"type": "DedupeResult",
|
|
"description": "Object with deduplicated rows and statistics"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"dependencies": {
|
|
"ai": "6.0.23"
|
|
}
|
|
}
|