Better GitHub Co-Authors

Adds a button to GitHub pull requests to make it simple to add co-author credits for all PR participants before merging.

// ==UserScript==
// @name                  Better GitHub Co-Authors
// @name:aa               GitHub koobaahi
// @name:ab               GitHub Co-автор
// @name:af               Github mede-outeur
// @name:ak               GitHub a ɔka ho
// @name:am               Githubation ትሬድ ደራሲ
// @name:ar               مؤلف جيثب المشارك
// @name:as               Github সহ-লেখক
// @name:av               GitHub Coautor
// @name:ay               Github ukan yanapiripa .
// @name:az               Github həmmüəllifi
// @name:ba               GitHub компанияһының авторҙашы
// @name:be               Суаўтар Github
// @name:bg               Съавтор на GitHub
// @name:bh               गिटहब के सह-लेखक 1999 में भइल रहे।
// @name:bm               GitHub Co-Author
// @name:bn               গিথুব সহ-লেখক
// @name:bo               GitHub Co-རྩོམ་སྒྲིག་པ།
// @name:br               Kenskriver GitHub
// @name:bs               GitHub koautor
// @name:ca               Coautor de GitHub
// @name:ce               GitHub Co-author
// @name:ceb              Github Co-Awtor
// @name:ch               GitHub Co-atoli
// @name:ckb              Github هاوکار
// @name:co               Github co-autore
// @name:cs               GitHub spoluautor
// @name:cv               GitHub соавторĕ
// @name:cy               Cyd-awdur GitHub
// @name:da               GitHub medforfatter
// @name:de               Github Co-Autor
// @name:dv               ގިތަބް ކޯ-އޮތޯރ
// @name:dz               GitHub མཉམ་འབྲེལ་རྩོམ་ཡིག།
// @name:ee               Github ƒe kpeɖeŋutɔ ŋlɔla .
// @name:el               Συν-συγγραφέας του Github
// @name:en               GitHub Co-author
// @name:en-GB            GitHub Co-author
// @name:eo               Kunaŭtoro de github
// @name:es               Coautor de Github
// @name:es-419           Coautor de Github
// @name:et               Githubi kaasautor
// @name:eu               GitHub ko-egilea
// @name:fa               همکار GitHub
// @name:ff               GitHub gooto
// @name:fi               Github-kirjoittaja
// @name:fil              Github co-may-akda
// @name:fj               Gith Co-ocooco .
// @name:fo               GitHub Co-høvundur
// @name:fr               Co-auteur de Github
// @name:fr-CA            Co-auteur de Github
// @name:fy               Githoh-ko-auteur
// @name:ga               Comh-údar GitHub
// @name:gd               Co-ùghdar Gitub
// @name:gl               GitHub coautor
// @name:gn               GitHub co-autor .
// @name:gsw-berne        GitHub Co-author
// @name:gu               ગિટહબ સહ-લેખક
// @name:gv               GitHub Co-earrooder
// @name:ha               Gitthub Co-Mawallafin
// @name:he               מחבר משותף של Github
// @name:hi               गीथब सह-लेखक
// @name:hmn              Github co-sau
// @name:hr               Github koautor
// @name:ht               Github ko-otè
// @name:hu               GitHub társszerzője
// @name:hy               Gitub համահեղինակ
// @name:id               Rekan penulis GitHub
// @name:ig               Github Co-Chapta
// @name:is               Meðhöfundur Github
// @name:it               Coautore di GitHub
// @name:iu               GitHub-ᑯᑦ ᑎᑎᕋᖅᑎᐅᖃᑎᖓ
// @name:ja               Githubの共著者
// @name:jv               Github Co-Pengarang
// @name:ka               Github თანაავტორი
// @name:kg               Co-auteur ya GitHub
// @name:kk               Github бірлескен авторы
// @name:kl               GitHub-imi atuakkiortoq
// @name:km               សហអ្នកនិពន្ធ Github
// @name:kn               ಗಿಟ್‌ಹಬ್ ಸಹ-ಲೇಖಕ
// @name:ko               Github 공동 저자
// @name:kr               GitHub Co-athor
// @name:ku               Hevserokê GitHub
// @name:kv               GitHub соавтор .
// @name:ky               Github Co-auth
// @name:la               Github co-auctor
// @name:lb               Github Co-Autor
// @name:lg               Omuwandiisi wa GitHub
// @name:ln               Mokomi ya buku ya GitHub .
// @name:lo               ຜູ້ຂຽນຮ່ວມ GIFHUB CO
// @name:lt               „GitHub“ bendraautorius
// @name:lv               Github līdzautors
// @name:mg               Github Co-mpanoratra
// @name:mh               GitHub .
// @name:mi               Ko te kaituhi a Gitlab
// @name:mk               Коавтор на Github
// @name:ml               ഗിത്തബ് കോ-രചയിതാവ്
// @name:mn               Github хамтран зохиогч
// @name:mo               Coautor Github
// @name:mr               गीथब सह-लेखक
// @name:ms               Pengarang bersama GitHub
// @name:mt               Ko-awtur Github
// @name:my               GITTUB ပူးတွဲရေးသားသူ
// @name:nb               Github medforfatter
// @name:ne               Githuub Co-लेखक
// @name:nl               GitHub co-auteur
// @name:nr               Umbuzo |
// @name:ny               Githob Co-wolemba
// @name:oc               Coautor de GitHub
// @name:om               Github barreessaa waliinii .
// @name:or               ଗିଥବ୍ କୋ-ଲେଖକ |
// @name:os               GitHub æмавтор
// @name:pa               ਗੇਟਬ ਸਹਿ-ਲੇਖਕ
// @name:pl               Współautor Github
// @name:ps               د ګیټوب شریک - لیکوال
// @name:pt               Co-autor do Github
// @name:pt-BR            Co-autor do Github
// @name:pt-PT            Co-autor do Github
// @name:qu               GitHub kuska qillqaq .
// @name:rn               Umunyamabanga wa GitHub
// @name:ro               Coautor Github
// @name:ru               GitHub соавтор
// @name:rw               Github Co-Umwanditsi
// @name:sa               गिथुब सह-लेखक 1 .
// @name:sd               گٽب ڪوڪ ليکڪ
// @name:se               GitHub ovttasčálli
// @name:sg               GitHub Co-autre .
// @name:sh               ГитХуб коаутор
// @name:si               GitHub සම-කර්තෘ
// @name:sk               Spoluautor GitHub
// @name:sl               Soavtor GitHub
// @name:sm               GitHub Co-tusitala
// @name:sn               GitHub Co-Munyori
// @name:so               GitHub co-qoraa
// @name:sq               Bashkëautor
// @name:sr               ГитХуб коаутор
// @name:ss               Umbhali we-GitHub Umbhali
// @name:st               Sengoli sa Github
// @name:su               Github Co-panulis
// @name:sv               Github medförfattare
// @name:sw               Mwandishi mwenza wa Github
// @name:ta               கிதுப் இணை ஆசிரியர்
// @name:te               గితుబ్ సహ రచయిత
// @name:tg               Муаллифи Github
// @name:th               ผู้เขียนร่วมของ GitHub
// @name:ti               Github Co-author
// @name:tk               GitHub bilelikde awtor
// @name:tl               Github co-may-akda
// @name:tn               Mokwadi-mmogo wa GitHub
// @name:to               Ko e Tokotaha faʻu tohi ʻo e GitHub
// @name:tr               Github ortak yazarı
// @name:ts               Mutsari-kulobye wa GitHub .
// @name:tt               Github коо-автор
// @name:tw               GitHub a ɔka ho
// @name:ty               GitHuff, te hoê auvaha
// @name:ug               Github co-org
// @name:uk               Співавтор Github
// @name:ur               گٹ ہب شریک مصنف
// @name:uz               Githul hamkori
// @name:ve               Muṅwali wa GitHub
// @name:vi               Đồng tác giả GitHub
// @name:wo               GitHub Co-auteur
// @name:xh               I-Github Co-Umbhali
// @name:yi               גיטוב קאָ-מחבר
// @name:yo               Ọmọde Github Comp
// @name:zh               GitHub 共同协作者
// @name:zh-CN            GitHub 共同协作者
// @name:zh-HK            GitHub 共同協作者
// @name:zh-MO            GitHub 共同協作者
// @name:zh-MY            GitHub 共同协作者
// @name:zh-SG            GitHub 共同协作者
// @name:zh-TW            GitHub 共同協作者
// @name:zu               Umlobi we-GitHub
// @description:aa        GitHub PR edde osisak inkih tan PR gabat agle edde osissuh co-uathors.
// @description:ab        GitHub PR аҿы агәыҵха ацҵа, PR алахәылацәа зегьы еицавторцәаны рыцҵаразы, еидҵаны.
// @description:af        Voeg ’n knoppie in GitHub PR by om alle PR-deelnemers as mede-outeurs by te voeg voordat hulle saamsmelt.
// @description:ak        Fa bɔtn bi ka ho wɔ GitHub PR mu na fa PR mufoɔ nyinaa ka ho sɛ co-authors ansa na woaka abom.
// @description:am        ከመዋሃድዎ በፊት ሁሉንም የ PS ተሳታፊዎችን እንደ አስተላላፊዎች ለመጨመር በ Github ውስጥ አንድ ቁልፍ ያክሉ.
// @description:ar        أضف زرًا في Github PR لإضافة جميع المشاركين في العلاقات العامة كمؤلفين مشاركين قبل الاندماج.
// @description:as        GitHub PR ত এটা বুটাম যোগ কৰক যাতে সকলো জনসংযোগ অংশগ্ৰহণকাৰীক একত্ৰিত কৰাৰ আগতে সহ-লেখক হিচাপে যোগ কৰে।
// @description           Adds a button to GitHub pull requests to make it simple to add co-author credits for all PR participants before merging.
// @description:av        GitHub PR-алда кнопка тӀаде жубана, киналго пиаралъул гӀахьалчагӀи гъорлъе жубазе, цолъизегӀан соавторал хӀисабалда.
// @description:ay        Github PR ukan mä botón ukar yapxatañamawa, taqi PR ukan chikancht’asirinakar co-authors ukham yapxatañataki janïr mayachañkama.
// @description:az        Birləşmədən əvvəl bütün PR iştirakçılarını birgə müəllif kimi əlavə etmək üçün Github Pr-də bir düymə əlavə edin.
// @description:ba        GitHub PR-ҙа төймә өҫтәп, бөтә пиар ҡатнашыусыларын берләштереү алдынан авторҙаштар итеп өҫтәргә.
// @description:be        Дадайце кнопку ў Github PR, каб дадаць усіх удзельнікаў PR у якасці суаўтараў перад зліццём.
// @description:bg        Добавете бутон в GitHub PR, за да добавите всички участници в PR като съавтори преди да се слеете.
// @description:bh        विलय से पहिले सभ पीआर प्रतिभागी के सह-लेखक के रूप में जोड़ के गिटहब पीआर में एगो बटन जोड़ीं।
// @description:bm        Aw bɛ butɔni dɔ fara GitHub PR kan walasa ka PR lajɛbagaw bɛɛ fara a kan i n’a fɔ sɛbɛnbagaɲɔgɔnw ka sɔrɔ ka fara ɲɔgɔn kan.
// @description:bn        মার্জ করার আগে সহ-লেখক হিসাবে সমস্ত পিআর অংশগ্রহণকারীদের যুক্ত করতে গিটহাব পিআর-তে একটি বোতাম যুক্ত করুন।
// @description:bo        མཉམ་སྡེབ་མ་བྱེད་གོང་ལ་PR མཉམ་ཞུགས་པ་ཚང་མ་རྩོམ་སྒྲིག་མཉམ་འབྲེལ་པ་ལྟར་ཁ་སྣོན་བྱེད་པར་GitHub PRནང་དུ་མཐེབ་གཅིག་བསྣན་དགོས།
// @description:br        Ouzhpennit ur bouton e GitHub PR evit ouzhpennañ an holl gevredidi PR evel kenskriverien a-raok kendeuziñ.
// @description:bs        Dodajte gumb u GitHub PR-u da biste dodali sve PR sudionike kao koautore prije spajanja.
// @description:ca        Afegiu un botó a GitHub PR per afegir tots els participants de PR com a coautors abans de fusionar-se.
// @description:ce        GitHub PR-хь кнопка тӀетоха, массо а PR-ан декъашхой цхьаьнаавторш санна тӀетоха, цхьаьнакхетале.
// @description:ceb       Pagdugang usa ka butones sa Github pr aron idugang ang tanan nga mga partisipante sa PR ingon mga kauban sa mga tagsulat sa wala pa ang pagsagol.
// @description:ch        Adda’ un boton gi GitHub PR para un addåpta todu i PR na partisipante siha ni’ manma’gås-ñiha antes di u fanma’gås-ñiha.
// @description:ckb       دوگمەیەک لە Github PR زیاد بکە بۆ زیادکردنی هەموو بەشداربووانی PR وەک هاوکار لە نووسینی پێش تێکەڵکردن.
// @description:co        Aggiungi un buttone in GitHub Pr per aghjunghje tutti i participanti pro prizziali cum’è coautori prima di fusione.
// @description:cs        Před sloučením přidejte tlačítko v GitHubu PR a přidejte všechny účastníky PR jako spoluautory.
// @description:cv        GitHub PR-ра кнопка хушăр, пĕрлешиччен PR-а хутшăнакансене пурне те пĕрле авторсем пек хушма.
// @description:cy        Ychwanegwch botwm yn GitHub PR i ychwanegu pob cyfranogwr cysylltiadau cyhoeddus fel cyd-awduron cyn uno.
// @description:da        Tilføj en knap i GitHub PR for at tilføje alle PR-deltagere som medforfattere, før de fusionerer.
// @description:de        Fügen Sie eine Taste in Github PR hinzu, um alle PR-Teilnehmer als Co-Autoren vor dem Zusammenführen hinzuzufügen.
// @description:dv        ޕީއާރު ބައިވެރިންގެ ހުރިހާ ބައިވެރިން އެއްކުރުމުގެ ކުރިން ކޯ-އޮތޯރުންގެ ގޮތުގައި އިތުރުކުރުމަށް ގިޓްހަބް ޕީއާރުގައި ބަޓަނެއް އިތުރުކުރުން.
// @description:dz        མཉམ་བསྡོམས་མ་འབད་བའི་ཧེ་མ་ PR བཅའ་མར་གཏོགས་མི་ཆ་མཉམ་རང་ མཉམ་འབྲེལ་རྩོམ་སྒྲིག་པ་སྦེ་ཁ་སྐོང་བརྐྱབ་ནིའི་དོན་ལུ་ GitHub PR ནང་ལུ་ ཨེབ་རྟ་ཁ་སྐོང་བརྐྱབ།
// @description:ee        Tsɔ butɔ aɖe kpe ɖe GitHub PR ŋu be nàtsɔ PR gomekpɔlawo katã akpe ɖe eŋu abe kpeɖeŋutɔ ŋlɔlawo ene hafi woaƒo wo nu ƒu.
// @description:el        Προσθέστε ένα κουμπί στο GitHub PR για να προσθέσετε όλους τους συμμετέχοντες PR ως συν-συγγραφείς πριν από τη συγχώνευση.
// @description:en        Add a button in GitHub PR to add all PR participants as co-authors before merging.
// @description:en-GB     Add a button in GitHub PR to add all PR participants as co-authors before merging.
// @description:eo        Aldonu butonon en GitHub PR por aldoni ĉiujn PR-partoprenantojn kiel kunaŭtorojn antaŭ kunfandiĝi.
// @description:es        Agregue un botón en GitHub PR para agregar a todos los participantes de relaciones públicas como coautores antes de fusionarse.
// @description:es-419    Agregue un botón en GitHub PR para agregar a todos los participantes de relaciones públicas como coautores antes de fusionarse.
// @description:et        Lisage GitHub PR-is nupp, et lisada kõik PR-i osalised enne liitmist kaasautoriteks.
// @description:eu        Gehitu botoia Github PR-n PR partaide guztiak batu aurretik egile gisa gehitzeko.
// @description:fa        قبل از ادغام ، یک دکمه در GitHub PR اضافه کنید تا همه شرکت کنندگان در روابط عمومی به عنوان همکار اضافه کنید.
// @description:ff        Ɓeydu heen butoŋ e nder GitHub PR ngam ɓeydude denndaangal tawtoraaɓe PR ɓee ko wayi no winndooɓe ɓee hade mum en hawrude.
// @description:fi        Lisää painike GitHub PR: hen lisätäksesi kaikki PR-osallistujat yhteiskirjoittajiksi ennen sulautumista.
// @description:fil       Magdagdag ng isang pindutan sa GitHub PR upang idagdag ang lahat ng mga kalahok ng PR bilang mga co-may-akda bago pagsamahin.
// @description:fj        Vakuria e dua na bulukau e GitHub PR me ra vakuria kece na vakaitavi ena PR me vaka na co-i-vakatakitagi ni bera ni ra tabaivola.
// @description:fo        Legg ein knøtt í GitHub PR fyri at leggja allar PR-luttakarar til sum samhøvundar áðrenn tú leggur saman.
// @description:fr        Ajoutez un bouton dans GitHub PR pour ajouter tous les participants aux relations publiques en tant que co-auteurs avant la fusion.
// @description:fr-CA     Ajoutez un bouton dans GitHub PR pour ajouter tous les participants aux relations publiques en tant que co-auteurs avant la fusion.
// @description:fy        Foegje in knop ta yn GitHub Pr om alle PR dielnimmers as co-auteurs te foegjen foardat jo fusearje.
// @description:ga        Cuir cnaipe i GitHub PR le gach rannpháirtí PR a chur mar chomh-údair sula gcumascfaidh siad.
// @description:gd        Cuir putan ri GitHub P gus na co-ùghdarrais a chuir mar cho-ùghdaran mus tig thu às.
// @description:gl        Engade un botón en GitHub PR para engadir a todos os participantes en PR como coautores antes de fusionarse.
// @description:gn        Oñemoĩ peteĩ botón GitHub PR-pe omoĩ hag̃ua opavave PR participante co-autor ramo oñembojoaju mboyve.
// @description:gsw-berne Add a button in GitHub PR to add all PR participants as co-authors before merging.
// @description:gu        મર્જ કરતા પહેલા બધા પીઆર સહભાગીઓને સહ-લેખકો તરીકે ઉમેરવા માટે ગિટહબ પીઆરમાં એક બટન ઉમેરો.
// @description:gv        Cur botoon ayns PR GitHub dy chur rish ooilley ny PR myr co-authoryn roish my t’ad jannoo ymmyd jeh.
// @description:ha        Add Button a Github PR don ƙara duka mahalarta PH a matsayin marubutan marubuta kafin su da haɗari.
// @description:he        הוסף כפתור ב- GitHub PR כדי להוסיף את כל משתתפי יחסי הציבור כמחברים משותפים לפני התמזגות.
// @description:hi        विलय से पहले सभी पीआर प्रतिभागियों को सह-लेखकों के रूप में जोड़ने के लिए GitHub PR में एक बटन जोड़ें।
// @description:hmn       Add a button in GitHub PR to add all PR participants as co-authors before merging.
// @description:hr        Dodajte gumb u GitHub PR-u kako biste dodali sve sudionike PR-a kao koautore prije spajanja.
// @description:ht        Ajoute yon bouton nan GitHub PR pou ajoute tout patisipan PR yo kòm ko-otè anvan fusion.
// @description:hu        Adjon hozzá egy gombot a GitHub PR-be, hogy az összes PR résztvevőt társszerzőként adja hozzá az egyesülés előtt.
// @description:hy        Github PR- ի կոճակը ավելացրեք բոլոր PR մասնակիցներին որպես համահեղինակներ, նախքան միաձուլումը:
// @description:id        Tambahkan tombol di GitHub PR untuk menambahkan semua peserta PR sebagai rekan penulis sebelum bergabung.
// @description:ig        Tinye bọtịnụ na Github Pri ka ịgbakwunye ndị sonyere na ndị otu P sonyere dị ka ndị odeakwụkwọ tupu njikọta.
// @description:is        Bættu við hnappi í Github PR til að bæta við öllum PR þátttakendum sem meðhöfundar áður en þeir sameinast.
// @description:it        Aggiungi un pulsante in GitHub PR per aggiungere tutti i partecipanti PR come coautori prima di unire.
// @description:iu        ᐃᓚᓯᓗᑎᑦ ᓇᕿᑦᑕᒐᕐᒥᒃ GitHub PR-ᒥ ᐃᓚᓯᓂᐊᕐᓗᑎᑦ ᑕᒪᐃᓐᓂᒃ PR-ᑯᑦ ᐃᓚᐅᖃᑕᐅᔪᓂᒃ ᑎᑎᕋᖅᑎᐅᖃᑕᐅᓗᑎᒃ ᑲᑎᓚᐅᙱᓐᓂᕐᓂ.
// @description:ja        github PRにボタンを追加して、すべてのPR参加者を共著者として追加する前に追加します。
// @description:jv        Tambah tombol ing Github PR kanggo nambah kabeh peserta PR minangka co-penulis sadurunge gabung.
// @description:ka        დაამატეთ ღილაკი Github PR– ში, რომ შერწყმამდე დაამატოთ PR– ის ყველა მონაწილე, როგორც თანაავტორები.
// @description:kg        Yika buto mosi na GitHub PR sambu na kuyika bantu yonso ya PR yina ke salaka kisalu bonso bantu yina me sonikaka na ntwala ya kuvukisa.
// @description:kk        Github PR-ге барлық PR қатысушыларын біріктірілмес бұрын қосалқы автор ретінде қосу үшін қосыңыз.
// @description:kl        GitHub PR-imi toortagaq ilanngukkit, PR-imi peqataasut tamarmik ataatsimoortinneqarnissaat sioqqullugu atuakkiortutut ilanngunneqarnissaat.
// @description:km        បន្ថែមប៊ូតុងមួយនៅ Github PR បន្ថែមអ្នកចូលរួមគ្រប់រូបជាសហអ្នកនិពន្ធមុនពេលបញ្ចូលគ្នា។
// @description:kn        ವಿಲೀನಗೊಳ್ಳುವ ಮೊದಲು ಎಲ್ಲಾ ಪಿಆರ್ ಭಾಗವಹಿಸುವವರನ್ನು ಸಹ-ಲೇಖಕರಾಗಿ ಸೇರಿಸಲು ಗಿಟ್‌ಹಬ್ ಪಿಆರ್‌ನಲ್ಲಿ ಒಂದು ಗುಂಡಿಯನ್ನು ಸೇರಿಸಿ.
// @description:ko        병합 전에 모든 PR 참가자를 공동 저자로 추가하려면 github pr에 버튼을 추가하십시오.
// @description:kr        GitHub PR lan button yira PR samma yira nankaro kawu kəltə badijinro.
// @description:ku        Bişkojkek li Github P-ê zêde bikin da ku hemî beşdarên PR-ê wekî hevserokên berî hevberdanê zêde bikin.
// @description:kv        Содты кнопка GitHub PR-ӧ, медым содтыны став PR-ӧ пырӧдчысьясӧс кыдзи соавторъяс ӧтувтӧмын.
// @description:ky        Бардык PR катышуучуларын бириктирүүдөн мурун авторлор катары кошуу үчүн Github PR ичиндеги баскычын кошуңуз.
// @description:la        Add a button in Github PR ad omnia PR participantium quod co-auctores ante bus.
// @description:lb        Füügt e Knäppchen am Github Prem fir all PR Participanten als Co-Autoren ze addéieren ier Dir fusionéiert.
// @description:lg        Teeka bbaatuuni mu GitHub PR okugattako bonna abeetabye mu PR nga ba co-authors nga tebannagatta.
// @description:ln        Bobakisa bouton na GitHub PR mpo na kobakisa ba participants nionso ya PR lokola ba co-auteurs avant ya kosangana.
// @description:lo        ຕື່ມປຸ່ມໃນ Github PR ເພື່ອເພີ່ມຜູ້ເຂົ້າຮ່ວມ PR ທັງຫມົດເປັນຜູ້ຂຽນຮ່ວມກ່ອນການລວມຕົວ.
// @description:lt        Pridėkite mygtuką „GitHub PR“, kad visi PR dalyviai pridėtų kaip bendraautoriai prieš sujungdami.
// @description:lv        Pievienojiet pogu Github PR, lai pirms apvienošanās pievienotu visus PR dalībniekus kā līdzautorus.
// @description:mg        Manampia bokotra ao amin’ny Github PR hampiditra ny mpandray anjara PR rehetra ho mpanoratra mpiara-miasa alohan’ny hampiakarana azy.
// @description:mh        Kobaik juon bōtōn ilo GitHub PR ñan kobaik aolep PR ro rej bōk koņaer m̧okta jān am̧ kobaik.
// @description:mi        Tāpirihia he paatene i roto i a GitHub PR ki te taapiri i nga kaiuru PR katoa hei kaikohuru i mua i te whakakotahi.
// @description:mk        Додадете копче во Github PR за да ги додадете сите учесници во ПР како коавтори пред да се спојат.
// @description:ml        ലയിപ്പിക്കുന്നതിന് മുമ്പ് എല്ലാ PR പങ്കാളികളെയും സഹ-രചയിതാവായി ചേർക്കാൻ GitHub Pr- ൽ ഒരു ബട്ടൺ ചേർക്കുക.
// @description:mn        GitHUB-д товчлуур дээр нэмэхийн тулд бүх PR-д НЭГДҮГЭЭР НЭГДСЭН НЭГДСЭН НЭГДСЭН НЭГДСЭН НЭГДСЭН НЭГДСЭН ХУВЬЦАА.
// @description:mo        Adăugați un buton în GitHub PR pentru a adăuga toți participanții la PR ca coautori înainte de a se îmbina.
// @description:mr        विलीन होण्यापूर्वी सर्व पीआर सहभागींना सह-लेखक म्हणून जोडण्यासाठी गीथब पीआरमध्ये एक बटण जोडा.
// @description:ms        Tambah butang di GitHub PR untuk menambah semua peserta PR sebagai pengarang bersama sebelum bergabung.
// @description:mt        Żid buttuna fil-Github PR biex iżżid il-parteċipanti kollha tal-PR bħala ko-awturi qabel ma tgħaqqad.
// @description:my        PR တွင်ပါ 0 င်သူအားလုံးကိုပေါင်းစည်းခြင်းမပြုမီပူးတွဲစာရေးဆရာများအဖြစ်ထည့်ရန် GITHUB PR တွင်ထည့်ပါ။
// @description:nb        Legg til en knapp i GitHub PR for å legge til alle PR-deltakere som medforfattere før de samles.
// @description:ne        Githuub मा एक बटन थप्नुहोस् सबै pria prodies सहभागीहरु द्वारा मर्ज गर्नु अघि।
// @description:nl        Voeg een knop toe in GitHub PR om alle PR-deelnemers als co-auteurs toe te voegen voordat ze samenvoegen.
// @description:nr        I-As 10 1000 u-Any.
// @description:ny        Onjezani batani mu Github Pri kuti muwonjezere onse otenga nawo mbali kuti olemba anzawo asanaphatikizidwe.
// @description:oc        Ajustar un boton en GitHub PR per apondre totes los participants de PR coma coautors abans de se fusionar.
// @description:om        Hirmaattota PR hunda akka barreessitoota waliiniitti dabaluudhaaf PR GitHub keessatti qaree itti dabali.
// @description:or        ମିଶ୍ରଣ ପୂର୍ବରୁ ସହ-ଲେଖକମାନେ ସହ-ଲେଖକ ଭାବରେ ସମସ୍ତ pr ଅଂଶଗ୍ରହଣକାରୀଙ୍କୁ ଯୋଡିବା ପାଇଁ Github PR ରେ ଏକ ବଟନ୍ ଯୋଡନ୍ତୁ |
// @description:os        GitHub PR-ы кнопкæ бафтауын, цæмæй æппæт PR-ы хайадисæгты бафтауой æмавтортæй, цалынмæ баиу уой, уæдмæ.
// @description:pa        ਗਿੱਟਬ ਪੀਆਰ ਵਿੱਚ ਇਕੱਤਰ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸਹਿ-ਲੇਖਕ ਵਜੋਂ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਗਥੇਬ ਪਿੰਟ ਵਿੱਚ ਇੱਕ ਬਟਨ ਸ਼ਾਮਲ ਕਰੋ.
// @description:pl        Dodaj przycisk w Github PR, aby dodać wszystkich uczestników PR jako współautorów przed połączeniem.
// @description:ps        په ګیت ب p کې ت button ۍ کې اضافه کړئ ترڅو ټول PR برخه اخیستونکي له مینځه وړلو دمخه شریک شوي دي.
// @description:pt        Adicione um botão no Github PR para adicionar todos os participantes do PR como co-autores antes de se fundir.
// @description:pt-BR     Adicione um botão no Github PR para adicionar todos os participantes do PR como co-autores antes de se fundir.
// @description:pt-PT     Adicione um botão no Github PR para adicionar todos os participantes do PR como co-autores antes de se fundir.
// @description:qu        Huk botón GitHub PR kaqpi yapay llapa PR participantekunata co-autor hina yapanaykipaq manaraq hukllanakuchkaspa.
// @description:rn        Wongereko ubuto muri GitHub PR kugira ngo wongereko abaje mu nama bose nk’abanditsi b’abafatanyabikorwa imbere yo gufatanya.
// @description:ro        Adăugați un buton în GitHub PR pentru a adăuga toți participanții la PR ca coautori înainte de a se îmbina.
// @description:ru        Добавьте кнопку в PR GitHub, чтобы добавить всех участников PR в качестве соавторов перед слиянием.
// @description:rw        Ongeramo buto muri GitHub Pr kugirango wongere abitabiriye kose nkabanditsi batoranijwe mbere yo guhuza.
// @description:sa        Github PR मध्ये एकं बटनं योजयन्तु यत् सर्वान् PR प्रतिभागिनः सह-लेखकाः इति रूपेण योजयितुं पूर्वं सहलेखकाः रूपेण योजयितुं शक्नुवन्ति।
// @description:sd        گٽب پي ۾ هڪ بٽڻ کي ضم ڪرڻ کان پهريان ڪو به ليکڪ شامل ڪرڻ لاء هڪ بٽڻ شامل ڪريو.
// @description:se        Bija nuppástusa GitHub PR:s vai beasat buot PR-oassálastit ovttasčállin ovdal ovttastahttima.
// @description:sg        A yeke na yâ ti GitHub PR ti zia na yâ ni azo kue so ayeke mû mbage na PR tongana azo so asû mbeti ni kozoni si ala bungbi oko.
// @description:sh        Додајте дугме у ГитХуб ПР да бисте пре спајања додали све ПР учеснике ПР-а.
// @description:si        ඒකාබද්ධ වීමට පෙර සියලුම මහජන සම්බන්ධතා සම කර්තෘවරුන් ලෙස සියලු මහජන සම්බන්ධතා එක් කරන්න.
// @description:sk        Pridajte tlačidlo v GitHub PR a pridajte všetkých účastníkov PR ako spoluautori pred zlúčením.
// @description:sl        V GitHub PR dodajte gumb, da pred spajanjem dodate vse udeležence PR-jev kot soavtorje.
// @description:sm        Faʻaopopo le ki i Gitthub PR e faʻaopopo uma tagata auai o ni tagata e avea ma tusitala muamua aʻo le i faʻavaivaia.
// @description:sn        Wedzera bhatani muGitithil Pr Fower Wedzera vese pr vatori vechikamu sevanyori-vanyori vasati vabatanidza.
// @description:so        Ku dar batoonka Github PR si aad uga qeybgasho ka-qaybgalayaasha oo dhan wada-qorayaasha ka hor intaanay isku darin.
// @description:sq        Shtoni një buton në Github PR për të shtuar të gjithë pjesëmarrësit e PR si bashkautorë para se të bashkohen.
// @description:sr        Додајте дугме у ГитХуб ПР да бисте пре спајања додали све ПР учеснике ПР-а.
// @description:ss        Ngeta inkinobho ku GitHub PR kute wengete bonkhe bahlanganyeli be-PR njengebabhali labahambisanako ngaphambi kwekutsi bahlangane.
// @description:st        Kenya konopo ho Gouthrus PR ho eketsa barupeluoa bohle ba lingoli pele ho ho ngolisa.
// @description:su        Tambihkeun tombol dina Github PR pikeun nambihan sadayana PR salaku panulis.
// @description:sv        Lägg till en knapp i GitHub PR för att lägga till alla PR-deltagare som medförfattare innan de slås samman.
// @description:sw        Ongeza kitufe katika GitHub PR ili kuongeza washiriki wote wa PR kama waandishi wa ushirikiano kabla ya kuunganishwa.
// @description:ta        அனைத்து பி.ஆர் பங்கேற்பாளர்களையும் ஒன்றிணைப்பதற்கு முன் இணை ஆசிரியர்களாக சேர்க்க கிதுப் பி.ஆரில் ஒரு பொத்தானைச் சேர்க்கவும்.
// @description:te        విలీనం చేయడానికి ముందు అన్ని పిఆర్ పాల్గొనేవారిని సహ రచయితలుగా చేర్చడానికి గిట్‌హబ్ పిఆర్‌లో ఒక బటన్‌ను జోడించండి.
// @description:tg        Тугмаи иловагиро дар Gitub PR илова кунед, то ҳама иштирокчиёни PR -ро ҳамчун ҳаммуаллифон пеш аз муттаҳидшавӣ илова кунед.
// @description:th        เพิ่มปุ่มใน GitHub PR เพื่อเพิ่มผู้เข้าร่วม PR ทั้งหมดในฐานะผู้เขียนร่วมก่อนที่จะรวม
// @description:ti        ኣብ Github PR ቁልፊ ወስኸሉ ንኹሎም ተሳተፍቲ PR ቅድሚ ምውህሃድ ከም ሓባራዊ ጸሓፍቲ ንምውሳኽ።
// @description:tk        Gitsub-laryň hemmesini birleşdirmezden ozal awtorlaryň awtorlary goşmak üçin GitHub-yň ähli ýazyjylaryny goşmak üçin GitHub-a girişleri goşuň.
// @description:tl        Magdagdag ng isang pindutan sa GitHub PR upang idagdag ang lahat ng mga kalahok ng PR bilang mga co-may-akda bago pagsamahin.
// @description:tn        Tsenya konopo mo GitHub PR go tsenya batsayakarolo botlhe ba PR jaaka bakwadimmogo pele ga ba kopana.
// @description:to        Tānaki atu ha fo’i pātene ’i he GitHub PR ke tanaki atu ’a e kau PR kotoa pe ko e kau fa’u tohi kimu’a pea toki fakataha’i.
// @description:tr        Birleşmeden önce tüm PR katılımcılarını ortak yazar olarak eklemek için GitHub PR’de bir düğme ekleyin.
// @description:ts        Engetela buti eka GitHub PR ku engetela hinkwavo vatekaxiave va PR tanihi vatsari-kulobye va nga si hlangana.
// @description:tt        Github PR-та App PR төймәсенә берләшүчеләрне берләшкәнче автор итеп өстәр өчен.
// @description:tw        Fa bɔtn bi ka ho wɔ GitHub PR mu na fa PR mufoɔ nyinaa ka ho sɛ co-authors ansa na woaka abom.
// @description:ty        No te faaô atu i te mau melo o te PR, a tapiri i te hoê pato’i i roto i te GitHub PR ei mau taata papa’i buka hou a amui atu ai.
// @description:ug        GitHub PR دىكى بىر كۇنۇپكىنى قوشۇڭ.
// @description:uk        Додайте кнопку в Github PR, щоб додати всіх учасників PR як співавторів перед об’єднанням.
// @description:ur        ضم کرنے سے پہلے تمام PR شرکا کو شریک مصنفین کی حیثیت سے شامل کرنے کے لئے گٹ ہب PR میں ایک بٹن شامل کریں۔
// @description:uz        Hamma PR ishtirokchilarini birlashtirishdan oldin qo’shma mualliflar sifatida qo’shma mualliflar sifatida qo’shish uchun Github PR-da tugma qo’shing.
// @description:ve        Engedza buthano kha GitHub PR u engedza vhaṱanganedzi vhoṱhe vha PR sa vhaṅwali-vhaṅwe phanḓa ha musi vha tshi ṱangana.
// @description:vi        Thêm một nút trong GitHub PR để thêm tất cả người tham gia PR làm đồng tác giả trước khi hợp nhất.
// @description:wo        Def ci benn butoŋu GitHub PR ngir yokk PR yépp ni ay co-auteurs balaa ñuy boole.
// @description:xh        Yongeza iqhosha kwi-gikib pr ukongeza zonke abathathi-nxaxheba njengababhali be-CO ngaphambi kokudibana.
// @description:yi        לייג אַ קנעפּל אין גיטוב פּר צו לייגן אַלע פּר פּאַרטיסאַפּאַנץ ווי קאָ-מחברים איידער צונויפגיסן.
// @description:yo        Ṣafikun bọtini kan ni Github Pri lati ṣafikun gbogbo awọn olukopa pr pr bi awọn alabaṣiṣẹpọ ṣaaju ki o to darapọ.
// @description:zh        在 GitHub PR中添加一个按钮,以便在合并之前将所有 PR 参与者添加为共同作者.
// @description:zh-CN     在 GitHub PR中添加一个按钮,以便在合并之前将所有 PR 参与者添加为共同作者.
// @description:zh-HK     在 GitHub PR中添加一個按鈕,以便在合併之前將所有 PR 參與者添加為共同作者.
// @description:zh-MO     在 GitHub PR中添加一個按鈕,以便在合併之前將所有 PR 參與者添加為共同作者.
// @description:zh-MY     在 GitHub PR中添加一个按钮,以便在合并之前将所有 PR 参与者添加为共同作者.
// @description:zh-SG     在 GitHub PR中添加一个按钮,以便在合并之前将所有 PR 参与者添加为共同作者.
// @description:zh-TW     在 GitHub PR中添加一個按鈕,以便在合併之前將所有 PR 參與者添加為共同作者.
// @description:zu        Ngeza inkinobho ku-GitHub PR ukwengeza bonke ababambiqhaza be-PR njengababhali bezomuntu ngaphambi kokuhlanganisa.
// @author                delucis,人民的勤务员 <[email protected]>
// @namespace             https://github.com/ChinaGodMan/UserScripts
// @supportURL            https://github.com/ChinaGodMan/UserScripts/issues
// @homepageURL           https://github.com/ChinaGodMan/UserScripts
// @license               MIT
// @match                 https://github.com/*
// @icon                  https://raw.githubusercontent.com/ChinaGodMan/UserScriptsHistory/main/scriptsIcon/github-co-authors.png
// @compatible            chrome
// @compatible            firefox
// @compatible            edge
// @compatible            opera
// @compatible            safari
// @compatible            kiwi
// @compatible            qq
// @compatible            via
// @compatible            brave
// @version               2025.5.27.1
// @grant                 GM_setValue
// @grant                 GM_getValue
// ==/UserScript==
/**
 * File: github-co-authors.user.js
 * Project: UserScripts
 * File Created: 2025/05/27,Tuesday 22:47:12
 * Author: Chris Swithinbank([email protected]),人民的勤务员@ChinaGodMan ([email protected])
 * -----
 * Last Modified: 2025/05/27,Tuesday 23:16:14
 * Modified By: 人民的勤务员@ChinaGodMan ([email protected])
 * -----
 * License: MIT License
 * Copyright © 2024 - 2025 ChinaGodMan,Inc
 */

let GITHUB_TOKEN = GM_getValue('GITHUB_TOKEN', '')
if (!GITHUB_TOKEN) {
    GM_setValue('GITHUB_TOKEN', prompt('Please enter your GitHub Token'))
    GITHUB_TOKEN = GM_getValue('GITHUB_TOKEN', '')
}

// Run the script
addCoAuthorsButtonToMergeForm()
// Re-run the script when navigating between pages
document.addEventListener('turbo:render', addCoAuthorsButtonToMergeForm)

/**
 * Create the UI for adding co-authors.
 * @param {HTMLElement} root
 * @param {Element | null} newMergeExperienceContainer
 */
function createCoAuthorsUI(root, newMergeExperienceContainer) {
    const banner = document.createElement('div')
    banner.setAttribute('aria-live', 'polite')
    banner.classList.add('color-fg-subtle')

    let bannerTimeout
    /**
     * Display a temporary status update about the progress adding co-authors.
     * @param {string} msg The message to display
     * @param {'subtle' | 'success' | 'danger'} color The status color to use.
     */
    const displayStatus = (msg, color = 'subtle') => {
        clearTimeout(bannerTimeout)
        banner.textContent = msg
        banner.className = `color-fg-${color}`
        bannerTimeout = setTimeout(() => (banner.textContent = ''), 5000)
    }

    const button = document.createElement('button')
    button.textContent = 'Add co-authors'
    button.classList.add('Button', 'Button--secondary', 'Button--small')
    button.type = 'button'
    button.addEventListener('click', async () => {
        displayStatus('Loading co-authors…')
        try {
            const { message, count } = await getCoAuthors()
            /** @type {HTMLTextAreaElement | null} */
            const textArea = newMergeExperienceContainer?.querySelector('textarea') ??
                root.querySelector('textarea#merge_message_field')
            if (!textArea) {
                throw new Error('Couldn’t find commit message <textarea>')
            }
            // Append co-authors to textarea content.
            textArea.value = (textArea.value + '\n\n' + message).trim()
            // Notify event listeners that the <textarea> content changed.
            textArea.dispatchEvent(new Event('change', { bubbles: true, cancelable: true }))

            if (count === 0) {
                displayStatus('Found no co-authors to add')
            } else {
                displayStatus(`Added ${count} co-author${count === 1 ? '' : 's'}`, 'success')
            }
        } catch (error) {
            console.error('Error adding co-authors:', error)
            displayStatus('Something went wrong.', 'danger')
        }
    })
    // Build container
    const container = document.createElement('div')
    container.classList.add('d-flex', 'flex-items-center', 'gap-2')
    if (newMergeExperienceContainer) container.classList.add('mt-3')
    container.append(button)
    container.append(banner)
    return container
}

/** Get participants for the current PR and generate `Co-authored-by` messages for them. */
async function getCoAuthors() {
    const [, owner, repo, _pull, id] = window.location.pathname.split('/')
    const pullNumber = parseInt(id || '', 10)

    const [prData, comments, reviewComments, reviews] = await Promise.all([
        fetchGitHubAPI(`/repos/${owner}/${repo}/pulls/${pullNumber}`),
        fetchGitHubAPI(`/repos/${owner}/${repo}/issues/${pullNumber}/comments`),
        fetchGitHubAPI(`/repos/${owner}/${repo}/pulls/${pullNumber}/comments`),
        fetchGitHubAPI(`/repos/${owner}/${repo}/pulls/${pullNumber}/reviews`)
    ])

    const participants = /** @type {Map<string, { name: string; email: string }>} */ (new Map())

    // Add commenters
    for (const { user } of [...comments, ...reviewComments, ...reviews]) {
        // Skip bot comments
        if (user.type === 'Bot') continue
        // Skip PR author
        if (user.login === prData.user.login) continue
        // Add commenters
        if (!participants.has(user.login)) {
            participants.set(user.login, {
                name: user.name || user.login,
                email: `${user.id}+${user.login}@users.noreply.github.com`
            })
        }
    }

    const lines = Array.from(participants.values()).map(
        (p) => `Co-authored-by: ${p.name} <${p.email}>`
    )
    return { message: lines.join('\n'), count: lines.length }
}

/**
 * Simple wrapper around `fetch()` for making GitHub API requests, e.g. `fetchGitHubAPI('/repos/withastro')`.
 * Throws an error if the fetch does not succeed.
 * @param {string} endpoint GitHub API endpoint to fetch
 */
async function fetchGitHubAPI(endpoint) {
    const response = await fetch(`https://api.github.com${endpoint}`, {
        headers: {
            Accept: 'application/vnd.github.v3+json',
            Authorization: `token ${GITHUB_TOKEN}`
        }
    })
    if (!response.ok) {
        throw new Error(`GitHub API request failed: ${response.statusText}`)
    }
    return response.json()
}

/**
 * Create and add the co-authors button.
 * @param {HTMLElement} root Element to search within and add the co-authors button to.
 */
function addCoAuthorsButton(root) {
    const newMergeExperienceContainer = root.querySelector('react-partial[partial-name="mergebox-partial"]')
    const commitTitleInput = newMergeExperienceContainer?.querySelector('div:has(> label):nth-child(1)') ??
        root.querySelector('input[name="commit_title"]')
    if (!commitTitleInput || root.querySelector('[data-coauthors-button]')) {
        return
    }
    const button = createCoAuthorsUI(root, newMergeExperienceContainer)
    button.setAttribute('data-coauthors-button', '')
    commitTitleInput.insertAdjacentElement('afterend', button)
}

/**
 * Look for the PR merge form and add monitor it to add the co-authors button when possible.
 */
function addCoAuthorsButtonToMergeForm() {
    const element = /** @type {HTMLDivElement | null} */ (
        document.querySelector('.discussion-timeline-actions')
    )
    if (!element) return

    const observer = new MutationObserver(() => {
        addCoAuthorsButton(element)
    })
    observer.observe(element, { subtree: true, childList: true })
    addCoAuthorsButton(element)
}