{ "name": "Harbor Webhook", "webhookId": "harbor", "transformationFunction": "try { const repo=data.repository||{}; const resources=(data.event_data && data.event_data.resources)||[]; let msg=`šŸ“¦ Repository: ${repo.namespace||''}/${repo.name||''}\nšŸ“ Type: ${data.type||''}\nšŸ‘¤ Operator: ${data.operator||''}\n`; if(resources.length>0){ msg+=`\nšŸ’  Resources:\n`; resources.forEach((r,idx)=>{ msg+=`\nšŸ”¹ Resource ${idx+1}:\n`; msg+=` šŸ· Tag: ${r.tag||''}\n`; msg+=` šŸ†” Digest: ${r.digest||''}\n`; msg+=` 🌐 URL: ${r.resource_url||''}\n`; }); } result={plain:msg, version:'v2'}; } catch(e){ result={plain:`Error processing webhook: ${e.message}`, version:'v2'}; }" }