{"_id":"@afilimax/amazon-browser-provider","_rev":"2-57b2b6aa65cd2c98cae51099a5b742c0","name":"@afilimax/amazon-browser-provider","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@afilimax/amazon-browser-provider","version":"0.1.0","keywords":["afilimax","amazon provider","browser automation","affiliate url gernerator","amazon affiliate"],"author":{"name":"Marcuth"},"license":"MIT","_id":"@afilimax/amazon-browser-provider@0.1.0","maintainers":[{"name":"marcuth","email":"marcuth2006@gmail.com"}],"homepage":"https://github.com/Afilimax/amazon-browser-provider#readme","bugs":{"url":"https://github.com/Afilimax/amazon-browser-provider/issues"},"dist":{"shasum":"ca112b938ab795d6e200767a117db5526652dfcc","tarball":"https://registry.npmjs.org/@afilimax/amazon-browser-provider/-/amazon-browser-provider-0.1.0.tgz","fileCount":15,"integrity":"sha512-iyXZQxnIm62OcrOgMd6hEoiGW9BINFR32aX8NG02uv8WehRCMx7jzEi+xFypKQFlTfHKdMy6MFXOM/L5mFkplg==","signatures":[{"sig":"MEUCIQDv/cGdDonJ1Fa7VLn2UYtfL4q7g1HuoBsWB6czifHc5QIgMAKTWXfIiBc7esGrI7v30MJeKDiAQ05R+KkjvJcKjX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14763},"main":"./dist/index.js","type":"commonjs","types":"./dist/index.d.ts","module":"./dist/index.js","gitHead":"cc1a8706664524a36fa87552a8a455b5677c8e62","scripts":{"dev":"ts-node ./src/index.ts","lint":"eslint \"src/**/*.ts\" --fix","test":"vitest run","build":"tsc","format":"prettier --write \"src/**/*.ts\""},"_npmUser":{"name":"marcuth","email":"marcuth2006@gmail.com"},"repository":{"url":"git+https://github.com/Afilimax/amazon-browser-provider.git","type":"git"},"_npmVersion":"11.8.0","description":"Provedor de afiliação via navegador para links da Amazon. Feito por Afilimax.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"puppeteer":"^24.39.1","puppeteer-extra":"^3.3.6","puppeteer-extra-plugin-stealth":"^2.11.2","@mihnea.dev/puppeteer-extra-amazon-captcha":"^1.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.0.3","vitest":"^4.1.0","ts-node":"^10.9.2","prettier":"^3.8.1","typescript":"^5.9.3","@types/node":"^25.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","eslint-plugin-unused-imports":"^4.4.1","prettier-plugin-sort-imports":"^1.8.11"},"peerDependencies":{"@afilimax/core":"^0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/amazon-browser-provider_0.1.0_1773529050311_0.6833892359242535","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@afilimax/amazon-browser-provider","description":"Provedor de afiliação via navegador para links da Amazon. Feito por Afilimax.","version":"0.1.1","type":"commonjs","repository":{"type":"git","url":"git+https://github.com/Afilimax/amazon-browser-provider.git"},"homepage":"https://github.com/Afilimax/amazon-browser-provider#readme","bugs":{"url":"https://github.com/Afilimax/amazon-browser-provider/issues"},"main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"tsc","dev":"ts-node ./src/index.ts","format":"prettier --write \"src/**/*.ts\"","lint":"eslint \"src/**/*.ts\" --fix","test":"vitest run"},"publishConfig":{"access":"public"},"keywords":["afilimax","amazon provider","browser automation","affiliate url gernerator","amazon affiliate"],"author":{"name":"Marcuth"},"license":"MIT","devDependencies":{"@types/node":"^25.5.0","eslint":"^10.0.3","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","eslint-plugin-unused-imports":"^4.4.1","prettier":"^3.8.1","prettier-plugin-sort-imports":"^1.8.11","ts-node":"^10.9.2","typescript":"^5.9.3","vitest":"^4.1.0"},"peerDependencies":{"@afilimax/core":"^0.4.1"},"dependencies":{"@mihnea.dev/puppeteer-extra-amazon-captcha":"^1.0.3","puppeteer":"^24.39.1","puppeteer-extra":"^3.3.6","puppeteer-extra-plugin-stealth":"^2.11.2"},"gitHead":"008c9dd57d5e9b40537803882f259b13ad90d8a9","_id":"@afilimax/amazon-browser-provider@0.1.1","_nodeVersion":"24.13.0","_npmVersion":"11.8.0","dist":{"integrity":"sha512-bIcPp4lHvUUFQ2d5l85ELokk8t7vQQtvFIvpU77ce+u3Rv7kRIWyzYfKPA3tJd7gUphPkmA/j33KI0inrbkhXQ==","shasum":"f85f6a1f1ba9019908ebfe37aac7d32a2f928195","tarball":"https://registry.npmjs.org/@afilimax/amazon-browser-provider/-/amazon-browser-provider-0.1.1.tgz","fileCount":15,"unpackedSize":17412,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIClLTaC9H5yGrV0PcrQ4iXMAI4y4sgM01iX3aMgtw3HkAiBIIjXLyGtLgwQKIQA42DHR1B+6VBLhBzdaOgBtEW4Akg=="}]},"_npmUser":{"name":"marcuth","email":"marcuth2006@gmail.com"},"directories":{},"maintainers":[{"name":"marcuth","email":"marcuth2006@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/amazon-browser-provider_0.1.1_1788146060043_0.6669019064421355"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-14T22:57:30.243Z","modified":"2026-08-31T03:14:20.351Z","0.1.0":"2026-03-14T22:57:30.510Z","0.1.1":"2026-08-31T03:14:20.184Z"},"bugs":{"url":"https://github.com/Afilimax/amazon-browser-provider/issues"},"author":{"name":"Marcuth"},"license":"MIT","homepage":"https://github.com/Afilimax/amazon-browser-provider#readme","keywords":["afilimax","amazon provider","browser automation","affiliate url gernerator","amazon affiliate"],"repository":{"type":"git","url":"git+https://github.com/Afilimax/amazon-browser-provider.git"},"description":"Provedor de afiliação via navegador para links da Amazon. Feito por Afilimax.","maintainers":[{"name":"marcuth","email":"marcuth2006@gmail.com"}],"readme":"# @afilimax/amazon-browser-provider\n\n[![npm version](https://img.shields.io/npm/v/@afilimax/amazon-browser-provider.svg)](https://www.npmjs.com/package/@afilimax/amazon-browser-provider)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nEste pacote é um provedor de afiliação para o ecossistema **Afilimax**, implementando a interface `AffiliateProvider` do pacote [`@afilimax/core`](https://www.npmjs.com/package/@afilimax/core). Ele é especializado em gerar links de afiliados da Amazon através de automação de navegador (Puppeteer). \n\nDiferente de abordagens baseadas apenas em manipulação de strings, este provedor utiliza o **Amazon SiteStripe** real para gerar links curtos (`amzn.to`), garantindo que o link seja oficial e rastreável.\n\n## 🚀 Principais Recursos\n\n- 🤖 **Automação com Puppeteer**: Navega como um usuário real para interagir com o SiteStripe.\n- 🔗 **Links amzn.to**: Gera links curtos oficiais da Amazon.\n- 🛡️ **Stealth Mode**: Utiliza `puppeteer-extra-plugin-stealth` para evitar detecção de bots.\n- 🧩 **Resolução de Captcha**: Integração nativa para lidar com captchas da Amazon.\n- 🍪 **Gestão de Sessão**: Suporte a cookies para manter-se logado na conta de associado.\n- 🇧🇷 **Focado no Brasil**: Otimizado para `amazon.com.br`.\n\n## 📦 Instalação\n\n```bash\nnpm install @afilimax/amazon-browser-provider @afilimax/core\n```\n\n### Peer Dependencies\n\nEste pacote requer que o `@afilimax/core` esteja instalado em seu projeto:\n\n```bash\nnpm install @afilimax/core\n```\n\n## 🛠️ Como Usar\n\nPara que o provedor consiga gerar o link através do SiteStripe, você **precisa** fornecer cookies de uma sessão válida (logada) na Amazon Associates.\n\n```typescript\nimport { AmazonBrowserProvider } from \"@afilimax/amazon-browser-provider\";\n\nconst provider = new AmazonBrowserProvider({\n  cookies: [\n    // Seus cookies da Amazon aqui\n    { name: \"session-id\", value: \"...\", domain: \".amazon.com.br\" },\n    // ...\n  ],\n  puppeteer: {\n    headless: true, // Defina como false para debugar visualmente\n  }\n});\n\nconst productUrl = \"https://www.amazon.com.br/dp/B07TV9B7Z3\";\n\nasync function generate() {\n  try {\n    const affiliateUrl = await provider.createAffiliateUrl(productUrl);\n    console.log(\"Link de Afiliado:\", affiliateUrl); // Ex: https://amzn.to/3xyzABC\n  } catch (error) {\n    console.error(\"Erro ao gerar link:\", error);\n  }\n}\n\ngenerate();\n```\n\n### Uso com Tag Direta (Sem Browser)\n\nSe você não precisar de um link curto (`amzn.to`) e quiser apenas injetar sua tag de associado na URL, pode usar o método síncrono:\n\n```typescript\nconst simpleUrl = provider.createAffiliateUrlWithTag(productUrl, \"minhatag-20\");\nconsole.log(simpleUrl); \n// Saída: https://www.amazon.com.br/dp/B07TV9B7Z3?tag=minhatag-20\n```\n\n## ⚙️ Configurações (`AmazonBrowserProviderOptions`)\n\n| Opção | Tipo | Descrição |\n|-------|------|-----------|\n| `cookies` | `any[]` | **Obrigatório.** Lista de cookies para autenticação no Amazon Associates. |\n| `puppeteer` | `LaunchOptions` | Configurações opcionais para o lançamento do Puppeteer. |\n\n## 🔍 Domínios Suportados\n\nO provedor identifica e processa automaticamente URLs dos seguintes domínios:\n- `amazon.com.br`\n- `a.co`\n- `amzn.to` (para expansão/tracking)\n\n## 🏗️ Arquitetura e Contrato\n\nEste provedor segue rigorosamente o contrato definido em `affiliate-provider.interface.ts` do `@afilimax/core`. Ele estende a classe base abstrata `AffiliateProvider`, garantindo compatibilidade com o `AffiliateManager` para uso em cadeias de provedores.\n\n## 🧪 Desenvolvimento\n\nPara rodar os testes:\n\n```bash\nnpm test\n```\n\nPara gerar a build:\n\n```bash\nnpm run build\n```\n\n---\n\nFeito com ❤️ por **Afilimax**.","readmeFilename":"README.md"}