traxxx/seeds/04_media.js

792 lines
31 KiB
JavaScript
Raw Normal View History

const nanoid = require('nanoid/non-secure');
const upsert = require('../src/utils/upsert');
2020-03-23 00:43:49 +00:00
const sfw = Object.entries({
animals: [
['7WXfIIxVlNo', 'David Boca'],
['aMBhrrveocw', 'Ivan Diaz'],
['LTzbD8lj0kw', 'Lionel HESRY'],
['t2I1PTZEx4E', 'Mohamed Nanabhai'],
['0S1qMPpHbkE', 'Thomas Giotopoulos'],
['UnLcVKt7d7I', 'Fernando @cferdo'],
['reXwAuEdkVM', 'Ryan Al Bishri'],
['Hq5N_iPRkOs', 'Axel Holen'],
['GtXsMqOR3ik', 'Sophie Dale'],
['FYJNmIQk7JA', 'Anastasiya Romanova'],
['pQmu6_4VDaI', 'joel herzog'],
['j0iiByCxGfA', 'Jordan Opel'],
['67rtZAf_Jgw', 'Sean Thoman'],
['2puB0ahKDag', 'K. Mitch Hodge'],
['AM9ZtoUss68', 'Erica Nilsson'],
['7r58deUCN4Q', 'Zuriela Benitez'],
['PQJN_Po0O1U', 'Quaid Lagan'],
['rCkstBJusv4', 'Martin Woortman'],
['Tj4lLm49hhM', 'Saketh Upadhya'],
['SjtR_cCEh0w', 'Patti Black'],
['hmn3ZiTDep4', 'Portuguese Gravity'],
['ZC3LibyQxZQ', 'Narges Pms'],
['l-OYOwN2gpQ', 'Pablo Guerrero'],
['E8LxrpUjW7Q', 'Tamara Bellis'],
['xYVRzube0iM', 'Ricardo Braham'],
['7AzUTGOBeJI', 'Adam Thomas'],
['9Ha6VNNsKAA', 'Thomas Evans'],
['GNvCMZzljr0', 'Hari Nandakumar'],
['51u3WqwzXnQ', 'Grace Evans'],
['X8Sck0T0y8s', 'Mélody P'],
],
kittens: [
['fEK4jvgnApg', 'Kim Davies'],
['FCx5h0erwnA', 'Lorraine Steriopol'],
['RcGUiP9dphM', 'Kym Ellis'],
['gAPXLS1LRVE', 'Olya Kuzovkina'],
['JHf_O0inuHg', 'Prasad Panchakshari'],
['CKsDMYPDgCs', 'Jacalyn Beales'],
['mQquoOszMRM', 'Dimitri Houtteman'],
['MNju0A6EeE0', 'Amy Baugess'],
['emI7VUcvLi0', 'The Lucky Neko'],
['Aq4e2-v7UuQ', 'Mario Peter'],
['6vY_jbV12kQ', 'Kazuky Akayashi'],
['1BfCps2-XjQ', 'Ramiz Dedaković'],
['iNEXVlX-RLs', 'Lucija Ros'],
['b8g-ywrrl5Y', 'Leighann Blackwood'],
['Y3gjv5x38Wc', 'Agustin Fernandez'],
['TYXh7h4QxX0', 'Leighann Blackwood'],
['6EchiwVg7C4', 'Jesse Borovnica'],
['fGh_mgAcKYY', 'Šárka Jonášová'],
['V8o2n1GbMWc', 'Hunt Han'],
['TEnrxLKakgI', 'Diver Zhang'],
['XZuTLRfxwcU', 'Diana Parkhouse'],
['rpvS2T2Tl0c', 'Luiza Braun'],
['1S08ciB6Fy4', 'Екатерина Балабанова'],
['iuBVMDnwaho', 'Shaun Meintjes'],
['02kGh5lGsb8', 'Kym Ellis'],
['8ELEgu78IbU', 'Kristin Wilson'],
['TQ0XD_mGC8c', 'Kamal Bilal'],
['zgvb8Knw_AU', 'Zoë Gayah Jonker'],
['GGb-AyBZhjY', 'Brett Jordan'],
['DyD9hx5lvpg', 'James Pond'],
],
dogs: [
['f7-aL0xQd6A', 'Mark Galer'],
['kOI1RlSGsfo', 'Mark Zamora'],
['7c8z4KEvgds', 'William Daigneault'],
['oWrZoAVOBS0', 'William Daigneault'],
['xwpF_Hts7jA', 'Carolinie Cavalli'],
['72mXoMwCoq4', 'Yuki Dog'],
['7EKROB9iGFc', 'Yuki Dog'],
['cX-KEISwDIw', 'Cole Keister'],
['6v-lTFEoO6E', 'Camilo Fierro'],
['1-sM8xqPFTM', 'Dimitri Bong'],
['uTRtIcwkbGM', 'Lenin Estrada'],
['dpn6K9e1vzY', 'Evan Clark'],
['M8AKGLnbi90', 'Tatiana Rodriguez'],
['sxGJv1SUlew', 'Jon Tyson'],
['pT9TTuuzivQ', 'William Daigneault'],
['KKNxCHLesGc', 'Julio Arcadio Santamaría Reyes'],
['e_Du6fAT5dI', 'Thomas Fryatt'],
['1IqHMmYaQJE', 'Mitchell Orr'],
['BHh-jKrTIoU', 'NICOLAS TESSARI'],
['l6GlfPH-8y4', 'Tatiana Rodriguez'],
['d7TLLuiwm_c', 'Brett Jordan'],
['I_PBuIa3Bm8', 'Karl Bewick'],
['d2hWXEV8J-8', 'Harrison Kugler'],
['AhKXmqa_7yU', 'Yuki Dog'],
['aH79Nc7Npas', 'Irene Garcia'],
['v3-zcCWMjgM', 'James Barker'],
],
architecture: [
['jBanV-D3T-Q', 'Dimitry Anikin'],
['VoQ35NRfZro', 'Dabbas'],
['_u_wI4LaT7o', 'Alex Hudson'],
['oSmn4cbhl8w', 'Jorge Gardner'],
['c8GdokJMjWU', 'Mert Kahveci'],
['nfPguKj20Ac', 'Ilya Panasenko'],
['GGxUyCgfORg', 'photo_comments'],
['oLUPaceKme0', 'Jack Schwartz'],
['bo6oz4m4OXY', 'Vinicius Henrique'],
['7HYbCXD2GSA', 'Theme Inn'],
['6K4hh4VX3T0', 'SaiKrishna Saketh'],
['lTxOZBNZ9yM', '[2Ni]'],
['H3mL3kocOQ4', 'Artur Matosyan'],
['ijxxeMO3c8E', 'Larry Teo'],
['WMrd7-CjyF0', 'Anna Claire Schellenberg'],
['FJIFiUCOTfc', 'Kirsten Drew'],
['9daKXiWx5Eg', 'Anastasia Dulgier'],
['47QjuZBn5dQ', 'Murugavel Oli'],
['yjR2ne1gtAA', 'Marius'],
['y9vO3FWDZb0', 'bckfwd'],
['Ro6CB6x-VUg', 'Andreas NextVoyagePL'],
['2td44mctvmI', 'Cameron Venti'],
['M1uoNRrNrkE', 'Willian Justen de Vasconcellos'],
['L-2jRW74fPY', 'Daryan Shamkhali'],
['Qr5pi1_GlvY', 'Benno Klandt'],
['twruXW0M2Mw', 'sk'],
['B8vwUO2NM9Y', 'Stuart Frisby'],
['p9jBrqMSU6Q', 'Han Leentvaar'],
['4rGlazYAV3I', 'Dmitry Bayer'],
],
flowers: [
['4QLKuXKAy7k', 'BEAUFIGEAU CELINE'],
['DlYzHwAl32g', 'HISANARI KUNIMOTO'],
['3TXuFNun-5Q', 'Erik Andres Reynoso'],
['Rrhfeq9yeQ0', 'NeONBRAND'],
['YaQdJyulJdU', 'Natasha V'],
['wt4u1wNiT9I', 'Teo Zac'],
['HG5RcKEawLA', 'Varshesh Joshi'],
['VBtdWGCQ2yw', 'Vanessa Ochotorena'],
['a-lIQzpvbHs', 'Thomas AE'],
['D5RScffd8WU', 'NeONBRAND'],
['mXQyEcINwa8', 'Thought Catalog'],
['REczfcmwooE', 'Steve Harvey'],
['7pGehyH7o64', 'Leonardo Wong'],
['wvGQYtZ_c08', 'chuttersnap'],
['jjqZ0gvHLYc', 'Suresh Purohit'],
['9wQ-aGu0gBs', 'Joël de Vriend'],
['8ANiHTtHbAQ', 'Nick Karvounis'],
['Ehko8EbURbk', 'Chris Barbalis'],
['Rlxfn__azLQ', 'Annie Spratt'],
['q8I3Jeph4uU', 'Jake Dela Concepcion'],
['wQjjYp8_a0Y', 'Henry Lorenzatto'],
['GnwWHUXBfYI', 'Will Svec'],
['pwFNVBlj5XU', 'Danijela Froki'],
['RWz313DUECo', 'Laura Baker'],
['lffwXgsqChg', 'Nils Schirmer'],
['e1O6NCmhUt4', 'Brian McGowan'],
],
food: [
['1ZTccDpF71k', 'Austin Paquette'],
['4-rmvQRL2nY', 'Annie Spratt'],
['44eKcVXzFoc', 'Alonso Romero'],
['4E0dknSrQVU', 'Matteo Maretto'],
['4PtChDuxsDI', 'Dronile Hiraldo'],
['8JIIoSFtEbo', 'Massimo Virgilio'],
['8Yvwy4Kbd1g', 'Alex Kondratiev'],
['9TWavGempJc', 'Ashleigh Robertson'],
['9cfHdC2Asak', 'cindy fernandez'],
['9vHOhKoNlNw', 'Edrece Stansberry'],
['Au-LzDMd_Cw', 'Stephanie McCabe'],
['BKSntHf8oiU', 'Melissa Walker Horn'],
['DPNrBT1WCMs', 'Egor Lyfar'],
['Hvrm3efPYIA', 'Delaney Van'],
['I2tgHl69Dco', 'Louis Hansel @shotsoflouis'],
['JpbtAb-f3JA', 'Dollar Gill'],
['Mi1SNlsyWAk', 'Louis Hansel @shotsoflouis'],
['U3hCd1S7FQ4', 'Louis Hansel @shotsoflouis'],
['VOpJTnP6S9g', 'Liana Mikah'],
['VpxavZd4S-I', 'Mr. Lemon'],
['XPSXhLx143g', 'Wouter Meijering'],
['Yy-dHQP-Ax0', 'Markus Spiske'],
['asaGSZEyltQ', 'Noora AlHammadi'],
['fCE-pTmFrPI', 'Valeriu Bondarenco'],
['fyQr1T3GE34', 'Petr Sevcovic'],
['gZsgKrNc8es', 'Dan Gold'],
['krNP2ESq-54', 'Joshua Bedford'],
['nn0whk6nzv4', 'Yulia Chinato'],
['pGe5mc4Eip8', 'Daniel Park'],
['uScYRjZ2ol8', 'Donald Modeste'],
],
candy: [
['51AhxwkYyHo', 'Viktor Forgacs'],
['rS1GogPLVHk', 'Eaters Collective'],
['9m6NQHyxk-s', 'Brooke Lark'],
['DOmaKmeCp_8', 'Sarah Takforyan'],
['aCPOKOb4qis', 'Jamie Street'],
['On8Ov1TItnU', 'QooQee'],
['KN7tpVQCmWA', 'Nick Fewings'],
['9lmFbtJ2QzM', 'Tim Gouw'],
['54hUU5pNSvo', 'Erol Ahmed'],
['zYH4SubXCWY', 'Наталья Горох'],
['wJHJY7PcDcg', 'Andrew Itaga'],
['BnusUP5jydc', 'Marc Markstein'],
['NI_fJ15rIfI', 'Szabo Viktor'],
['LymVMRIUwPQ', 'Happy Films'],
['mrNVnLEphdo', 'Greg Nunes'],
['CKLF34baCTQ', 'Willian Justen de Vasconcellos'],
['7uGCN9qshsY', 'Siora Photography'],
['xBTnaTgleQE', 'Glen Carrie'],
['sC_HExGwbhI', 'Erik Mclean'],
['1gViVVlEaPc', 'Sérgio André'],
['k9yY0XZTSnI', 'Fernando Hernandez'],
['h1_R9-o9an0', 'emrecan arık'],
['XB0ha-DSGoU', 'Laura Briedis'],
['ONn4OfAnxZY', 'Monique Carrati'],
['24p9dPeXdFA', 'Frederic Köberl'],
['GL6J_sFYHLw', 'Yuiizaa September'],
['LU_fCezP9-o', 'Amit Lahav'],
['CSkAj_XqOVc', 'Mockaroon'],
['xLvIcAYuuMQ', 'Luis Aguila'],
],
fruit: [
['ZLc9yTIFzNk', 'Kelly Sikkema'],
['DoxGtpAsdYY', 'Sanni Sahil'],
['lyEkpuuIrg0', 'kaouther djouada'],
['fDx4zHpnlOM', 'Nanxi wei'],
['0AXNt5SdeXU', 'Sara Cervera'],
['s05XKB6jK2c', 'Markus Spiske'],
['bPMyJzKhCyA', 'Louis Hansel @shotsoflouis'],
['4jeWN4puDrw', 'Carolyn Leber'],
['8EScigZC6AU', 'MF Evelyn'],
['1QbosWMxOx0', 'elCarito'],
['NWA3s8r-1bc', 'Fli Hi'],
['TfNUmbaIjj8', 'Sophie Dale'],
['duskNBVv420', 'Louis Hansel @shotsoflouis'],
['QYupKZjYDbw', 'Moritz Kindler'],
['ozcHSq3XfVs', 'Callum Blacoe'],
['ucY_-U1dM8U', 'Louis Hansel @shotsoflouis'],
['4WLc_dWE-kc', 'Dmitry Mishin'],
['BTqDasyX62E', 'Priscilla Du Preez'],
['SD5dOSkhQdU', 'Alexander Mils'],
['4pJekgmSmPM', 'Rinck Content Studio'],
['0XGWys_GaFo', 'Toa Heftiba'],
['uTZvsJsylYc', 'Louis Hansel @shotsoflouis'],
['vAHaYh5s_Sc', 'RAPHAEL MAKSIAN'],
['0N4A1c5tJSs', 'Miguel Vaz'],
['VAhUq30sW0c', 'Cody Berg'],
['qbO7Mlhq8PQ', 'JOSHUA COLEMAN'],
['dLB32q_bRs0', 'Jason Leung'],
['66itnKdGlC4', 'Fateme Azimi'],
['_DYRZHbCIq0', 'Will Mcmahon'],
],
landscapes: [
['FuaNmJPLAHg', 'MINSUN KIM'],
['8flZ753v87Q', 'Ken Schlabach'],
['6qdO_nFhYoI', 'Clay Banks'],
['VMmPxFmfwfQ', 'Xiaopeng Ma'],
['DAufF3R8B5Q', 'Sangga Rima Roman Selia'],
['5U9n9gip7VY', 'Annie Spratt'],
['Tot7FLHWotI', 'elCarito'],
['vph4L_OjhuI', 'Marek Piwnicki'],
['Nd8h38tRIlc', 'Kevin Horvat'],
['nACRxCEAut8', 'ALEKSEY KUPRIKOV'],
['PjyfZ-Ujut8', 'Denys Nevozhai'],
['X6utHocVX8w', 'Ian Williams'],
['cq6g1WssaJI', 'Tyler Casey'],
['U1ad7OjdHx8', 'Dave Herring'],
['si5673B4PIE', 'Annie Spratt'],
['shv8H0Dv5iE', 'Aditya Chinchure'],
['hjVrWFVyOqE', 'chuttersnap'],
['_skrrHIcsEk', 'Edward Ma'],
['GMNtcgo-KdA', 'Yoav Hornung'],
['313dueuxHls', 'Jamie Street'],
['SncOlKOY7NY', 'Ward Mercer'],
['7R11NCmOY6k', 'Ivan Bandura'],
['YFwOiSisSLM', 'Krzysztof Kotkowicz'],
['gbO7zCOUJIg', 'Brian Kyed'],
['5iwG4xlUgJ4', 'Jason Leung'],
['G_PSim-dsvU', 'Alexandra Jitariuc'],
['gVl6Hsi_pxo', 'Jean-Philippe Delberghe'],
['p8h0_0pyW9k', 'Bence Balla-Schottner'],
],
waterfalls: [
['Cwd0zYOIClY', 'Thomas Ensley'],
['dGCHAo7mb2Q', 'Jamie Melville'],
['bukitR21NO8', 'Jen Theodore'],
['IKIY5bpd9eM', 'Bruno Kelzer'],
['rrVm3b-uxkk', 'Jamie Melville'],
['UegnUIW76gQ', 'Jamie Melville'],
['d0cvao4fC6Q', 'Forest Simon'],
['N8r2hH1siEY', 'Lester Hine'],
['oRmeWoJx_nY', 'Michael Olsen'],
['jVjwlfyJAkA', 'Tom Wheatley'],
['ar6PYxBFgis', 'Gerald Berliner'],
['9fpK7fPw6Is', 'Jamie Melville'],
['jeXkw2HR1SU', 'Julia Caesar'],
['Evs5MnlmUXY', 'Damian Kamp'],
['phstcH4QKJc', 'Jakob Owens'],
['7dmDlBfB9Vk', 'Spencer Watson'],
['SHhaNnNR1xo', 'SaiKrishna Saketh'],
['_6ghImrDiVU', 'Daniel H. Tong'],
['gfaXzDmMY7M', 'RADIN AHMAD MUJAHID'],
['rFbK1PP9LEA', 'Daniel Hernandez'],
['s6Tv7b4SAoo', 'Miltiadis Fragkidis'],
['ir9RUDjVpPo', 'Clay Banks'],
['7emiteIwfuk', 'yunchuan luo'],
['9tqrKo4B98I', 'Austin Farrington'],
['dfazzUCjMro', 'oakie'],
['4HEuHmA7WfM', 'Ketan Morris'],
['eG1_rPekhTk', 'Jack B'],
['_up7EDGdTqU', 'Hari Nandakumar'],
['MhIPEJmVwaA', 'Karthik Chandran'],
],
travel: [
['gC2Q_Tfub6c', 'James Lee'],
['1Tcu61Qz7c0', 'Payas'],
['eLMJ2x7s9ak', 'Alexandre Chambon'],
['aNrRsB2wLDk', 'Ahmet Yalçınkaya'],
['xu2WYJek5AI', 'Anastasia Petrova'],
['xRoexKKv8fs', 'Robson Hatsukami Morgan'],
['qdIer4A0afE', 'Camille Brodard'],
['0lPZBa6-1J8', 'Torbjorn Sandbakk'],
['CLm3pWXrS9Q', 'Tim Trad'],
['D1fs2x11_jk', 'Raul Taciu'],
['BZ3aE3ouAfc', 'Petr Sevcovic'],
['_OUvt8kLf0s', 'GAWN AUSTRALIA'],
['T_6yJJQ_-wA', 'Square Lab'],
['1Z_mX3zzEBc', 'Andy Pearce'],
['lWHJwoSZf7M', 'Joseph Costa'],
['O6Euhw7NMbQ', 'Cosmic Timetraveler'],
['bs1eqd6zSiU', 'Harley-Davidson'],
['_qkuc1V9Gbg', 'Ken Cheung'],
],
cars: [
['w5SZe8hoqlk', 'Rachel Lynette French'],
['Nwk0ye_Y_As', 'Lex Valishvili'],
['P9yqMy_9ZaY', 'Anastasia Dulgier'],
['aGwBtbncMWo', 'Sandra Kaas'],
['jV_QaRjbhWE', 'Clem Onojeghuo'],
['SwmaJDvasuU', 'Gunnar Ridderström'],
['BsJovWrQ7vE', 'Caroline'],
['3t0Q-GYXE0U', 'Austin Park'],
['tlCzxI2RQAc', 'Vinícius Henrique'],
['fecFQcxsUok', 'Zachary Spears'],
['upttrzCo8-U', 'takahiro taguchi'],
['zoHustBfNxA', 'Lukas Werner'],
['UZH69YA50qY', 'Austin Park'],
['tJwY80NMkhk', 'Hanny Naibaho'],
['esfNTaHsR1c', 'Willian Justen de Vasconcellos'],
['Tas1kF-6aNA', 'Tyler Casey'],
['7nrsVjvALnA', 'Denys Nevozhai'],
['CRf3KYexpCA', 'Will Truettner'],
['B8JpogxOnyw', 'Mike Von'],
['mU5vnpJW_CQ', 'Luke Tanis'],
['GaRPxo9Z86M', 'Court Cook'],
['Orp-VAQ_gNA', 'Angello Lopez'],
['q4UZ53rYYy0', 'Ali Moharami'],
['XA2OEcvrrP8', 'Alexander Pidgeon'],
['hXMv04v_py0', 'Patrick Schöpflin'],
['G7sWGEF8pRc', 'Julian Hochgesang'],
['PUnARRf-rE8', 'jean wimmerlin'],
['UIk-rF4Df60', 'Igor Bumba'],
['0dW-eQVL0WQ', 'Michael Heuser'],
],
aviation: [
['bw1hXT_okL4', 'sayhitobel'],
['ecOXN5jGtaU', 'Alexander Lobanov'],
['rFujmwrNv1w', 'Abe Drzycimski'],
['EKYsla2fER8', 'Paola Aguilar'],
['1uiXp6fXd3w', 'Kevin Hackert'],
['tVzGTraJ4T0', 'Samantha Gades'],
['5h1-cHxJz1I', 'Nikli Nodin'],
['u-1cYIua_aI', 'John Torcasio'],
['l2OusPPMLxs', 'yvette Wynne'],
['SUIvWFHBZas', 'Timothy Newman'],
['Tvrnezn1N6g', 'Daniel Eledut'],
['ZN0469D3v98', 'Jason Hafso'],
['LNmKCmZ2pcI', 'Ricardo Resende'],
['P_ExwnnPGyM', 'Tudose Alexandru'],
['1vyWYdyUDGU', 'Ian Cumming'],
['k102QVrpitQ', 'Jake Blucker'],
['eB8-XtMtqZI', 'Miguel Ángel Sanz'],
['1XDZavWyows', 'Samuel Sianipar'],
['7WHD-pdECGU', 'Miguel Ángel Sanz'],
['CN8HsCUCjUQ', 'Cameron Kitson'],
['q_rNy9pRe78', 'Walter Walraven'],
['a9SA6Zs1L9g', 'Tim Dennert'],
['JW50PRr5UbI', 'Roland O'],
['um_6nrOnPZ4', 'Pascal Meier'],
['EpxT58kpBhc', 'Terence Burke'],
['3fbjHj2k0vE', 'Dušan Smetana'],
['9o4p3eCcRBE', 'Jeremy Bishop'],
['sbfLwfoVX7E', 'Nour Betar'],
['4VCJBAtlnNI', 'sippakorn yamkasikorn'],
['LcbsrFbqwGk', 'Angel Barnes'],
],
nature: [
['io0umElGQwU', 'Fabrizio Forte'],
['lh2sQ_L3GaA', 'Daniel Lord'],
['Gyr7o3BMsSc', 'Dave Francis'],
['lRipDukRpd4', 'Kevin'],
['GxymWkdnl4Y', 'Fernando Jorge'],
['rWnw7JL0LPE', 'Rahul Gupta'],
['YKuYS3ChMyw', 'Yuliya Kosolapova'],
['ZsUjLYqbNz8', 'Pau Morfín'],
['x2o3HX6RKG8', 'Dave'],
['Few073pm6aQ', 'Dennis Bertuch'],
['jP-wvLA7uyg', 'Gary Butterfield'],
['euhs3wanL-I', 'Andrew Stapleton'],
['UHt2TG_CHO0', 'Wolfgang Hasselmann'],
['SAIb5NkbAaE', 'Alexis Gethin'],
['tdNjdIW-_OY', 'Lachlan'],
['0NtjFr0-DwM', 'Jane Carmona'],
['fhg_nm1sufU', 'Pascal Debrunner'],
['HJUDECvtxZE', 'jose alfonso sierra'],
['8vS1CwHIEH8', 'Serge Sustavov'],
['oTTnZcwQ2t4', 'Daniel Radford'],
['TNhs9udas8Q', 'Migsar Navarro'],
['zT9g3crTPcE', 'Devin L'],
['hYuNG1zptM4', 'Roberto Gamito'],
['DfOQRep1LKU', 'Wolfgang Rottmann'],
['2sT_iJhIcEg', 'Anamika Pokharel'],
['Zjcl2vaeGdo', 'Lucas Mitchell'],
['b2T6zgFAW1E', 'Theme Inn'],
['EnFQmcTtsjo', 'Yang Jing'],
['PWI-CDVynhw', 'Thomas Galler'],
['gTvLsDi-Uzo', 'Arun Raj'],
],
trees: [
['aSCx7M1E4Vo', 'Markos Mant'],
['3B9MYDjQ-EQ', 'Firasat Durrani'],
['39oaRqfUacc', 'Nick'],
['Y0NLa_KmEgU', 'Michael Ankes'],
['i6nGVkbbUT4', 'Henry McIntosh'],
['_WITb4g1ImY', 'Mark Basarab'],
['prd5CXMsD68', 'JOHN TOWNER'],
['avxSevmCKfw', 'Marta Pawlik'],
['LZf0HMPg-3I', 'Max Brinton'],
['Ovjx9FsXX9c', 'Andy Fitzsimon'],
['YPtfMXRMUe0', 'Corey Agopian'],
['h3y3XPXKoeY', 'Elke Karin Lugert'],
['qeGC1zrsG8U', 'Tycho Atsma'],
['dAkd3xaSDTA', 'Nick West'],
['Prd-KB7CKo4', 'Austin Neill'],
['klNpWLkgezo', 'Wil Stewart'],
['Pm4U5IqI4dM', 'Lena Derevianko'],
['5i664o1oY4c', 'Yannick Pulver'],
['uoMFPm5_Xg8', 'Yoni Kozminsi'],
['Qr2dZRNdf_M', 'Afifi Zulkifle'],
['jxljuYqn8uU', 'Sebastian Pichler'],
['H3mO3zNlvNU', 'Jonathan Knepper'],
['pEb-Xf_qM0s', 'Martin Reisch'],
['prSogOoFmkw', 'Braden Jarvis'],
['y9csmronT3s', 'Alberto Restifo'],
['R8R9H_xuvBY', 'Andrew Pons'],
['fuT-m1yzUG4', 'Ales Krivec'],
],
wildlife: [
['-I0EgcZdV0E', 'Maarten van den Heuvel'],
['F21zt7_icpo', 'Tevin Trinh'],
['gMxgp-MwCyQ', 'James Wainscoat'],
['FFlb5Uj3vhc', 'Sigmund'],
['hglSMjdh83M', 'Srinivasan Venkataraman'],
['UgWcvfl4q5I', 'NOAA'],
['PZ1nEPFNBJQ', 'Third Idea'],
['f4yYs5P5GbA', 'rigel'],
['e94T5ag-9x0', 'Jayden Brand'],
['6Fcllk7ze_Q', 'Vivian Arcidiacono'],
['O7G3II8E2Eo', 'Erik-Jan Leusink'],
['-6UNL6Ghn_c', 'Silvio Kundt'],
['EyZMGYn1Uj4', 'AGL Fotos'],
['nxR7gvSokH8', 'Waldemar Brandt'],
['sAGXVK6bNFc', 'Amar Yashlaha'],
['8zLCXDWETEg', 'Clément ROY'],
['4nPFQ2sUhUE', 'Justin Porter'],
['mUNDTQrfnSk', 'Zahrin Lukman'],
['VXcX0Joa09k', 'Max Rovensky'],
['F_HycxA2lwc', 'Marthijn Brinks'],
['ss01halnU4I', 'Dušan Smetana'],
['lktWv61WoNI', 'Rory Lindholm'],
['myeQ2RH1PX0', 'Alexander Ross'],
['dhIAyAmfjz8', 'Third Idea'],
['AGprQpF4STo', 'Jeff Lemond'],
['P8pBJQVt4UA', 'Christer Gundersen'],
['nt8Ek7sRgdA', 'Mikell Darling'],
['YHv0BDThVOw', 'Nicholas Doherty'],
],
interior: [
['9wGKENQ-qTI', 'Kunj Parekh'],
['x3BCSWCAtrY', 'yann maignan'],
['EF6z_6R94zQ', 'Orlova Maria'],
['dC8NC2QBFyQ', 'Kari Shea'],
['A_AuirVquQY', 'Abbie Bernet'],
['IJf2v-StB4Y', 'yann maignan'],
['frsN89Tf-1Q', 'Joshua Eckstein'],
['s95oB2n9jng', 'Aaron Huber'],
['n_vdmdtNh6M', 'Tiplada Mekvisan'],
['GbiVL6t4T-o', 'gdtography'],
['xx0oSB1YxRE', 'Joseph Albanese'],
['McaNtoPEEcg', 'Brooke Cagle'],
['s65VlkIYSDw', 'Robert Bye'],
['pEaBEqXXk-M', 'Aw Creative'],
['GaX7QTgs8pg', 'Waldemar Brandt'],
['b75FBg97dU0', 'Bao Menglong'],
['5i0GnoTTjSE', 'Philipp Berndt'],
['buhmhprfo3g', 'Kara Eads'],
['L7EwHkq1B2s', 'Kara Eads'],
['gBdirnalxcQ', 'Nick Fewings'],
['ILgaxpiQu0', 'Matteo Maretto'],
['ydcMwcfY5E0', 'Clark Street Mercantile'],
['zLT3VqWEgOQ', 'Sidekix Media'],
['Yg0Rds6_TsY', 'Sergiu Cindea'],
['gbS_fhrFo10', 'Bekah Russom'],
['o3c-euNd_ZM', 'Alessandra Caretto'],
['IEkMMvdZFc0', 'Nick Hillier'],
['hnhE83RhAWg', 'Stefan Steinbauer'],
],
statues: [
['ig8E7Mlrl7Y', 'Vidar Nordli-Mathisen'],
['1ak3Z7ZmtQA', 'Ryan Lum'],
['ntPF02wcTY', 'Gigi'],
['5_i4OPeOAZU', 'Viktor Forgacs'],
['iRON0g6iO0k', 'Alexandre Chambon'],
['PhQ4CpXLEX4', 'Daniels Joffe'],
['EfHqouvZU2Y', 'Bettina Otott Kovács'],
['kaEhf0eZme8', 'Nils'],
['4-4IDc21Gto', 'K. Mitch Hodge'],
['Y8Xh7ZJFU5A', 'Vidar Nordli-Mathisen'],
['fmawALmMLSA', 'Gabriel TRESCH'],
['DUp4B6M0AMc', 'Sebastien'],
['MFZUY4gqvA4', 'James Yarema'],
['50vvwcNFFzU', 'Robert Anasch'],
['TMRi8cD2umM', 'Frank Eiffert'],
['wLx_WCkWvHg', 'Chris A. Tweten'],
['Twoj21Av-so', 'Arthur Reeder'],
['EiGDn8cwU4Y', 'Tessa Rampersad'],
['fVY6UxZuECA', 'Christine Wehrmeier'],
['uJdTBTJ9rbo', 'Christine Wehrmeier'],
['4eEBFTBKx5E', 'Ralph Spandl'],
['HtQRGemW_40', 'Ivan Bertona'],
['uHBcinxOLhQ', 'K. Mitch Hodge'],
['2TmsyZXMNTE', 'Emma Fabbri'],
['9KkPloRgOUY', 'Matteo Maretto'],
['KzPefInJW58', 'JOSHUA COLEMAN'],
['szVTIkisN1M', 'David Siglin'],
['iRzEPkYSETQ', 'Francois Olwage'],
],
technology: [
['QpTCSHzhWuo', 'Joshua Hoehne'],
['0lMpQaXfOCg', 'Barrett Ward'],
['w33-zg-dNL4', 'Rami Al-zayat'],
['MC5WbGo_bZM', 'Tom Pumford'],
['iHJ7xouUyXs', 'Amith Nair'],
['E3I9thV98kQ', 'Tatiana Lapina'],
['JuUK7Er9nR4', 'Mohamed Boumaiza'],
['Dei5oAC_wJc', 'Kenny Luo'],
['ltwEbf_G9bs', 'Mario Caruso'],
['gWdlDR4WpV4', 'Zarak Khan'],
['0Um6Yr1cyx0', 'Antoine Beauvillain'],
['_8S9nEmCZK0', 'Oliur'],
['etFrnBJS1qc', 'NeONBRAND'],
['ZMVtx_KJtOk', 'Thought Catalog'],
['JNuKyKXLh8U', 'Noiseporn'],
['5gzr-RM-rZM', 'Kenny Luo'],
['eWaXmZsXKDs', 'Zane Lee'],
['4qGbMEZb56c', 'Thomas William'],
['hwqWxHoH2wk', 'Markus Spiske'],
['vZJdYl5JVXY', 'Kaitlyn Baker'],
['Lg8xTZjs6Lg', 'Marc Mueller'],
['M5HQPjXrjlQ', 'Matt Hoffman'],
['A-b37b-CrYE', 'Kenny Luo'],
['Kj2SaNHG-hg', 'Christopher Burns'],
['A1v0-iH3T5A', 'Patrick Hendry'],
['iFBIdX54BOk', 'Keagan Henman'],
],
2020-03-23 00:43:49 +00:00
})
.map(([category, photos]) => photos.map(([photo, credit], index) => ({
id: photo,
path: `sfw/${category}/${photo}.jpeg`,
thumbnail: `sfw/${category}/thumbs/${photo}.jpeg`,
lazy: `sfw/${category}/lazy/${photo}.jpeg`,
mime: 'image/jpeg',
sfw_media_id: null,
group: category,
index,
credit,
})))
.flat();
2020-03-23 00:43:49 +00:00
const tagPosters = [
2020-07-20 02:20:33 +00:00
['69', 1, 'Melody Petite for 21Sextury'],
['airtight', 6, 'Remy Lacroix in "Ass Worship 14" for Jules Jordan'],
['anal', 0, 'Adriana Chechik in "Manuel Creampies Their Asses 3" for Jules Jordan'],
2020-05-24 03:13:50 +00:00
['anal-creampie', 1, 'Aleska Diamond in "Aleska Wants More" for Asshole Fever'],
['ass-eating', 0, 'Angelica Heart and Leanna Sweet in "ATM Bitches" for Asshole Fever'],
2020-07-18 03:12:32 +00:00
['asian', 0, 'Jade Kush for Erotica X'],
['atm', 2, 'Jureka Del Mar in "Stretched Out" for Her Limit'],
2020-05-24 03:13:50 +00:00
['atogm', 0, 'Alysa Gap and Logan in "Anal Buffet 4" for Evil Angel'],
['bdsm', 0, 'Dani Daniels in "The Traning of Dani Daniels, Day 2" for The Training of O at Kink'],
['behind-the-scenes', 0, 'Janice Griffith in "Day With A Pornstar: Janice" for Brazzers'],
2020-07-18 03:12:32 +00:00
['blonde', 1, 'Marsha May in "Once You Go Black 7" for Jules Jordan'],
['blowbang', 0, 'Lacy Lennon in "Lacy Lennon\'s First Blowbang" for HardX'],
['blowjob', 0, 'Adriana Chechik in "The Dinner Party" for Real Wife Stories (Brazzers)'],
['brunette', 0, 'Darcie Dolce for Playboy'],
2020-07-22 02:12:20 +00:00
['bondage', 0, 'Veronica Leal for Her Limit'],
['bukkake', 0, 'Jaye Summers in "Facialized 5" for HardX'],
['caucasian', 0, 'Remy Lacroix for HardX'],
['creampie', 'poster', 'ALina Lopez in "Making Yourself Unforgettable" for Blacked'],
['cum-in-mouth', 1, 'Sarah Vandella in "Blow Bang Vandella" for HardX'],
2020-07-08 02:58:12 +00:00
['cum-on-butt', 0, 'Jynx Maze in "Don\'t Make Me Beg 4" for Evil Angel'],
['da-tp', 5, 'Venera Maxima in LegalPorno GIO1287'],
['deepthroat', 2, 'Sarah Vandella for Throated'],
['dap', 7, 'Adriana Chechik in "DP Masters 6" for Jules Jordan'],
['double-blowjob', 1, 'Veronica Rodriguez and Penny Pax in "Fucking Older Guys 5" for Penthouse'],
['double-dildo', 0, 'Kali Roses in "Double Dildo Party" for KaliRoses.com'],
['double-dildo-blowjob', 0, 'Adriana Chechik and Vicki Chase in "Anal Savages 1" for Jules Jordan'],
2020-08-14 21:05:25 +00:00
['dp', 3, 'Hime Marie in LegalPorno AA047'],
['dvp', 'poster', 'Riley Reid in "Pizza That Ass" for Reid My Lips'],
['dv-tp', 'poster', 'Juelz Ventura in "Gangbanged 5" for Elegant Angel'],
2020-07-18 03:12:32 +00:00
['ebony', 2, 'Nia Nacci for Sweetheart Video'],
['facefucking', 1, 'Paige Owens in "Dark Meat 12" for Evil Angel'],
['facial', 0, 'Brooklyn Gray in "All About Ass 4" for Evil Angel'],
['fake-boobs', 2, 'Gia Milana in "Hot Anal Latina" for HardX'],
['family', 0, 'Teanna Trump in "A Family Appear: Part One" for Brazzers'],
['femdom', 0, 'Alina Li in "Asian Domination… She Holds Jules Jordan\'s Cock Hostage!" for Jules Jordan'],
['gangbang', 5, 'Carter Cruise\'s first gangbang in "Slut Puppies 9" for Jules Jordan'],
['gaping', 1, 'Vina Sky in "Vina Sky Does Anal" for HardX'],
['indian', 0, 'Resha in "Casting Resha" for Watch 4 Beauty'],
['interracial', 0, 'Jaye Summers and Prince Yahshua in "Platinum Pussy 3" for Jules Jordan'],
2020-07-22 02:12:20 +00:00
['latina', 2, 'Veronica Leal for Her Limit'],
['lesbian', 0, 'Jenna Sativa and Alina Lopez in "Opposites Attract" for Girl Girl'],
['maid', 0, 'Whitney Wright in "Dredd Up Your Ass 2" for Jules Jordan'],
['milf', 0, 'Olivia Austin in "Dredd 3" for Jules Jordan'],
2020-07-13 02:32:13 +00:00
['mff', 1, 'Anikka Albrite, Kelsi Monroe and Mick Blue for HardX'],
2020-07-18 03:12:32 +00:00
['mfm', 0, 'Vina Sky in "Jules Jordan\'s Three Ways" for Jules Jordan'],
['natural-boobs', 1, 'Nia Nacci for First Class POV'],
['nurse', 0, 'Sarah Vandella in "Cum For Nurse Sarah" for Brazzers'],
2020-07-18 03:12:32 +00:00
['oil', 2, 'Jade Kush for Passion HD'],
2020-07-22 02:12:20 +00:00
['oral-creampie', 1, 'Valentina Nappi for Her Limit'],
['orgy', 1, 'Megan Rain (DP), Morgan Lee (anal), Jessa Rhodes, Melissa Moore and Kimmy Granger in "Orgy Masters 8" for Jules Jordan'],
2020-07-18 03:12:32 +00:00
['parody', 0, 'Capri Cavanni and Dani Daniels in "The Whore of Wall Street" for Brazzers'],
['piercings', 0, 'Kaegune in "When The Sun Goes Down" for Suicide Girls'],
['piss-drinking', 0, 'Scarlet Domingo in LegalPorno GL227'],
2020-07-13 02:32:13 +00:00
['pussy-eating', 1, 'Anikka Albrite and Riley Reid for In The Crack'],
['redhead', 1, 'Lacy Lennon for Holly Randall'],
['squirting', 0, 'Veronica Rodriguez in "Hot Latina Squirting" for Jules Jordan'],
['schoolgirl', 1, 'Eliza Ibarra for Brazzers'],
['swallowing', 'poster'],
['teen', 0, 'Alexa Flexy for Sensual Girl'],
['tattoos', 1, 'Joanna Angel for Joanna Angel'],
['trainbang', 'poster', 'Kali Roses in "Passing Me Around" for Blacked'],
['tap', 'poster', 'Kristy Black in SZ1986 for LegalPorno'],
]
.map(([slug, filename, comment], index) => ({
id: nanoid(),
tagSlug: slug,
path: `tags/${slug}/${filename}.jpeg`,
thumbnail: `tags/${slug}/thumbs/${filename}.jpeg`,
lazy: `tags/${slug}/lazy/${filename}.jpeg`,
mime: 'image/jpeg',
index,
comment,
}));
const tagPhotos = [
2020-07-20 02:20:33 +00:00
['69', 0, 'Abby Lee Brazil and Ramon Nomar for Wicked'],
['airtight', 5, 'Chloe Amour in "DP Masters 4" for Jules Jordan'],
['airtight', 1, 'Jynx Maze in "Pump My Ass Full of Cum 3" for Jules Jordan'],
['airtight', 2, 'Dakota Skye in "Dakota Goes Nuts" for ArchAngel'],
['airtight', 3, 'Anita Bellini in "Triple Dick Gangbang" for Hands On Hardcore (DDF Network)'],
2020-05-24 03:13:50 +00:00
['anal-creampie', 0, 'Gina Valentina and Jane Wilde in "A Very Special Anniversary" for Tushy'],
2020-05-26 02:11:29 +00:00
['atm', 3, 'Natasha Teen in "Work That Ass!" for Her Limit'],
['atm', 0, 'Roxy Lips in "Under Her Coat" for 21 Naturals'],
['atm', 6, 'Jane Wilde in "Teen Anal" for Evil Angel'],
// ['asian', 1, 'Alina Li in "Oil Overload 11" for Jules Jordan'],
// ['anal', 'poster', 'Jynx Maze in "Anal Buffet 6" for Evil Angel'],
['anal', 4, 'Lana Roy in "Anal In The Club" for 21Naturals'],
['anal', 3, 'Dakota Skye for Brazzers'],
// ['anal', 1, 'Veronica Leal and Tina Kay in "Agents On Anal Mission" for Asshole Fever'],
// ['anal', 0, 'Veronica Leal'],
['behind-the-scenes', 1, 'Madison Ivy in "Day With A Pornstar" for Brazzers'],
2020-07-22 02:12:20 +00:00
['blonde', 2, 'Isabelle Deltore for Her Limit'],
['blowbang', 'poster', 'Marsha May in "Feeding Frenzy 12" for Jules Jordan'],
// ['bukkake', 'poster', 'Mia Malkova in "Facialized 2" for HardX'],
['caucasian', 1, 'Sheena Shaw for Brazzers'],
['da-tp', 6, 'Adriana Chechik in "Gangbang Me" for HardX'],
['da-tp', 0, 'Natasha Teen in LegalPorno SZ2164'],
['da-tp', 1, 'Francys Belle in SZ1702 for LegalPorno'],
['dap', 6, 'Sheena Shaw in "Ass Worship 14" for Jules Jordan'],
2020-08-14 21:05:25 +00:00
['dap', 9, 'Polly Pons in LegalPorno GIO1520'],
['dap', 1, 'Ria Sunn in SZ1801 for LegalPorno'],
['dap', 2, 'Lana Rhoades in "Lana Rhoades Unleashed" for HardX'],
['dap', 5, 'Riley Reid in "The Gangbang of Riley Reid" for Jules Jordan'],
2020-08-14 21:05:25 +00:00
// ['dap', 8, 'Lady Gang in SZ2478 LegalPorno'],
['dap', 'poster', 'Haley Reed in "Young Hot Ass" for Evil Angel'],
['dap', 0, 'Nicole Black doing double anal during a gangbang in GIO971 for LegalPorno'],
['deepthroat', 1, 'Jynx Maze in "Slutty and Sluttier 13" for Evil Angel'],
2020-07-08 02:58:12 +00:00
['deepthroat', 0, 'Chanel Grey in "Deepthroating Is Fun" for Throated'],
['double-blowjob', 0, 'Kira Noir and Kali Roses for Brazzers'],
['double-dildo-blowjob', 1, 'Aidra Fox and Reena Sky in "Reena\'s Got A Staring Problem" for Brazzers'],
['double-dildo-dp', 0, 'u/LacyCrow "Sometimes you have to do it yourself"'],
2020-08-14 21:05:25 +00:00
['dp', 2, 'Megan Rain in "DP Masters 4" for Jules Jordan'],
['dp', 4, 'Rebecca Volpetti for Hands On Hardcore'],
['dp', 'poster', 'Mia Malkova in "DP Me 8" for HardX'],
['dvp', 0, 'Aaliyah Hadid in "Squirting From Double Penetration With Anal" for Bang Bros'],
['dv-tp', 1, 'Adriana Chechik in "Adriana\'s Triple Anal Penetration!"'],
['dv-tp', 0, 'Luna Rival in LegalPorno SZ1490'],
2020-07-18 03:12:32 +00:00
['ebony', 1, 'Ana Foxxx in "DP Me 4" for HardX'],
2020-07-20 02:20:33 +00:00
['facial', 2, 'Ashly Anderson for Hookup Hotshot'],
['facial', 'poster', 'Jynx Maze'],
['facefucking', 2, 'Jynx Maze for Throated'],
['facefucking', 3, 'Adriana Chechik in "Performing Magic Butt Tricks With Jules Jordan. What Will Disappear In Her Ass?" for Jules Jordan'],
2020-07-20 02:20:33 +00:00
['fake-boobs', 7, 'Madison Ivy for Passion HD'],
['fake-boobs', 1, 'Lela Star in "Thick" for Jules Jordan'],
2020-07-20 02:20:33 +00:00
['fake-boobs', 6, 'Cathy Heaven in "Heavenly Ass" for Big Wett Butts'],
['fake-boobs', 4, 'Capri Cavanni for Big Tits in Sports'],
['fake-boobs', 3, 'Ashly Anderson for Passion HD'],
['gangbang', 'poster', 'Kristen Scott in "Interracial Gangbang!" for Jules Jordan'],
['gangbang', 0, '"4 On 1 Gangbangs" for Doghouse Digital'],
['gangbang', 4, 'Marley Brinx in "The Gangbang of Marley Brinx" for Jules Jordan'],
['gangbang', 1, 'Ginger Lynn in "Gangbang Mystique", a photoset shot by Suze Randall for Puritan No. 10, 1984. This photo pushed the boundaries of pornography at the time, as depicting a woman \'fully occupied\' was unheard of.'],
['gaping', 'poster', 'Zoey Monroe in "Manuel DPs Them All 5" for Jules Jordan'],
2020-07-20 02:20:33 +00:00
['gaping', 3, 'Jessyka Swan for 21Sextury'],
['gaping', 2, 'Alex Grey in "DP Masters 5" for Jules Jordan'],
2020-07-18 03:12:32 +00:00
['latina', 1, 'Jynx Maze in "Big Anal Asses 2" for HardX'],
2020-07-22 02:12:20 +00:00
['latina', 0, 'Vienna Black for Spizoo'],
2020-07-13 02:32:13 +00:00
['mff', 0, 'Madison Ivy, Adriana Chechik and Keiran Lee in "Day With A Pornstar" for Brazzers'],
2020-07-18 03:12:32 +00:00
['mfm', 6, 'Honey Gold in "Slut Puppies 12" for Jules Jordan'],
['natural-boobs', 0, 'Valentina Nappi in "Hypnotic Curves" for LesbianX'],
2020-07-18 03:12:32 +00:00
['oil', 1, 'Kissa Sins in "Oil Overload 14" for JulesJordan'],
['oil', 3, 'Vina Sky for Lubed'],
['oil', 0, 'Jada Stevens in "Jada Stevens Anal Ass Oiled Up For James Deen\'s Cock" for Jules Jordan'],
2020-07-22 02:12:20 +00:00
['oral-creampie', 0, 'Henessy in "B(ass)t Friends" for Asshole Fever'],
['orgy', 'poster', 'Zoey Mornoe (DP), Jillian Janson (sex), Frida Sante, Katerina Kay and Natasha Starr in "Orgy Masters 6" for Jules Jordan'],
2020-07-13 02:32:13 +00:00
['pussy-eating', 0, 'Kali Roses licking Emily Willis\' pussy in "Peeping On My Neighbor" for Girl Girl'],
['redhead', 0, 'Penny Pax in "The Submission of Emma Marx: Boundaries" for New Sensations'],
['tattoos', 0, 'Tigerlilly in "Wrapped In Blue" for Suicide Girls'],
['trainbang', 0, 'Nicole Black in GIO971 for LegalPorno'],
['tap', 1, 'Natasha Teen in SZ2098 for LegalPorno'],
['tap', 2, 'Kira Thorn in GIO1018 for LegalPorno'],
['cum-in-mouth', 0, 'Vina Sky and Avi Love for HardX'],
]
.map(([slug, fileIndex, comment], index) => ({
2020-07-25 01:44:19 +00:00
id: `${slug}-${fileIndex}`,
tagSlug: slug,
path: `tags/${slug}/${fileIndex}.jpeg`,
thumbnail: `tags/${slug}/thumbs/${fileIndex}.jpeg`,
lazy: `tags/${slug}/lazy/${fileIndex}.jpeg`,
mime: 'image/jpeg',
index,
comment,
}));
/* eslint-disable max-len */
exports.seed = knex => Promise.resolve()
.then(async () => {
const { inserted } = await upsert('media', sfw, 'id');
const sfwMediaIds = inserted.map(mediaEntry => ({
id: nanoid(),
media_id: mediaEntry.id,
}));
2020-03-23 00:43:49 +00:00
await upsert('media_sfw', sfwMediaIds, 'media_id');
})
.then(async () => {
const tagMedia = tagPosters.concat(tagPhotos);
const tags = await knex('tags').whereIn('slug', tagMedia.map(item => item.tagSlug));
2020-03-23 00:43:49 +00:00
const { inserted, updated } = await upsert('media', tagMedia.map(({
id, path, thumbnail, lazy, mime, index, comment,
}) => ({
id, path, thumbnail, lazy, mime, index, comment,
})), 'path', knex);
const tagIdsBySlug = tags.reduce((acc, tag) => ({ ...acc, [tag.slug]: tag.id }), {});
const mediaIdsByPath = inserted.concat(updated).reduce((acc, item) => ({ ...acc, [item.path]: item.id }), {});
const tagPosterEntries = tagPosters.map(poster => ({
tag_id: tagIdsBySlug[poster.tagSlug],
media_id: mediaIdsByPath[poster.path],
}));
const tagPhotoEntries = tagPhotos.map(photo => ({
tag_id: tagIdsBySlug[photo.tagSlug],
media_id: mediaIdsByPath[photo.path],
}));
return Promise.all([
upsert('tags_posters', tagPosterEntries, 'tag_id', knex),
upsert('tags_photos', tagPhotoEntries, ['tag_id', 'media_id'], knex),
]);
});