← back to Pattern Vault

wpb-uploaders/platforms/redbubble.js

16 lines

/* Redbubble uploader — brand: Wallpaper's Back · account "wallpapersback"
 * DISARMED. AI-HOSTILE platform — anti-bot cadence (<=4/day, human-typed, sporadic) is
 * mandatory; disclose AI per platform. Needs session + live DOM calibration before arming. */
const path = require('path'), os = require('os');
module.exports = {
  key: 'redbubble', name: 'Redbubble', brand: "Wallpaper's Back",
  sessionFile: path.join(os.homedir(), 'Projects/pattern-vault/wpb-uploaders/sessions/redbubble-state.json'),
  healthUrl: 'https://www.redbubble.com/portfolio/manage_works',
  uploadUrl: 'https://www.redbubble.com/portfolio/images/new',
  async uploadFn(pg, d, { rnd, sleep }) {
    await pg.goto(this.uploadUrl, { waitUntil: 'domcontentloaded', timeout: 45000 }).catch(() => {});
    await sleep(rnd(3000, 6000));
    return { reason: 'redbubble uploadFn not yet calibrated — DISARMED stub (AI-hostile; needs live DOM + Steve arm)' };
  },
};