{"version":3,"file":"vector-pg-constructor.mjs","names":[],"sources":["../../../src/codemods/v1/vector-pg-constructor.ts"],"sourcesContent":["import { createTransformer } from '../lib/create-transformer';\n\n/**\n * Converts PgVector constructor from positional string argument to object parameter.\n * This provides a more consistent API across all storage adapters.\n *\n * Before:\n * const pgVector = new PgVector(process.env.POSTGRES_CONNECTION_STRING!);\n *\n * After:\n * const pgVector = new PgVector({\n *   connectionString: process.env.POSTGRES_CONNECTION_STRING\n * });\n */\nexport default createTransformer((fileInfo, api, options, context) => {\n  const { j, root } = context;\n\n  root\n    .find(j.NewExpression, {\n      callee: { type: 'Identifier', name: 'PgVector' },\n    })\n    .forEach(path => {\n      const args = path.value.arguments;\n      const firstArg = args[0];\n\n      if (args.length === 1 && firstArg && firstArg.type !== 'ObjectExpression') {\n        path.value.arguments = [\n          j.objectExpression([j.objectProperty(j.identifier('connectionString'), firstArg as any)]),\n        ];\n\n        context.hasChanges = true;\n      }\n    });\n\n  if (context.hasChanges) {\n    context.messages.push('Converted PgVector constructor from positional to object parameter');\n  }\n});\n"],"mappings":";;;;;;;;;;;;;;AAcA,IAAA,gCAAe,mBAAmB,UAAU,KAAK,SAAS,YAAY;CACpE,MAAM,EAAE,GAAG,SAAS;CAEpB,KACG,KAAK,EAAE,eAAe,EACrB,QAAQ;EAAE,MAAM;EAAc,MAAM;CAAW,EACjD,CAAC,CAAC,CACD,SAAQ,SAAQ;EACf,MAAM,OAAO,KAAK,MAAM;EACxB,MAAM,WAAW,KAAK;EAEtB,IAAI,KAAK,WAAW,KAAK,YAAY,SAAS,SAAS,oBAAoB;GACzE,KAAK,MAAM,YAAY,CACrB,EAAE,iBAAiB,CAAC,EAAE,eAAe,EAAE,WAAW,kBAAkB,GAAG,QAAe,CAAC,CAAC,CAC1F;GAEA,QAAQ,aAAa;EACvB;CACF,CAAC;CAEH,IAAI,QAAQ,YACV,QAAQ,SAAS,KAAK,oEAAoE;AAE9F,CAAC"}