six-degrees 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +11 -11
  4. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  5. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  12. package/.next/standalone/.next/server/app/_not-found.rsc +11 -11
  13. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
  14. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +9 -9
  15. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  16. package/.next/standalone/.next/server/app/api/admin-delete/route.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/api/admin-update/route.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/api/bridges/route.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/api/bulk-import/route.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/api/company-scores/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/connections/route.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/api/delete-cluster/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/ingest/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/network/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/outreach/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/scraper/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/setup-profile/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/unlock/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/update/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/api/update-images/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/users/route.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/avatars/[file]/route.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/import/page.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/import/page_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/import.html +1 -1
  38. package/.next/standalone/.next/server/app/import.rsc +13 -13
  39. package/.next/standalone/.next/server/app/import.segments/_full.segment.rsc +13 -13
  40. package/.next/standalone/.next/server/app/import.segments/_tree.segment.rsc +1 -1
  41. package/.next/standalone/.next/server/app/import.segments/import/__PAGE__.segment.rsc +11 -11
  42. package/.next/standalone/.next/server/app/index.html +1 -1
  43. package/.next/standalone/.next/server/app/index.rsc +13 -13
  44. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +11 -11
  45. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +13 -13
  46. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  47. package/.next/standalone/.next/server/app/launch/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/launch/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/launch.html +2 -2
  50. package/.next/standalone/.next/server/app/launch.rsc +13 -13
  51. package/.next/standalone/.next/server/app/launch.segments/_full.segment.rsc +13 -13
  52. package/.next/standalone/.next/server/app/launch.segments/_tree.segment.rsc +1 -1
  53. package/.next/standalone/.next/server/app/launch.segments/launch/__PAGE__.segment.rsc +11 -11
  54. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/paths/page.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/paths/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/paths.html +1 -1
  59. package/.next/standalone/.next/server/app/paths.rsc +13 -13
  60. package/.next/standalone/.next/server/app/paths.segments/_full.segment.rsc +13 -13
  61. package/.next/standalone/.next/server/app/paths.segments/_tree.segment.rsc +1 -1
  62. package/.next/standalone/.next/server/app/paths.segments/paths/__PAGE__.segment.rsc +11 -11
  63. package/.next/standalone/.next/server/app/profile/page.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/profile/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/profile.html +1 -1
  66. package/.next/standalone/.next/server/app/profile.rsc +13 -13
  67. package/.next/standalone/.next/server/app/profile.segments/_full.segment.rsc +13 -13
  68. package/.next/standalone/.next/server/app/profile.segments/_tree.segment.rsc +1 -1
  69. package/.next/standalone/.next/server/app/profile.segments/profile/__PAGE__.segment.rsc +11 -11
  70. package/.next/standalone/.next/server/app/queue/page.js.nft.json +1 -1
  71. package/.next/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/queue.html +1 -1
  73. package/.next/standalone/.next/server/app/queue.rsc +13 -13
  74. package/.next/standalone/.next/server/app/queue.segments/_full.segment.rsc +13 -13
  75. package/.next/standalone/.next/server/app/queue.segments/_tree.segment.rsc +1 -1
  76. package/.next/standalone/.next/server/app/queue.segments/queue/__PAGE__.segment.rsc +11 -11
  77. package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/setup.html +1 -1
  80. package/.next/standalone/.next/server/app/setup.rsc +13 -13
  81. package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +13 -13
  82. package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +1 -1
  83. package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +11 -11
  84. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jrmmj-._.js +1 -1
  85. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qx548g._.js +1 -1
  86. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1an3leo._.js +1 -1
  87. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1m8zedk._.js +1 -1
  88. package/.next/standalone/.next/server/chunks/_1_fynia._.js +2 -2
  89. package/.next/standalone/.next/server/chunks/_1itd1o_._.js +1 -1
  90. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0h1_f_2._.js +1 -1
  91. package/.next/standalone/.next/server/chunks/ssr/_0bf3x4q._.js +1 -1
  92. package/.next/standalone/.next/server/chunks/ssr/_17gui6a._.js +1 -1
  93. package/.next/standalone/.next/server/chunks/ssr/_1djpk8t._.js +1 -1
  94. package/.next/standalone/.next/server/chunks/ssr/app_import_page_1fmu6_l.js +1 -1
  95. package/.next/standalone/.next/server/chunks/ssr/app_page_1fazqbf.js +1 -1
  96. package/.next/standalone/.next/server/chunks/ssr/app_paths_page_1ol90m7.js +1 -1
  97. package/.next/standalone/.next/server/chunks/ssr/app_profile_page_0u3-l5y.js +1 -1
  98. package/.next/standalone/.next/server/chunks/ssr/app_setup_page_1-282zx.js +2 -2
  99. package/.next/standalone/.next/server/chunks/ssr/lib_0i8v-s3._.js +1 -1
  100. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  101. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  102. package/.next/standalone/.next/server/pages/404.html +1 -1
  103. package/.next/standalone/.next/server/pages/500.html +1 -1
  104. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  106. package/.next/standalone/.next/static/chunks/0jk64vo17avsb.js +1 -0
  107. package/.next/standalone/.next/static/chunks/0s65dsrthylo6.js +2 -0
  108. package/.next/standalone/.next/static/chunks/0uyfdhi8dek85.js +16 -0
  109. package/.next/standalone/.next/static/chunks/{1zmpcmngg5c7-.js → 229haorf0f19b.js} +1 -1
  110. package/.next/{static/chunks/3ts-_4i6bfkh2.js → standalone/.next/static/chunks/2g54uafnwuakc.js} +1 -1
  111. package/.next/standalone/.next/static/chunks/2ot61qsv6_0eq.js +1 -0
  112. package/.next/{static/chunks/3pfyuezyqd9ob.js → standalone/.next/static/chunks/2spwqs6b6dx13.js} +1 -1
  113. package/.next/{static/chunks/1odow92u6wxz0.js → standalone/.next/static/chunks/38dlepuubiox0.js} +1 -1
  114. package/.next/standalone/AGENTS.md +10 -0
  115. package/.next/standalone/CHANGELOG.md +41 -0
  116. package/.next/standalone/CONTRIBUTING.md +9 -0
  117. package/.next/standalone/README.md +49 -29
  118. package/.next/standalone/SECURITY.md +12 -9
  119. package/.next/standalone/app/api/scraper/route.js +4 -3
  120. package/.next/standalone/app/api/update/route.js +10 -2
  121. package/.next/standalone/app/components/ForceGraph.js +1 -1
  122. package/.next/standalone/app/components/Sidebar.js +8 -8
  123. package/.next/standalone/app/components/UpdatePanel.js +39 -8
  124. package/.next/standalone/app/import/page.js +3 -3
  125. package/.next/standalone/app/layout.js +2 -2
  126. package/.next/standalone/app/page.js +2 -2
  127. package/.next/standalone/app/paths/page.js +1 -1
  128. package/.next/standalone/app/profile/page.js +0 -178
  129. package/.next/standalone/app/setup/page.js +4 -4
  130. package/.next/standalone/bin/six-degrees.mjs +7 -2
  131. package/.next/standalone/install.sh +1 -1
  132. package/.next/standalone/lib/csv.js +53 -27
  133. package/.next/standalone/lib/release.js +5 -2
  134. package/.next/standalone/lib/scraper-client.js +3 -3
  135. package/.next/standalone/package-lock.json +103 -9
  136. package/.next/standalone/package.json +12 -10
  137. package/.next/standalone/public/demo-data.json +1 -1
  138. package/.next/standalone/scripts/gen-synthetic.mjs +16 -1
  139. package/.next/standalone/scripts/readme_buttons.py +89 -0
  140. package/.next/standalone/scripts/screenshots.py +2 -0
  141. package/.next/standalone/site/app.js +84 -0
  142. package/.next/standalone/site/index.html +221 -0
  143. package/.next/standalone/site/style.css +155 -0
  144. package/.next/standalone/site/video/install-mac-poster.jpg +0 -0
  145. package/.next/standalone/site/video/install-mac.mp4 +0 -0
  146. package/.next/standalone/site/video/linux-poster.jpg +0 -0
  147. package/.next/standalone/site/video/linux.mp4 +0 -0
  148. package/.next/standalone/site/video/scan-poster.jpg +0 -0
  149. package/.next/standalone/site/video/scan.mp4 +0 -0
  150. package/.next/static/chunks/0jk64vo17avsb.js +1 -0
  151. package/.next/static/chunks/0s65dsrthylo6.js +2 -0
  152. package/.next/static/chunks/0uyfdhi8dek85.js +16 -0
  153. package/.next/static/chunks/{1zmpcmngg5c7-.js → 229haorf0f19b.js} +1 -1
  154. package/.next/{standalone/.next/static/chunks/3ts-_4i6bfkh2.js → static/chunks/2g54uafnwuakc.js} +1 -1
  155. package/.next/static/chunks/2ot61qsv6_0eq.js +1 -0
  156. package/.next/{standalone/.next/static/chunks/3pfyuezyqd9ob.js → static/chunks/2spwqs6b6dx13.js} +1 -1
  157. package/.next/{standalone/.next/static/chunks/1odow92u6wxz0.js → static/chunks/38dlepuubiox0.js} +1 -1
  158. package/CHANGELOG.md +41 -0
  159. package/README.md +49 -29
  160. package/SECURITY.md +12 -9
  161. package/bin/six-degrees.mjs +7 -2
  162. package/lib/csv.js +53 -27
  163. package/lib/release.js +5 -2
  164. package/lib/scraper-client.js +3 -3
  165. package/package.json +12 -10
  166. package/public/demo-data.json +1 -1
  167. package/.next/standalone/.next/static/chunks/1wb_is4wsdm-u.js +0 -1
  168. package/.next/standalone/.next/static/chunks/2rrf5kzx2fhin.js +0 -2
  169. package/.next/standalone/.next/static/chunks/2s_k9x4d0gi9h.js +0 -16
  170. package/.next/standalone/.next/static/chunks/3hsi90cejq2dg.js +0 -1
  171. package/.next/static/chunks/1wb_is4wsdm-u.js +0 -1
  172. package/.next/static/chunks/2rrf5kzx2fhin.js +0 -2
  173. package/.next/static/chunks/2s_k9x4d0gi9h.js +0 -16
  174. package/.next/static/chunks/3hsi90cejq2dg.js +0 -1
  175. /package/.next/standalone/.next/static/{N9wokeIiC9rUIGmzBhj6T → ZGTiDrZ5NHGETgGdlhssu}/_buildManifest.js +0 -0
  176. /package/.next/standalone/.next/static/{N9wokeIiC9rUIGmzBhj6T → ZGTiDrZ5NHGETgGdlhssu}/_clientMiddlewareManifest.js +0 -0
  177. /package/.next/standalone/.next/static/{N9wokeIiC9rUIGmzBhj6T → ZGTiDrZ5NHGETgGdlhssu}/_ssgManifest.js +0 -0
  178. /package/.next/static/{N9wokeIiC9rUIGmzBhj6T → ZGTiDrZ5NHGETgGdlhssu}/_buildManifest.js +0 -0
  179. /package/.next/static/{N9wokeIiC9rUIGmzBhj6T → ZGTiDrZ5NHGETgGdlhssu}/_clientMiddlewareManifest.js +0 -0
  180. /package/.next/static/{N9wokeIiC9rUIGmzBhj6T → ZGTiDrZ5NHGETgGdlhssu}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[42510,30889,a=>{"use strict";let b={csuite:{key:"csuite",label:"C-Suite / Founder",level:6,points:10},owner:{key:"owner",label:"Owner / Entrepreneur",level:5,points:8},vp:{key:"vp",label:"VP / Partner / GM",level:5,points:9},director:{key:"director",label:"Director / Head",level:4,points:7.5},manager:{key:"manager",label:"Manager / Lead",level:3,points:6.5},senior:{key:"senior",label:"Senior IC",level:2,points:5},ic:{key:"ic",label:"IC / Entry",level:1,points:4},unknown:{key:"unknown",label:"Title unclear",level:1,points:3},intern:{key:"intern",label:"Intern",level:0,points:2},student:{key:"student",label:"Student",level:0,points:1}},c=[[/\b(reporting )?(to|for) (the |our )?(ceo|cto|coo|cfo|cmo|founders?|co-?founders?|president|chair(man)?)\b/g,null],[/\bchief of staff\b/g,"director"],[/\b(senior |executive |assistant |associate )?vice[-\s]?president\b|\b(s|e|a)?vp\b/g,"vp"],[/\b(product|process|content|data|feature|service|project|business process) owner\b/g,"ic"],[/\b(client|channel|strategic|business|brand|creative|agency|solutions?|account|community|developer|technology|alliances?|content|media|marketing|talent|partner) partner\b/g,"senior"],[/\bpartner (manager|marketing|development|success)\b/g,"manager"],[/\blead gen(eration)?\b|\bthought leader(ship)?\b/g,null],[/\binvestor relations\b/g,"ic"],[/\b(ceo|cto|cfo|coo|cmo|cro|cpo|cio|ciso|cdo|cso)\b|\bchief\s+(\w+\s+){0,3}officer\b|\bchief executive\b|\b(co-?)?founder\b|\bcofounder\b|\bpresident\b|\bchair(man|woman|person)\b|\bexecutive chair\b|\b(general|managing|founding) partner\b/g,"csuite"],[/\b(co-?)?owner\b|\bentrepreneur\b|\bself[-\s]employed\b|\bproprietor\b/g,"owner"],[/\bmanaging director\b|\bgeneral manager\b|\bgm\b|\bcountry (manager|director|lead)\b|\bglobal head\b|\bchief (technologist|scientist|architect|economist|evangelist|strategist|engineer|of \w+)\b|^\s*partner\b|\bpartner (at|@)|\b(venture|senior|equity|operating) partner\b|\bboard (member|director|chair)\b|\bchair of the board\b|\bmember of the board\b|\bboard of directors\b/g,"vp"],[/\b(senior |executive |creative |art |associate )?director\b|\bhead of\b|\bhead\b(?= (coach|chef))|\b(angel |venture )?investor\b|\bprincipal at\b|\b(technical|distinguished|senior) fellow\b|(?<!account |sales |customer )\bexecutive\b(?! (assistant|producer|chef))/g,"director"],[/\bmanager\b|\bmgr\b|\b(team |tech |design |engineering )?lead\b|\bleader\b|\bprincipal\b|\bstaff (engineer|designer|scientist|product|data)\b|\bsupervisor\b|\bsuperintendent\b/g,"manager"],[/\bsenior\b|\bsr\b\.?|\bspecialist\b|\barchitect\b|\bexpert\b|\bexecutive producer\b/g,"senior"],[/\b(engineer|developer|designer|analyst|associate|coordinator|consultant|strategist|recruiter|creator|producer|editor|writer|artist|scientist|researcher|representative|assistant|administrator|technician|officer|agent|teacher|professor|nurse|attorney|lawyer|accountant|marketer|photographer|videographer|freelancer?|contractor|account executive|creative|influencer|coach|trainer|instructor|advisor|adviser|mentor|programmer|animator|illustrator|planner|buyer|broker|realtor|swe|sde|sre|pm|recruiting)\b/g,"ic"]],d=/\b(intern|internship|trainee|apprentice)\b/,e=/\b(student|undergrad(uate)?|aspiring|phd candidate|recent grad(uate)?|class of 20\d\d|incoming (analyst|intern|associate|swe|engineer)|gpa|freshman|sophomore|b\.?s\.? candidate)\b|^\s*(honors )?(cs|computer science|ms ?cs|mscs|bscs|engineering|finance|marketing|business|economics|accounting|biology|psychology|information technology)\b.*(\s(@|at)\s*)(ucf|uf|university|college)\b/,f="(alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega)",g=RegExp(`\\b(fraternity|sorority|student (government|association|union|org(anization)?|senate)|honor society|campus)\\b|\\b${f}\\s+${f}\\b`),h=/\b(club|chapter|society|association)\b.*\b(ucf|uf|university|college|school|student)\b|\b(ucf|uf|university|college|school|student)\b.*\b(club|chapter|society)\b/,i=/^\s*(ex[-\s]|former(ly)?\b|previously\b|prev\b|past\b|retired\b)/i;function j(a=""){return String(a||"").split(/\s*(?:\||•|·|⋅|\/\/| – | — | - |;)\s*/).map(a=>a.trim()).filter(Boolean)}function k(a="",f=""){let l=[];for(let k of j(a||f)){let a=i.test(k),f=k.replace(i,"").replace(/^[@\s.:]+/,""),j=function(a){let f=` ${a.toLowerCase()} `;if(d.test(f))return b.intern;if(e.test(f))return b.student;let i=null;for(let[a,d]of c)a.lastIndex=0,a.test(f)&&(f=f.replace(a," "),d&&(!i||b[d].level>i.level||b[d].level===i.level&&b[d].points>i.points)&&(i=b[d]));let j=a.toLowerCase();return i&&i.level>=3&&(g.test(j)||h.test(j))?{...b.student,label:"Student (club role)"}:i}(f),m=function(a=""){let b=String(a).match(/(?:\s(?:at\s+|@\s*)|^@|\s@)(.+)$/i);return b?o(b[1]):null}(f)||(0===l.length&&q(f)?o(f):null);!j&&m&&(j={...b.ic,label:"Works there"}),j&&l.push({title:j,company:m,former:a,part:f})}return l}let l=[["Google",10,/^(google|alphabet|google deepmind|deepmind)\b/],["Apple",10,/^apple( inc)?$/],["Microsoft",10,/^microsoft\b/],["Amazon",10,/^(amazon|aws|amazon web services)\b/],["Meta",10,/^(meta|facebook|instagram|whatsapp|reality labs)\b/],["NVIDIA",10,/^nvidia\b/],["OpenAI",10,/^(openai|open ai)\b/],["Anthropic",10,/^anthropic\b/],["Tesla",10,/^tesla( motors| inc)?$/],["Snap",9,/^(snap|snapchat|snap inc|specs)\b(?!dragon)/],["Netflix",9,/^netflix\b/],["YouTube",9,/^youtube\b/],["LinkedIn",9,/^linkedin\b/],["TikTok",9,/^(tiktok|bytedance)\b/],["SpaceX",9,/^spacex\b/],["Stripe",9,/^stripe\b/],["Palantir",9,/^palantir\b/],["Anduril",9,/^anduril\b/],["Polymarket",9,/^polymarket\b/],["Kalshi",9,/^kalshi\b/],["Coca-Cola",9,/^(the )?coca[-\s]cola\b/],["Disney",9,/^(the walt |walt )?disney\b/],["Goldman Sachs",9,/^goldman( sachs)?\b/],["JPMorgan Chase",9,/^(jp ?morgan|j\.p\. morgan|jpmorgan chase|chase)\b/],["Morgan Stanley",9,/^morgan stanley\b/],["BlackRock",9,/^blackrock\b/],["McKinsey",9,/^mckinsey\b/],["BCG",9,/^(bcg|boston consulting group)\b/],["Bain",9,/^bain( & company| and company| capital)?$/],["Procter & Gamble",9,/^(p&g|procter)\b/],["Sequoia",9,/^sequoia( capital)?\b/],["Andreessen Horowitz",9,/^(a16z|andreessen)\b/],["Y Combinator",9,/^(y combinator|yc)$/],["Salesforce",8,/^salesforce\b/],["Adobe",8,/^adobe\b/],["Oracle",8,/^oracle\b/],["IBM",8,/^ibm\b/],["Uber",8,/^uber\b/],["Airbnb",8,/^airbnb\b/],["DoorDash",8,/^doordash\b/],["Spotify",8,/^spotify\b/],["Pinterest",8,/^pinterest\b/],["Reddit",8,/^reddit\b/],["X",8,/^(x corp|twitter)\b/],["Roblox",8,/^roblox\b/],["Shopify",8,/^shopify\b/],["Databricks",8,/^databricks\b/],["Snowflake",8,/^snowflake\b/],["Datadog",8,/^datadog\b/],["CrowdStrike",8,/^crowdstrike\b/],["ServiceNow",8,/^servicenow\b/],["Figma",8,/^figma\b/],["Canva",8,/^canva\b/],["Scale AI",8,/^(scale ai|scale\.ai|scale\.com)$/],["Intuit",8,/^intuit\b/],["Cisco",8,/^cisco\b/],["Qualcomm",8,/^qualcomm\b/],["AMD",8,/^amd\b/],["Samsung",8,/^samsung\b/],["Sony",8,/^sony\b/],["Epic Games",8,/^epic games\b/],["Whatnot",8,/^whatnot\b/],["Coinbase",8,/^coinbase\b/],["Robinhood",8,/^robinhood\b/],["Block",8,/^(block|square|cash app)$/],["Visa",8,/^visa( inc)?$/],["Mastercard",8,/^mastercard\b/],["American Express",8,/^(american express|amex)\b/],["Capital One",8,/^capital one\b/],["BNY",8,/^(bny|bny mellon|bank of new york)\b/],["Citi",8,/^(citi|citigroup|citibank)\b/],["Wells Fargo",8,/^wells fargo\b/],["Bank of America",8,/^(bank of america|merrill)\b/],["Fidelity",8,/^fidelity\b/],["Deloitte",8,/^deloitte\b/],["PwC",8,/^(pwc|pricewaterhouse)\b/],["EY",8,/^(ey|ernst & young)$/],["KPMG",8,/^kpmg\b/],["Accenture",8,/^accenture\b/],["Egon Zehnder",8,/^egon zehnder\b/],["Heidrick & Struggles",8,/^heidrick\b/],["Nike",8,/^nike\b/],["PepsiCo",8,/^pepsi(co)?\b/],["Walmart",8,/^walmart\b/],["Starbucks",8,/^starbucks\b/],["Unilever",8,/^unilever\b/],["LVMH",8,/^lvmh\b/],["L'Oréal",8,/^l'?or[eé]al\b/],["Red Bull",8,/^red bull\b/],["NBCUniversal",8,/^(nbcuniversal|nbc universal|nbc)\b/],["Warner Bros. Discovery",8,/^(warner|wbd)\b/],["MrBeast",8,/^(mrbeast|beast industries)\b/],["Lockheed Martin",8,/^lockheed\b/],["Northrop Grumman",8,/^northrop\b/],["Boeing",8,/^boeing\b/],["RTX",8,/^(rtx|raytheon)\b/],["General Dynamics",8,/^general dynamics\b/],["Blue Origin",8,/^blue origin\b/],["Siemens",8,/^siemens\b/],["Mitsubishi",8,/^mitsubishi\b/],["Toyota",8,/^toyota\b/],["Johnson & Johnson",8,/^(johnson & johnson|j&j)\b/],["Pfizer",8,/^pfizer\b/],["UnitedHealth",8,/^(unitedhealth|optum)\b/],["World Bank",8,/^world bank\b/],["NASA",8,/^nasa\b/],["Stanford University",8,/^stanford\b/],["Harvard University",8,/^harvard\b/],["MIT",8,/^(mit|massachusetts institute of technology)$/],["Discord",7,/^discord\b/],["Whop",7,/^whop\b/],["Hims & Hers",7,/^hims\b/],["Paramount",7,/^paramount\b/],["Madison Square Garden",7,/^(madison square garden|msg)\b/],["Fanatics",7,/^fanatics\b/],["Nielsen",7,/^nielsen\b/],["The Trade Desk",7,/^the trade desk\b/],["SiriusXM",7,/^siriusxm\b/],["Riot Games",7,/^riot games\b/],["Twitch",7,/^twitch\b/],["Electronic Arts",7,/^(electronic arts|ea)$/],["Activision Blizzard",7,/^(activision|blizzard)\b/],["Lyft",7,/^lyft\b/],["Instacart",7,/^instacart\b/],["Duolingo",7,/^duolingo\b/],["Notion",7,/^notion\b/],["Vercel",7,/^vercel\b/],["Intel",7,/^intel( corporation)?$/],["Workday",7,/^workday\b/],["PayPal",7,/^paypal\b/],["Plaid",7,/^plaid\b/],["Brex",7,/^brex\b/],["Ramp",7,/^ramp$/],["Mercury",7,/^mercury$/],["Chime",7,/^chime$/],["Credit Karma",7,/^credit karma\b/],["Chick-fil-A",7,/^chick[-\s]fil[-\s]a\b/],["Target",7,/^target( corporation)?$/],["Booz Allen Hamilton",7,/^booz allen\b/],["L3Harris",7,/^l3harris\b/],["Leidos",7,/^leidos\b/],["U.S. Space Force",7,/^(u\.?s\.? )?space force\b/],["WPP",7,/^wpp\b/],["Omnicom",7,/^omnicom\b/],["Publicis",7,/^publicis\b/],["Interpublic",7,/^(interpublic|ipg)\b/],["Dentsu",7,/^dentsu\b/],["Kellanova",7,/^(kellanova|kellogg)\b/],["Campbell",7,/^campbell\b/],["Goodyear",7,/^goodyear\b/],["Duke University",7,/^duke( university)?$/],["UC Berkeley",7,/^(uc berkeley|university of california,? berkeley)\b/],["Grindr",6,/^grindr\b/],["Genius Sports",6,/^genius sports\b/],["Later",6,/^later$/],["Hard Rock Digital",6,/^hard rock\b/],["Vanta",6,/^vanta\b/],["Kaseya",6,/^kaseya\b/],["Havas",6,/^havas\b/],["VaynerMedia",6,/^vayner/],["AdventHealth",6,/^adventhealth\b/],["University of Florida",6,/^(uf|university of florida)$/],["The Athletic",6,/^the athletic\b/],["UCF",5,/^(ucf|university of central florida)\b/]],m=/^(self[-\s]?employed|freelance|various|multiple|confidential|n\/a|none|tbd|open to work|looking|seeking)$/i,n=/^(scale$|heart|large|night|home|work|speed|best|the intersection|intersection|the crossroads|the forefront|the core|every stage|all levels|your service)\b/i;function o(a){let b=String(a||"").replace(/[\p{Extended_Pictographic}\u{FE0F}‍]/gu,"").split(/\s*(?:\||•|·| – | — | - |!|\(|\/| {2,})\s*/)[0].split(/\.\s|,\s/)[0].replace(/[\s,.:;'"]+$/,"").replace(/,?\s+(inc|llc|ltd|l\.l\.c|corp|corporation|co|gmbh|plc|pbc)\.?$/i,"").trim();if(!b||b.length<2||m.test(b)||n.test(b)||b.length>50||b.split(/\s+/).length>6||/\$|\d+%|\d+[kmb]\+/i.test(b))return null;let c=b.toLowerCase(),d=c.replace(/^the /,"");for(let[a,,b]of l)if(b.test(c)||b.test(d)||c===a.toLowerCase())return a;return b}let p=new Map(l.map(([a,b])=>[a,b])),q=a=>{let b=o(a);return!!b&&p.has(b)};function r(a){let c,d=k(a?.headline,a?.role),e=o(a?.scanned_company)||((c=o(a?.company))&&!d.some(a=>a.former&&a.company===c)?c:null),f=d.find(a=>!a.former);return e&&f&&!f.company&&(f.company=e),e&&!f&&d.unshift({title:{...b.unknown},company:e,former:!1,part:""}),d.length||d.push({title:{...b.unknown},company:null,former:!1,part:""}),d}let s=[[/\b(angel investor|investor|venture capital(ist)?|vc|general partner|limited partner)\b(?! relations)/i,1,"investor"],[/\by ?combinator\b|\(yc\)|\byc\b ?[wsfx]?\d{0,2}\b/i,1,"YC"],[/\b30 under 30\b/i,1,"30 under 30"],[/\b\d[\d.,]*\s?(m|b|million|billion)\+?\s*(views|followers|subscribers|impressions|users|downloads|installs|listeners|students|customers|members|reach)\b|\$?\s?\d[\d.,]*\s?(m|b|million|billion)\+?\s*(in )?(sales|revenue|arr|gmv|raised|funding)\b|\braised \$?\s?\d[\d.,]*\s?(m|b|million|billion)\b/i,.75,"reach in the millions"],[/\b(tedx?|keynote|patents?|author of|best[-\s]?selling|award[-\s]winning|cannes lions|emmy|grammy|webby)\b/i,.5,"recognition"]],t=a=>Math.round(10*a)/10;function u(a,b=a=>(function(a,{overrides:b=new Map,headcount:c=0,industry:d}={}){return a?b.has(a)?{score:b.get(a),source:"yours"}:p.has(a)?{score:p.get(a),source:"known"}:"education"!==d&&c>=15?{score:6,source:"network"}:"education"!==d&&c>=5?{score:5,source:"network"}:{score:4,source:"default"}:{score:3,source:"none"}})(a)){let c=function(a=""){return j(a).some(a=>!i.test(a)&&(e.test(` ${a.toLowerCase()} `)||d.test(` ${a.toLowerCase()} `)))}(a?.headline),f=null;for(let d of r(a)){let a=b(d.company),e=d.title.points*(d.former?.7:1);c&&(e=Math.min(e,3));let g=e*(.45+.055*a.score);(!f||g>f.core)&&(f={role:d,co:a,points:e,core:g})}let g=function(a="",b=10){let c=0,d=[];for(let[b,e,f]of s)b.test(a||"")&&(c+=e,d.push(f));return(c=Math.min(1.5,c))&&b<=4&&(c/=2,d.push("halved: unknown company")),{points:t(c),reasons:d}}(a?.headline,f.co.score),h=t(f.core+g.points),k={...f.role.title,former:f.role.former,student:c,points:t(f.points)};return f.role.former&&(k.label=`Former ${k.label}`),c&&f.role.title.level>0&&(k.label=`Student \xb7 ${k.label}`),{title:k,company:f.role.company,companyScore:f.co.score,companySource:f.co.source,bonus:g,power:h,tier:h>=7.5?"S":h>=5.5?"A":h>=4?"B":h>=2.5?"C":"D"}}a.s(["currentCompany",0,function(a){return r(a).find(a=>!a.former)?.company||null},"readTitle",0,function(a="",c=""){let d=k(a,c),e=d.find(a=>!a.former)||d[0];return e?{...e.title,part:e.part}:{...b.unknown,part:j(a||c)[0]||""}},"scorePerson",0,u],30889);let v="six-degrees-csv-network";class w extends Error{}function x({degree1:a=[],degree2:b=[],source:c="csv"}){try{return sessionStorage.setItem(v,JSON.stringify({degree1:a,degree2:b,source:c,importedAt:Date.now()})),!0}catch{return!1}}a.s(["CSV_USER",0,{id:"csv-local-user",name:"You"},"ConnectionsCsvError",0,w,"clearCsvNetwork",0,function(){try{sessionStorage.removeItem(v)}catch{}},"hasCsvNetwork",0,function(){try{return!!sessionStorage.getItem(v)}catch{return!1}},"loadCsvNetwork",0,function(){try{let a=sessionStorage.getItem(v);if(!a)return null;let b=JSON.parse(a);return{degree1:b.degree1||[],degree2:b.degree2||[],source:b.source||"csv"}}catch{return null}},"parseConnectionsCsv",0,function(a){let b=function(a){let b=[],c=[],d="",e=!1;for(let f=0;f<a.length;f++){let g=a[f];if(e){'"'===g?'"'===a[f+1]?(d+='"',f++):e=!1:d+=g;continue}if('"'===g){e=!0;continue}if(","===g){c.push(d),d="";continue}if("\r"!==g){if("\n"===g){c.push(d),b.push(c),c=[],d="";continue}d+=g}}return(d.length||c.length)&&(c.push(d),b.push(c)),b}(a),c=b.findIndex(a=>{let b=a.map(a=>a.trim().toLowerCase());return b.includes("first name")&&b.includes("last name")});if(-1===c)throw new w('Could not find the Connections.csv header row (expected columns like "First Name, Last Name, URL, Company, Position"). Make sure this is the Connections.csv from your LinkedIn data export.');let d=b[c].map(a=>a.trim().toLowerCase()),e=d.indexOf("first name"),f=d.indexOf("last name"),g=d.indexOf("url"),h=d.indexOf("company"),i=d.indexOf("position"),j=d.indexOf("connected on"),k=[],l=new Set,m=0;for(let a of b.slice(c+1)){let b=b=>b>=0&&null!=a[b]?String(a[b]).trim():"",c=`${b(e)} ${b(f)}`.trim();if(!c){m++;continue}let d=b(h),n=b(i),o=b(g),p=n&&d?`${n} at ${d}`:n||d||c,q=o?function(a){let b=5381;for(let c=0;c<a.length;c++)b=(b<<5)+b+a.charCodeAt(c)|0;return`csv-${Math.abs(b).toString(36)}`}(o):`csv-row-${k.length}`;if(l.has(q)){m++;continue}l.add(q);let r=null,s=b(j);if(s){let a=new Date(s);isNaN(a.getTime())||(r=a.toISOString().split("T")[0])}k.push({id:q,degree:1,name:c,headline:p,role:n,company:d,profile_url:o||null,profile_image_url:null,connected_date:r,source_connection_id:null,is_catalyst:!1,catalyst_score:null,circle_power:null,circle_s_count:null,circle_a_count:null,circle_elite_pct:null,outreach_status:null,unlock_status:null,...function(a,b){let c=u({headline:a,company:b});return{seniority_score:c.title.points,company_prestige_score:c.companyScore,power_score:c.power,tier:c.tier}}(p,d)})}if(!k.length)throw new w("That file parsed, but no connections were found in it. Double-check that it is Connections.csv from your LinkedIn data export.");return k.sort((a,b)=>b.power_score-a.power_score),{connections:k,skipped:m,total:k.length+m}},"saveCsvNetwork",0,function(a){return x({degree1:a,degree2:[],source:"csv"})},"saveSessionNetwork",0,x],42510)},73167,a=>{"use strict";function b(){return null}a.s(["getUserId",0,b,"getUserName",0,function(){return null},"hasUser",0,function(){return!!b()},"setUser",0,function(a,b){}])}];
1
+ module.exports=[42510,30889,a=>{"use strict";let b={csuite:{key:"csuite",label:"C-Suite / Founder",level:6,points:10},owner:{key:"owner",label:"Owner / Entrepreneur",level:5,points:8},vp:{key:"vp",label:"VP / Partner / GM",level:5,points:9},director:{key:"director",label:"Director / Head",level:4,points:7.5},manager:{key:"manager",label:"Manager / Lead",level:3,points:6.5},senior:{key:"senior",label:"Senior IC",level:2,points:5},ic:{key:"ic",label:"IC / Entry",level:1,points:4},unknown:{key:"unknown",label:"Title unclear",level:1,points:3},intern:{key:"intern",label:"Intern",level:0,points:2},student:{key:"student",label:"Student",level:0,points:1}},c=[[/\b(reporting )?(to|for) (the |our )?(ceo|cto|coo|cfo|cmo|founders?|co-?founders?|president|chair(man)?)\b/g,null],[/\bchief of staff\b/g,"director"],[/\b(senior |executive |assistant |associate )?vice[-\s]?president\b|\b(s|e|a)?vp\b/g,"vp"],[/\b(product|process|content|data|feature|service|project|business process) owner\b/g,"ic"],[/\b(client|channel|strategic|business|brand|creative|agency|solutions?|account|community|developer|technology|alliances?|content|media|marketing|talent|partner) partner\b/g,"senior"],[/\bpartner (manager|marketing|development|success)\b/g,"manager"],[/\blead gen(eration)?\b|\bthought leader(ship)?\b/g,null],[/\binvestor relations\b/g,"ic"],[/\b(ceo|cto|cfo|coo|cmo|cro|cpo|cio|ciso|cdo|cso)\b|\bchief\s+(\w+\s+){0,3}officer\b|\bchief executive\b|\b(co-?)?founder\b|\bcofounder\b|\bpresident\b|\bchair(man|woman|person)\b|\bexecutive chair\b|\b(general|managing|founding) partner\b/g,"csuite"],[/\b(co-?)?owner\b|\bentrepreneur\b|\bself[-\s]employed\b|\bproprietor\b/g,"owner"],[/\bmanaging director\b|\bgeneral manager\b|\bgm\b|\bcountry (manager|director|lead)\b|\bglobal head\b|\bchief (technologist|scientist|architect|economist|evangelist|strategist|engineer|of \w+)\b|^\s*partner\b|\bpartner (at|@)|\b(venture|senior|equity|operating) partner\b|\bboard (member|director|chair)\b|\bchair of the board\b|\bmember of the board\b|\bboard of directors\b/g,"vp"],[/\b(senior |executive |creative |art |associate )?director\b|\bhead of\b|\bhead\b(?= (coach|chef))|\b(angel |venture )?investor\b|\bprincipal at\b|\b(technical|distinguished|senior) fellow\b|(?<!account |sales |customer )\bexecutive\b(?! (assistant|producer|chef))/g,"director"],[/\bmanager\b|\bmgr\b|\b(team |tech |design |engineering )?lead\b|\bleader\b|\bprincipal\b|\bstaff (engineer|designer|scientist|product|data)\b|\bsupervisor\b|\bsuperintendent\b/g,"manager"],[/\bsenior\b|\bsr\b\.?|\bspecialist\b|\barchitect\b|\bexpert\b|\bexecutive producer\b/g,"senior"],[/\b(engineer|developer|designer|analyst|associate|coordinator|consultant|strategist|recruiter|creator|producer|editor|writer|artist|scientist|researcher|representative|assistant|administrator|technician|officer|agent|teacher|professor|nurse|attorney|lawyer|accountant|marketer|photographer|videographer|freelancer?|contractor|account executive|creative|influencer|coach|trainer|instructor|advisor|adviser|mentor|programmer|animator|illustrator|planner|buyer|broker|realtor|swe|sde|sre|pm|recruiting)\b/g,"ic"]],d=/\b(intern|internship|trainee|apprentice)\b/,e=/\b(student|undergrad(uate)?|aspiring|phd candidate|recent grad(uate)?|class of 20\d\d|incoming (analyst|intern|associate|swe|engineer)|gpa|freshman|sophomore|b\.?s\.? candidate)\b|^\s*(honors )?(cs|computer science|ms ?cs|mscs|bscs|engineering|finance|marketing|business|economics|accounting|biology|psychology|information technology)\b.*(\s(@|at)\s*)(ucf|uf|university|college)\b/,f="(alpha|beta|gamma|delta|epsilon|zeta|eta|theta|iota|kappa|lambda|mu|nu|xi|omicron|pi|rho|sigma|tau|upsilon|phi|chi|psi|omega)",g=RegExp(`\\b(fraternity|sorority|student (government|association|union|org(anization)?|senate)|honor society|campus)\\b|\\b${f}\\s+${f}\\b`),h=/\b(club|chapter|society|association)\b.*\b(ucf|uf|university|college|school|student)\b|\b(ucf|uf|university|college|school|student)\b.*\b(club|chapter|society)\b/,i=/^\s*(ex[-\s]|former(ly)?\b|previously\b|prev\b|past\b|retired\b)/i;function j(a=""){return String(a||"").split(/\s*(?:\||•|·|⋅|\/\/| – | — | - |;)\s*/).map(a=>a.trim()).filter(Boolean)}function k(a="",f=""){let l=[];for(let k of j(a||f)){let a=i.test(k),f=k.replace(i,"").replace(/^[@\s.:]+/,""),j=function(a){let f=` ${a.toLowerCase()} `;if(d.test(f))return b.intern;if(e.test(f))return b.student;let i=null;for(let[a,d]of c)a.lastIndex=0,a.test(f)&&(f=f.replace(a," "),d&&(!i||b[d].level>i.level||b[d].level===i.level&&b[d].points>i.points)&&(i=b[d]));let j=a.toLowerCase();return i&&i.level>=3&&(g.test(j)||h.test(j))?{...b.student,label:"Student (club role)"}:i}(f),m=function(a=""){let b=String(a).match(/(?:\s(?:at\s+|@\s*)|^@|\s@)(.+)$/i);return b?o(b[1]):null}(f)||(0===l.length&&q(f)?o(f):null);!j&&m&&(j={...b.ic,label:"Works there"}),j&&l.push({title:j,company:m,former:a,part:f})}return l}let l=[["Google",10,/^(google|alphabet|google deepmind|deepmind)\b/],["Apple",10,/^apple( inc)?$/],["Microsoft",10,/^microsoft\b/],["Amazon",10,/^(amazon|aws|amazon web services)\b/],["Meta",10,/^(meta|facebook|instagram|whatsapp|reality labs)\b/],["NVIDIA",10,/^nvidia\b/],["OpenAI",10,/^(openai|open ai)\b/],["Anthropic",10,/^anthropic\b/],["Tesla",10,/^tesla( motors| inc)?$/],["Snap",9,/^(snap|snapchat|snap inc|specs)\b(?!dragon)/],["Netflix",9,/^netflix\b/],["YouTube",9,/^youtube\b/],["LinkedIn",9,/^linkedin\b/],["TikTok",9,/^(tiktok|bytedance)\b/],["SpaceX",9,/^spacex\b/],["Stripe",9,/^stripe\b/],["Palantir",9,/^palantir\b/],["Anduril",9,/^anduril\b/],["Polymarket",9,/^polymarket\b/],["Kalshi",9,/^kalshi\b/],["Coca-Cola",9,/^(the )?coca[-\s]cola\b/],["Disney",9,/^(the walt |walt )?disney\b/],["Goldman Sachs",9,/^goldman( sachs)?\b/],["JPMorgan Chase",9,/^(jp ?morgan|j\.p\. morgan|jpmorgan chase|chase)\b/],["Morgan Stanley",9,/^morgan stanley\b/],["BlackRock",9,/^blackrock\b/],["McKinsey",9,/^mckinsey\b/],["BCG",9,/^(bcg|boston consulting group)\b/],["Bain",9,/^bain( & company| and company| capital)?$/],["Procter & Gamble",9,/^(p&g|procter)\b/],["Sequoia",9,/^sequoia( capital)?\b/],["Andreessen Horowitz",9,/^(a16z|andreessen)\b/],["Y Combinator",9,/^(y combinator|yc)$/],["Salesforce",8,/^salesforce\b/],["Adobe",8,/^adobe\b/],["Oracle",8,/^oracle\b/],["IBM",8,/^ibm\b/],["Uber",8,/^uber\b/],["Airbnb",8,/^airbnb\b/],["DoorDash",8,/^doordash\b/],["Spotify",8,/^spotify\b/],["Pinterest",8,/^pinterest\b/],["Reddit",8,/^reddit\b/],["X",8,/^(x corp|twitter)\b/],["Roblox",8,/^roblox\b/],["Shopify",8,/^shopify\b/],["Databricks",8,/^databricks\b/],["Snowflake",8,/^snowflake\b/],["Datadog",8,/^datadog\b/],["CrowdStrike",8,/^crowdstrike\b/],["ServiceNow",8,/^servicenow\b/],["Figma",8,/^figma\b/],["Canva",8,/^canva\b/],["Scale AI",8,/^(scale ai|scale\.ai|scale\.com)$/],["Intuit",8,/^intuit\b/],["Cisco",8,/^cisco\b/],["Qualcomm",8,/^qualcomm\b/],["AMD",8,/^amd\b/],["Samsung",8,/^samsung\b/],["Sony",8,/^sony\b/],["Epic Games",8,/^epic games\b/],["Whatnot",8,/^whatnot\b/],["Coinbase",8,/^coinbase\b/],["Robinhood",8,/^robinhood\b/],["Block",8,/^(block|square|cash app)$/],["Visa",8,/^visa( inc)?$/],["Mastercard",8,/^mastercard\b/],["American Express",8,/^(american express|amex)\b/],["Capital One",8,/^capital one\b/],["BNY",8,/^(bny|bny mellon|bank of new york)\b/],["Citi",8,/^(citi|citigroup|citibank)\b/],["Wells Fargo",8,/^wells fargo\b/],["Bank of America",8,/^(bank of america|merrill)\b/],["Fidelity",8,/^fidelity\b/],["Deloitte",8,/^deloitte\b/],["PwC",8,/^(pwc|pricewaterhouse)\b/],["EY",8,/^(ey|ernst & young)$/],["KPMG",8,/^kpmg\b/],["Accenture",8,/^accenture\b/],["Egon Zehnder",8,/^egon zehnder\b/],["Heidrick & Struggles",8,/^heidrick\b/],["Nike",8,/^nike\b/],["PepsiCo",8,/^pepsi(co)?\b/],["Walmart",8,/^walmart\b/],["Starbucks",8,/^starbucks\b/],["Unilever",8,/^unilever\b/],["LVMH",8,/^lvmh\b/],["L'Oréal",8,/^l'?or[eé]al\b/],["Red Bull",8,/^red bull\b/],["NBCUniversal",8,/^(nbcuniversal|nbc universal|nbc)\b/],["Warner Bros. Discovery",8,/^(warner|wbd)\b/],["MrBeast",8,/^(mrbeast|beast industries)\b/],["Lockheed Martin",8,/^lockheed\b/],["Northrop Grumman",8,/^northrop\b/],["Boeing",8,/^boeing\b/],["RTX",8,/^(rtx|raytheon)\b/],["General Dynamics",8,/^general dynamics\b/],["Blue Origin",8,/^blue origin\b/],["Siemens",8,/^siemens\b/],["Mitsubishi",8,/^mitsubishi\b/],["Toyota",8,/^toyota\b/],["Johnson & Johnson",8,/^(johnson & johnson|j&j)\b/],["Pfizer",8,/^pfizer\b/],["UnitedHealth",8,/^(unitedhealth|optum)\b/],["World Bank",8,/^world bank\b/],["NASA",8,/^nasa\b/],["Stanford University",8,/^stanford\b/],["Harvard University",8,/^harvard\b/],["MIT",8,/^(mit|massachusetts institute of technology)$/],["Discord",7,/^discord\b/],["Whop",7,/^whop\b/],["Hims & Hers",7,/^hims\b/],["Paramount",7,/^paramount\b/],["Madison Square Garden",7,/^(madison square garden|msg)\b/],["Fanatics",7,/^fanatics\b/],["Nielsen",7,/^nielsen\b/],["The Trade Desk",7,/^the trade desk\b/],["SiriusXM",7,/^siriusxm\b/],["Riot Games",7,/^riot games\b/],["Twitch",7,/^twitch\b/],["Electronic Arts",7,/^(electronic arts|ea)$/],["Activision Blizzard",7,/^(activision|blizzard)\b/],["Lyft",7,/^lyft\b/],["Instacart",7,/^instacart\b/],["Duolingo",7,/^duolingo\b/],["Notion",7,/^notion\b/],["Vercel",7,/^vercel\b/],["Intel",7,/^intel( corporation)?$/],["Workday",7,/^workday\b/],["PayPal",7,/^paypal\b/],["Plaid",7,/^plaid\b/],["Brex",7,/^brex\b/],["Ramp",7,/^ramp$/],["Mercury",7,/^mercury$/],["Chime",7,/^chime$/],["Credit Karma",7,/^credit karma\b/],["Chick-fil-A",7,/^chick[-\s]fil[-\s]a\b/],["Target",7,/^target( corporation)?$/],["Booz Allen Hamilton",7,/^booz allen\b/],["L3Harris",7,/^l3harris\b/],["Leidos",7,/^leidos\b/],["U.S. Space Force",7,/^(u\.?s\.? )?space force\b/],["WPP",7,/^wpp\b/],["Omnicom",7,/^omnicom\b/],["Publicis",7,/^publicis\b/],["Interpublic",7,/^(interpublic|ipg)\b/],["Dentsu",7,/^dentsu\b/],["Kellanova",7,/^(kellanova|kellogg)\b/],["Campbell",7,/^campbell\b/],["Goodyear",7,/^goodyear\b/],["Duke University",7,/^duke( university)?$/],["UC Berkeley",7,/^(uc berkeley|university of california,? berkeley)\b/],["Grindr",6,/^grindr\b/],["Genius Sports",6,/^genius sports\b/],["Later",6,/^later$/],["Hard Rock Digital",6,/^hard rock\b/],["Vanta",6,/^vanta\b/],["Kaseya",6,/^kaseya\b/],["Havas",6,/^havas\b/],["VaynerMedia",6,/^vayner/],["AdventHealth",6,/^adventhealth\b/],["University of Florida",6,/^(uf|university of florida)$/],["The Athletic",6,/^the athletic\b/],["UCF",5,/^(ucf|university of central florida)\b/]],m=/^(self[-\s]?employed|freelance|various|multiple|confidential|n\/a|none|tbd|open to work|looking|seeking)$/i,n=/^(scale$|heart|large|night|home|work|speed|best|the intersection|intersection|the crossroads|the forefront|the core|every stage|all levels|your service)\b/i;function o(a){let b=String(a||"").replace(/[\p{Extended_Pictographic}\u{FE0F}‍]/gu,"").split(/\s*(?:\||•|·| – | — | - |!|\(|\/| {2,})\s*/)[0].split(/\.\s|,\s/)[0].replace(/[\s,.:;'"]+$/,"").replace(/,?\s+(inc|llc|ltd|l\.l\.c|corp|corporation|co|gmbh|plc|pbc)\.?$/i,"").trim();if(!b||b.length<2||m.test(b)||n.test(b)||b.length>50||b.split(/\s+/).length>6||/\$|\d+%|\d+[kmb]\+/i.test(b))return null;let c=b.toLowerCase(),d=c.replace(/^the /,"");for(let[a,,b]of l)if(b.test(c)||b.test(d)||c===a.toLowerCase())return a;return b}let p=new Map(l.map(([a,b])=>[a,b])),q=a=>{let b=o(a);return!!b&&p.has(b)};function r(a){let c,d=k(a?.headline,a?.role),e=o(a?.scanned_company)||((c=o(a?.company))&&!d.some(a=>a.former&&a.company===c)?c:null),f=d.find(a=>!a.former);return e&&f&&!f.company&&(f.company=e),e&&!f&&d.unshift({title:{...b.unknown},company:e,former:!1,part:""}),d.length||d.push({title:{...b.unknown},company:null,former:!1,part:""}),d}let s=[[/\b(angel investor|investor|venture capital(ist)?|vc|general partner|limited partner)\b(?! relations)/i,1,"investor"],[/\by ?combinator\b|\(yc\)|\byc\b ?[wsfx]?\d{0,2}\b/i,1,"YC"],[/\b30 under 30\b/i,1,"30 under 30"],[/\b\d[\d.,]*\s?(m|b|million|billion)\+?\s*(views|followers|subscribers|impressions|users|downloads|installs|listeners|students|customers|members|reach)\b|\$?\s?\d[\d.,]*\s?(m|b|million|billion)\+?\s*(in )?(sales|revenue|arr|gmv|raised|funding)\b|\braised \$?\s?\d[\d.,]*\s?(m|b|million|billion)\b/i,.75,"reach in the millions"],[/\b(tedx?|keynote|patents?|author of|best[-\s]?selling|award[-\s]winning|cannes lions|emmy|grammy|webby)\b/i,.5,"recognition"]],t=a=>Math.round(10*a)/10;function u(a,b=a=>(function(a,{overrides:b=new Map,headcount:c=0,industry:d}={}){return a?b.has(a)?{score:b.get(a),source:"yours"}:p.has(a)?{score:p.get(a),source:"known"}:"education"!==d&&c>=15?{score:6,source:"network"}:"education"!==d&&c>=5?{score:5,source:"network"}:{score:4,source:"default"}:{score:3,source:"none"}})(a)){let c=function(a=""){return j(a).some(a=>!i.test(a)&&(e.test(` ${a.toLowerCase()} `)||d.test(` ${a.toLowerCase()} `)))}(a?.headline),f=null;for(let d of r(a)){let a=b(d.company),e=d.title.points*(d.former?.7:1);c&&(e=Math.min(e,3));let g=e*(.45+.055*a.score);(!f||g>f.core)&&(f={role:d,co:a,points:e,core:g})}let g=function(a="",b=10){let c=0,d=[];for(let[b,e,f]of s)b.test(a||"")&&(c+=e,d.push(f));return(c=Math.min(1.5,c))&&b<=4&&(c/=2,d.push("halved: unknown company")),{points:t(c),reasons:d}}(a?.headline,f.co.score),h=t(f.core+g.points),k={...f.role.title,former:f.role.former,student:c,points:t(f.points)};return f.role.former&&(k.label=`Former ${k.label}`),c&&f.role.title.level>0&&(k.label=`Student \xb7 ${k.label}`),{title:k,company:f.role.company,companyScore:f.co.score,companySource:f.co.source,bonus:g,power:h,tier:h>=7.5?"S":h>=5.5?"A":h>=4?"B":h>=2.5?"C":"D"}}a.s(["currentCompany",0,function(a){return r(a).find(a=>!a.former)?.company||null},"readTitle",0,function(a="",c=""){let d=k(a,c),e=d.find(a=>!a.former)||d[0];return e?{...e.title,part:e.part}:{...b.unknown,part:j(a||c)[0]||""}},"scorePerson",0,u],30889);let v="six-degrees-csv-network";class w extends Error{}function x({id:a,name:b,role:c,company:d,profileUrl:e,connected_date:f}){let g,h=c&&d?`${c} at ${d}`:c||d||b;return{id:a,degree:1,name:b,headline:h,role:c,company:d,profile_url:e||null,profile_image_url:null,connected_date:f,source_connection_id:null,is_catalyst:!1,catalyst_score:null,circle_power:null,circle_s_count:null,circle_a_count:null,circle_elite_pct:null,outreach_status:null,unlock_status:null,...{seniority_score:(g=u({headline:h,company:d})).title.points,company_prestige_score:g.companyScore,power_score:g.power,tier:g.tier}}}a.s(["CSV_USER",0,{id:"csv-local-user",name:"You"},"ConnectionsCsvError",0,w,"clearCsvNetwork",0,function(){try{sessionStorage.removeItem(v)}catch{}},"hasCsvNetwork",0,function(){try{return!!sessionStorage.getItem(v)}catch{return!1}},"loadCsvNetwork",0,function(){try{let a=sessionStorage.getItem(v);if(!a)return null;let b=JSON.parse(a);return{degree1:b.packed?function(a=[]){return a.map(([a,b,c,d,e,f])=>x({id:a,name:b,role:c,company:d,profileUrl:e,connected_date:f})).sort((a,b)=>b.power_score-a.power_score)}(b.packed):b.degree1||[],degree2:b.degree2||[],source:b.source||"csv"}}catch{return null}},"parseConnectionsCsv",0,function(a){let b=function(a){let b=[],c=[],d="",e=!1;for(let f=0;f<a.length;f++){let g=a[f];if(e){'"'===g?'"'===a[f+1]?(d+='"',f++):e=!1:d+=g;continue}if('"'===g){e=!0;continue}if(","===g){c.push(d),d="";continue}if("\r"!==g){if("\n"===g){c.push(d),b.push(c),c=[],d="";continue}d+=g}}return(d.length||c.length)&&(c.push(d),b.push(c)),b}(a),c=b.findIndex(a=>{let b=a.map(a=>a.trim().toLowerCase());return b.includes("first name")&&b.includes("last name")});if(-1===c)throw new w('Could not find the Connections.csv header row (expected columns like "First Name, Last Name, URL, Company, Position"). Make sure this is the Connections.csv from your LinkedIn data export.');let d=b[c].map(a=>a.trim().toLowerCase()),e=d.indexOf("first name"),f=d.indexOf("last name"),g=d.indexOf("url"),h=d.indexOf("company"),i=d.indexOf("position"),j=d.indexOf("connected on"),k=[],l=new Set,m=0;for(let a of b.slice(c+1)){let b=b=>b>=0&&null!=a[b]?String(a[b]).trim():"",c=`${b(e)} ${b(f)}`.trim();if(!c){m++;continue}let d=b(h),n=b(i),o=b(g),p=o?function(a){let b=5381;for(let c=0;c<a.length;c++)b=(b<<5)+b+a.charCodeAt(c)|0;return`csv-${Math.abs(b).toString(36)}`}(o):`csv-row-${k.length}`;if(l.has(p)){m++;continue}l.add(p);let q=null,r=b(j);if(r){let a=new Date(r);isNaN(a.getTime())||(q=a.toISOString().split("T")[0])}k.push(x({id:p,name:c,role:n,company:d,profileUrl:o,connected_date:q}))}if(!k.length)throw new w("That file parsed, but no connections were found in it. Double-check that it is Connections.csv from your LinkedIn data export.");return k.sort((a,b)=>b.power_score-a.power_score),{connections:k,skipped:m,total:k.length+m}},"saveCsvNetwork",0,function(a){try{return sessionStorage.setItem(v,JSON.stringify({packed:a.map(a=>[a.id,a.name,a.role,a.company,a.profile_url,a.connected_date]),degree2:[],source:"csv",importedAt:Date.now()})),!0}catch{return!1}},"saveSessionNetwork",0,function({degree1:a=[],degree2:b=[],source:c="csv"}){try{return sessionStorage.setItem(v,JSON.stringify({degree1:a,degree2:b,source:c,importedAt:Date.now()})),!0}catch{return!1}}],42510)},73167,a=>{"use strict";function b(){return null}a.s(["getUserId",0,b,"getUserName",0,function(){return null},"hasUser",0,function(){return!!b()},"setUser",0,function(a,b){}])}];
2
2
 
3
3
  //# sourceMappingURL=lib_0i8v-s3._.js.map
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
7
7
  "static/chunks/0cz1d0mv5g_q7.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/N9wokeIiC9rUIGmzBhj6T/_buildManifest.js",
11
- "static/N9wokeIiC9rUIGmzBhj6T/_ssgManifest.js",
12
- "static/N9wokeIiC9rUIGmzBhj6T/_clientMiddlewareManifest.js"
10
+ "static/ZGTiDrZ5NHGETgGdlhssu/_buildManifest.js",
11
+ "static/ZGTiDrZ5NHGETgGdlhssu/_ssgManifest.js",
12
+ "static/ZGTiDrZ5NHGETgGdlhssu/_clientMiddlewareManifest.js"
13
13
  ],
14
14
  "rootMainFiles": [
15
15
  "static/chunks/310vm2bl3xxpt.js",
@@ -19,11 +19,11 @@
19
19
  "wasm": [],
20
20
  "assets": [],
21
21
  "env": {
22
- "__NEXT_BUILD_ID": "N9wokeIiC9rUIGmzBhj6T",
23
- "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "nCIdlD/aNw1RJ4CdQWLf0QzjHVi2cjmj//iJRPeFU8g=",
24
- "__NEXT_PREVIEW_MODE_ID": "21a5aed1053551186c83f36fb6664101",
25
- "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "bb49920faccb353bf41ccc625c0435b2150efb17318e84dbe0580a9711926ffd",
26
- "__NEXT_PREVIEW_MODE_SIGNING_KEY": "757ff71b451c875f40d41825a35240c7cfabbdd4bf0332286133e778c5269f07"
22
+ "__NEXT_BUILD_ID": "ZGTiDrZ5NHGETgGdlhssu",
23
+ "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "/1fKobjd5XD407MnaCGcjEISDOt/rCQNFhDPFcBkz+8=",
24
+ "__NEXT_PREVIEW_MODE_ID": "41acd1108c5a0650f00db9e9f873206f",
25
+ "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "a213c619fcddf90d9b0a02012b32faf774712e7898255bebb0f2d886aed9bae5",
26
+ "__NEXT_PREVIEW_MODE_SIGNING_KEY": "926e5c03e39aa46ff1945b99c87b14831210a3a810d2ddbc0e2195f305cdcbc1"
27
27
  }
28
28
  }
29
29
  },
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en" class="geist_2ae47f08-module__h69qWW__variable geist_mono_eb58308d-module__w_p2Lq__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/40nvbgfn7-072.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/310vm2bl3xxpt.js"/><script src="/_next/static/chunks/19mx3mg6lkumu.js" async=""></script><script src="/_next/static/chunks/0bma92pht_c97.js" async=""></script><script src="/_next/static/chunks/2-rtuqsgzmno4.js" async=""></script><script src="/_next/static/chunks/turbopack-43vu1xwipchft.js" async=""></script><script src="/_next/static/chunks/3pfyuezyqd9ob.js" async=""></script><meta name="robots" content="noindex"/><title>6 Degrees of Separation — LinkedIn Network Research</title><meta name="description" content="Visualizing the six degrees of separation hypothesis through LinkedIn connection analysis. A certified research project mapping power networks."/><link rel="icon" href="/favicon.ico?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body style="margin:0;padding:0;background:#0a0a1a"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/310vm2bl3xxpt.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[15812,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"default\"]\n3:I[39756,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"default\"]\n5:I[37711,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"default\"]\n6:I[97367,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\na:I[97367,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"ViewportBoundary\"]\nc:I[97367,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"MetadataBoundary\"]\ne:I[68027,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/40nvbgfn7-072.css\",\"style\"]\n9:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/40nvbgfn7-072.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/3pfyuezyqd9ob.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_2ae47f08-module__h69qWW__variable geist_mono_eb58308d-module__w_p2Lq__variable\",\"children\":[\"$\",\"body\",null,{\"style\":{\"margin\":0,\"padding\":0,\"background\":\"#0a0a1a\"},\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L5\",null,{}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,\"$9\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/40nvbgfn7-072.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"N9wokeIiC9rUIGmzBhj6T\"}\n9:C\nb:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nf:I[27201,[\"/_next/static/chunks/3pfyuezyqd9ob.js\"],\"IconMark\"]\n8:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"6 Degrees of Separation — LinkedIn Network Research\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Visualizing the six degrees of separation hypothesis through LinkedIn connection analysis. A certified research project mapping power networks.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Lf\",\"3\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en" class="geist_2ae47f08-module__h69qWW__variable geist_mono_eb58308d-module__w_p2Lq__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/40nvbgfn7-072.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/310vm2bl3xxpt.js"/><script src="/_next/static/chunks/19mx3mg6lkumu.js" async=""></script><script src="/_next/static/chunks/0bma92pht_c97.js" async=""></script><script src="/_next/static/chunks/2-rtuqsgzmno4.js" async=""></script><script src="/_next/static/chunks/turbopack-43vu1xwipchft.js" async=""></script><script src="/_next/static/chunks/2spwqs6b6dx13.js" async=""></script><meta name="robots" content="noindex"/><title>Six Degrees</title><meta name="description" content="Maps your LinkedIn network: who you know, who they know, and the shortest path to someone you haven&#x27;t met. Runs on your own computer; nothing is uploaded."/><link rel="icon" href="/favicon.ico?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body style="margin:0;padding:0;background:#0a0a1a"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/310vm2bl3xxpt.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[15812,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"default\"]\n3:I[39756,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"default\"]\n5:I[37711,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"default\"]\n6:I[97367,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\na:I[97367,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"ViewportBoundary\"]\nc:I[97367,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"MetadataBoundary\"]\ne:I[68027,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/40nvbgfn7-072.css\",\"style\"]\n9:X\n0:{\"P\":null,\"c\":[\"\",\"_not-found\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4608]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/40nvbgfn7-072.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/2spwqs6b6dx13.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geist_2ae47f08-module__h69qWW__variable geist_mono_eb58308d-module__w_p2Lq__variable\",\"children\":[\"$\",\"body\",null,{\"style\":{\"margin\":0,\"padding\":0,\"background\":\"#0a0a1a\"},\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L5\",null,{}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:0:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,\"$9\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Ld\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/40nvbgfn7-072.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"ZGTiDrZ5NHGETgGdlhssu\"}\n9:C\nb:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nf:I[27201,[\"/_next/static/chunks/2spwqs6b6dx13.js\"],\"IconMark\"]\n8:null\nd:[[\"$\",\"title\",\"0\",{\"children\":\"Six Degrees\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Maps your LinkedIn network: who you know, who they know, and the shortest path to someone you haven't met. Runs on your own computer; nothing is uploaded.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Lf\",\"3\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/310vm2bl3xxpt.js"/><script src="/_next/static/chunks/19mx3mg6lkumu.js" async=""></script><script src="/_next/static/chunks/0bma92pht_c97.js" async=""></script><script src="/_next/static/chunks/2-rtuqsgzmno4.js" async=""></script><script src="/_next/static/chunks/turbopack-43vu1xwipchft.js" async=""></script><script src="/_next/static/chunks/3fntmmi971322.js" async=""></script><link rel="icon" href="/favicon.ico?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/310vm2bl3xxpt.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\",1]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"N9wokeIiC9rUIGmzBhj6T\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nd:I[27201,[\"/_next/static/chunks/3fntmmi971322.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Ld\",\"1\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/310vm2bl3xxpt.js"/><script src="/_next/static/chunks/19mx3mg6lkumu.js" async=""></script><script src="/_next/static/chunks/0bma92pht_c97.js" async=""></script><script src="/_next/static/chunks/2-rtuqsgzmno4.js" async=""></script><script src="/_next/static/chunks/turbopack-43vu1xwipchft.js" async=""></script><script src="/_next/static/chunks/3fntmmi971322.js" async=""></script><link rel="icon" href="/favicon.ico?favicon.2vob68tjqpejf.ico" sizes="256x256" type="image/x-icon"/><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/0cz1d0mv5g_q7.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/310vm2bl3xxpt.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/3fntmmi971322.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/3fntmmi971322.js\"],\"default\",1]\n7:X\n0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4624]},\"$undefined\",\"$undefined\",4624],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"ZGTiDrZ5NHGETgGdlhssu\"}\n7:C\n9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\nd:I[27201,[\"/_next/static/chunks/3fntmmi971322.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.2vob68tjqpejf.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Ld\",\"1\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"nCIdlD/aNw1RJ4CdQWLf0QzjHVi2cjmj//iJRPeFU8g=\"\n}"
1
+ self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"/1fKobjd5XD407MnaCGcjEISDOt/rCQNFhDPFcBkz+8=\"\n}"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "node": {},
3
3
  "edge": {},
4
- "encryptionKey": "nCIdlD/aNw1RJ4CdQWLf0QzjHVi2cjmj//iJRPeFU8g="
4
+ "encryptionKey": "/1fKobjd5XD407MnaCGcjEISDOt/rCQNFhDPFcBkz+8="
5
5
  }
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2776,e=>{"use strict";var t=e.i(43476),r=e.i(15812);e.s(["default",0,function({children:e}){let{userId:n,ready:o}=(0,r.useUser)();return o&&n?e:(0,t.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff",padding:24,textAlign:"center",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:o?(0,t.jsxs)("div",{style:{maxWidth:420},children:[(0,t.jsx)("div",{style:{fontSize:18,fontWeight:700,marginBottom:8},children:"Can’t reach 6 Degrees’ local server"}),(0,t.jsx)("div",{style:{color:"#888",fontSize:14,lineHeight:1.6},children:"The page loaded but the app behind it is not answering. If you started it from a terminal, check that window for an error, then reload this page."})]}):(0,t.jsx)("div",{style:{fontSize:18,fontWeight:600},children:"Loading…"})})}])},99201,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(19821),o=e.i(5258);let i={height:10,borderRadius:6},l={background:"rgba(52,152,219,0.06)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(52,152,219,0.2)"};function s({degree1:e=[],degree2:r=[],skips:n=[]}){let d=function(e=[],t=[],r=[]){let n=new Set(t.map(e=>e.source_connection_id).filter(Boolean)),o=new Set(r.map(e=>e.profileUrl).filter(Boolean)),i=e=>n.has(e.id)?"mapped":e.profile_url&&o.has(e.profile_url)?"hidden":"todo",l={mapped:0,hidden:0,todo:0},s={};for(let t of e){let e=i(t);l[e]+=1;let r=t.tier||"D";s[r]=s[r]||{mapped:0,hidden:0,todo:0,total:0},s[r][e]+=1,s[r].total+=1}let a=e.length,d=l.mapped+l.hidden;return{...l,total:a,resolved:d,percent:a?Math.round(d/a*100):0,batches:Math.ceil(l.todo/25),byTier:s}}(e,r,n);if(!d.total)return null;let c=e=>d.total?e/d.total*100:0,u=0===d.todo;return(0,t.jsxs)("div",{style:l,children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",marginBottom:10},children:[(0,t.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0,color:"#3498DB"},children:"2nd-degree mapping"}),(0,t.jsx)("span",{style:{fontSize:12,color:u?"#00ff88":"#8b9a9a",fontWeight:600},children:u?"Everything reachable is mapped":`${d.percent}%`})]}),(0,t.jsxs)("div",{style:{...i,display:"flex",overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:[(0,t.jsx)("div",{style:{width:`${c(d.mapped)}%`,background:"#00ff88"}}),(0,t.jsx)("div",{style:{width:`${c(d.hidden)}%`,background:"rgba(255,255,255,0.22)"}})]}),(0,t.jsxs)("div",{style:{display:"flex",gap:16,marginTop:10,fontSize:12,flexWrap:"wrap"},children:[(0,t.jsx)(a,{color:"#00ff88",label:"mapped",value:d.mapped}),(0,t.jsx)(a,{color:"rgba(255,255,255,0.35)",label:"hidden",value:d.hidden}),(0,t.jsx)(a,{color:"rgba(255,255,255,0.12)",label:"to go",value:d.todo}),(0,t.jsxs)("span",{style:{color:"#667",marginLeft:"auto"},children:["of ",d.total]})]}),d.hidden>0&&(0,t.jsx)("p",{style:{fontSize:11.5,color:"#667",margin:"10px 0 0",lineHeight:1.6},children:"Hidden means they keep their connections private — that will not change, and it does not count against you."}),!u&&(0,t.jsxs)("p",{style:{fontSize:11.5,color:"#8b9a9a",margin:"10px 0 0",lineHeight:1.6},children:[d.todo," left — about ",(0,t.jsxs)("b",{children:[d.batches," ",1===d.batches?"batch":"batches"]})," of ",25,". Run one, leave it a while, run another. Long unbroken runs are what gets an account restricted."]}),(0,t.jsx)("div",{style:{marginTop:16,display:"flex",flexDirection:"column",gap:7},children:["S","A","B","C","D"].filter(e=>d.byTier[e]?.total).map(e=>{let r=d.byTier[e];return(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,fontSize:11},children:[(0,t.jsx)("span",{style:{width:14,color:o.TIER_COLORS_CLASSIC[e],fontWeight:700},children:e}),(0,t.jsxs)("div",{style:{flex:1,height:5,borderRadius:3,display:"flex",overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:[(0,t.jsx)("div",{style:{width:`${r.mapped/r.total*100}%`,background:o.TIER_COLORS_CLASSIC[e]}}),(0,t.jsx)("div",{style:{width:`${r.hidden/r.total*100}%`,background:"rgba(255,255,255,0.22)"}})]}),(0,t.jsxs)("span",{style:{color:"#667",width:62,textAlign:"right"},children:[r.mapped,"/",r.total]})]},e)})})]})}function a({color:e,label:r,value:n}){return(0,t.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:6,color:"#8b9a9a"},children:[(0,t.jsx)("span",{style:{width:8,height:8,borderRadius:2,background:e}}),(0,t.jsx)("b",{style:{color:"#e2e8f0"},children:n})," ",r]})}var d=e.i(64745),c=e.i(2776),u=e.i(15812),f=e.i(22016);let g={1:"Observer",11:"Connector",31:"Networker",51:"Strategist",76:"Architect"};function h(){let{userId:e,userName:o,userProfile:i}=(0,u.useUser)(),l=i||{name:o||"User",headline:"",sectors:[],goals:[]},[a,c]=(0,r.useState)(null),[h,y]=(0,r.useState)(!0),[x,b]=(0,r.useState)([]),[m,j]=(0,r.useState)({total:0,sent:0,accepted:0}),[v,S]=(0,r.useState)({degree1:[],degree2:[],skips:[]});if((0,r.useEffect)(()=>{!d.IS_DEMO&&e&&t();async function t(){let t=await (0,n.loadNetwork)(e),r=t.degree1,o=t.degree2,i={S:0,A:0,B:0,C:0,D:0};r.forEach(e=>{i[e.tier]=(i[e.tier]||0)+1});let l={S:0,A:0,B:0,C:0,D:0};o.forEach(e=>{l[e.tier]=(l[e.tier]||0)+1});let s=[...new Set(o.map(e=>e.source_connection_id).filter(Boolean))].length,a=r.filter(e=>e.is_catalyst).length,d={};r.forEach(e=>{e.company&&(d[e.company]=(d[e.company]||0)+1)});let u=Object.entries(d).sort((e,t)=>t[1]-e[1]).slice(0,10),f=100*i.S+40*i.A+15*i.B+5*i.C+ +i.D+200*s+150*a+50*l.S+r.length,g=Math.floor(Math.sqrt(f/10)),h=g*g*10,p=(g+1)*(g+1)*10;c({d1Count:r.length,d2Count:o.length,tiers:i,d2Tiers:l,clusters:s,catalysts:a,networkPower:f,level:g,xpProgress:(f-h)/(p-h)*100,topCompanies:u,unlockedPaths:0}),fetch("/api/scraper").then(e=>e.json()).then(e=>S({degree1:r,degree2:o,skips:e.skips||[]})).catch(()=>S({degree1:r,degree2:o,skips:[]})),fetch(`/api/notifications?userId=${e}`).then(e=>e.json()).then(e=>b(e.notifications||[])).catch(()=>{}),fetch("/api/queue").then(e=>e.json()).then(e=>{let t=e.items||[];j({total:t.length,sent:t.filter(e=>"sent"===e.status).length,accepted:t.filter(e=>"accepted"===e.status).length})}).catch(()=>{}),y(!1)}},[e]),d.IS_DEMO)return(0,t.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,textAlign:"center",padding:24,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[(0,t.jsx)("h2",{style:{margin:0,fontSize:20,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,t.jsx)("p",{style:{margin:0,fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,t.jsx)(f.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]});if(h)return(0,t.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading profile..."});let C={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},k=[{label:"First S-Tier",done:a.tiers.S>0,icon:"👑"},{label:"100 Connections",done:a.d1Count>=100,icon:"🔗"},{label:"500 Connections",done:a.d1Count>=500,icon:"🌐"},{label:"First Cluster",done:a.clusters>0,icon:"🔭"},{label:"10 Clusters",done:a.clusters>=10,icon:"🏰"},{label:"50 S-Tier",done:a.tiers.S>=50,icon:"💎"},{label:"Catalyst Found",done:a.catalysts>0,icon:"⚡"},{label:"Level 25",done:a.level>=25,icon:"🎯"},{label:"Level 50",done:a.level>=50,icon:"🚀"},{label:"D2 S-Tier > 50",done:a.d2Tiers.S>=50,icon:"🌟"}];return(0,t.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,t.jsxs)("header",{style:{padding:"16px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",display:"flex",alignItems:"center",gap:16},children:[(0,t.jsxs)(f.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,t.jsx)("span",{style:{fontSize:16},children:"←"})," Back to Map"]}),(0,t.jsx)("h1",{style:{fontSize:22,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Profile"})]}),(0,t.jsx)("div",{style:{flex:1,overflow:"auto",padding:"30px 20px"},children:(0,t.jsxs)("div",{style:{maxWidth:700,margin:"0 auto"},children:[(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.05)",borderRadius:16,padding:32,marginBottom:24,border:"1px solid rgba(255,215,0,0.2)",textAlign:"center"},children:[(0,t.jsx)("div",{style:{width:100,height:100,borderRadius:"50%",margin:"0 auto 16px",background:"linear-gradient(135deg, #FFD700, #FF6B35)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:36,fontWeight:800,color:"#000",boxShadow:"0 0 30px rgba(255,215,0,0.3)"},children:a.level}),(0,t.jsx)("div",{style:{fontSize:24,fontWeight:700,marginBottom:4},children:l.name}),(0,t.jsx)("div",{style:{fontSize:14,color:"#888",marginBottom:4},children:l.headline}),(0,t.jsx)("div",{style:{display:"inline-block",padding:"4px 16px",borderRadius:20,background:"rgba(255,215,0,0.15)",border:"1px solid rgba(255,215,0,0.3)",color:"#FFD700",fontSize:13,fontWeight:700,marginBottom:16},children:function(e){let t="Observer";for(let[r,n]of Object.entries(g))e>=parseInt(r)&&(t=n);return t}(a.level)}),(0,t.jsxs)("div",{style:{maxWidth:300,margin:"0 auto"},children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#666",marginBottom:4},children:[(0,t.jsxs)("span",{children:["Level ",a.level]}),(0,t.jsxs)("span",{children:["Level ",a.level+1]})]}),(0,t.jsx)("div",{style:{height:8,background:"rgba(255,255,255,0.1)",borderRadius:4},children:(0,t.jsx)("div",{style:{height:"100%",width:`${Math.min(a.xpProgress,100)}%`,background:"linear-gradient(90deg, #FFD700, #FF6B35)",borderRadius:4,transition:"width 1s ease"}})}),(0,t.jsxs)("div",{style:{fontSize:10,color:"#888",marginTop:4},children:["Network Power: ",a.networkPower.toLocaleString()]})]})]}),(0,t.jsx)(s,{degree1:v.degree1,degree2:v.degree2,skips:v.skips}),(0,t.jsxs)("div",{style:{background:"rgba(255,107,53,0.06)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,107,53,0.2)"},children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[(0,t.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0,color:"#FF6B35"},children:"Queue Progress"}),(0,t.jsx)(f.default,{href:"/queue",style:{fontSize:11,color:"#FF6B35",textDecoration:"none",fontWeight:600},children:"View Queue →"})]}),(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12},children:[(0,t.jsxs)("div",{style:{textAlign:"center"},children:[(0,t.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#FFA500"},children:m.total}),(0,t.jsx)("div",{style:{fontSize:10,color:"#888"},children:"In Queue"})]}),(0,t.jsxs)("div",{style:{textAlign:"center"},children:[(0,t.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#3498DB"},children:m.sent}),(0,t.jsx)("div",{style:{fontSize:10,color:"#888"},children:"Sent"})]}),(0,t.jsxs)("div",{style:{textAlign:"center"},children:[(0,t.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#00ff88"},children:m.accepted}),(0,t.jsx)("div",{style:{fontSize:10,color:"#888"},children:"Accepted"})]})]})]}),x.length>0&&(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,t.jsxs)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:["Recent Activity (",x.filter(e=>!e.seen).length," new)"]}),(0,t.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6,maxHeight:200,overflowY:"auto"},children:x.slice(0,10).map(e=>(0,t.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center",padding:"6px 8px",borderRadius:6,background:e.seen?"transparent":"rgba(255,215,0,0.05)",borderLeft:e.seen?"none":"2px solid #FFD700"},children:[(0,t.jsx)("span",{style:{fontSize:16},children:e.icon||"📌"}),(0,t.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,t.jsx)("div",{style:{fontSize:12,fontWeight:600,color:e.seen?"#888":"#fff"},children:e.title}),e.message&&(0,t.jsx)("div",{style:{fontSize:10,color:"#666"},children:e.message})]}),(0,t.jsx)("span",{style:{fontSize:9,color:"#555",flexShrink:0},children:new Date(e.created_at).toLocaleDateString()})]},e.id))})]}),(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12,marginBottom:24},children:[(0,t.jsx)(p,{label:"Connections",value:a.d1Count}),(0,t.jsx)(p,{label:"Degree-2 Reach",value:a.d2Count}),(0,t.jsx)(p,{label:"Clusters",value:a.clusters}),(0,t.jsx)(p,{label:"S-Tier",value:a.tiers.S,color:"#FFD700"}),(0,t.jsx)(p,{label:"A-Tier",value:a.tiers.A,color:"#9B59B6"}),(0,t.jsx)(p,{label:"Catalysts",value:a.catalysts,color:"#00ff88"})]}),(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,t.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Tier Distribution"}),["S","A","B","C","D"].map(e=>{let r=a.tiers[e]||0,n=a.d1Count>0?r/a.d1Count*100:0;return(0,t.jsxs)("div",{style:{marginBottom:8},children:[(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,marginBottom:2},children:[(0,t.jsxs)("span",{style:{color:C[e],fontWeight:600},children:[e,"-Tier"]}),(0,t.jsxs)("span",{style:{color:"#888"},children:[r," (",n.toFixed(1),"%)"]})]}),(0,t.jsx)("div",{style:{height:6,background:"rgba(255,255,255,0.08)",borderRadius:3},children:(0,t.jsx)("div",{style:{height:"100%",width:`${n}%`,background:C[e],borderRadius:3}})})]},e)})]}),(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,t.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Degree-2 Reach"}),(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{style:{fontSize:24,fontWeight:700,color:"#FF6B35"},children:a.d2Count}),(0,t.jsx)("div",{style:{fontSize:11,color:"#888"},children:"People reachable via bridges"})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{style:{fontSize:24,fontWeight:700,color:"#FFD700"},children:a.d2Tiers.S}),(0,t.jsx)("div",{style:{fontSize:11,color:"#888"},children:"S-Tier degree-2"})]})]})]}),(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,t.jsxs)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:["Milestones (",k.filter(e=>e.done).length,"/",k.length,")"]}),(0,t.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:k.map((e,r)=>(0,t.jsxs)("div",{style:{padding:"8px 10px",borderRadius:8,fontSize:12,background:e.done?"rgba(255,215,0,0.08)":"rgba(255,255,255,0.02)",border:`1px solid ${e.done?"rgba(255,215,0,0.2)":"rgba(255,255,255,0.05)"}`,color:e.done?"#FFD700":"#555",display:"flex",alignItems:"center",gap:6},children:[(0,t.jsx)("span",{style:{fontSize:16},children:e.done?e.icon:"🔒"}),(0,t.jsx)("span",{style:{fontWeight:e.done?600:400},children:e.label})]},r))})]}),(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,t.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Top Companies in Your Network"}),a.topCompanies.map(([e,r],n)=>(0,t.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",padding:"4px 0",borderBottom:n<a.topCompanies.length-1?"1px solid rgba(255,255,255,0.04)":"none",fontSize:12},children:[(0,t.jsx)("span",{children:e}),(0,t.jsx)("span",{style:{color:"#888"},children:r})]},n))]}),(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,t.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Your Sectors"}),(0,t.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:l.sectors.map((e,r)=>(0,t.jsx)("span",{style:{padding:"4px 12px",borderRadius:20,fontSize:11,fontWeight:600,background:"rgba(52,152,219,0.15)",border:"1px solid rgba(52,152,219,0.3)",color:"#3498DB"},children:e},r))})]})]})})]})}function p({label:e,value:r,color:n}){return(0,t.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:10,padding:"14px 12px",border:"1px solid rgba(255,255,255,0.08)",textAlign:"center"},children:[(0,t.jsx)("div",{style:{fontSize:22,fontWeight:700,color:n||"#fff"},children:r}),(0,t.jsx)("div",{style:{fontSize:10,color:"#888",marginTop:2},children:e})]})}e.s(["default",0,function(){return(0,t.jsx)(c.default,{children:(0,t.jsx)(h,{})})}],99201)},19821,e=>{"use strict";async function t(e){let t=e?`/api/network?userId=${encodeURIComponent(e)}`:"/api/network",r=await fetch(t);if(!r.ok)throw Error(`Failed to load network (${r.status})`);let n=await r.json();return{degree1:n.degree1||[],degree2:n.degree2||[],degree3:n.degree3||[]}}e.s(["loadNetwork",0,t])},5258,e=>{"use strict";e.s(["TIER_COLORS",0,{S:"#f6c344",A:"#a78bfa",B:"#60a5fa",C:"#94a3b8",D:"#6b7280"},"TIER_COLORS_CLASSIC",0,{S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},"TIER_ORDER",0,["S","A","B","C","D"],"TIER_RING_RADIUS",0,{S:150,A:230,B:310,C:390,D:470},"initialsFor",0,function(e){let t=String(e||"").trim().split(/\s+/).filter(Boolean);return 0===t.length?"?":(t[0].charAt(0)+(t.length>1?t[t.length-1].charAt(0):"")).toUpperCase()}])},22016,(e,t,r)=>{"use strict";e.i(47167),Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return x},useLinkStatus:function(){return m}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(90809),l=e.r(43476),s=i._(e.r(71645)),a=e.r(95057),d=e.r(8372),c=e.r(18581),u=e.r(18967),f=e.r(5550),g=e.r(88540),h=e.r(91949),p=e.r(73668),y=e.r(9396);function x(t){var r;let n,o,i,[x,m]=(0,s.useOptimistic)(h.IDLE_LINK_STATUS),j=(0,s.useRef)(null),{href:v,as:S,children:C,prefetch:k=null,passHref:B,replace:w,shallow:R,scroll:T,onClick:D,onMouseEnter:F,onTouchStart:_,legacyBehavior:z=!1,onNavigate:A,transitionTypes:E,ref:I,unstable_dynamicOnHover:P,...O}=t;n=C,z&&("string"==typeof n||"number"==typeof n)&&(n=(0,l.jsx)("a",{children:n}));let W=s.default.useContext(d.AppRouterContext),L=!1!==k,N=!1===k?"none":!0===k?"full":"auto",M="none"!==N?"auto"===N?y.FetchStrategy.PPR:y.FetchStrategy.Full:y.FetchStrategy.PPR,U="string"==typeof(r=S||v)?r:(0,a.formatUrl)(r);if(z){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});o=s.default.Children.only(n)}let $=z?o&&"object"==typeof o&&o.ref:I,K,H=s.default.useCallback(e=>(null!==W&&(j.current=(0,h.mountLinkInstance)(e,U,W,M,L,m,K)),()=>{j.current&&((0,h.unmountLinkForCurrentNavigation)(j.current),j.current=null),(0,h.unmountPrefetchableInstance)(e)}),[L,U,W,M,m,K]),Q={ref:(0,c.useMergedRef)(H,$),onClick(t){z||"function"!=typeof D||D(t),z&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(t),!W||t.defaultPrevented||function(t,r,n,o,i,l,a,d="none"){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,p.isLocalURL)(r)){o&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),l){let e=!1;if(l({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:f}=e.r(99781);s.default.startTransition(()=>{f(r,o?"replace":"push",!1===i?g.ScrollBehavior.NoScroll:g.ScrollBehavior.Default,n.current,a,d)})}}(t,U,j,w,T,A,E,N)},onMouseEnter(e){z||"function"!=typeof F||F(e),z&&o.props&&"function"==typeof o.props.onMouseEnter&&o.props.onMouseEnter(e),W&&L&&(0,h.onNavigationIntent)(e.currentTarget,!0===P)},onTouchStart:function(e){z||"function"!=typeof _||_(e),z&&o.props&&"function"==typeof o.props.onTouchStart&&o.props.onTouchStart(e),W&&L&&(0,h.onNavigationIntent)(e.currentTarget,!0===P)}};return(0,u.isAbsoluteUrl)(U)?Q.href=U:z&&!B&&("a"!==o.type||"href"in o.props)||(Q.href=(0,f.addBasePath)(U)),i=z?s.default.cloneElement(o,Q):(0,l.jsx)("a",{...O,...Q,children:n}),(0,l.jsx)(b.Provider,{value:x,children:i})}let b=(0,s.createContext)(h.IDLE_LINK_STATUS),m=()=>(0,s.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=e.r(71645);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=i(e,n)),t&&(o.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18967,(e,t,r)=>{"use strict";e.i(47167),Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return x},MiddlewareNotFoundError:function(){return v},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return m},SP:function(){return p},ST:function(){return y},WEB_VITALS:function(){return i},execOnce:function(){return l},getDisplayName:function(){return u},getLocationOrigin:function(){return d},getURL:function(){return c},isAbsoluteUrl:function(){return a},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return g},stringifyError:function(){return S}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function l(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let s=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,a=e=>{let t=e.charCodeAt(0);return!!(t>=65&&t<=90||t>=97&&t<=122)&&s.test(e)};function d(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=d();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function g(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let p="u">typeof performance,y=p&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class x extends Error{}class b extends Error{}class m extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class v extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function S(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return i}});let n=e.r(18967),o=e.r(52817);function i(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},98183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return a},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return s}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});function i(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function l(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,l(e));else t.set(r,l(n));return t}function a(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},95057,(e,t,r)=>{"use strict";e.i(47167),Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return s},formatWithValidation:function(){return d},urlObjectKeys:function(){return a}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(90809)._(e.r(98183)),l=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:r}=e,n=e.protocol||"",o=e.pathname||"",s=e.hash||"",a=e.query||"",d=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?d=t+e.host:r&&(d=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(d+=":"+e.port)),a&&"object"==typeof a&&(a=String(i.urlQueryToSearchParams(a)));let c=e.search||a&&`?${a}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||l.test(n))&&!1!==d?(d="//"+(d||""),o&&"/"!==o[0]&&(o="/"+o)):d||(d=""),s&&"#"!==s[0]&&(s="#"+s),c&&"?"!==c[0]&&(c="?"+c),o=o.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${d}${o}${c}${s}`}let a=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return s(e)}}]);
@@ -0,0 +1,2 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,2776,e=>{"use strict";var t=e.i(43476),n=e.i(15812);e.s(["default",0,function({children:e}){let{userId:r,ready:o}=(0,n.useUser)();return o&&r?e:(0,t.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff",padding:24,textAlign:"center",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:o?(0,t.jsxs)("div",{style:{maxWidth:420},children:[(0,t.jsx)("div",{style:{fontSize:18,fontWeight:700,marginBottom:8},children:"Can’t reach 6 Degrees’ local server"}),(0,t.jsx)("div",{style:{color:"#888",fontSize:14,lineHeight:1.6},children:"The page loaded but the app behind it is not answering. If you started it from a terminal, check that window for an error, then reload this page."})]}):(0,t.jsx)("div",{style:{fontSize:18,fontWeight:600},children:"Loading…"})})}])},68863,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(2776),o=e.i(22016),i=e.i(40996);let a="1px solid rgba(255,255,255,0.1)",s={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},l=[25,50,100,200,500],d=[100,250,500,1e3,0],c=e=>new Date(e).toLocaleDateString(void 0,{month:"short",day:"numeric"});function u({cooldown:e,onLift:r,disabled:o}){let[i,a]=(0,n.useState)(!1);return e?(0,t.jsxs)("div",{role:"status",style:{padding:"12px 14px",borderRadius:8,fontSize:13,lineHeight:1.6,background:"rgba(255,80,80,0.08)",border:"1px solid rgba(255,80,80,0.35)",color:"#f3c9c9"},children:[(0,t.jsxs)("b",{style:{color:"#ff8080"},children:["Scanning is paused until ",new Date(e.until).toLocaleString(void 0,{weekday:"short",month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}),"."]})," ",e.reason,". Nothing that searches LinkedIn will run until then, so the account can recover.",(0,t.jsx)("div",{style:{marginTop:8,display:"flex",gap:8,alignItems:"center",flexWrap:"wrap"},children:i?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{style:{fontSize:12.5},children:"Only if people search works normally for you on linkedin.com right now."}),(0,t.jsx)("button",{onClick:()=>{a(!1),r()},style:{...y,color:"#ff8080"},children:"Yes, lift it"}),(0,t.jsx)("button",{onClick:()=>a(!1),style:y,children:"Keep it"})]}):(0,t.jsx)("button",{onClick:()=>a(!0),disabled:o,style:y,children:"Lift it early…"})})]}):null}function h({used:e,cap:n}){let r=n?Math.min(100,Math.round(e/n*100)):0;return(0,t.jsx)("div",{style:{height:5,borderRadius:3,background:"rgba(255,255,255,0.07)",overflow:"hidden",marginTop:4},children:(0,t.jsx)("div",{style:{height:"100%",width:`${r}%`,background:r>=100?"#ff6b6b":r>=75?"#FFD700":"#3498DB"}})})}function p({li:e,onSetLimits:n,disabled:r}){if(!e)return null;let{limits:o}=e,i=e.unreadable?"?":e.searchesToday;return(0,t.jsxs)("div",{style:{padding:"12px 14px",borderRadius:8,border:a,background:"rgba(255,255,255,0.03)",fontSize:12.5,color:"#b8c4c4"},children:[(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(210px, 1fr))",gap:14},children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("b",{style:{color:"#fff"},children:i})," of ",o.daily||"no limit"," searches in the last 24 hours"]}),(0,t.jsx)(h,{used:e.searchesToday||0,cap:o.daily})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("b",{style:{color:"#fff"},children:e.searchesMonth})," of ",o.monthly||"no limit"," this month · resets ",c(e.monthResets)]}),(0,t.jsx)(h,{used:e.searchesMonth,cap:o.monthly})]})]}),(0,t.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap",marginTop:10},children:[(0,t.jsx)("span",{children:"Budget:"}),(0,t.jsx)("select",{value:o.daily,disabled:r,onChange:e=>n({daily:Number(e.target.value),monthly:o.monthly}),style:x,children:l.map(e=>(0,t.jsxs)("option",{value:e,children:[e," a day"]},e))}),(0,t.jsx)("select",{value:o.monthly,disabled:r,onChange:e=>n({daily:o.daily,monthly:Number(e.target.value)}),style:x,children:d.map(e=>(0,t.jsx)("option",{value:e,children:e?`${e} a month`:"no monthly cap (Premium)"},e))}),(0,t.jsxs)("span",{style:{color:"#778"},children:[e.profilesToday," profile views today"]})]}),(0,t.jsxs)("div",{style:{marginTop:8,color:"#778",lineHeight:1.6},children:["Every page of someone’s connections is one search. LinkedIn limits a free account’s people searches by the month (it doesn’t say how many; reports put it around 250–350), resetting on the 1st. When a budget is used, a scan saves what it read and stops; the next one carries on from the same page.",o.daily>100&&(0,t.jsxs)("b",{style:{color:"#FFD700"},children:[" ",o.daily," a day can use up a free account’s month in a day or two."]})]})]})}function f({paused:e=[],onResume:r,onResumeAll:o,disabled:i}){let[l,d]=(0,n.useState)(!1);if(!e.length)return null;let u=e.filter(e=>e.legacy).length,h=l?e:e.slice(0,8);return(0,t.jsxs)("div",{style:{borderRadius:8,border:a,background:"rgba(255,255,255,0.03)"},children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"10px 14px",borderBottom:a,flexWrap:"wrap"},children:[(0,t.jsxs)("div",{style:{flex:1,minWidth:200},children:[(0,t.jsxs)("b",{style:{fontSize:13.5},children:["Paused — ",e.length," ",1===e.length?"list":"lists"," with more to read"]}),(0,t.jsxs)("div",{style:{fontSize:12,color:"#8b9a9a",marginTop:2},children:["Each carries on from the page it stopped at",u?`; ${u} were read to page 10 before whole lists were read`:"","."]})]}),(0,t.jsx)("button",{onClick:o,disabled:i,style:{...g,opacity:i?.4:1,cursor:i?"not-allowed":"pointer",background:i?"rgba(255,255,255,0.06)":"linear-gradient(135deg, #3498DB, #9B59B6)"},children:"Resume all"})]}),(0,t.jsx)("div",{children:h.map(e=>(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 14px",borderBottom:"1px solid rgba(255,255,255,0.04)"},children:[(0,t.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:s[e.tier]||"#667",flexShrink:0}}),(0,t.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,t.jsx)("div",{style:{fontSize:13,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name}),(0,t.jsxs)("div",{style:{fontSize:11.5,color:"#8b9a9a"},children:["Read to page ",e.pagesRead," · carries on at ",e.nextPage,e.at?` \xb7 ${c(e.at)}`:"",e.unclear>=2?" · came back unclear twice, so it waits at the back of Resume all":""]})]}),(0,t.jsx)("button",{onClick:()=>r(e),disabled:i,style:{...g,padding:"6px 12px",fontSize:12,opacity:i?.4:1,cursor:i?"not-allowed":"pointer"},children:"Resume"})]},e.id))}),e.length>8&&(0,t.jsx)("button",{onClick:()=>d(!l),style:{...y,padding:"10px 14px"},children:l?"Show fewer":`Show all ${e.length}`})]})}let g={padding:"8px 14px",borderRadius:7,fontSize:13,fontWeight:700,cursor:"pointer",border:a,background:"rgba(255,255,255,0.08)",color:"#fff"},y={background:"none",border:"none",color:"#8fb8d6",cursor:"pointer",fontSize:12.5,fontWeight:600,padding:0},x={padding:"6px 8px",borderRadius:6,fontSize:12.5,fontWeight:600,background:"rgba(255,255,255,0.08)",color:"#fff",border:a},b="1px solid rgba(255,255,255,0.1)";function m(){let[e,r]=(0,n.useState)(null),[o,i]=(0,n.useState)(null),[a,s]=(0,n.useState)(null),[l,d]=(0,n.useState)(null),[c,u]=(0,n.useState)(null);async function h(e){s(e),d(null);try{let t=await fetch("/api/update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:e})}),n=await t.json();if(!t.ok){d(n.error||"Something went wrong."),n.dirty&&i({dirty:n.dirty});return}"check"===e?i(n):(u(n),i(null))}catch(e){d(e.message)}finally{s(null)}}return((0,n.useEffect)(()=>{fetch("/api/update").then(e=>e.json()).then(r).catch(()=>{})},[]),e)?e.installed?(0,t.jsx)(j,{local:e}):!1===e.supported?(0,t.jsxs)(v,{children:[(0,t.jsx)(S,{children:"Updates"}),(0,t.jsx)(C,{children:e.reason})]}):(0,t.jsxs)(v,{children:[(0,t.jsx)(S,{children:"Updates"}),c?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(C,{children:["Updated to ",(0,t.jsx)(T,{children:c.sha})," — “",c.subject,"”."]}),(0,t.jsx)(C,{style:{color:c.needsRestart?"#FFD700":void 0},children:c.needsRestart?"Stop the app in your terminal and start it again — this update changed how it starts.":"The page will pick up most changes on its own. Restart the app if anything looks odd."})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(C,{children:["You are on ",(0,t.jsx)(T,{children:e.sha})," — “",e.subject,"”."]}),o&&0===o.behind&&(0,t.jsx)(k,{ok:!0,children:"You’re up to date."}),o&&o.behind>0&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(C,{style:{color:"#00ff88"},children:[o.behind," update",1===o.behind?"":"s"," available."]}),(0,t.jsx)("pre",{style:w,children:o.commits.join("\n")})]}),o?.dirty?.length>0&&(0,t.jsxs)(C,{children:["Changed files here:"," ",(0,t.jsx)(T,{children:o.dirty.join(", ")}),". Commit or discard them first — this will not throw away your work."]}),(0,t.jsxs)("div",{style:{display:"flex",gap:10,marginTop:12,flexWrap:"wrap"},children:[(0,t.jsx)(I,{onClick:()=>h("check"),disabled:!!a,children:"check"===a?"Checking…":"Check for updates"}),o?.behind>0&&(0,t.jsx)(I,{onClick:()=>h("pull"),disabled:!!a,primary:!0,children:"pull"===a?"Updating…":`Install ${o.behind} update${1===o.behind?"":"s"}`})]})]}),l&&(0,t.jsx)(C,{style:{color:"#ff7676"},children:l}),(0,t.jsxs)(C,{style:{fontSize:12,color:"#667",marginTop:12},children:["Nothing is checked automatically and nothing about you is sent — this runs the same ",(0,t.jsx)(T,{children:"git fetch"})," and ",(0,t.jsx)(T,{children:"git pull"})," you would type yourself."]})]}):null}function j({local:e}){let[r,o]=(0,n.useState)(!1),[i,a]=(0,n.useState)(null),[s,l]=(0,n.useState)(null),[d,c]=(0,n.useState)(!1),[u,h]=(0,n.useState)(null);async function p(){o(!0),a(null),l(null);try{let e=await fetch("/api/update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"check-release"})}),t=await e.json();e.ok?(a(t),h(new Date)):l(t.error||"Could not check.")}catch(e){l(e.message)}finally{o(!1)}}async function f(){try{await navigator.clipboard.writeText(e.command),c(!0),setTimeout(()=>c(!1),1600)}catch{l("Could not copy — select the line and copy it by hand.")}}(0,n.useEffect)(()=>{"updates"!==new URLSearchParams(window.location.search).get("check")||(document.getElementById("updates")?.scrollIntoView({block:"center"}),p().then(()=>document.getElementById("updates")?.scrollIntoView({block:"end",behavior:"smooth"})),window.history.replaceState(null,"",window.location.pathname))},[]);let g="mac-app"===e.kind?"Paste this into Terminal. It closes this app, puts the new version in its place and opens it. Your network stays where it is.":"source"===e.kind?"Stop the app (Ctrl-C), then run this in the six-degrees folder. It fetches the newest code, builds it and starts it again. Your network stays where it is.":"Stop this copy first (Ctrl-C in the terminal it runs in), then run this to start the newest version. Your network stays where it is.";return(0,t.jsxs)(v,{children:[(0,t.jsx)(S,{children:"Updates"}),(0,t.jsxs)(C,{children:["You have version ",(0,t.jsx)(T,{children:e.version}),"."]}),i&&!i.latest&&(0,t.jsx)(k,{children:"No release has been published yet."}),i?.latest&&!i.newer&&(0,t.jsxs)(k,{ok:!0,children:["You’re up to date: ",i.latest.version," is the newest version.",u&&(0,t.jsxs)("span",{style:{color:"#8b9a9a"},children:[" Checked at ",u.toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}),"."]})]}),i?.newer&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(C,{style:{color:"#00ff88"},children:["Version ",i.latest.version," is available."]}),(0,t.jsx)(C,{children:g}),(0,t.jsx)("pre",{style:w,children:e.command}),(0,t.jsxs)("div",{style:{display:"flex",gap:10,marginTop:10,flexWrap:"wrap",alignItems:"center"},children:[(0,t.jsx)(I,{onClick:f,primary:!0,children:d?"Copied":"Copy"}),i.latest.url&&(0,t.jsx)("a",{href:i.latest.url,target:"_blank",rel:"noreferrer",style:{color:"#3498DB",fontSize:13.5},children:"What changed →"})]})]}),!i?.newer&&(0,t.jsx)("div",{style:{marginTop:12},children:(0,t.jsx)(I,{onClick:p,disabled:r,children:r?"Checking…":i?"Check again":"Check for updates"})}),s&&(0,t.jsx)(C,{style:{color:"#ff7676"},children:s}),(0,t.jsx)(C,{style:{fontSize:12,color:"#667",marginTop:12},children:"Nothing is checked automatically. The button asks GitHub for the newest version number and nothing about you is sent."})]})}let w={background:"rgba(0,0,0,0.45)",border:b,borderRadius:8,padding:12,margin:"8px 0 0",fontSize:12,lineHeight:1.7,color:"#b9c6c6",fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace",whiteSpace:"pre-wrap",maxHeight:180,overflow:"auto"};function v({children:e}){return(0,t.jsx)("div",{id:"updates",style:{marginTop:32,paddingTop:24,borderTop:b},children:e})}function k({children:e,ok:n}){return(0,t.jsxs)("div",{role:"status",style:{marginTop:10,padding:"10px 14px",borderRadius:8,fontSize:13.5,lineHeight:1.6,color:n?"#00ff88":"#e8e8ee",background:n?"rgba(0,255,136,0.08)":"rgba(255,255,255,0.05)",border:`1px solid ${n?"rgba(0,255,136,0.3)":"rgba(255,255,255,0.12)"}`},children:[n&&"✓ ",e]})}function S({children:e}){return(0,t.jsx)("div",{style:{fontSize:15.5,fontWeight:650,marginBottom:6},children:e})}function C({children:e,style:n}){return(0,t.jsx)("div",{style:{fontSize:13.5,color:"#8b9a9a",lineHeight:1.6,marginTop:4,...n},children:e})}function T({children:e}){return(0,t.jsx)("code",{style:{background:"rgba(255,255,255,0.08)",padding:"1px 5px",borderRadius:4},children:e})}function I({children:e,onClick:n,disabled:r,primary:o}){return(0,t.jsx)("button",{onClick:n,disabled:r,style:{padding:"9px 18px",borderRadius:7,fontSize:13.5,fontWeight:650,color:r?"#667":"#fff",border:b,background:r?"rgba(255,255,255,0.05)":o?"linear-gradient(135deg, #9B59B6, #3498DB)":"rgba(255,255,255,0.08)",cursor:r?"not-allowed":"pointer"},children:e})}let R="1px solid rgba(255,255,255,0.1)",B={install:"Installing the scanner",login:"Waiting for you to sign in",full:"Scanning your whole network",refresh:"Checking for new connections","auto-bridge":"Mapping 2nd-degree connections","auto-bridge-retry":"Mapping 2nd degree, hidden ones included",resume:"Carrying on with one paused list","resume-all":"Carrying on with every paused list"};function P(){let[e,r]=(0,n.useState)(null),[a,s]=(0,n.useState)(!1),[l,d]=(0,n.useState)(10),[c,h]=(0,n.useState)(["S","A"]),[g,y]=z("six-degrees-bridge-order","newest"),[x,b]=z("six-degrees-bridge-pages-v2",100),[j,w]=z("six-degrees-bridge-finish",!0),[v,k]=(0,n.useState)(null),S=(0,n.useRef)(null),C=(0,n.useCallback)(async()=>{try{let e=await fetch("/api/scraper");r(await e.json())}catch{r(e=>e||{ready:!1,checks:{},log:[]})}},[]);async function T(){k(null),await (0,i.stopScrape)().catch(e=>k(e.message)),C()}async function I(e,t={}){k(null),s(!0);try{let n=await fetch("/api/scraper",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:e,...t})}),r=await n.json();n.ok||k(r.error||"Could not start.")}catch(e){k(e.message)}finally{s(!1),C()}}(0,n.useEffect)(()=>{C();let e=setInterval(C,1500);return()=>clearInterval(e)},[C]),(0,n.useEffect)(()=>{S.current&&(S.current.scrollTop=S.current.scrollHeight)},[e?.log?.length]);let P=e?.checks||{},N=e?.running;e&&P.dependencies;let _=e&&!P.chrome,$=e&&!P.scriptsFound,A=e?.ready&&!N,U=e?.linkedin,H=!!U?.cooldown,K=A&&!H,J=e?.network||{first:0,second:0,third:0},Y=J.first,G=e&&!N&&null!=e.exitCode&&0!==e.exitCode,V=G?e.failure?.length?e.failure.join("\n"):[...e.log||[]].reverse().find(e=>!/^Stopped \(exit/.test(e)&&!/Warning|warnings\.warn/.test(e)):null;return(0,t.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[(0,t.jsxs)("header",{style:{padding:"16px 24px",borderBottom:R,display:"flex",alignItems:"center",gap:16},children:[(0,t.jsx)(o.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:R},children:"← Back to Map"}),(0,t.jsx)("h1",{style:{fontSize:22,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Scan your network"})]}),(0,t.jsxs)("div",{style:{maxWidth:720,margin:"0 auto",padding:"32px 24px 64px"},children:[(0,t.jsxs)("p",{style:{color:"#9aa",fontSize:15,lineHeight:1.6,marginTop:0},children:["This reads your own LinkedIn connections in a real Chrome window on this machine and saves them here. Nothing leaves your computer, and you will never be asked for your password — you sign in yourself, once.",!Y&&" Three steps and your galaxy appears; each one ticks itself off."]}),Y>0&&!N&&(0,t.jsx)(W,{children:(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:14,flexWrap:"wrap"},children:[(0,t.jsxs)("div",{style:{flex:1,minWidth:200},children:[(0,t.jsxs)("b",{children:[Y.toLocaleString()," connections"]}),J.second>0&&(0,t.jsxs)(t.Fragment,{children:[", plus ",J.second.toLocaleString()," people in their circles"]}),J.third>0&&(0,t.jsxs)(t.Fragment,{children:[" and ",J.third.toLocaleString()," from company scans"]}),"."," ",(0,t.jsx)("span",{style:{color:"#9aa"},children:"Your galaxy is ready."})]}),(0,t.jsx)(o.default,{href:"/",style:{padding:"9px 18px",borderRadius:7,fontSize:13.5,fontWeight:700,color:"#0a0a1a",textDecoration:"none",background:"linear-gradient(135deg, #FFD700, #FF6B35)"},children:"See your network →"})]})}),G&&(0,t.jsxs)(W,{tone:"bad",children:[(0,t.jsx)("b",{children:"The last run stopped before it finished."}),V&&(0,t.jsx)("div",{style:{marginTop:6,color:"#e8c4c4",whiteSpace:"pre-wrap",fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace",fontSize:12.5},children:V}),(0,t.jsx)("div",{style:{color:"#9aa",marginTop:6},children:"The full log is below."})]}),$&&(0,t.jsxs)(W,{tone:"bad",children:[(0,t.jsx)("b",{children:"Can’t find the scanner files."}),(0,t.jsx)("br",{}),(0,t.jsxs)("span",{style:{color:"#9aa"},children:["Expected ",(0,t.jsx)("code",{style:O,children:"scripts/scrape.py"})," next to the app. If you downloaded a zip, run the app from inside the project folder."]})]}),_&&(0,t.jsxs)(W,{tone:"bad",children:[(0,t.jsx)("b",{children:"Google Chrome isn’t installed."}),(0,t.jsx)("br",{}),(0,t.jsxs)("span",{style:{color:"#9aa"},children:["The scanner drives your real Chrome. Install it from"," ",(0,t.jsx)("a",{href:"https://www.google.com/chrome/",target:"_blank",rel:"noreferrer",style:{color:"#3498DB"},children:"google.com/chrome"}),", then reload this page."]})]}),(0,t.jsx)(F,{n:1,done:!!P.dependencies,title:"Install what the scanner needs",body:P.dependencies?"Installed.":P.python?"One-time, about a minute. Downloads the browser-automation packages.":"Python 3 was not found on this machine. Install it from python.org, then reload.",action:!P.dependencies&&P.python&&(0,t.jsx)(L,{onClick:()=>I("install"),disabled:a||N,children:N&&"install"===e.action?"Installing…":"Install"})}),(0,t.jsx)(F,{n:2,done:!!P.signedIn,title:"Sign into LinkedIn",body:P.signedIn?"Signed in on this machine. If LinkedIn ever asks for a security check, or a scan says you were signed out, open LinkedIn here and finish it by hand.":"Opens a Chrome window. Sign in with your email and password — “Continue with Google” cannot work here, because Google blocks its sign-in inside automated browsers.",action:P.dependencies&&(0,t.jsx)(L,{onClick:()=>I("login"),disabled:a||N,children:N&&"login"===e.action?"Waiting for you…":"Open LinkedIn"})}),(0,t.jsx)(F,{n:3,done:Y>0,title:"1st degree — the people you know",body:"The first scan walks your whole connections list, about a minute and a half for 750 people. After that, Check for new only looks at what has been added since.",action:(0,t.jsxs)("div",{style:{display:"flex",gap:10,flexWrap:"wrap"},children:[(0,t.jsx)(L,{onClick:()=>I("full"),disabled:!K,primary:!0,children:N&&"full"===e.action?"Scanning…":"Scan my whole network"}),(0,t.jsx)(L,{onClick:()=>I("refresh"),disabled:!K,children:N&&"refresh"===e.action?"Checking…":"Check for new"})]})}),(0,t.jsx)(F,{n:4,done:!1,title:"2nd degree — the people they know",body:(0,t.jsxs)(t.Fragment,{children:["This is what fills ",(0,t.jsx)("b",{children:"Degrees"})," and ",(0,t.jsx)("b",{children:"Outlink"}),": it opens each of your connections in turn and reads who ",(0,t.jsx)("i",{children:"they"})," know. Most people hide their connections — those are noted and never tried again.",(0,t.jsx)("br",{}),(0,t.jsx)("br",{}),"It is slow on purpose, about two minutes between each person, because this is the part LinkedIn notices. During development a real account was temporarily restricted after roughly ",(0,t.jsx)("b",{children:"19 people in one sitting"}),". Run a batch, leave it for a day, run another — and stop the moment LinkedIn mentions unusual activity. It always picks up where it left off: anyone still without a mapped circle, in the order you choose below — your newest connections first, or highest tier first. Each person’s list is read to the end, saving every 10 pages, and a read that is stopped carries on from the same page next time."]}),action:(0,t.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[(0,t.jsx)(u,{cooldown:U?.cooldown,disabled:a,onLift:()=>I("lift-cooldown")}),(0,t.jsx)(p,{li:U,disabled:a,onSetLimits:e=>I("set-limits",e)}),"score"===g&&(0,t.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap"},children:[(0,t.jsx)("span",{style:{fontSize:12,color:"#8b9a9a"},children:"Work through"}),["S","A","B","C","D"].map(e=>{let n=c.includes(e);return(0,t.jsx)("button",{onClick:()=>h(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e]),disabled:N,style:{width:30,height:28,borderRadius:7,fontSize:12,fontWeight:700,cursor:N?"not-allowed":"pointer",border:R,background:n?"rgba(52,152,219,0.22)":"rgba(255,255,255,0.05)",color:n?"#cfe6f7":"#667"},children:e},e)}),(0,t.jsx)("span",{style:{fontSize:11.5,color:"#667"},children:c.length?"":"pick at least one"})]}),"newest"===g&&(0,t.jsxs)("div",{style:{fontSize:12,color:"#8b9a9a",lineHeight:1.6},children:["Goes by the date you connected, newest first, across every tier. Run"," ",(0,t.jsx)("b",{children:"Check for new"})," first so your latest connections are in the list."]}),(0,t.jsxs)("div",{style:{display:"flex",gap:10,flexWrap:"wrap",alignItems:"center"},children:[(0,t.jsx)("span",{style:{fontSize:12,color:"#8b9a9a"},children:"Start with"}),(0,t.jsxs)("select",{value:g,onChange:e=>y(e.target.value),disabled:N,style:E,children:[(0,t.jsx)("option",{value:"newest",children:"Newest connections first"}),(0,t.jsx)("option",{value:"score",children:"Highest tier first"})]}),(0,t.jsx)("span",{style:{fontSize:12,color:"#8b9a9a"},children:"Read up to"}),(0,t.jsxs)("select",{value:x,onChange:e=>b(Number(e.target.value)),disabled:N,style:E,children:[(0,t.jsx)("option",{value:100,children:"every page, to the end of their list"}),(0,t.jsx)("option",{value:50,children:"50 pages each"}),(0,t.jsx)("option",{value:25,children:"25 pages each"}),(0,t.jsx)("option",{value:10,children:"10 pages (~100 people) each"})]})]}),(0,t.jsxs)("label",{style:{display:"flex",gap:8,alignItems:"center",fontSize:12.5,color:"#cfd8d8",cursor:N?"not-allowed":"pointer"},children:[(0,t.jsx)("input",{type:"checkbox",checked:j,onChange:e=>w(e.target.checked),disabled:N}),"Also finish people already mapped, from the page each one stopped at"]}),(0,t.jsxs)("div",{style:{fontSize:12,color:"#FFD700",lineHeight:1.6},children:["Every page is a LinkedIn search, so it rests 20 seconds before each one and a minute after every 10, and a long list can take"," ",x>=100?"about 55 minutes a person":`about ${Math.max(5,Math.round(.55*x))} minutes a person`,". LinkedIn shows 100 pages of anyone’s connections at most. Free accounts have a monthly search limit: if LinkedIn says it has been reached, the scan saves what it read and stops, and carries on from that page next time. Keep batches small."]}),(0,t.jsxs)("div",{style:{display:"flex",gap:10,flexWrap:"wrap",alignItems:"center"},children:[(0,t.jsx)(L,{onClick:()=>I("auto-bridge",{maxBridges:l,tiers:"score"===g?c:[],order:g,maxPages:x,deeper:j}),disabled:!K||"score"===g&&!c.length,primary:!0,children:N&&"auto-bridge"===e.action?"Mapping…":"Map 2nd degree"}),(0,t.jsxs)("select",{value:l,onChange:e=>d(Number(e.target.value)),disabled:N,style:E,children:[(0,t.jsx)("option",{value:5,children:"5 people"}),(0,t.jsx)("option",{value:10,children:"10 people"}),(0,t.jsx)("option",{value:25,children:"25 people"}),(0,t.jsx)("option",{value:0,children:"everyone — not advised"})]}),(0,t.jsx)(L,{onClick:()=>I("auto-bridge-retry",{maxBridges:l,tiers:"score"===g?c:[],order:g,maxPages:x,deeper:j}),disabled:!K||"score"===g&&!c.length,children:"Retry hidden ones"})]}),(0,t.jsx)(f,{paused:e?.paused||[],disabled:!K,onResume:e=>I("resume",{id:e.id}),onResumeAll:()=>I("resume-all",{maxBridges:l})})]})}),N&&(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,marginTop:20,padding:"14px 16px",borderRadius:8,background:"rgba(255,255,255,0.05)",border:R},children:[(0,t.jsx)(M,{}),(0,t.jsxs)("div",{style:{flex:1,fontSize:13.5},children:[(0,t.jsx)("b",{children:B[e.action]||"Working"}),e.progress&&(0,t.jsx)(D,{p:e.progress,action:e.action}),(0,t.jsx)("div",{style:{color:"#8b9a9a",fontSize:12.5,marginTop:2},children:"Stopping closes the browser cleanly and keeps everything found so far."})]}),(0,t.jsx)(L,{onClick:T,tone:"bad",children:"Stop"})]}),v&&(0,t.jsx)(W,{tone:"bad",children:v}),e?.log?.length>0&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,margin:"28px 0 8px",fontSize:12,color:"#788",textTransform:"uppercase",letterSpacing:.6},children:[N&&(0,t.jsx)(M,{}),N?"Working":"Last run"]}),(0,t.jsx)("pre",{ref:S,style:{background:"rgba(0,0,0,0.45)",border:R,borderRadius:8,padding:14,maxHeight:280,overflow:"auto",margin:0,fontSize:12.5,lineHeight:1.7,color:"#b9c6c6",fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:e.log.join("\n")})]}),(0,t.jsx)(m,{}),(0,t.jsxs)("p",{style:{color:"#667",fontSize:12.5,lineHeight:1.7,marginTop:32},children:["Automating LinkedIn may go against its User Agreement, and accounts have been restricted for it. This runs locally against your own account, at your own risk. LinkedIn’s own CSV export is the supported route and needs none of this —"," ",(0,t.jsx)(o.default,{href:"/import",style:{color:"#3498DB"},children:"import a CSV instead"}),"."]})]}),(0,t.jsx)("style",{children:`@keyframes spin { to { transform: rotate(360deg) } }
2
+ @keyframes slide { 0% { transform: translateX(-100%) } 100% { transform: translateX(300%) } }`})]})}function z(e,t){let[r,o]=(0,n.useState)(t);return(0,n.useEffect)(()=>{try{let t=localStorage.getItem(e);null!==t&&o(JSON.parse(t))}catch{}},[e]),[r,t=>{o(t);try{localStorage.setItem(e,JSON.stringify(t))}catch{}}]}let O={background:"rgba(255,255,255,0.08)",padding:"1px 5px",borderRadius:4},E={padding:"9px 10px",borderRadius:7,fontSize:13.5,fontWeight:600,background:"rgba(255,255,255,0.08)",color:"#fff",border:R};function F({n:e,done:n,title:r,body:o,action:i}){return(0,t.jsxs)("div",{style:{display:"flex",gap:16,padding:"20px 0",borderBottom:R,alignItems:"flex-start"},children:[(0,t.jsx)("div",{style:{flexShrink:0,width:28,height:28,borderRadius:"50%",display:"grid",placeItems:"center",fontSize:13,fontWeight:700,background:n?"rgba(0,255,136,0.15)":"rgba(255,255,255,0.08)",color:n?"#00ff88":"#889",border:`1px solid ${n?"rgba(0,255,136,0.4)":"rgba(255,255,255,0.14)"}`},children:n?"✓":e}),(0,t.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,t.jsx)("div",{style:{fontSize:15.5,fontWeight:650,marginBottom:4},children:r}),(0,t.jsx)("div",{style:{fontSize:13.5,color:"#8b9a9a",lineHeight:1.6,marginBottom:12*!!i},children:o}),i]})]})}function L({children:e,onClick:n,disabled:r,primary:o,tone:i}){return(0,t.jsx)("button",{onClick:n,disabled:r,style:{padding:"9px 18px",borderRadius:7,fontSize:13.5,fontWeight:650,color:r?"#667":"#fff",background:r?"rgba(255,255,255,0.05)":"bad"===i?"rgba(255,80,80,0.15)":o?"linear-gradient(135deg, #9B59B6, #3498DB)":"rgba(255,255,255,0.08)",border:R,cursor:r?"not-allowed":"pointer"},children:e})}function W({children:e,tone:n}){return(0,t.jsx)("div",{style:{margin:"16px 0",padding:"14px 16px",borderRadius:8,fontSize:13.5,lineHeight:1.6,background:"bad"===n?"rgba(255,80,80,0.08)":"rgba(255,255,255,0.05)",border:`1px solid ${"bad"===n?"rgba(255,80,80,0.3)":"rgba(255,255,255,0.12)"}`},children:e})}function D({p:e,action:n}){let r;if("saving"===e.kind)return(0,t.jsxs)("div",{style:{margin:"8px 0 6px"},children:[(0,t.jsx)("div",{role:"progressbar","aria-label":"Saving",style:{height:8,borderRadius:4,overflow:"hidden",background:"rgba(255,255,255,0.08)",marginBottom:6},children:(0,t.jsx)("div",{style:{width:"35%",height:"100%",borderRadius:4,background:"linear-gradient(90deg, #9B59B6, #3498DB)",animation:"slide 1.2s ease-in-out infinite"}})}),(0,t.jsx)("div",{style:{fontSize:12.5,color:"#cfe6f7"},children:"Saving to your network and fetching photos — this can take a minute or two."})]});let o=Math.max(0,Math.min(100,Math.round(e.done/e.total*100)));return r="batch"===e.kind?`Person ${e.current} of ${e.total}`:"refresh"===n?`Looked at ${e.done.toLocaleString()} so far — stops once it reaches people already saved`:`${e.done.toLocaleString()} of ${e.total.toLocaleString()} connections \xb7 ${o}%`,(0,t.jsxs)("div",{style:{margin:"8px 0 6px"},children:["refresh"!==n&&(0,t.jsx)("div",{role:"progressbar","aria-valuemin":0,"aria-valuemax":e.total,"aria-valuenow":e.done,"aria-label":r,style:{height:8,borderRadius:4,overflow:"hidden",background:"rgba(255,255,255,0.08)",marginBottom:6},children:(0,t.jsx)("div",{style:{width:`${o}%`,height:"100%",borderRadius:4,background:"linear-gradient(90deg, #9B59B6, #3498DB)",transition:"width 0.6s ease"}})}),(0,t.jsx)("div",{style:{fontSize:12.5,color:"#cfe6f7"},children:r})]})}function M(){return(0,t.jsx)("span",{style:{width:11,height:11,borderRadius:"50%",display:"inline-block",border:"2px solid rgba(255,255,255,0.2)",borderTopColor:"#3498DB",animation:"spin 0.8s linear infinite"}})}e.s(["default",0,function(){return(0,t.jsx)(r.default,{children:(0,t.jsx)(P,{})})}],68863)},40996,e=>{"use strict";async function t(){let e=await fetch("/api/scraper");if(!e.ok)throw Error("Could not reach the app.");return e.json()}async function n(e,t,r={}){let o=await fetch("/api/scraper",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:e,...t?{name:t}:{},...r})}),i=await o.json().catch(()=>({}));if(!o.ok)throw Error(i.error||"Could not start the scanner.");return i}async function r(){await fetch("/api/scraper",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"cancel"})})}e.s(["notReadyMessage",0,function(e){return e?e.checks?.scriptsFound?e.checks?.python?e.checks?.dependencies?e.checks?.chrome?null:"Google Chrome is not installed.":"The scanner is not installed yet — open Scan to set it up.":"Python 3 is not installed on this machine.":"The scanner files are missing from this install.":"Could not reach the app."},"runScrape",0,function(e,{name:r,onLog:o,...i}={}){return new Promise((a,s)=>{n(e,r,i).then(()=>{let e=setInterval(async()=>{try{let n=await t();o?.(n.log||[]),n.running||(clearInterval(e),a(n))}catch{}},1500)}).catch(s)})},"scraperStatus",0,t,"startScrape",0,n,"stopScrape",0,r])},22016,(e,t,n)=>{"use strict";e.i(47167),Object.defineProperty(n,"__esModule",{value:!0});var r={default:function(){return x},useLinkStatus:function(){return m}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let i=e.r(90809),a=e.r(43476),s=i._(e.r(71645)),l=e.r(95057),d=e.r(8372),c=e.r(18581),u=e.r(18967),h=e.r(5550),p=e.r(88540),f=e.r(91949),g=e.r(73668),y=e.r(9396);function x(t){var n;let r,o,i,[x,m]=(0,s.useOptimistic)(f.IDLE_LINK_STATUS),j=(0,s.useRef)(null),{href:w,as:v,children:k,prefetch:S=null,passHref:C,replace:T,shallow:I,scroll:R,onClick:B,onMouseEnter:P,onTouchStart:z,legacyBehavior:O=!1,onNavigate:E,transitionTypes:F,ref:L,unstable_dynamicOnHover:W,...D}=t;r=k,O&&("string"==typeof r||"number"==typeof r)&&(r=(0,a.jsx)("a",{children:r}));let M=s.default.useContext(d.AppRouterContext),N=!1!==S,_=!1===S?"none":!0===S?"full":"auto",$="none"!==_?"auto"===_?y.FetchStrategy.PPR:y.FetchStrategy.Full:y.FetchStrategy.PPR,A="string"==typeof(n=v||w)?n:(0,l.formatUrl)(n);if(O){if(r?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});o=s.default.Children.only(r)}let U=O?o&&"object"==typeof o&&o.ref:L,H,K=s.default.useCallback(e=>(null!==M&&(j.current=(0,f.mountLinkInstance)(e,A,M,$,N,m,H)),()=>{j.current&&((0,f.unmountLinkForCurrentNavigation)(j.current),j.current=null),(0,f.unmountPrefetchableInstance)(e)}),[N,A,M,$,m,H]),J={ref:(0,c.useMergedRef)(K,U),onClick(t){O||"function"!=typeof B||B(t),O&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(t),!M||t.defaultPrevented||function(t,n,r,o,i,a,l,d="none"){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,g.isLocalURL)(n)){o&&(t.preventDefault(),location.replace(n));return}if(t.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:h}=e.r(99781);s.default.startTransition(()=>{h(n,o?"replace":"push",!1===i?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,r.current,l,d)})}}(t,A,j,T,R,E,F,_)},onMouseEnter(e){O||"function"!=typeof P||P(e),O&&o.props&&"function"==typeof o.props.onMouseEnter&&o.props.onMouseEnter(e),M&&N&&(0,f.onNavigationIntent)(e.currentTarget,!0===W)},onTouchStart:function(e){O||"function"!=typeof z||z(e),O&&o.props&&"function"==typeof o.props.onTouchStart&&o.props.onTouchStart(e),M&&N&&(0,f.onNavigationIntent)(e.currentTarget,!0===W)}};return(0,u.isAbsoluteUrl)(A)?J.href=A:O&&!C&&("a"!==o.type||"href"in o.props)||(J.href=(0,h.addBasePath)(A)),i=O?s.default.cloneElement(o,J):(0,a.jsx)("a",{...D,...J,children:r}),(0,a.jsx)(b.Provider,{value:x,children:i})}let b=(0,s.createContext)(f.IDLE_LINK_STATUS),m=()=>(0,s.useContext)(b);("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},18581,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"useMergedRef",{enumerable:!0,get:function(){return o}});let r=e.r(71645);function o(e,t){let n=(0,r.useRef)(null),o=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=n.current;e&&(n.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(n.current=i(e,r)),t&&(o.current=i(t,r))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let n=e(t);return"function"==typeof n?n:()=>e(null)}}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},18967,(e,t,n)=>{"use strict";e.i(47167),Object.defineProperty(n,"__esModule",{value:!0});var r={DecodeError:function(){return x},MiddlewareNotFoundError:function(){return w},MissingStaticPage:function(){return j},NormalizeError:function(){return b},PageNotFoundError:function(){return m},SP:function(){return g},ST:function(){return y},WEB_VITALS:function(){return i},execOnce:function(){return a},getDisplayName:function(){return u},getLocationOrigin:function(){return d},getURL:function(){return c},isAbsoluteUrl:function(){return l},isResSent:function(){return h},loadGetInitialProps:function(){return f},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return v}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,n=!1;return(...r)=>(n||(n=!0,t=e(...r)),t)}let s=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>{let t=e.charCodeAt(0);return!!(t>=65&&t<=90||t>=97&&t<=122)&&s.test(e)};function d(){let{protocol:e,hostname:t,port:n}=window.location;return`${e}//${t}${n?":"+n:""}`}function c(){let{href:e}=window.location,t=d();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function h(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function f(e,t){let n=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await f(t.Component,t.ctx)}:{};let r=await e.getInitialProps(t);if(n&&h(n))return r;if(!r)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${r}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return r}let g="u">typeof performance,y=g&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class x extends Error{}class b extends Error{}class m extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class j extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class w extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function v(e){return JSON.stringify({message:e.message,stack:e.stack})}},73668,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"isLocalURL",{enumerable:!0,get:function(){return i}});let r=e.r(18967),o=e.r(52817);function i(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),n=new URL(e,t);return n.origin===t&&(0,o.hasBasePath)(n.pathname)}catch(e){return!1}}},98183,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r={assign:function(){return l},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return s}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});function i(e){let t={};for(let[n,r]of e.entries()){let e=t[n];void 0===e?t[n]=r:Array.isArray(e)?e.push(r):t[n]=[e,r]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[n,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.append(n,a(e));else t.set(n,a(r));return t}function l(e,...t){for(let n of t){for(let t of n.keys())e.delete(t);for(let[t,r]of n.entries())e.append(t,r)}return e}},95057,(e,t,n)=>{"use strict";e.i(47167),Object.defineProperty(n,"__esModule",{value:!0});var r={formatUrl:function(){return s},formatWithValidation:function(){return d},urlObjectKeys:function(){return l}};for(var o in r)Object.defineProperty(n,o,{enumerable:!0,get:r[o]});let i=e.r(90809)._(e.r(98183)),a=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:n}=e,r=e.protocol||"",o=e.pathname||"",s=e.hash||"",l=e.query||"",d=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?d=t+e.host:n&&(d=t+(~n.indexOf(":")?`[${n}]`:n),e.port&&(d+=":"+e.port)),l&&"object"==typeof l&&(l=String(i.urlQueryToSearchParams(l)));let c=e.search||l&&`?${l}`||"";return r&&!r.endsWith(":")&&(r+=":"),e.slashes||(!r||a.test(r))&&!1!==d?(d="//"+(d||""),o&&"/"!==o[0]&&(o="/"+o)):d||(d=""),s&&"#"!==s[0]&&(s="#"+s),c&&"?"!==c[0]&&(c="?"+c),o=o.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${r}${d}${o}${c}${s}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function d(e){return s(e)}}]);