six-degrees 0.4.11 → 0.5.0

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 (375) 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 +9 -9
  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 +12 -12
  13. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +12 -12
  14. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +11 -11
  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 +1 -1
  17. package/.next/standalone/.next/server/app/api/admin-delete/route.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/api/admin-update/route.js +1 -1
  19. package/.next/standalone/.next/server/app/api/admin-update/route.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/api/bridges/route.js +1 -1
  21. package/.next/standalone/.next/server/app/api/bridges/route.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/api/bulk-import/route.js +1 -1
  23. package/.next/standalone/.next/server/app/api/bulk-import/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js +1 -1
  25. package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/company-scores/route.js +1 -1
  27. package/.next/standalone/.next/server/app/api/company-scores/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/connections/route.js +1 -1
  29. package/.next/standalone/.next/server/app/api/connections/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/data/export/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/data/import/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/api/data/restart/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/data/reveal/route.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/api/data/route.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/api/delete-cluster/route.js +1 -1
  36. package/.next/standalone/.next/server/app/api/delete-cluster/route.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/api/ingest/route.js +1 -1
  38. package/.next/standalone/.next/server/app/api/ingest/route.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/api/network/route.js +1 -1
  40. package/.next/standalone/.next/server/app/api/network/route.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  42. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/api/outreach/route.js +1 -1
  44. package/.next/standalone/.next/server/app/api/outreach/route.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/api/queue/route.js +1 -1
  46. package/.next/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/api/scraper/route.js +3 -2
  48. package/.next/standalone/.next/server/app/api/scraper/route.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/api/settings/route.js +1 -1
  50. package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js +1 -1
  52. package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js +1 -1
  54. package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/api/setup-profile/route.js +1 -1
  56. package/.next/standalone/.next/server/app/api/setup-profile/route.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/api/social/crm/route.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/api/social/messages/route.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/api/social/route.js +3 -3
  60. package/.next/standalone/.next/server/app/api/social/route.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/api/unlock/route.js +1 -1
  62. package/.next/standalone/.next/server/app/api/unlock/route.js.nft.json +1 -1
  63. package/.next/standalone/.next/server/app/api/update/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/update-images/route.js +1 -1
  65. package/.next/standalone/.next/server/app/api/update-images/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/users/route.js +1 -1
  67. package/.next/standalone/.next/server/app/api/users/route.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/avatars/[file]/route.js.nft.json +1 -1
  69. package/.next/standalone/.next/server/app/import/page.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/import/page_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/import.html +1 -1
  72. package/.next/standalone/.next/server/app/import.rsc +14 -14
  73. package/.next/standalone/.next/server/app/import.segments/_full.segment.rsc +14 -14
  74. package/.next/standalone/.next/server/app/import.segments/_tree.segment.rsc +1 -1
  75. package/.next/standalone/.next/server/app/import.segments/import/__PAGE__.segment.rsc +13 -13
  76. package/.next/standalone/.next/server/app/index.html +1 -1
  77. package/.next/standalone/.next/server/app/index.rsc +14 -14
  78. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +13 -13
  79. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +14 -14
  80. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  81. package/.next/standalone/.next/server/app/launch/page.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/launch/page_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/launch.html +2 -2
  84. package/.next/standalone/.next/server/app/launch.rsc +14 -14
  85. package/.next/standalone/.next/server/app/launch.segments/_full.segment.rsc +14 -14
  86. package/.next/standalone/.next/server/app/launch.segments/_tree.segment.rsc +1 -1
  87. package/.next/standalone/.next/server/app/launch.segments/launch/__PAGE__.segment.rsc +13 -13
  88. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  89. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/paths/page.js.nft.json +1 -1
  91. package/.next/standalone/.next/server/app/paths/page_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/paths.html +1 -1
  93. package/.next/standalone/.next/server/app/paths.rsc +14 -14
  94. package/.next/standalone/.next/server/app/paths.segments/_full.segment.rsc +14 -14
  95. package/.next/standalone/.next/server/app/paths.segments/_tree.segment.rsc +1 -1
  96. package/.next/standalone/.next/server/app/paths.segments/paths/__PAGE__.segment.rsc +13 -13
  97. package/.next/standalone/.next/server/app/profile/page.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/app/profile/page_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/profile.html +1 -1
  100. package/.next/standalone/.next/server/app/profile.rsc +14 -14
  101. package/.next/standalone/.next/server/app/profile.segments/_full.segment.rsc +14 -14
  102. package/.next/standalone/.next/server/app/profile.segments/_tree.segment.rsc +1 -1
  103. package/.next/standalone/.next/server/app/profile.segments/profile/__PAGE__.segment.rsc +13 -13
  104. package/.next/standalone/.next/server/app/queue/page.js.nft.json +1 -1
  105. package/.next/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/queue.html +1 -1
  107. package/.next/standalone/.next/server/app/queue.rsc +14 -14
  108. package/.next/standalone/.next/server/app/queue.segments/_full.segment.rsc +14 -14
  109. package/.next/standalone/.next/server/app/queue.segments/_tree.segment.rsc +1 -1
  110. package/.next/standalone/.next/server/app/queue.segments/queue/__PAGE__.segment.rsc +13 -13
  111. package/.next/standalone/.next/server/app/scores/page.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/scores/page_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/scores.html +1 -1
  114. package/.next/standalone/.next/server/app/scores.rsc +14 -14
  115. package/.next/standalone/.next/server/app/scores.segments/_full.segment.rsc +14 -14
  116. package/.next/standalone/.next/server/app/scores.segments/_tree.segment.rsc +1 -1
  117. package/.next/standalone/.next/server/app/scores.segments/scores/__PAGE__.segment.rsc +13 -13
  118. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  119. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/settings.html +1 -1
  121. package/.next/standalone/.next/server/app/settings.rsc +14 -14
  122. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +14 -14
  123. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  124. package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +13 -13
  125. package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/setup.html +1 -1
  128. package/.next/standalone/.next/server/app/setup.rsc +14 -14
  129. package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +14 -14
  130. package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +1 -1
  131. package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +13 -13
  132. package/.next/standalone/.next/server/app/social/page.js.nft.json +1 -1
  133. package/.next/standalone/.next/server/app/social/page_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/social.html +1 -1
  135. package/.next/standalone/.next/server/app/social.rsc +14 -14
  136. package/.next/standalone/.next/server/app/social.segments/_full.segment.rsc +14 -14
  137. package/.next/standalone/.next/server/app/social.segments/_tree.segment.rsc +1 -1
  138. package/.next/standalone/.next/server/app/social.segments/social/__PAGE__.segment.rsc +13 -13
  139. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0bat8nx._.js → [root-of-the-server]__13dx4sd._.js} +2 -2
  140. package/.next/standalone/.next/server/chunks/[root-of-the-server]__15wc9e-._.js +3 -0
  141. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1kbl21f._.js +1 -1
  142. package/.next/standalone/.next/server/chunks/[root-of-the-server]__20rwfdw._.js +8 -0
  143. package/.next/standalone/.next/server/chunks/_072jl0y._.js +1 -1
  144. package/.next/standalone/.next/server/chunks/_1_fynia._.js +7 -7
  145. package/.next/standalone/.next/server/chunks/_1itd1o_._.js +1 -1
  146. package/.next/standalone/.next/server/chunks/_1iwkh8t._.js +1 -1
  147. package/.next/standalone/.next/server/chunks/lib_0851sk0._.js +8 -0
  148. package/.next/standalone/.next/server/chunks/lib_1q7p2ro._.js +8 -0
  149. package/.next/standalone/.next/server/chunks/lib_1r6l86l._.js +8 -0
  150. package/.next/standalone/.next/server/chunks/lib_db-client_15le7cw.js +8 -8
  151. package/.next/standalone/.next/server/chunks/lib_rpc_04s8mzr.js +3 -0
  152. package/.next/standalone/.next/server/chunks/lib_rpc_053z7as.js +3 -0
  153. package/.next/standalone/.next/server/chunks/lib_rpc_0b_-2te.js +3 -0
  154. package/.next/standalone/.next/server/chunks/lib_rpc_0dhbxdm.js +3 -0
  155. package/.next/standalone/.next/server/chunks/lib_rpc_0dxlk31.js +3 -0
  156. package/.next/standalone/.next/server/chunks/lib_rpc_0f8b-qc.js +3 -0
  157. package/.next/standalone/.next/server/chunks/lib_rpc_0pzie7_.js +3 -0
  158. package/.next/standalone/.next/server/chunks/lib_rpc_0r76fq_.js +3 -0
  159. package/.next/standalone/.next/server/chunks/lib_rpc_0ut7pjp.js +3 -0
  160. package/.next/standalone/.next/server/chunks/lib_rpc_15zyqaz.js +3 -0
  161. package/.next/standalone/.next/server/chunks/lib_rpc_18zpjtq.js +3 -0
  162. package/.next/standalone/.next/server/chunks/lib_rpc_1a8xkiz.js +3 -0
  163. package/.next/standalone/.next/server/chunks/lib_rpc_1e_55xo.js +3 -0
  164. package/.next/standalone/.next/server/chunks/lib_rpc_1oxfd1_.js +3 -0
  165. package/.next/standalone/.next/server/chunks/lib_rpc_1s0lod0.js +3 -0
  166. package/.next/standalone/.next/server/chunks/lib_scoring_1-e4ur0.js +1 -1
  167. package/.next/standalone/.next/server/chunks/ssr/_01kacen._.js +3 -0
  168. package/.next/standalone/.next/server/chunks/ssr/_03l7vge._.js +3 -0
  169. package/.next/standalone/.next/server/chunks/ssr/{_1ap1tu_._.js → _0gtv9jb._.js} +2 -2
  170. package/.next/standalone/.next/server/chunks/ssr/_0jdkqgi._.js +3 -0
  171. package/.next/standalone/.next/server/chunks/ssr/_0xi-fbs._.js +3 -0
  172. package/.next/standalone/.next/server/chunks/ssr/_0xmwmfv._.js +3 -0
  173. package/.next/standalone/.next/server/chunks/ssr/_1-b9hj7._.js +9 -0
  174. package/.next/standalone/.next/server/chunks/ssr/_112ewem._.js +3 -0
  175. package/.next/standalone/.next/server/chunks/ssr/_16ab63q._.js +3 -0
  176. package/.next/standalone/.next/server/chunks/ssr/_1fxm0-s._.js +3 -0
  177. package/.next/standalone/.next/server/chunks/ssr/_1ra1d3r._.js +9 -0
  178. package/.next/standalone/.next/server/chunks/ssr/app_141w189._.js +3 -0
  179. package/.next/standalone/.next/server/chunks/ssr/app_components_ui_0pdmz2z.js +3 -0
  180. package/.next/standalone/.next/server/chunks/ssr/app_page_1fazqbf.js +22 -10
  181. package/.next/standalone/.next/server/chunks/ssr/app_paths_page_1ol90m7.js +2 -2
  182. package/.next/standalone/.next/server/chunks/ssr/app_profile_page_0u3-l5y.js +1 -1
  183. package/.next/standalone/.next/server/chunks/ssr/app_queue_page_0c6znd6.js +6 -5
  184. package/.next/standalone/.next/server/chunks/ssr/app_settings_page_1f8mjj_.js +1 -1
  185. package/.next/standalone/.next/server/chunks/ssr/app_setup_page_1-282zx.js +19 -3
  186. package/.next/standalone/.next/server/chunks/ssr/app_social_page_0h7zxda.js +1 -2
  187. package/.next/standalone/.next/server/chunks/ssr/lib_0i8v-s3._.js +1 -1
  188. package/.next/standalone/.next/server/chunks/ssr/lib_13rapwj._.js +3 -0
  189. package/.next/standalone/.next/server/chunks/ssr/lib_galaxy-lab_108_lu-.js +1 -1
  190. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  191. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  192. package/.next/standalone/.next/server/pages/404.html +1 -1
  193. package/.next/standalone/.next/server/pages/500.html +1 -1
  194. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  195. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  196. package/.next/standalone/.next/static/chunks/03bziijw5srol.js +1 -0
  197. package/.next/standalone/.next/static/chunks/0bgq8wmopl_ig.js +7 -0
  198. package/.next/standalone/.next/static/chunks/0ezus6p2eb-vg.js +1 -0
  199. package/.next/standalone/.next/static/chunks/0g_fy2034bp0x.js +34 -0
  200. package/.next/standalone/.next/static/chunks/0q5dru4q6gxl5.js +22 -0
  201. package/.next/standalone/.next/static/chunks/0w-byiwb2zax8.js +2 -0
  202. package/.next/standalone/.next/static/chunks/1g7jcovdejc9-.js +1 -0
  203. package/.next/standalone/.next/static/chunks/1i51yylxdzht1.js +1 -0
  204. package/.next/standalone/.next/static/chunks/1zf8swaasjf1e.js +43 -0
  205. package/.next/standalone/.next/static/chunks/2rqtpccruavf2.js +1 -0
  206. package/.next/standalone/.next/static/chunks/2wgz9ietkqqe6.js +1 -0
  207. package/.next/standalone/.next/static/chunks/30x3oq_st7a5r.js +1 -0
  208. package/.next/standalone/.next/static/chunks/355ryio1b7sm1.js +1 -0
  209. package/.next/standalone/.next/static/chunks/3ap5hgma7n0o7.js +1 -0
  210. package/.next/standalone/.next/static/chunks/3fci6qi39-1n5.js +1 -0
  211. package/.next/standalone/.next/static/chunks/{24tvdun1cb3g1.js → 3sowbvbaj1s6n.js} +1 -1
  212. package/.next/standalone/CHANGELOG.md +187 -0
  213. package/.next/standalone/app/api/ingest/route.js +40 -1
  214. package/.next/standalone/app/api/scraper/route.js +7 -1
  215. package/.next/standalone/app/api/settings/sector-preview/route.js +2 -1
  216. package/.next/standalone/app/components/AppTabs.js +59 -0
  217. package/.next/standalone/app/components/ChainView.js +303 -89
  218. package/.next/standalone/app/components/CirclePanel.js +162 -0
  219. package/.next/standalone/app/components/CompanyScores.js +2 -2
  220. package/.next/standalone/app/components/FieldStep.js +4 -4
  221. package/.next/standalone/app/components/FilterPanel.js +121 -183
  222. package/.next/standalone/app/components/ForceGraph.js +41 -3
  223. package/.next/standalone/app/components/GalaxyLab.js +26 -31
  224. package/.next/standalone/app/components/LegacyScoresCard.js +2 -2
  225. package/.next/standalone/app/components/MapControls.js +154 -0
  226. package/.next/standalone/app/components/NoteDetail.js +118 -0
  227. package/.next/standalone/app/components/PathsAnalyzer.js +147 -110
  228. package/.next/standalone/app/components/PeopleMap.js +308 -0
  229. package/.next/standalone/app/components/ScanRadar.js +129 -0
  230. package/.next/standalone/app/components/ScanStatusBar.js +71 -27
  231. package/.next/standalone/app/components/SeparationView.js +626 -118
  232. package/.next/standalone/app/components/Sidebar.js +28 -2
  233. package/.next/standalone/app/components/settings/NetworkHealthSection.js +1 -1
  234. package/.next/standalone/app/components/settings/SectorSection.js +2 -2
  235. package/.next/standalone/app/components/settings/TierSection.js +1 -1
  236. package/.next/standalone/app/components/settings/TitleSection.js +149 -0
  237. package/.next/standalone/app/components/views.js +15 -14
  238. package/.next/standalone/app/page.js +89 -156
  239. package/.next/standalone/app/paths/page.js +39 -27
  240. package/.next/standalone/app/profile/page.js +33 -5
  241. package/.next/standalone/app/queue/page.js +56 -34
  242. package/.next/standalone/app/scores/page.js +16 -66
  243. package/.next/standalone/app/settings/page.js +27 -13
  244. package/.next/standalone/app/setup/page.js +298 -205
  245. package/.next/standalone/app/social/SocialHub.js +374 -0
  246. package/.next/standalone/app/social/page.js +10 -362
  247. package/.next/standalone/lib/chain-layout.js +105 -35
  248. package/.next/standalone/lib/degrees.js +0 -6
  249. package/.next/standalone/lib/dot-rings.js +25 -0
  250. package/.next/standalone/lib/galaxy-lab.js +65 -6
  251. package/.next/standalone/lib/ingest.js +2 -0
  252. package/.next/standalone/lib/island.js +40 -0
  253. package/.next/standalone/lib/linkedin-limits.js +6 -2
  254. package/.next/standalone/lib/map-heat.js +20 -0
  255. package/.next/standalone/lib/network-health.js +1 -1
  256. package/.next/standalone/lib/notifications.js +121 -0
  257. package/.next/standalone/lib/people-map.js +82 -0
  258. package/.next/standalone/lib/rarity.js +45 -3
  259. package/.next/standalone/lib/reach.js +7 -6
  260. package/.next/standalone/lib/rpc.js +15 -4
  261. package/.next/standalone/lib/scan-pace.js +46 -0
  262. package/.next/standalone/lib/scoring.js +39 -8
  263. package/.next/standalone/lib/scraper-client.js +19 -6
  264. package/.next/standalone/lib/sector-focus.js +4 -4
  265. package/.next/standalone/lib/separation.js +137 -10
  266. package/.next/standalone/lib/settings-effects.js +20 -11
  267. package/.next/standalone/lib/settings.js +3 -0
  268. package/.next/standalone/lib/tier-grid.js +99 -0
  269. package/.next/standalone/lib/title-ranking.js +83 -0
  270. package/.next/standalone/package-lock.json +2 -2
  271. package/.next/standalone/package.json +1 -1
  272. package/.next/standalone/scripts/scrape.py +51 -13
  273. package/.next/static/chunks/03bziijw5srol.js +1 -0
  274. package/.next/static/chunks/0bgq8wmopl_ig.js +7 -0
  275. package/.next/static/chunks/0ezus6p2eb-vg.js +1 -0
  276. package/.next/static/chunks/0g_fy2034bp0x.js +34 -0
  277. package/.next/static/chunks/0q5dru4q6gxl5.js +22 -0
  278. package/.next/static/chunks/0w-byiwb2zax8.js +2 -0
  279. package/.next/static/chunks/1g7jcovdejc9-.js +1 -0
  280. package/.next/static/chunks/1i51yylxdzht1.js +1 -0
  281. package/.next/static/chunks/1zf8swaasjf1e.js +43 -0
  282. package/.next/static/chunks/2rqtpccruavf2.js +1 -0
  283. package/.next/static/chunks/2wgz9ietkqqe6.js +1 -0
  284. package/.next/static/chunks/30x3oq_st7a5r.js +1 -0
  285. package/.next/static/chunks/355ryio1b7sm1.js +1 -0
  286. package/.next/static/chunks/3ap5hgma7n0o7.js +1 -0
  287. package/.next/static/chunks/3fci6qi39-1n5.js +1 -0
  288. package/.next/static/chunks/{24tvdun1cb3g1.js → 3sowbvbaj1s6n.js} +1 -1
  289. package/CHANGELOG.md +187 -0
  290. package/lib/chain-layout.js +105 -35
  291. package/lib/degrees.js +0 -6
  292. package/lib/dot-rings.js +25 -0
  293. package/lib/galaxy-lab.js +65 -6
  294. package/lib/ingest.js +2 -0
  295. package/lib/island.js +40 -0
  296. package/lib/linkedin-limits.js +6 -2
  297. package/lib/map-heat.js +20 -0
  298. package/lib/network-health.js +1 -1
  299. package/lib/notifications.js +121 -0
  300. package/lib/people-map.js +82 -0
  301. package/lib/rarity.js +45 -3
  302. package/lib/reach.js +7 -6
  303. package/lib/rpc.js +15 -4
  304. package/lib/scan-pace.js +46 -0
  305. package/lib/scoring.js +39 -8
  306. package/lib/scraper-client.js +19 -6
  307. package/lib/sector-focus.js +4 -4
  308. package/lib/separation.js +137 -10
  309. package/lib/settings-effects.js +20 -11
  310. package/lib/settings.js +3 -0
  311. package/lib/tier-grid.js +99 -0
  312. package/lib/title-ranking.js +83 -0
  313. package/package.json +1 -1
  314. package/scripts/scrape.py +51 -13
  315. package/.next/standalone/.next/server/chunks/[root-of-the-server]__17hjtzl._.js +0 -8
  316. package/.next/standalone/.next/server/chunks/[root-of-the-server]__20tmem7._.js +0 -3
  317. package/.next/standalone/.next/server/chunks/lib_rpc_03i8xef.js +0 -3
  318. package/.next/standalone/.next/server/chunks/lib_rpc_05gt5ya.js +0 -3
  319. package/.next/standalone/.next/server/chunks/lib_rpc_08fc3rp.js +0 -3
  320. package/.next/standalone/.next/server/chunks/lib_rpc_08r2t_q.js +0 -3
  321. package/.next/standalone/.next/server/chunks/lib_rpc_0btpv1t.js +0 -3
  322. package/.next/standalone/.next/server/chunks/lib_rpc_0c9d9ti.js +0 -8
  323. package/.next/standalone/.next/server/chunks/lib_rpc_0cm2ev3.js +0 -3
  324. package/.next/standalone/.next/server/chunks/lib_rpc_0iovswz.js +0 -3
  325. package/.next/standalone/.next/server/chunks/lib_rpc_0is8flp.js +0 -3
  326. package/.next/standalone/.next/server/chunks/lib_rpc_0v8ajtd.js +0 -3
  327. package/.next/standalone/.next/server/chunks/lib_rpc_0xgmvvt.js +0 -3
  328. package/.next/standalone/.next/server/chunks/lib_rpc_144mzbf.js +0 -3
  329. package/.next/standalone/.next/server/chunks/lib_rpc_1bggi0n.js +0 -3
  330. package/.next/standalone/.next/server/chunks/lib_rpc_1dkcu9f.js +0 -3
  331. package/.next/standalone/.next/server/chunks/lib_rpc_1o0jb6w.js +0 -3
  332. package/.next/standalone/.next/server/chunks/ssr/_0-85h6g._.js +0 -3
  333. package/.next/standalone/.next/server/chunks/ssr/_08cfj2b._.js +0 -3
  334. package/.next/standalone/.next/server/chunks/ssr/_0c_y09g._.js +0 -3
  335. package/.next/standalone/.next/server/chunks/ssr/_0j4-lc3._.js +0 -3
  336. package/.next/standalone/.next/server/chunks/ssr/_0l8cxmo._.js +0 -3
  337. package/.next/standalone/.next/server/chunks/ssr/_0xkur4p._.js +0 -3
  338. package/.next/standalone/.next/server/chunks/ssr/_14iv_zy._.js +0 -3
  339. package/.next/standalone/.next/server/chunks/ssr/_15x6q32._.js +0 -3
  340. package/.next/standalone/.next/server/chunks/ssr/_212xw8q._.js +0 -3
  341. package/.next/standalone/.next/server/chunks/ssr/app_components_19c2d9c._.js +0 -3
  342. package/.next/standalone/.next/server/chunks/ssr/app_scores_page_09wepvv.js +0 -3
  343. package/.next/standalone/.next/static/chunks/0a5iadnmt9u9k.js +0 -1
  344. package/.next/standalone/.next/static/chunks/15sjx07xhpn6p.js +0 -1
  345. package/.next/standalone/.next/static/chunks/160wjb73ddwqd.js +0 -6
  346. package/.next/standalone/.next/static/chunks/1a74dky22dxd6.js +0 -1
  347. package/.next/standalone/.next/static/chunks/1c_n0973t07l0.js +0 -2
  348. package/.next/standalone/.next/static/chunks/1e1n0kkz-psdb.js +0 -1
  349. package/.next/standalone/.next/static/chunks/236f0jtp68j_h.js +0 -1
  350. package/.next/standalone/.next/static/chunks/297e1z34yi--z.js +0 -1
  351. package/.next/standalone/.next/static/chunks/2_ak6qjxb6oa5.js +0 -1
  352. package/.next/standalone/.next/static/chunks/2kfhc58df2xyo.js +0 -1
  353. package/.next/standalone/.next/static/chunks/39hr8d-b2ibtw.js +0 -31
  354. package/.next/standalone/.next/static/chunks/3ui4d-uqkqj5d.js +0 -2
  355. package/.next/standalone/.next/static/chunks/3zw8bv7-mc4n6.js +0 -33
  356. package/.next/standalone/app/components/OrbitGraph.js +0 -737
  357. package/.next/static/chunks/0a5iadnmt9u9k.js +0 -1
  358. package/.next/static/chunks/15sjx07xhpn6p.js +0 -1
  359. package/.next/static/chunks/160wjb73ddwqd.js +0 -6
  360. package/.next/static/chunks/1a74dky22dxd6.js +0 -1
  361. package/.next/static/chunks/1c_n0973t07l0.js +0 -2
  362. package/.next/static/chunks/1e1n0kkz-psdb.js +0 -1
  363. package/.next/static/chunks/236f0jtp68j_h.js +0 -1
  364. package/.next/static/chunks/297e1z34yi--z.js +0 -1
  365. package/.next/static/chunks/2_ak6qjxb6oa5.js +0 -1
  366. package/.next/static/chunks/2kfhc58df2xyo.js +0 -1
  367. package/.next/static/chunks/39hr8d-b2ibtw.js +0 -31
  368. package/.next/static/chunks/3ui4d-uqkqj5d.js +0 -2
  369. package/.next/static/chunks/3zw8bv7-mc4n6.js +0 -33
  370. /package/.next/standalone/.next/static/{jqE2D3zWqSGz5su948Azf → I-cj79yE2IZ8taX2dZGp3}/_buildManifest.js +0 -0
  371. /package/.next/standalone/.next/static/{jqE2D3zWqSGz5su948Azf → I-cj79yE2IZ8taX2dZGp3}/_clientMiddlewareManifest.js +0 -0
  372. /package/.next/standalone/.next/static/{jqE2D3zWqSGz5su948Azf → I-cj79yE2IZ8taX2dZGp3}/_ssgManifest.js +0 -0
  373. /package/.next/static/{jqE2D3zWqSGz5su948Azf → I-cj79yE2IZ8taX2dZGp3}/_buildManifest.js +0 -0
  374. /package/.next/static/{jqE2D3zWqSGz5su948Azf → I-cj79yE2IZ8taX2dZGp3}/_clientMiddlewareManifest.js +0 -0
  375. /package/.next/static/{jqE2D3zWqSGz5su948Azf → I-cj79yE2IZ8taX2dZGp3}/_ssgManifest.js +0 -0
@@ -0,0 +1,3 @@
1
+ module.exports=[45889,a=>{"use strict";var b=a.i(90231);function c(a=[],d=[]){let e=new Set((d||[]).map(b.keyFor)),f=new Map;for(let c of a||[]){let a=c?.source_connection_id;if(null==a)continue;let d=(0,b.keyFor)(c);if(e.has(d))continue;let g=f.get(d);g||f.set(d,g=new Set),g.add(a)}let g=new Map;for(let a of f.values())for(let b of a){let c=g.get(b)||{reach:0,only:0,total:0};c.reach+=1/a.size,c.total+=1,1===a.size&&(c.only+=1),g.set(b,c)}return g}a.s(["bridgeOverlap",0,function(a=[],d=[]){let e=c(a,d),f=new Set((d||[]).map(b.keyFor)),g=new Map;for(let c of a||[]){let a=c?.source_connection_id;if(null==a)continue;let d=(0,b.keyFor)(c);if(f.has(d))continue;let e=g.get(d);e||g.set(d,e=new Set),e.add(a)}let h=new Map;for(let a of g.values()){if(a.size<2)continue;let b=[...a];for(let a=0;a<b.length;a++)for(let c=a+1;c<b.length;c++){let d=b[a]<b[c]?`${b[a]}|${b[c]}`:`${b[c]}|${b[a]}`;h.set(d,(h.get(d)||0)+1)}}let i=new Map;for(let[a,b]of h){let[c,d]=a.split("|"),f=e.get(c).total+e.get(d).total-b,g=f?b/f:0;for(let[a,e]of[[c,d],[d,c]]){let c=i.get(a);(!c||g>c.share)&&i.set(a,{with:e,share:g,shared:b})}}return i},"exclusiveReach",0,c,"redundancy",0,function(a=[],b=[]){let d=c(a,b),e=0,f=0;for(let a of d.values())e+=a.reach,f+=a.only;return e?1-f/e:0}])},9282,a=>{"use strict";var b=a.i(30889);function c(a){let c=(0,b.readTitle)(a);return{key:c.key,label:c.label,level:c.level}}function d(a){return(0,b.currentCompany)(a)}let e=[{key:"defense",label:"Government, Defense & Aerospace",color:"#7f8c8d",words:/\b(government|federal|state of|county|city of|defen[cs]e|army|navy|air force|marine corps|military|dod|nasa|aerospace|lockheed|northrop|boeing|raytheon|l3harris|leidos|blue origin|spacex|public sector)\b/i},{key:"finance",label:"Finance & Investing",color:"#2ecc71",words:/\b(bank|banking|capital|ventures?|vc|investments?|investor|fund|private equity|growth equity|asset management|wealth|trading|trader|hedge|crypto|blockchain|web3|defi|fintech|stripe|coinbase|blackrock|robinhood|goldman|morgan stanley|jpmorgan|chase|bny|mellon|wells fargo|citi|citigroup|capital one|fidelity|vanguard|schwab|visa|mastercard|amex|american express|paypal|insurance|accounting|cpa|financial)\b/i},{key:"health",label:"Healthcare & Biotech",color:"#e74c3c",words:/\b(health|healthcare|medical|medicine|hospital|clinic|pharma|pharmaceutical|biotech|nurse|nursing|physician|doctor|dental|therapy|therapist|wellness)\b/i},{key:"education",label:"Education",color:"#f1c40f",words:/\b(university|college|school|education|student|professor|teacher|academy|phd|faculty|alumni)\b/i},{key:"media",label:"Marketing & Media",color:"#e67e22",words:/\b(marketing|brand|branding|advertising|agency|media|content|social media|creative|creator|influencer|pr|public relations|communications|tiktok|pinterest|youtube|growth marketing)\b/i},{key:"entertainment",label:"Entertainment & Gaming",color:"#9b59b6",words:/\b(entertainment|film|movie|music|records|gaming|games?|esports|studio|studios|netflix|disney|spotify|hollywood|theater|theatre|sports)\b/i},{key:"tech",label:"Tech, Software & AI",color:"#3498db",words:/\b(software|saas|engineer|engineering|developer|tech|technology|technologies|ai|artificial intelligence|machine learning|ml|data|cloud|cyber|security|devops|product manager|google|microsoft|apple|meta|amazon|nvidia|openai|anthropic|palantir|salesforce|oracle|ibm|intel|app|apps|startup|platform|labs?)\b/i},{key:"consulting",label:"Consulting, Legal & Services",color:"#1abc9c",words:/\b(consulting|consultant|consultancy|deloitte|accenture|mckinsey|kpmg|pwc|ey|bain|bcg|legal|law|lawyer|attorney|paralegal|recruiting|recruiter|staffing|talent)\b/i},{key:"realestate",label:"Real Estate & Construction",color:"#d35400",words:/\b(real estate|realtor|realty|property|properties|construction|architecture|architect|mortgage|homes|housing|builders?)\b/i},{key:"consumer",label:"Retail, Consumer & Hospitality",color:"#ff79c6",words:/\b(retail|e-?commerce|shopify|consumer|cpg|fashion|apparel|beauty|cosmetics|food|beverage|restaurant|hospitality|hotel|travel|tourism|coca-cola|nike|store|shop)\b/i},{key:"industry",label:"Manufacturing, Energy & Logistics",color:"#95a5a6",words:/\b(manufacturing|energy|oil|gas|solar|utilities|automotive|tesla|siemens|ge|general electric|honeywell|3m|logistics|supply chain|shipping|freight|fedex|ups|industrial|mining|chemicals?)\b/i},{key:"nonprofit",label:"Nonprofit & Community",color:"#bdc3c7",words:/\b(nonprofit|non-profit|foundation|charity|ngo|church|ministry|volunteer)\b/i}],f={key:"unknown",label:"Unclear",color:"#555c66"},g=Object.fromEntries([...e,f].map(a=>[a.key,a])),h=a=>g[a]||f;function i(a,b){for(let c of[a,b]){if(!c)continue;let a=e.find(a=>a.words.test(c));if(a)return a}return f}let j=(a,b)=>i(a,b).key,k=a=>c(a).level>=4;a.s(["INDUSTRIES",0,e,"UNKNOWN_INDUSTRY",0,f,"buildCompanyIndex",0,function(a=[]){let c=new Map,d=a=>(c.has(a)||c.set(a,(0,b.rolesWithCompanies)(a)),c.get(a)),{industries:e}=(0,b.networkCompanies)(a,{industryOf:j,rolesOf:d}),f=new Map;for(let b of a){let a=b.profile_url||`id:${b.id}`,c=f.get(a);(!c||(b.degree||9)<(c.degree||9))&&f.set(a,b)}let g=new Map;for(let a of f.values()){let b=d(a).find(a=>!a.former)?.company;if(!b)continue;let c=g.get(b);c||(c={name:b,people:[],d1:0,d2:0,d3:0,S:0,A:0,senior:0},g.set(b,c)),c.people.push(a),1===a.degree?c.d1++:2===a.degree?c.d2++:c.d3++,"S"===a.tier&&c.S++,"A"===a.tier&&c.A++,k(a.headline)&&c.senior++}for(let a of g.values())a.industry=h(e.get(a.name));return g},"companyLinks",0,function(a=[],b=[]){let c=new Map;for(let b of a){let a=d(b);a&&c.set(b.id,a)}let e=new Map;for(let a of b){let b=c.get(a.source_connection_id),f=d(a);if(!b||!f||b===f)continue;let[g,h]=b<f?[b,f]:[f,b],i=`${g}\u0000${h}`,j=e.get(i);j||(j={a:g,b:h,weight:0,via:new Set},e.set(i,j)),j.weight++,j.via.add(a.source_connection_id)}return[...e.values()]},"companyOf",0,d,"getSeniority",0,c,"industryByKey",0,h,"industryOf",0,i,"isSenior",0,k,"waysInto",0,function(a,b=[],c=[]){let e=b.filter(b=>d(b)===a),f=new Map;for(let b of c)d(b)===a&&f.set(b.source_connection_id,(f.get(b.source_connection_id)||0)+1);let g=new Map(b.map(a=>[a.id,a]));return{direct:e,bridges:[...f.entries()].map(([a,b])=>({bridge:g.get(a),n:b})).filter(a=>a.bridge).sort((a,b)=>b.n-a.n||(Number(b.bridge.power_score)||0)-(Number(a.bridge.power_score)||0))}}])},23310,a=>{"use strict";async function b(a){let b=a?`/api/network?userId=${encodeURIComponent(a)}`:"/api/network",c=await fetch(b);if(!c.ok)throw Error(`Failed to load network (${c.status})`);let d=await c.json();return{degree1:d.degree1||[],degree2:d.degree2||[],degree3:d.degree3||[],ties:Number(d.ties)||0}}a.s(["loadNetwork",0,b])},90231,56377,a=>{"use strict";let b=/^[A-Za-z0-9_-]+\.(webp|jpg|jpeg|png)$/,c="/avatars/";function d(a){return"string"==typeof a&&a.startsWith(c)&&b.test(a.slice(c.length))?a:null}a.s(["localPhoto",0,d],56377);let e={S:0,A:1,B:2,C:3,D:4};function f(a){let b=parseFloat(a?.power_score);return Number.isFinite(b)?b:0}function g(a){return Math.round(10*f(a))/10}function h(a){return String(a?.profile_url||"").split(/[?#]/)[0].replace(/\/+$/,"")||`id:${a?.id}`}let i=(a,b)=>String(a??"").localeCompare(String(b??""),void 0,{numeric:!0});function j(a,b){return(e[a.tier]??9)-(e[b.tier]??9)||f(b)-f(a)||String(a.name||"").localeCompare(String(b.name||""))||i(a.id,b.id)}function k(a,b){return a.bridge&&b.bridge?j(a.bridge,b.bridge):a.bridge?-1:b.bridge?1:i(a.id,b.id)}function l(a,b){return b.score-a.score||b.waysIn-a.waysIn||k(a.routes[0]||m,b.routes[0]||m)||String(a.person.name||"").localeCompare(String(b.person.name||""))||(a.key<b.key?-1:+(a.key>b.key))}let m={id:null,bridge:null};function n(a){let b=String(a||"").trim().split(/\s+/).filter(Boolean);return b.length<2?b[0]||"":`${b[0]} ${b[b.length-1].charAt(0)}.`}function o(a,b){let c=String(a||"");return b<=1?c?"…":"":c.length>b?`${c.slice(0,b-1)}…`:c}a.s(["TIERS",0,["S","A","B","C","D"],"compareBridges",0,j,"comparePower",0,l,"convergeLayout",0,function(a,b=800,c=!1,{cards:d=!1,mutuals:e=0}={}){let f=d?46:c?40:34,g=Math.round(b*(c?.44:.36)),h=Math.round(b*(c?.8:d?.6:.62)),i=[],j=null;for(let b of a?.routes||[])b.bridge?i.push({id:b.id,bridge:b.bridge,unresolved:!1,count:1}):j?j.count++:i.push(j={id:null,bridge:null,unresolved:!0,count:1});let k=Math.max(0,Math.floor(Number(e)||0)-(a?.waysIn||0)),l=Math.min(60,k),m=d?12:11,p=d?220:c?96:120,q=Math.max(1,Math.floor(p/m)+1),r=Math.ceil(l/q),s=l?40+r*m:0,t=Math.max(0,i.length-1)*f+s,u=Math.max(c?190:d?250:220,32+t+48),v=u/2,w=v-t/2,x=Math.max(4,Math.floor((g-10-42)/6)),y=i.map((a,b)=>{let c=a.unresolved?`can't be named (${a.count})`:a.bridge.name||"";return{...a,x:g,y:w+b*f,r:6,primary:0===b&&!a.unresolved,label:c.length<=x?c:o(a.unresolved?c:n(c),x)}}),z={x:h,y:v,r:17*!d,rings:d?[]:[32,50,70].filter(a=>a<=v-4)},A=y.map(b=>({key:a?.key,bridgeId:b.id,primary:b.primary,unresolved:b.unresolved,tier:b.bridge?.tier??null,x1:b.x,y1:b.y,x2:z.x,y2:z.y})),B={x:20,y:v,r:14},C=y.map(a=>({id:a.id,x1:B.x,y1:B.y,x2:a.x,y2:a.y})),D=a?[{key:a.key,p:a,x:z.x,y:z.y,r:z.r,rings:z.rings,big:!0,label:""}]:[],E=w+Math.max(0,i.length-1)*f+40,F=d?g-236+8:g-p,G=Array.from({length:l},(a,b)=>({x:F+b%q*m,y:E+Math.floor(b/q)*m})),H=a?.waysIn?a.waysIn/(a.waysIn+k):1;return{width:b,height:u,you:B,target:z,people:D,bridges:y,links:A,spokes:C,ghosts:G,unscanned:k,ghostLabel:l?{x:F,y:E-13}:null,drawn:H}},"keyFor",0,h,"mapCount",0,function(a,b=10){let c=Math.max(0,Math.min(100,Number(a)||0));return c<=50?b:Math.max(1,Math.round(b*(100-c)/50))},"mostMutuals",0,function(a=[],b=()=>0,c=7){return[...a].sort((a,c)=>Math.max(b(c)||0,c.waysIn)-Math.max(b(a)||0,a.waysIn)||c.waysIn-a.waysIn||l(a,c)).slice(0,c)},"routeIndex",0,function(a=[]){let b=new Map;for(let c of a||[]){let a=h(c),d=b.get(a);d||(d=new Set,b.set(a,d)),d.add(c.source_connection_id??null)}return b},"routesFor",0,function(a,b,c){return a?[...b?.get(h(a))??(null!=a.source_connection_id?new Set([a.source_connection_id]):new Set)].map(a=>({id:a,bridge:c?.get(a)??null})).sort(k):[]},"score",0,f,"score1",0,g,"separationPeople",0,function(a=[],b=[]){let c=new Map;for(let a of b||[])c.set(a.id,a);let e=new Map,f=new Map;for(let b of a||[]){let a=h(b);f.set(b.id,a);let c=e.get(a);c?function(a,b){let c=g(a)-g(b);if(c)return c>0;let e=!!d(a.profile_image_url);return!!d(b.profile_image_url)!==e?e:0>i(a.id,b.id)}(b,c.person)&&(c.person=b):(c={key:a,person:b,rowIds:[],routeIds:new Set},e.set(a,c)),c.rowIds.push(b.id),c.routeIds.add(b.source_connection_id??null)}let j={people:e.size,byTier:{S:0,A:0,B:0,C:0,D:0},multi:0,bridges:0,unresolvedIds:0,peopleOnlyUnresolved:0,onlyUnresolvedVia:0},m=new Set,n=new Set,o=new Set,p=[];for(let a of e.values()){let b=[...a.routeIds].map(a=>({id:a,bridge:c.get(a)??null}));b.sort(k);let d=b.filter(a=>a.bridge);for(let a of b)(a.bridge?m:n).add(a.id);if(!d.length)for(let a of(j.peopleOnlyUnresolved++,b))o.add(a.id);let{person:e}=a,f=e.tier;void 0!==j.byTier[f]&&j.byTier[f]++,b.length>1&&j.multi++,p.push({key:a.key,person:e,score:g(e),tier:f,routes:b,waysIn:b.length,rowIds:a.rowIds,haystack:[e.name,e.headline,e.company,e.role,...d.map(a=>a.bridge.name)].filter(Boolean).join("\n").toLowerCase(),rank:0,tied:!1})}return j.bridges=m.size,j.unresolvedIds=n.size,j.onlyUnresolvedVia=o.size,p.sort(l),function(a){for(let b=0;b<a.length;b++){let c=a[b],d=a[b-1],e=d&&d.score===c.score&&d.waysIn===c.waysIn;c.rank=e?d.rank:b+1,e&&(c.tied=!0,d.tied=!0)}}(p),{people:p,rowToKey:f,summary:j}},"shortName",0,n,"summitLayout",0,function(a=[],b=800,c=!1,{cards:d=!1}={}){let e=d?50:c?36:26,f=Math.round(.42*b),g=Math.round(.58*b),h=a.map((a,c)=>{var f;return{key:a.key,p:a,x:g,y:16+c*e,r:d?0:(f=a.waysIn)>=4?8.5:3===f?7:2===f?5.5:4,label:o(`#${a.rank}${a.tied?"=":""} ${a.person.name||""}`,Math.floor((b-g-60)/6.2))}}),i=new Map,k="\0unresolved";for(let a of h)for(let b of a.p.routes){let c=b.bridge?b.id:k,d=i.get(c);d||(d={id:b.bridge?b.id:null,bridge:b.bridge,unresolved:!b.bridge,ys:[],count:0},i.set(c,d)),d.count++,d.ys.push(a.y)}let l=[...i.values()].map(a=>({...a,bary:a.ys.reduce((a,b)=>a+b,0)/a.ys.length}));l.sort((a,b)=>a.bary-b.bary||a.unresolved-b.unresolved||(a.bridge&&b.bridge?j(a.bridge,b.bridge):0));let m=h.length?h[h.length-1].y:16,p=function(a=[],b=18,c=0){let d=[];a.forEach((a,c)=>{for(d.push({sum:a-c*b,count:1});d.length>1&&d[d.length-2].sum/d[d.length-2].count>d[d.length-1].sum/d[d.length-1].count;){let a=d.pop();d[d.length-1].sum+=a.sum,d[d.length-1].count+=a.count}});let e=d.flatMap(a=>Array(a.count).fill(a.sum/a.count)).map((a,c)=>a+c*b),f=e.length&&e[0]<c?c-e[0]:0;return e.map(a=>a+f)}(l.map(a=>a.bary),d?36:18,16),q=Math.max(4,Math.floor((f-10-42)/6));l.forEach((a,b)=>{if(a.x=f,a.y=p[b],a.r=5,a.unresolved)a.label=o(`can't be named (${a.count})`,q);else{let b=a.bridge.name||"";a.label=b.length<=q?b:o(n(b),q)}delete a.ys});let r=new Map(l.map(a=>[a.unresolved?k:a.id,a]));for(let a of l)a.onlyFor=0,a.bestFor=0;for(let a of h){let b=a.p.routes[0],c=b?r.get(b.bridge?b.id:k):null;c&&c.bestFor++,1===a.p.waysIn&&c&&c.onlyFor++}let s=[];for(let a of h){let b=new Set;a.p.routes.forEach((c,d)=>{let e=c.bridge?c.id:k;if(b.has(e))return;b.add(e);let f=r.get(e);s.push({key:a.key,bridgeId:f.id,primary:0===d&&!f.unresolved,unresolved:f.unresolved,tier:f.bridge?.tier??null,x1:f.x,y1:f.y,x2:a.x,y2:a.y})})}let t=Math.max(m,l.length?l[l.length-1].y:0),u=h.length?Math.ceil(t+16):0,v={x:20,y:h.length?(16+Math.max(m,t))/2:16,r:14},w=l.map(a=>({id:a.id,x1:v.x,y1:v.y,x2:a.x,y2:a.y}));return{width:b,height:u,you:v,people:h,bridges:l,links:s,spokes:w}}],90231)}];
2
+
3
+ //# sourceMappingURL=lib_13rapwj._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[1328,76433,a=>{"use strict";var b=a.i(90231),c=a.i(42510);function d(a){let b=String(a||"").trim();if(!b)return null;let c=b.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2}))?(?:\s*UTC)?$/);if(c)return Date.UTC(+c[1],c[2]-1,+c[3],+c[4],+c[5],+(c[6]||0));if(c=b.match(/^(\d{1,2})\/(\d{1,2})\/(\d{2,4}),?\s+(\d{1,2}):(\d{2})\s*(AM|PM)?$/i)){let a=100>+c[3]?2e3+ +c[3]:+c[3],b=c[4]%12;return"PM"===(c[6]||"").toUpperCase()&&(b+=12),Date.UTC(a,c[1]-1,+c[2],b,+c[5])}if(c=b.match(/^([A-Za-z]{3,9})\s+(\d{4})$/)){let a=Date.parse(`1 ${c[1]} ${c[2]} UTC`);return Number.isNaN(a)?null:a}let d=Date.parse(/\d{4}$/.test(b)?`${b} UTC`:b);return Number.isNaN(d)?null:d}let e=a=>(0,b.keyFor)({profile_url:a});function f(a=[]){let b=new Map;for(let c of a){let a=e(c["sender profile url"]),d=c["conversation id"];d&&a&&(b.has(a)||b.set(a,new Set),b.get(a).add(d))}let c=null;for(let[a,d]of b)(!c||d.size>b.get(c).size)&&(c=a);return c}let g=a=>{let b=m(a);return b?`name:${b}`:null},h=/sponsored/i,i=/in\s?mail/i,j=/linkedin\.com\/(company|showcase|school)\//i,k=a=>/^(yes|true|1)$/i.test(String(a||"").trim());function l(a,b){if(!a||!a.total)return"never";let c=b-a.last;return c<=2592e6||a.recent>=3?"warm":c<=31536e6?"cool":"dormant"}let m=a=>String(a||"").split(",")[0].normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().replace(/[^a-z0-9 ]+/g," ").replace(/\s+/g," ").trim();a.s(["buildConversations",0,function(a=[],{keepText:b=!1}={}){let c=f(a),l=new Map;for(let b of a)c&&e(b["sender profile url"])===c&&b.from&&l.set(b.from,(l.get(b.from)||0)+1);let n=m([...l].sort((a,b)=>b[1]-a[1])[0]?.[0]||""),o=a=>!!a&&(a===c||!!n&&a===`name:${n}`),p={},q=new Map,r=0,s=0;for(let c of a){let a=c["conversation id"],f=d(c.date);if(!a||null==f){s+=1;continue}if(k(c["is message draft"])){r+=1;continue}let l=e(c["sender profile url"])||g(c.from);l&&c.from&&!p[l]&&(p[l]=String(c.from).trim());let m=String(c["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(e),n=String(c.to||"").split(",").map(a=>a.trim()).filter(Boolean),t=m.length?m:n.map(g).filter(Boolean);m.length&&m.length===n.length&&m.forEach((a,b)=>{p[a]||(p[a]=n[b])}),m.length||n.forEach(a=>{let b=g(a);b&&!p[b]&&(p[b]=a)}),q.has(a)||q.set(a,{id:a,title:"",everyone:new Set,messages:[],kind:null,folder:"",newest:-1/0});let u=q.get(a);l&&u.everyone.add(l),t.forEach(a=>u.everyone.add(a)),u.kind=u.kind||function(a){let b=String(a.folder||""),c=String(a["conversation title"]||"");return h.test(b)||h.test(c)||j.test(String(a["sender profile url"]||""))?"sponsored":i.test(b)||i.test(c)?"inmail":null}(c),f>=u.newest&&(u.newest=f,u.folder=String(c.folder||"").trim().toLowerCase().slice(0,30));let v={t:f,fromMe:o(l)};b&&(v.text=[c.subject,c.content].map(a=>String(a||"").trim()).filter(Boolean).join("\n\n"),!u.title&&c["conversation title"]&&(u.title=String(c["conversation title"]).trim())),u.messages.push(v)}let t=[];for(let a of q.values()){let c=[...a.everyone].filter(a=>a&&!o(a)).sort();a.messages.sort((a,b)=>a.t-b.t);let d={id:a.id,people:c,group:c.length>1,kind:a.kind,folder:a.folder,messages:a.messages};b&&(d.title=a.title),t.push(d)}for(let a of Object.keys(p))o(a)&&delete p[a];return{self:c,conversations:t,names:p,drafts:r,skipped:s}},"buildInvitations",0,function(a=[],{keepText:b=!1}={}){let c=[];for(let f of a){let a=String(f.direction||"").toUpperCase();if("INCOMING"!==a&&"OUTGOING"!==a)continue;let h="INCOMING"===a?"in":"out",i=String(("in"===h?f.from:f.to)||"").trim(),j=e("in"===h?f.inviterprofileurl:f.inviteeprofileurl),k=(j&&/\/in\//.test(j)?j:null)||g(i);if(!k)continue;let l=d(f["sent at"]),m={id:`${h}|${k}|${l??""}`,dir:h,key:k,name:i.slice(0,120),t:l};b&&String(f.message||"").trim()&&(m.note=String(f.message).trim().slice(0,2e3)),c.push(m)}return c.sort((a,b)=>(b.t||0)-(a.t||0))},"careerChapters",0,function(a=[],b=[],c=Date.now()){let f=a.map(a=>({company:a["company name"]||"",title:a.title||"",from:d(a["started on"]),to:d(a["finished on"])})).filter(a=>a.company&&null!=a.from).sort((a,b)=>a.from-b.from),g=b.map(a=>({url:e(a.url||a.profile_url),t:d(a["connected on"]||a.connected_on)})).filter(a=>null!=a.t);return f.map(a=>{let b=a.to??c,d=g.filter(c=>c.t>=a.from&&c.t<b);return{...a,to:a.to,made:d.length,people:d.map(a=>a.url)}})},"conversationSummary",0,function(a){let b=a.messages[a.messages.length-1];return{id:a.id,people:a.people,group:a.group,kind:a.kind||null,folder:a.folder||"",last:b?b.t:null,lastFromThem:b?!b.fromMe:null,count:a.messages.length,mine:a.messages.filter(a=>a.fromMe).length}},"invitationSplit",0,function(a=[]){let b=0,c=0;for(let d of a){let a=String(d.direction||"").toUpperCase();"INCOMING"===a?b+=1:"OUTGOING"===a&&(c+=1)}return{incoming:b,outgoing:c,total:b+c}},"messageStats",0,function(a=[]){let b=f(a),c=new Map;for(let b of a){let a=e(b["sender profile url"]),f=b["conversation id"];if(!f||!a)continue;let g=String(b["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(e),h=d(b.date);if(null==h)continue;c.has(f)||c.set(f,{people:new Set,msgs:[]});let i=c.get(f);i.people.add(a),g.forEach(a=>i.people.add(a)),i.msgs.push({from:a,t:h})}let g=0,h=new Map;for(let a of c.values()){let c=[...a.people].filter(a=>a!==b);if(1!==c.length||!a.people.has(b))continue;let d=c[0],e=h.get(d)||{last:0,lastFromThem:!1,total:0,times:[]};for(let c of a.msgs)e.total+=1,e.times.push(c.t),c.t>=e.last&&(e.last=c.t,e.lastFromThem=c.from!==b),c.t>g&&(g=c.t);h.set(d,e)}for(let a of h.values())a.recent=a.times.filter(a=>a>g-7776e6).length,delete a.times;return{self:b,asOf:g||null,people:h}},"nameKey",0,m,"postingEffect",0,function(a=[],b=[]){let c=a.map(a=>({t:d(a.date),link:a.sharelink||a["share link"]||""})).filter(a=>null!=a.t).sort((a,b)=>a.t-b.t),e=b.map(a=>d(a["connected on"]||a.connected_on)).filter(a=>null!=a).sort((a,b)=>a-b);if(!e.length)return{posts:[],usualWeek:0,afterPosts:0};let f=Math.max(6048e5,e[e.length-1]-e[0]),g=e.length/f*6048e5,h=c.map(a=>({...a,week:e.filter(b=>b>=a.t&&b<a.t+6048e5).length})),i=h.length?h.reduce((a,b)=>a+b.week,0)/h.length:0;return{posts:h,usualWeek:g,afterPosts:i}},"readTable",0,function(a,b){let d=(0,c.parseCsv)(String(a||"")),e=d.findIndex(a=>a.some(a=>a.trim().toLowerCase()===b.toLowerCase()));if(e<0)return[];let f=d[e].map(a=>a.trim().toLowerCase());return d.slice(e+1).filter(a=>a.some(a=>a.trim())).map(a=>Object.fromEntries(f.map((b,c)=>[b,(a[c]??"").trim()])))},"warmthOf",0,l],76433);let n="six-degrees-galaxy-lab",o="six-degrees-galaxy-layouts",p=Object.freeze({on:!1,gravity:0,rings:1,push:15,pull:1,distance:1,dotSize:1,lines:1,sizeBy:"power",names:"key",branch:!0,colourBy:"tier",speed:15,loop:!1,labels:!0}),q=["gravity","rings","push","pull","distance","dotSize","lines","sizeBy","names","branch","colourBy","speed","loop"],r=Object.freeze({gravity:.25,rings:0,push:25,pull:2.5,distance:.35,sizeBy:"reach"}),s=new Set,t=null;function u(){return t||(t=function(){try{let a=JSON.parse(localStorage.getItem(n)||"null");return a&&"object"==typeof a?{...p,...a}:p}catch{return p}}()),t}function v(a){t=null===a?{...p,on:u().on,labels:u().labels}:{...u(),...a};try{localStorage.setItem(n,JSON.stringify(t))}catch{}s.forEach(a=>a())}let w=null,x=new Set;function y(){if(!w){try{w=JSON.parse(localStorage.getItem(o)||"[]")}catch{w=[]}Array.isArray(w)||(w=[])}return w}function z(a){w=a;try{localStorage.setItem(o,JSON.stringify(a))}catch{}x.forEach(a=>a())}let A=new Set,B={at:null,playing:!1,min:null,max:null,of:0,find:"",fly:0,found:0,social:void 0},C=null;function D(a){let b={...B,...a};Object.keys(a).every(a=>Object.is(b[a],B[a]))||(B=b,A.forEach(a=>a()))}function E(){cancelAnimationFrame(C),C=null,D({playing:!1})}let F=null;function G(a){let c=new Map;for(let[d,e]of Object.entries(a?.people||{}))c.set((0,b.keyFor)({profile_url:d}),{...e});for(let[d,e]of Object.entries(a?.live||{})){let a=(0,b.keyFor)({profile_url:d}),f=c.get(a)||{total:0,recent:0};e.last&&(!f.last||e.last>f.last)&&(f.last=e.last,"boolean"==typeof e.lastFromThem&&(f.lastFromThem=e.lastFromThem)),f.unread=e.unread,f.total=Math.max(f.total||0,1),c.set(a,f)}let d=Math.max(a?.asOf||0,a?.liveAt&&Date.parse(a.liveAt)||0);for(let a of c.values())(a.last||0)>d&&(d=a.last);return{merged:c,asOf:d,chapters:a?.chapters||[],posts:a?.posts?.posts||[]}}let H={1:"#4FC3F7",2:"#BA68C8",3:"#FFB74D"},I=["#FF6B6B","#4ECDC4","#FFD93D","#A29BFE","#00B894","#FD79A8","#74B9FF","#E17055"],J={warm:"#FF7043",cool:"#4FC3F7",dormant:"#8D6E63",never:"#546E7A"},K="#4a5568",L=a=>String(a||"").trim().toLowerCase();a.s(["CLUSTERS",0,r,"LAB_DEFAULTS",0,p,"applyLayout",0,function(a){let b=y().find(b=>b.name===a);b&&v(Object.fromEntries(q.filter(a=>a in b.settings).map(a=>[a,b.settings[a]])))},"bornTimes",0,function(a,b){let c=new Map(a.map(a=>[a.id,a])),d=new Map,e=(a,f=0)=>{if(d.has(a.id))return d.get(a.id);let g=-1/0,h=b.get(a.id);if(1===a.degree||null==h||f>6){let b=a.connected_date?Date.parse(a.connected_date):NaN;g=Number.isNaN(b)?-1/0:b}return null!=h&&c.has(h)&&f<=6&&(g=Math.max(g,e(c.get(h),f+1))),d.set(a.id,g),g};return a.map(a=>e(a))},"chapterAt",0,function(a,b){let c=null;for(let d of a?.chapters||[])Number.isFinite(d.from)&&d.from<=b&&(!c||d.from>c.from)&&(c=d);return c&&(!Number.isFinite(c.to)||c.to>b)?c:null},"clockNow",0,()=>B,"colourScheme",0,function(a,c,d,e){if("degree"===a)return{of:a=>H[Math.min(a.degree||1,3)],legend:[["1st",H[1]],["2nd",H[2]],["3rd+",H[3]]]};if("company"===a){let a=new Map;for(let b of c){let c=L(b.company);if(!c)continue;let d=a.get(c)||{name:String(b.company).trim(),n:0};d.n+=1,a.set(c,d)}let b=[...a.entries()].filter(([,a])=>a.n>1).sort((a,b)=>b[1].n-a[1].n).slice(0,I.length),d=new Map(b.map(([a],b)=>[a,I[b]]));return{of:a=>d.get(L(a.company))||K,legend:[...b.map(([,a],b)=>[a.name,I[b]]),["Other",K]]}}return"warmth"===a&&e?{of:a=>1===(a.degree||1)?J[l(e.merged.get((0,b.keyFor)(a)),e.asOf)]:"#2d3748",legend:[["Warm",J.warm],["Cool",J.cool],["Dormant",J.dormant],["Never messaged",J.never]]}:{of:a=>d[a.tier]||"#666",legend:Object.entries(d)}},"effectiveLab",0,a=>a.on?a:a.labels===p.labels?p:{...p,labels:a.labels},"findMatches",0,function(a,b){let c=String(b||"").trim().toLowerCase();if(c.length<2)return null;let d=new Set;for(let b of a)[b.name,b.company,b.role,b.headline].some(a=>a&&String(a).toLowerCase().includes(c))&&d.add(b.id);return d},"forgetLayout",0,function(a){z(y().filter(b=>b.name!==a))},"labNow",0,u,"layoutsNow",0,y,"loadSocial",0,function(){return F||(F=fetch("/api/social").then(a=>a.ok?a.json():{}).then(a=>{D({social:a.social?G(a.social):null})}).catch(()=>D({social:null}))),F},"mergeSocial",0,G,"milestones",0,function(a){let b=[];for(let c of a?.chapters||[])Number.isFinite(c.from)&&b.push({t:c.from,kind:"job",label:c.company});for(let c of a?.posts||[])Number.isFinite(c.t)&&b.push({t:c.t,kind:"post",label:"You posted"});return b.sort((a,b)=>a.t-b.t)},"pause",0,E,"play",0,function a(){if(null==B.min||null==B.max||B.max<=B.min)return;let b=B.max-B.min,c=1e3*Math.max(1,Number(u().speed)||15),d=null==B.at||B.at>=B.max?B.min:B.at,e=performance.now()-(d-B.min)/b*c;D({at:d,playing:!0});let f=d=>{let g=Math.min(B.max,B.min+(d-e)/c*b);if(D({at:g}),g>=B.max){C=null,D({playing:!1}),u().loop&&setTimeout(()=>{C||B.at!==B.max||(D({at:B.min}),a())},1200);return}C=requestAnimationFrame(f)};cancelAnimationFrame(C),C=requestAnimationFrame(f)},"reachCounts",0,function(a,b){let c=new Map(a.map(a=>[a.id,0]));for(let d of a){let a=b.get(d.id);for(let d=0;null!=a&&d<7;d++)c.set(a,(c.get(a)||0)+1),a=b.get(a)}return c},"saveLayout",0,function(a){let b=String(a||"").trim().slice(0,40);if(!b)return;let c=u(),d=Object.fromEntries(q.map(a=>[a,c[a]]));z([...y().filter(a=>a.name!==b),{name:b,settings:d}])},"setClock",0,D,"setLab",0,v,"stopReplay",0,function(){E(),D({at:null})},"watchClock",0,function(a){return A.add(a),()=>A.delete(a)},"watchLab",0,function(a){s.add(a);let b=b=>{b.key===n&&(t=null,a())};return window.addEventListener("storage",b),()=>{s.delete(a),window.removeEventListener("storage",b)}},"watchLayouts",0,function(a){return x.add(a),()=>x.delete(a)}],1328)}];
1
+ module.exports=[1328,76433,a=>{"use strict";var b=a.i(90231),c=a.i(42510);function d(a){let b=String(a||"").trim();if(!b)return null;let c=b.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2}))?(?:\s*UTC)?$/);if(c)return Date.UTC(+c[1],c[2]-1,+c[3],+c[4],+c[5],+(c[6]||0));if(c=b.match(/^(\d{1,2})\/(\d{1,2})\/(\d{2,4}),?\s+(\d{1,2}):(\d{2})\s*(AM|PM)?$/i)){let a=100>+c[3]?2e3+ +c[3]:+c[3],b=c[4]%12;return"PM"===(c[6]||"").toUpperCase()&&(b+=12),Date.UTC(a,c[1]-1,+c[2],b,+c[5])}if(c=b.match(/^([A-Za-z]{3,9})\s+(\d{4})$/)){let a=Date.parse(`1 ${c[1]} ${c[2]} UTC`);return Number.isNaN(a)?null:a}let d=Date.parse(/\d{4}$/.test(b)?`${b} UTC`:b);return Number.isNaN(d)?null:d}let e=a=>(0,b.keyFor)({profile_url:a});function f(a=[]){let b=new Map;for(let c of a){let a=e(c["sender profile url"]),d=c["conversation id"];d&&a&&(b.has(a)||b.set(a,new Set),b.get(a).add(d))}let c=null;for(let[a,d]of b)(!c||d.size>b.get(c).size)&&(c=a);return c}let g=a=>{let b=m(a);return b?`name:${b}`:null},h=/sponsored/i,i=/in\s?mail/i,j=/linkedin\.com\/(company|showcase|school)\//i,k=a=>/^(yes|true|1)$/i.test(String(a||"").trim());function l(a,b){if(!a||!a.total)return"never";let c=b-a.last;return c<=2592e6||a.recent>=3?"warm":c<=31536e6?"cool":"dormant"}let m=a=>String(a||"").split(",")[0].normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().replace(/[^a-z0-9 ]+/g," ").replace(/\s+/g," ").trim();a.s(["buildConversations",0,function(a=[],{keepText:b=!1}={}){let c=f(a),l=new Map;for(let b of a)c&&e(b["sender profile url"])===c&&b.from&&l.set(b.from,(l.get(b.from)||0)+1);let n=m([...l].sort((a,b)=>b[1]-a[1])[0]?.[0]||""),o=a=>!!a&&(a===c||!!n&&a===`name:${n}`),p={},q=new Map,r=0,s=0;for(let c of a){let a=c["conversation id"],f=d(c.date);if(!a||null==f){s+=1;continue}if(k(c["is message draft"])){r+=1;continue}let l=e(c["sender profile url"])||g(c.from);l&&c.from&&!p[l]&&(p[l]=String(c.from).trim());let m=String(c["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(e),n=String(c.to||"").split(",").map(a=>a.trim()).filter(Boolean),t=m.length?m:n.map(g).filter(Boolean);m.length&&m.length===n.length&&m.forEach((a,b)=>{p[a]||(p[a]=n[b])}),m.length||n.forEach(a=>{let b=g(a);b&&!p[b]&&(p[b]=a)}),q.has(a)||q.set(a,{id:a,title:"",everyone:new Set,messages:[],kind:null,folder:"",newest:-1/0});let u=q.get(a);l&&u.everyone.add(l),t.forEach(a=>u.everyone.add(a)),u.kind=u.kind||function(a){let b=String(a.folder||""),c=String(a["conversation title"]||"");return h.test(b)||h.test(c)||j.test(String(a["sender profile url"]||""))?"sponsored":i.test(b)||i.test(c)?"inmail":null}(c),f>=u.newest&&(u.newest=f,u.folder=String(c.folder||"").trim().toLowerCase().slice(0,30));let v={t:f,fromMe:o(l)};b&&(v.text=[c.subject,c.content].map(a=>String(a||"").trim()).filter(Boolean).join("\n\n"),!u.title&&c["conversation title"]&&(u.title=String(c["conversation title"]).trim())),u.messages.push(v)}let t=[];for(let a of q.values()){let c=[...a.everyone].filter(a=>a&&!o(a)).sort();a.messages.sort((a,b)=>a.t-b.t);let d={id:a.id,people:c,group:c.length>1,kind:a.kind,folder:a.folder,messages:a.messages};b&&(d.title=a.title),t.push(d)}for(let a of Object.keys(p))o(a)&&delete p[a];return{self:c,conversations:t,names:p,drafts:r,skipped:s}},"buildInvitations",0,function(a=[],{keepText:b=!1}={}){let c=[];for(let f of a){let a=String(f.direction||"").toUpperCase();if("INCOMING"!==a&&"OUTGOING"!==a)continue;let h="INCOMING"===a?"in":"out",i=String(("in"===h?f.from:f.to)||"").trim(),j=e("in"===h?f.inviterprofileurl:f.inviteeprofileurl),k=(j&&/\/in\//.test(j)?j:null)||g(i);if(!k)continue;let l=d(f["sent at"]),m={id:`${h}|${k}|${l??""}`,dir:h,key:k,name:i.slice(0,120),t:l};b&&String(f.message||"").trim()&&(m.note=String(f.message).trim().slice(0,2e3)),c.push(m)}return c.sort((a,b)=>(b.t||0)-(a.t||0))},"careerChapters",0,function(a=[],b=[],c=Date.now()){let f=a.map(a=>({company:a["company name"]||"",title:a.title||"",from:d(a["started on"]),to:d(a["finished on"])})).filter(a=>a.company&&null!=a.from).sort((a,b)=>a.from-b.from),g=b.map(a=>({url:e(a.url||a.profile_url),t:d(a["connected on"]||a.connected_on)})).filter(a=>null!=a.t);return f.map(a=>{let b=a.to??c,d=g.filter(c=>c.t>=a.from&&c.t<b);return{...a,to:a.to,made:d.length,people:d.map(a=>a.url)}})},"conversationSummary",0,function(a){let b=a.messages[a.messages.length-1];return{id:a.id,people:a.people,group:a.group,kind:a.kind||null,folder:a.folder||"",last:b?b.t:null,lastFromThem:b?!b.fromMe:null,count:a.messages.length,mine:a.messages.filter(a=>a.fromMe).length}},"invitationSplit",0,function(a=[]){let b=0,c=0;for(let d of a){let a=String(d.direction||"").toUpperCase();"INCOMING"===a?b+=1:"OUTGOING"===a&&(c+=1)}return{incoming:b,outgoing:c,total:b+c}},"messageStats",0,function(a=[]){let b=f(a),c=new Map;for(let b of a){let a=e(b["sender profile url"]),f=b["conversation id"];if(!f||!a)continue;let g=String(b["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(e),h=d(b.date);if(null==h)continue;c.has(f)||c.set(f,{people:new Set,msgs:[]});let i=c.get(f);i.people.add(a),g.forEach(a=>i.people.add(a)),i.msgs.push({from:a,t:h})}let g=0,h=new Map;for(let a of c.values()){let c=[...a.people].filter(a=>a!==b);if(1!==c.length||!a.people.has(b))continue;let d=c[0],e=h.get(d)||{last:0,lastFromThem:!1,total:0,times:[]};for(let c of a.msgs)e.total+=1,e.times.push(c.t),c.t>=e.last&&(e.last=c.t,e.lastFromThem=c.from!==b),c.t>g&&(g=c.t);h.set(d,e)}for(let a of h.values())a.recent=a.times.filter(a=>a>g-7776e6).length,delete a.times;return{self:b,asOf:g||null,people:h}},"nameKey",0,m,"postingEffect",0,function(a=[],b=[]){let c=a.map(a=>({t:d(a.date),link:a.sharelink||a["share link"]||""})).filter(a=>null!=a.t).sort((a,b)=>a.t-b.t),e=b.map(a=>d(a["connected on"]||a.connected_on)).filter(a=>null!=a).sort((a,b)=>a-b);if(!e.length)return{posts:[],usualWeek:0,afterPosts:0};let f=Math.max(6048e5,e[e.length-1]-e[0]),g=e.length/f*6048e5,h=c.map(a=>({...a,week:e.filter(b=>b>=a.t&&b<a.t+6048e5).length})),i=h.length?h.reduce((a,b)=>a+b.week,0)/h.length:0;return{posts:h,usualWeek:g,afterPosts:i}},"readTable",0,function(a,b){let d=(0,c.parseCsv)(String(a||"")),e=d.findIndex(a=>a.some(a=>a.trim().toLowerCase()===b.toLowerCase()));if(e<0)return[];let f=d[e].map(a=>a.trim().toLowerCase());return d.slice(e+1).filter(a=>a.some(a=>a.trim())).map(a=>Object.fromEntries(f.map((b,c)=>[b,(a[c]??"").trim()])))},"warmthOf",0,l],76433);let n="six-degrees-galaxy-lab",o="six-degrees-galaxy-layouts",p=Object.freeze({on:!0,gravity:0,rings:1,push:15,pull:1,distance:1,dotSize:1,lines:1,sizeBy:"power",names:"key",branch:!1,colourBy:"tier",speed:15,loop:!1,labels:!0,v:2}),q=["gravity","rings","push","pull","distance","dotSize","lines","sizeBy","names","branch","colourBy","speed","loop"],r=Object.freeze({gravity:.25,rings:0,push:25,pull:2.5,distance:.35,sizeBy:"reach"}),s=Object.freeze({gravity:0,rings:3,push:6,pull:4,distance:.22,sizeBy:"power"}),t=new Set,u=null;function v(){return u||(u=function(){try{let a=JSON.parse(localStorage.getItem(n)||"null");if(!a||"object"!=typeof a)return p;return{...p,...a,...a.v===p.v?{}:{branch:!1},v:p.v,on:!0}}catch{return p}}()),u}function w(a){u=null===a?{...p,labels:v().labels}:{...v(),...a,on:!0};try{localStorage.setItem(n,JSON.stringify(u))}catch{}t.forEach(a=>a())}let x=null,y=new Set;function z(){if(!x){try{x=JSON.parse(localStorage.getItem(o)||"[]")}catch{x=[]}Array.isArray(x)||(x=[])}return x}function A(a){x=a;try{localStorage.setItem(o,JSON.stringify(a))}catch{}y.forEach(a=>a())}let B=new Set,C={at:null,playing:!1,min:null,max:null,of:0,find:"",fly:0,found:0,social:void 0},D=null;function E(a){let b={...C,...a};Object.keys(a).every(a=>Object.is(b[a],C[a]))||(C=b,B.forEach(a=>a()))}function F(){cancelAnimationFrame(D),D=null,E({playing:!1})}let G=null;function H(a){let c=new Map;for(let[d,e]of Object.entries(a?.people||{}))c.set((0,b.keyFor)({profile_url:d}),{...e});for(let[d,e]of Object.entries(a?.live||{})){let a=(0,b.keyFor)({profile_url:d}),f=c.get(a)||{total:0,recent:0};e.last&&(!f.last||e.last>f.last)&&(f.last=e.last,"boolean"==typeof e.lastFromThem&&(f.lastFromThem=e.lastFromThem)),f.unread=e.unread,f.total=Math.max(f.total||0,1),c.set(a,f)}let d=Math.max(a?.asOf||0,a?.liveAt&&Date.parse(a.liveAt)||0);for(let a of c.values())(a.last||0)>d&&(d=a.last);return{merged:c,asOf:d,chapters:a?.chapters||[],posts:a?.posts?.posts||[]}}let I={1:"#4FC3F7",2:"#BA68C8",3:"#FFB74D"},J=["#FF6B6B","#4ECDC4","#FFD93D","#A29BFE","#00B894","#FD79A8","#74B9FF","#E17055"],K={warm:"#FF7043",cool:"#4FC3F7",dormant:"#8D6E63",never:"#546E7A"},L="#4a5568",M=["#2b1b6b","#6a1b9a","#c2185b","#f4511e","#ffb300","#fff3b0"];function N(a){let b=Math.max(0,Math.min(1,Number(a)||0))*(M.length-1),c=Math.min(M.length-2,Math.floor(b)),d=b-c,e=M[c],f=M[c+1];return`#${[1,3,5].map(a=>Math.round(parseInt(e.slice(a,a+2),16)*(1-d)+parseInt(f.slice(a,a+2),16)*d).toString(16).padStart(2,"0")).join("")}`}function O(a=[],b=()=>0){let c=[...new Set(a.map(b))].sort((a,b)=>a-b),d=new Map(c.map((a,b)=>[a,c.length>1?b/(c.length-1):1]));return a=>d.get(b(a))??0}let P=a=>String(a||"").trim().toLowerCase();a.s(["CLUSTERS",0,r,"LAB_DEFAULTS",0,p,"ORBIT",0,s,"applyLayout",0,function(a){let b=z().find(b=>b.name===a);b&&w(Object.fromEntries(q.filter(a=>a in b.settings).map(a=>[a,b.settings[a]])))},"bornTimes",0,function(a,b){let c=new Map(a.map(a=>[a.id,a])),d=new Map,e=(a,f=0)=>{if(d.has(a.id))return d.get(a.id);let g=-1/0,h=b.get(a.id);if(1===a.degree||null==h||f>6){let b=a.connected_date?Date.parse(a.connected_date):NaN;g=Number.isNaN(b)?-1/0:b}return null!=h&&c.has(h)&&f<=6&&(g=Math.max(g,e(c.get(h),f+1))),d.set(a.id,g),g};return a.map(a=>e(a))},"chapterAt",0,function(a,b){let c=null;for(let d of a?.chapters||[])Number.isFinite(d.from)&&d.from<=b&&(!c||d.from>c.from)&&(c=d);return c&&(!Number.isFinite(c.to)||c.to>b)?c:null},"clockNow",0,()=>C,"colourScheme",0,function(a,c,d,e){if("degree"===a)return{of:a=>I[Math.min(a.degree||1,3)],legend:[["1st",I[1]],["2nd",I[2]],["3rd+",I[3]]]};if("company"===a){let a=new Map;for(let b of c){let c=P(b.company);if(!c)continue;let d=a.get(c)||{name:String(b.company).trim(),n:0};d.n+=1,a.set(c,d)}let b=[...a.entries()].filter(([,a])=>a.n>1).sort((a,b)=>b[1].n-a[1].n).slice(0,J.length),d=new Map(b.map(([a],b)=>[a,J[b]]));return{of:a=>d.get(P(a.company))||L,legend:[...b.map(([,a],b)=>[a.name,J[b]]),["Other",L]]}}if("heat"===a){let a=function(a=[]){return O(a,b.score)}(c);return{of:b=>N(a(b)),heat:a,legend:[["Cold",N(.1)],["Warm",N(.45)],["Hot",N(.75)],["Hottest",N(1)]]}}return"warmth"===a&&e?{of:a=>1===(a.degree||1)?K[l(e.merged.get((0,b.keyFor)(a)),e.asOf)]:"#2d3748",legend:[["Warm",K.warm],["Cool",K.cool],["Dormant",K.dormant],["Never messaged",K.never]]}:{of:a=>d[a.tier]||"#666",legend:Object.entries(d)}},"effectiveLab",0,a=>a.on?a:a.labels===p.labels?p:{...p,labels:a.labels},"findMatches",0,function(a,b){let c=String(b||"").trim().toLowerCase();if(c.length<2)return null;let d=new Set;for(let b of a)[b.name,b.company,b.role,b.headline].some(a=>a&&String(a).toLowerCase().includes(c))&&d.add(b.id);return d},"forgetLayout",0,function(a){A(z().filter(b=>b.name!==a))},"heatBy",0,O,"heatColour",0,N,"labNow",0,v,"layoutOf",0,function(a){let b=b=>Object.entries(b).every(([b,c])=>a[b]===c);return["gravity","rings","push","pull","distance"].every(b=>a[b]===p[b])?"rings":b(r)?"clusters":b(s)?"orbit":null},"layoutsNow",0,z,"loadSocial",0,function(){return G||(G=fetch("/api/social").then(a=>a.ok?a.json():{}).then(a=>{E({social:a.social?H(a.social):null})}).catch(()=>E({social:null}))),G},"mergeSocial",0,H,"milestones",0,function(a){let b=[];for(let c of a?.chapters||[])Number.isFinite(c.from)&&b.push({t:c.from,kind:"job",label:c.company});for(let c of a?.posts||[])Number.isFinite(c.t)&&b.push({t:c.t,kind:"post",label:"You posted"});return b.sort((a,b)=>a.t-b.t)},"pause",0,F,"play",0,function a(){if(null==C.min||null==C.max||C.max<=C.min)return;let b=C.max-C.min,c=1e3*Math.max(1,Number(v().speed)||15),d=null==C.at||C.at>=C.max?C.min:C.at,e=performance.now()-(d-C.min)/b*c;E({at:d,playing:!0});let f=d=>{let g=Math.min(C.max,C.min+(d-e)/c*b);if(E({at:g}),g>=C.max){D=null,E({playing:!1}),v().loop&&setTimeout(()=>{D||C.at!==C.max||(E({at:C.min}),a())},1200);return}D=requestAnimationFrame(f)};cancelAnimationFrame(D),D=requestAnimationFrame(f)},"reachCounts",0,function(a,b){let c=new Map(a.map(a=>[a.id,0]));for(let d of a){let a=b.get(d.id);for(let d=0;null!=a&&d<7;d++)c.set(a,(c.get(a)||0)+1),a=b.get(a)}return c},"saveLayout",0,function(a){let b=String(a||"").trim().slice(0,40);if(!b)return;let c=v(),d=Object.fromEntries(q.map(a=>[a,c[a]]));A([...z().filter(a=>a.name!==b),{name:b,settings:d}])},"setClock",0,E,"setLab",0,w,"stopReplay",0,function(){F(),E({at:null})},"watchClock",0,function(a){return B.add(a),()=>B.delete(a)},"watchLab",0,function(a){t.add(a);let b=b=>{b.key===n&&(u=null,a())};return window.addEventListener("storage",b),()=>{t.delete(a),window.removeEventListener("storage",b)}},"watchLayouts",0,function(a){return y.add(a),()=>y.delete(a)}],1328)}];
2
2
 
3
3
  //# sourceMappingURL=lib_galaxy-lab_108_lu-.js.map
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
7
7
  "static/chunks/0cz1d0mv5g_q7.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/jqE2D3zWqSGz5su948Azf/_buildManifest.js",
11
- "static/jqE2D3zWqSGz5su948Azf/_ssgManifest.js",
12
- "static/jqE2D3zWqSGz5su948Azf/_clientMiddlewareManifest.js"
10
+ "static/I-cj79yE2IZ8taX2dZGp3/_buildManifest.js",
11
+ "static/I-cj79yE2IZ8taX2dZGp3/_ssgManifest.js",
12
+ "static/I-cj79yE2IZ8taX2dZGp3/_clientMiddlewareManifest.js"
13
13
  ],
14
14
  "rootMainFiles": [
15
15
  "static/chunks/310vm2bl3xxpt.js",
@@ -27,11 +27,11 @@
27
27
  "wasm": [],
28
28
  "assets": [],
29
29
  "env": {
30
- "__NEXT_BUILD_ID": "jqE2D3zWqSGz5su948Azf",
31
- "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "nOGyJqgiVVqFtH4+LzLwe4HpFOT1OcU0uuJ8WsL58io=",
32
- "__NEXT_PREVIEW_MODE_ID": "246a0bb7106983ac75e90f3b4dc855b9",
33
- "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "31f1e74e32407de8529fc9b4e0fc4aebb04336bc5249ea56693e2797f9c6b0c8",
34
- "__NEXT_PREVIEW_MODE_SIGNING_KEY": "b2c2b29ab5aa108d16f31100077dc65a2b0106765ba1a0aed0ee9ef51fc21f4e"
30
+ "__NEXT_BUILD_ID": "I-cj79yE2IZ8taX2dZGp3",
31
+ "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "VC/bnEKY0he8w9T/yphZb4lxOuBTXq2K3FHKNqcOXGI=",
32
+ "__NEXT_PREVIEW_MODE_ID": "e08426fa79f40baf040c8bff8e06fc37",
33
+ "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "bf2ace66f2c60c08ca4f28ff79b5f3db11e89693f29489afbfcfbed85df7093f",
34
+ "__NEXT_PREVIEW_MODE_SIGNING_KEY": "08538aa6bc867dff0f328c35b29332bfa6ab16cd065ad6fb1b6a1cd8e599f8ca"
35
35
  }
36
36
  }
37
37
  },
@@ -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/1x_ysly42-teq.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/15sjx07xhpn6p.js" async=""></script><script src="/_next/static/chunks/24tvdun1cb3g1.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.23vm2o6v3er2z.ico" sizes="48x48" 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/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\"]\n3:I[39756,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\"]\n5:I[37711,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\"]\n6:I[40643,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\"]\n7:I[87915,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\"]\n8:I[97367,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nc:I[97367,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"ViewportBoundary\"]\ne:I[97367,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"MetadataBoundary\"]\n10:I[68027,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/1x_ysly42-teq.css\",\"style\"]\nb: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/1x_ysly42-teq.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/15sjx07xhpn6p.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/24tvdun1cb3g1.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,{}],[\"$\",\"$L6\",null,{}],[\"$\",\"$L7\",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,[\"$\",\"$L8\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,\"$b\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$Lc\",null,{\"children\":\"$Ld\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1x_ysly42-teq.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"jqE2D3zWqSGz5su948Azf\"}\nb:C\nd:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n11:I[27201,[\"/_next/static/chunks/15sjx07xhpn6p.js\",\"/_next/static/chunks/24tvdun1cb3g1.js\"],\"IconMark\"]\na:null\nf:[[\"$\",\"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.23vm2o6v3er2z.ico\",\"sizes\":\"48x48\",\"type\":\"image/x-icon\"}],[\"$\",\"$L11\",\"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/1x_ysly42-teq.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/30x3oq_st7a5r.js" async=""></script><script src="/_next/static/chunks/3sowbvbaj1s6n.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.23vm2o6v3er2z.ico" sizes="48x48" 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/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\"]\n3:I[39756,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\"]\n5:I[37711,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\"]\n6:I[40643,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\"]\n7:I[87915,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\"]\n8:I[97367,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nc:I[97367,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"ViewportBoundary\"]\ne:I[97367,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"MetadataBoundary\"]\n10:I[68027,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"default\",1]\n:HL[\"/_next/static/chunks/1x_ysly42-teq.css\",\"style\"]\nb: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/1x_ysly42-teq.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/30x3oq_st7a5r.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/3sowbvbaj1s6n.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,{}],[\"$\",\"$L6\",null,{}],[\"$\",\"$L7\",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,[\"$\",\"$L8\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@a\"}]}]]}],{},null,false,null]},null,false,\"$b\"]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$Lc\",null,{\"children\":\"$Ld\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$9\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lf\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/1x_ysly42-teq.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"I-cj79yE2IZ8taX2dZGp3\"}\nb:C\nd:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n11:I[27201,[\"/_next/static/chunks/30x3oq_st7a5r.js\",\"/_next/static/chunks/3sowbvbaj1s6n.js\"],\"IconMark\"]\na:null\nf:[[\"$\",\"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.23vm2o6v3er2z.ico\",\"sizes\":\"48x48\",\"type\":\"image/x-icon\"}],[\"$\",\"$L11\",\"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.23vm2o6v3er2z.ico" sizes="48x48" 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\":\"jqE2D3zWqSGz5su948Azf\"}\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.23vm2o6v3er2z.ico\",\"sizes\":\"48x48\",\"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.23vm2o6v3er2z.ico" sizes="48x48" 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\":\"I-cj79yE2IZ8taX2dZGp3\"}\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.23vm2o6v3er2z.ico\",\"sizes\":\"48x48\",\"type\":\"image/x-icon\"}],[\"$\",\"$Ld\",\"1\",{}]]\n"])</script></body></html>
@@ -1 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"nOGyJqgiVVqFtH4+LzLwe4HpFOT1OcU0uuJ8WsL58io=\"\n}"
1
+ self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"VC/bnEKY0he8w9T/yphZb4lxOuBTXq2K3FHKNqcOXGI=\"\n}"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "node": {},
3
3
  "edge": {},
4
- "encryptionKey": "nOGyJqgiVVqFtH4+LzLwe4HpFOT1OcU0uuJ8WsL58io="
4
+ "encryptionKey": "VC/bnEKY0he8w9T/yphZb4lxOuBTXq2K3FHKNqcOXGI="
5
5
  }
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,26005,e=>{"use strict";var t=e.i(43476),n=e.i(22016),r=e.i(64745);let o=[{key:"network",label:"Network Circle",short:"Circle",on:{background:"#fff",color:"#000"},off:{background:"transparent",color:"#888"}},{key:"degrees",label:"Degrees",on:{background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000"},off:{background:"rgba(255,255,255,0.12)",color:"#fff"}},{key:"separation",label:"Separation",on:{background:"linear-gradient(135deg, #00E5FF, #FFD700 55%, #FF7043)",color:"#000"},off:{background:"rgba(255,255,255,0.12)",color:"#fff"}}],l=[{key:"paths",href:"/paths",label:"Paths",color:"#00ff88",on:"linear-gradient(135deg, #00ff88, #3498DB)",demo:!0},{key:"outlink",href:"/queue",label:"Outlink",color:"#FF6B35",on:"linear-gradient(135deg, #FF6B35, #FFD700)",own:!0},{key:"scan",href:"/setup",label:"Scan",color:"#666",on:"linear-gradient(135deg, #00ff88, #1abc9c)",own:!0}];e.s(["default",0,function({active:e,isMobile:i=!1,csvMode:a=!1,onMode:s,children:u,after:d}){let f={padding:i?"6px 10px":"8px 16px",borderRadius:6,border:"none",fontSize:i?11:13,fontWeight:600,textDecoration:"none"};return(0,t.jsxs)("div",{id:"main-tabs",style:{display:"flex",gap:i?2:4,background:"rgba(255,255,255,0.08)",borderRadius:8,padding:i?2:3,flexWrap:i?"wrap":"nowrap"},children:[o.map(r=>{let o={...f,cursor:"pointer",...e===r.key?r.on:r.off},l=i&&r.short?r.short:r.label;return s?(0,t.jsx)("button",{type:"button",onClick:()=>s(r.key),style:o,children:l},r.key):(0,t.jsx)(n.default,{href:`/?mode=${r.key}`,style:{...o,display:"flex",alignItems:"center"},children:l},r.key)}),u,l.filter(e=>!r.IS_DEMO&&(!e.own||!a)).map(r=>{let o=e===r.key;return(0,t.jsxs)(n.default,{href:r.href,title:r.title,"aria-current":o?"page":void 0,style:{...f,display:"flex",alignItems:"center",gap:4,background:o?r.on:"rgba(255,255,255,0.06)",color:o?"#000":r.color},children:[r.label,r.badge&&(0,t.jsx)("span",{style:{fontSize:9,opacity:.7,marginLeft:2},children:r.badge})]},r.key)}),d]})}])},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 Six 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…"})})}])},8819,e=>{"use strict";var t=e.i(43476);let n="1px solid rgba(255,255,255,0.1)";function r({children:e,style:n}){return(0,t.jsx)("div",{style:{fontSize:13.5,color:"#8b9a9a",lineHeight:1.6,marginTop:4,...n},children:e})}e.s(["Body",0,r,"Btn",0,function({children:e,onClick:r,disabled:o,primary:l,tone:i,type:a="button"}){return(0,t.jsx)("button",{type:a,onClick:r,disabled:o,style:{padding:"9px 18px",borderRadius:7,fontSize:13.5,fontWeight:650,color:o?"#667":"#fff",border:n,background:o?"rgba(255,255,255,0.05)":"bad"===i?"rgba(255,80,80,0.15)":l?"linear-gradient(135deg, #9B59B6, #3498DB)":"rgba(255,255,255,0.08)",cursor:o?"not-allowed":"pointer"},children:e})},"FONT",0,'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',"LINE",0,n,"Mono",0,function({children:e}){return(0,t.jsx)("code",{style:{background:"rgba(255,255,255,0.08)",padding:"1px 5px",borderRadius:4,wordBreak:"break-all"},children:e})},"Section",0,function({id:e,title:o,intro:l,children:i}){return(0,t.jsxs)("section",{id:e,style:{padding:"24px 0",borderBottom:n,scrollMarginTop:16},children:[(0,t.jsx)("h2",{style:{fontSize:16,fontWeight:650,margin:"0 0 6px"},children:o}),l&&(0,t.jsx)(r,{style:{marginTop:0,marginBottom:12},children:l}),i]})},"Status",0,function({children:e,tone:n}){return(0,t.jsxs)("div",{role:"status",style:{marginTop:10,padding:"10px 14px",borderRadius:8,fontSize:13.5,lineHeight:1.6,color:"ok"===n?"#00ff88":"bad"===n?"#ff7676":"#e8e8ee",background:"ok"===n?"rgba(0,255,136,0.08)":"bad"===n?"rgba(255,80,80,0.08)":"rgba(255,255,255,0.05)",border:`1px solid ${"ok"===n?"rgba(0,255,136,0.3)":"bad"===n?"rgba(255,80,80,0.3)":"rgba(255,255,255,0.12)"}`},children:["ok"===n&&"✓ ",e]})}])},28867,86106,e=>{"use strict";var t=e.i(71645),n=e.i(7214);let r=Object.freeze({known:!1,sent:new Set,mine:new Map,version:0}),o=new Set,l=r,i=null,a=new Map;function s(e=l.sent,t=l.known){for(let n of(l=Object.freeze({known:t,sent:e,mine:new Map(a),version:l.version+1}),[...o]))n()}function u(e){return o.add(e),i||l.known||(i=fetch("/api/outreach").then(e=>e.ok?e.json():null).then(e=>{e&&s(new Set((e.pending||[]).map(n.keyFor)),!0)}).catch(()=>{}).finally(()=>{i=null})),()=>o.delete(e)}function d(){return l}async function f(e){let t=await fetch("/api/outreach",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),n=await t.json().catch(()=>({}));if(!t.ok)throw Error(n.error||"Could not save that.");return n}async function c(e,{bridgeId:t}={}){let r=(0,n.keyFor)(e),o=a.has(r)?a.get(r):void 0;a.set(r,!0),s();try{return await f({action:"mark-sent",connectionId:e.id,profileUrl:e.profile_url,bridgeId:t})}catch(e){throw void 0===o?a.delete(r):a.set(r,o),s(),e}}async function p(e){let t=(0,n.keyFor)(e),r=a.has(t)?a.get(t):void 0;a.set(t,!1),s();try{return await f({action:"undo",connectionId:e.id,profileUrl:e.profile_url})}catch(e){throw void 0===r?a.delete(t):a.set(t,r),s(),e}}e.s(["REQUESTS_UNKNOWN",0,r,"hasRequest",0,function(e,t=l){if(!e)return!1;let r=(0,n.keyFor)(e);return t.mine.has(r)?t.mine.get(r):t.known?t.sent.has(r):"pending"===e.unlock_status||"sent"===e.outreach_status},"markRequested",0,c,"requestCount",0,function(e=l){let t=new Set(e.known?e.sent:[]);for(let[n,r]of e.mine)r?t.add(n):t.delete(n);return t.size},"requestsNow",0,d,"undoRequest",0,p,"watchRequests",0,u],86106),e.s(["default",0,function(){return(0,t.useSyncExternalStore)(u,d,()=>r)}],28867)},39160,84278,e=>{"use strict";var t=e.i(7214),n=e.i(7837);function r(e){let t=String(e||"").trim();if(!t)return null;let n=t.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2}))?(?:\s*UTC)?$/);if(n)return Date.UTC(+n[1],n[2]-1,+n[3],+n[4],+n[5],+(n[6]||0));if(n=t.match(/^(\d{1,2})\/(\d{1,2})\/(\d{2,4}),?\s+(\d{1,2}):(\d{2})\s*(AM|PM)?$/i)){let e=100>+n[3]?2e3+ +n[3]:+n[3],t=n[4]%12;return"PM"===(n[6]||"").toUpperCase()&&(t+=12),Date.UTC(e,n[1]-1,+n[2],t,+n[5])}if(n=t.match(/^([A-Za-z]{3,9})\s+(\d{4})$/)){let e=Date.parse(`1 ${n[1]} ${n[2]} UTC`);return Number.isNaN(e)?null:e}let r=Date.parse(/\d{4}$/.test(t)?`${t} UTC`:t);return Number.isNaN(r)?null:r}let o=e=>(0,t.keyFor)({profile_url:e});function l(e=[]){let t=new Map;for(let n of e){let e=o(n["sender profile url"]),r=n["conversation id"];r&&e&&(t.has(e)||t.set(e,new Set),t.get(e).add(r))}let n=null;for(let[e,r]of t)(!n||r.size>t.get(n).size)&&(n=e);return n}let i=e=>{let t=c(e);return t?`name:${t}`:null},a=/sponsored/i,s=/in\s?mail/i,u=/linkedin\.com\/(company|showcase|school)\//i,d=e=>/^(yes|true|1)$/i.test(String(e||"").trim());function f(e,t){if(!e||!e.total)return"never";let n=t-e.last;return n<=2592e6||e.recent>=3?"warm":n<=31536e6?"cool":"dormant"}let c=e=>String(e||"").split(",")[0].normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().replace(/[^a-z0-9 ]+/g," ").replace(/\s+/g," ").trim();e.s(["buildConversations",0,function(e=[],{keepText:t=!1}={}){let n=l(e),f=new Map;for(let t of e)n&&o(t["sender profile url"])===n&&t.from&&f.set(t.from,(f.get(t.from)||0)+1);let p=c([...f].sort((e,t)=>t[1]-e[1])[0]?.[0]||""),g=e=>!!e&&(e===n||!!p&&e===`name:${p}`),m={},h=new Map,y=0,b=0;for(let n of e){let e=n["conversation id"],l=r(n.date);if(!e||null==l){b+=1;continue}if(d(n["is message draft"])){y+=1;continue}let f=o(n["sender profile url"])||i(n.from);f&&n.from&&!m[f]&&(m[f]=String(n.from).trim());let c=String(n["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(o),p=String(n.to||"").split(",").map(e=>e.trim()).filter(Boolean),w=c.length?c:p.map(i).filter(Boolean);c.length&&c.length===p.length&&c.forEach((e,t)=>{m[e]||(m[e]=p[t])}),c.length||p.forEach(e=>{let t=i(e);t&&!m[t]&&(m[t]=e)}),h.has(e)||h.set(e,{id:e,title:"",everyone:new Set,messages:[],kind:null,folder:"",newest:-1/0});let k=h.get(e);f&&k.everyone.add(f),w.forEach(e=>k.everyone.add(e)),k.kind=k.kind||function(e){let t=String(e.folder||""),n=String(e["conversation title"]||"");return a.test(t)||a.test(n)||u.test(String(e["sender profile url"]||""))?"sponsored":s.test(t)||s.test(n)?"inmail":null}(n),l>=k.newest&&(k.newest=l,k.folder=String(n.folder||"").trim().toLowerCase().slice(0,30));let S={t:l,fromMe:g(f)};t&&(S.text=[n.subject,n.content].map(e=>String(e||"").trim()).filter(Boolean).join("\n\n"),!k.title&&n["conversation title"]&&(k.title=String(n["conversation title"]).trim())),k.messages.push(S)}let w=[];for(let e of h.values()){let n=[...e.everyone].filter(e=>e&&!g(e)).sort();e.messages.sort((e,t)=>e.t-t.t);let r={id:e.id,people:n,group:n.length>1,kind:e.kind,folder:e.folder,messages:e.messages};t&&(r.title=e.title),w.push(r)}for(let e of Object.keys(m))g(e)&&delete m[e];return{self:n,conversations:w,names:m,drafts:y,skipped:b}},"buildInvitations",0,function(e=[],{keepText:t=!1}={}){let n=[];for(let l of e){let e=String(l.direction||"").toUpperCase();if("INCOMING"!==e&&"OUTGOING"!==e)continue;let a="INCOMING"===e?"in":"out",s=String(("in"===a?l.from:l.to)||"").trim(),u=o("in"===a?l.inviterprofileurl:l.inviteeprofileurl),d=(u&&/\/in\//.test(u)?u:null)||i(s);if(!d)continue;let f=r(l["sent at"]),c={id:`${a}|${d}|${f??""}`,dir:a,key:d,name:s.slice(0,120),t:f};t&&String(l.message||"").trim()&&(c.note=String(l.message).trim().slice(0,2e3)),n.push(c)}return n.sort((e,t)=>(t.t||0)-(e.t||0))},"careerChapters",0,function(e=[],t=[],n=Date.now()){let l=e.map(e=>({company:e["company name"]||"",title:e.title||"",from:r(e["started on"]),to:r(e["finished on"])})).filter(e=>e.company&&null!=e.from).sort((e,t)=>e.from-t.from),i=t.map(e=>({url:o(e.url||e.profile_url),t:r(e["connected on"]||e.connected_on)})).filter(e=>null!=e.t);return l.map(e=>{let t=e.to??n,r=i.filter(n=>n.t>=e.from&&n.t<t);return{...e,to:e.to,made:r.length,people:r.map(e=>e.url)}})},"conversationSummary",0,function(e){let t=e.messages[e.messages.length-1];return{id:e.id,people:e.people,group:e.group,kind:e.kind||null,folder:e.folder||"",last:t?t.t:null,lastFromThem:t?!t.fromMe:null,count:e.messages.length,mine:e.messages.filter(e=>e.fromMe).length}},"invitationSplit",0,function(e=[]){let t=0,n=0;for(let r of e){let e=String(r.direction||"").toUpperCase();"INCOMING"===e?t+=1:"OUTGOING"===e&&(n+=1)}return{incoming:t,outgoing:n,total:t+n}},"messageStats",0,function(e=[]){let t=l(e),n=new Map;for(let t of e){let e=o(t["sender profile url"]),l=t["conversation id"];if(!l||!e)continue;let i=String(t["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(o),a=r(t.date);if(null==a)continue;n.has(l)||n.set(l,{people:new Set,msgs:[]});let s=n.get(l);s.people.add(e),i.forEach(e=>s.people.add(e)),s.msgs.push({from:e,t:a})}let i=0,a=new Map;for(let e of n.values()){let n=[...e.people].filter(e=>e!==t);if(1!==n.length||!e.people.has(t))continue;let r=n[0],o=a.get(r)||{last:0,lastFromThem:!1,total:0,times:[]};for(let n of e.msgs)o.total+=1,o.times.push(n.t),n.t>=o.last&&(o.last=n.t,o.lastFromThem=n.from!==t),n.t>i&&(i=n.t);a.set(r,o)}for(let e of a.values())e.recent=e.times.filter(e=>e>i-7776e6).length,delete e.times;return{self:t,asOf:i||null,people:a}},"nameKey",0,c,"postingEffect",0,function(e=[],t=[]){let n=e.map(e=>({t:r(e.date),link:e.sharelink||e["share link"]||""})).filter(e=>null!=e.t).sort((e,t)=>e.t-t.t),o=t.map(e=>r(e["connected on"]||e.connected_on)).filter(e=>null!=e).sort((e,t)=>e-t);if(!o.length)return{posts:[],usualWeek:0,afterPosts:0};let l=Math.max(6048e5,o[o.length-1]-o[0]),i=o.length/l*6048e5,a=n.map(e=>({...e,week:o.filter(t=>t>=e.t&&t<e.t+6048e5).length})),s=a.length?a.reduce((e,t)=>e+t.week,0)/a.length:0;return{posts:a,usualWeek:i,afterPosts:s}},"readTable",0,function(e,t){let r=(0,n.parseCsv)(String(e||"")),o=r.findIndex(e=>e.some(e=>e.trim().toLowerCase()===t.toLowerCase()));if(o<0)return[];let l=r[o].map(e=>e.trim().toLowerCase());return r.slice(o+1).filter(e=>e.some(e=>e.trim())).map(e=>Object.fromEntries(l.map((t,n)=>[t,(e[n]??"").trim()])))},"warmthOf",0,f],84278);let p="six-degrees-galaxy-lab",g="six-degrees-galaxy-layouts",m=Object.freeze({on:!0,gravity:0,rings:1,push:15,pull:1,distance:1,dotSize:1,lines:1,sizeBy:"power",names:"key",branch:!1,colourBy:"tier",speed:15,loop:!1,labels:!0,v:2}),h=["gravity","rings","push","pull","distance","dotSize","lines","sizeBy","names","branch","colourBy","speed","loop"],y=Object.freeze({gravity:.25,rings:0,push:25,pull:2.5,distance:.35,sizeBy:"reach"}),b=Object.freeze({gravity:0,rings:3,push:6,pull:4,distance:.22,sizeBy:"power"}),w=new Set,k=null;function S(){return k||(k=function(){try{let e=JSON.parse(localStorage.getItem(p)||"null");if(!e||"object"!=typeof e)return m;return{...m,...e,...e.v===m.v?{}:{branch:!1},v:m.v,on:!0}}catch{return m}}()),k}function x(e){k=null===e?{...m,labels:S().labels}:{...S(),...e,on:!0};try{localStorage.setItem(p,JSON.stringify(k))}catch{}w.forEach(e=>e())}let v=null,M=new Set;function F(){if(!v){try{v=JSON.parse(localStorage.getItem(g)||"[]")}catch{v=[]}Array.isArray(v)||(v=[])}return v}function C(e){v=e;try{localStorage.setItem(g,JSON.stringify(e))}catch{}M.forEach(e=>e())}let I=new Set,B={at:null,playing:!1,min:null,max:null,of:0,find:"",fly:0,found:0,social:void 0},N=null;function _(e){let t={...B,...e};Object.keys(e).every(e=>Object.is(t[e],B[e]))||(B=t,I.forEach(e=>e()))}function j(){cancelAnimationFrame(N),N=null,_({playing:!1})}let O=null;function T(e){let n=new Map;for(let[r,o]of Object.entries(e?.people||{}))n.set((0,t.keyFor)({profile_url:r}),{...o});for(let[r,o]of Object.entries(e?.live||{})){let e=(0,t.keyFor)({profile_url:r}),l=n.get(e)||{total:0,recent:0};o.last&&(!l.last||o.last>l.last)&&(l.last=o.last,"boolean"==typeof o.lastFromThem&&(l.lastFromThem=o.lastFromThem)),l.unread=o.unread,l.total=Math.max(l.total||0,1),n.set(e,l)}let r=Math.max(e?.asOf||0,e?.liveAt&&Date.parse(e.liveAt)||0);for(let e of n.values())(e.last||0)>r&&(r=e.last);return{merged:n,asOf:r,chapters:e?.chapters||[],posts:e?.posts?.posts||[]}}let E={1:"#4FC3F7",2:"#BA68C8",3:"#FFB74D"},A=["#FF6B6B","#4ECDC4","#FFD93D","#A29BFE","#00B894","#FD79A8","#74B9FF","#E17055"],D={warm:"#FF7043",cool:"#4FC3F7",dormant:"#8D6E63",never:"#546E7A"},$="#4a5568",z=["#2b1b6b","#6a1b9a","#c2185b","#f4511e","#ffb300","#fff3b0"];function L(e){let t=Math.max(0,Math.min(1,Number(e)||0))*(z.length-1),n=Math.min(z.length-2,Math.floor(t)),r=t-n,o=z[n],l=z[n+1];return`#${[1,3,5].map(e=>Math.round(parseInt(o.slice(e,e+2),16)*(1-r)+parseInt(l.slice(e,e+2),16)*r).toString(16).padStart(2,"0")).join("")}`}function U(e=[],t=()=>0){let n=[...new Set(e.map(t))].sort((e,t)=>e-t),r=new Map(n.map((e,t)=>[e,n.length>1?t/(n.length-1):1]));return e=>r.get(t(e))??0}let R=e=>String(e||"").trim().toLowerCase();e.s(["CLUSTERS",0,y,"LAB_DEFAULTS",0,m,"ORBIT",0,b,"applyLayout",0,function(e){let t=F().find(t=>t.name===e);t&&x(Object.fromEntries(h.filter(e=>e in t.settings).map(e=>[e,t.settings[e]])))},"bornTimes",0,function(e,t){let n=new Map(e.map(e=>[e.id,e])),r=new Map,o=(e,l=0)=>{if(r.has(e.id))return r.get(e.id);let i=-1/0,a=t.get(e.id);if(1===e.degree||null==a||l>6){let t=e.connected_date?Date.parse(e.connected_date):NaN;i=Number.isNaN(t)?-1/0:t}return null!=a&&n.has(a)&&l<=6&&(i=Math.max(i,o(n.get(a),l+1))),r.set(e.id,i),i};return e.map(e=>o(e))},"chapterAt",0,function(e,t){let n=null;for(let r of e?.chapters||[])Number.isFinite(r.from)&&r.from<=t&&(!n||r.from>n.from)&&(n=r);return n&&(!Number.isFinite(n.to)||n.to>t)?n:null},"clockNow",0,()=>B,"colourScheme",0,function(e,n,r,o){if("degree"===e)return{of:e=>E[Math.min(e.degree||1,3)],legend:[["1st",E[1]],["2nd",E[2]],["3rd+",E[3]]]};if("company"===e){let e=new Map;for(let t of n){let n=R(t.company);if(!n)continue;let r=e.get(n)||{name:String(t.company).trim(),n:0};r.n+=1,e.set(n,r)}let t=[...e.entries()].filter(([,e])=>e.n>1).sort((e,t)=>t[1].n-e[1].n).slice(0,A.length),r=new Map(t.map(([e],t)=>[e,A[t]]));return{of:e=>r.get(R(e.company))||$,legend:[...t.map(([,e],t)=>[e.name,A[t]]),["Other",$]]}}if("heat"===e){let e=function(e=[]){return U(e,t.score)}(n);return{of:t=>L(e(t)),heat:e,legend:[["Cold",L(.1)],["Warm",L(.45)],["Hot",L(.75)],["Hottest",L(1)]]}}return"warmth"===e&&o?{of:e=>1===(e.degree||1)?D[f(o.merged.get((0,t.keyFor)(e)),o.asOf)]:"#2d3748",legend:[["Warm",D.warm],["Cool",D.cool],["Dormant",D.dormant],["Never messaged",D.never]]}:{of:e=>r[e.tier]||"#666",legend:Object.entries(r)}},"effectiveLab",0,e=>e.on?e:e.labels===m.labels?m:{...m,labels:e.labels},"findMatches",0,function(e,t){let n=String(t||"").trim().toLowerCase();if(n.length<2)return null;let r=new Set;for(let t of e)[t.name,t.company,t.role,t.headline].some(e=>e&&String(e).toLowerCase().includes(n))&&r.add(t.id);return r},"forgetLayout",0,function(e){C(F().filter(t=>t.name!==e))},"heatBy",0,U,"heatColour",0,L,"labNow",0,S,"layoutOf",0,function(e){let t=t=>Object.entries(t).every(([t,n])=>e[t]===n);return["gravity","rings","push","pull","distance"].every(t=>e[t]===m[t])?"rings":t(y)?"clusters":t(b)?"orbit":null},"layoutsNow",0,F,"loadSocial",0,function(){return O||(O=fetch("/api/social").then(e=>e.ok?e.json():{}).then(e=>{_({social:e.social?T(e.social):null})}).catch(()=>_({social:null}))),O},"mergeSocial",0,T,"milestones",0,function(e){let t=[];for(let n of e?.chapters||[])Number.isFinite(n.from)&&t.push({t:n.from,kind:"job",label:n.company});for(let n of e?.posts||[])Number.isFinite(n.t)&&t.push({t:n.t,kind:"post",label:"You posted"});return t.sort((e,t)=>e.t-t.t)},"pause",0,j,"play",0,function e(){if(null==B.min||null==B.max||B.max<=B.min)return;let t=B.max-B.min,n=1e3*Math.max(1,Number(S().speed)||15),r=null==B.at||B.at>=B.max?B.min:B.at,o=performance.now()-(r-B.min)/t*n;_({at:r,playing:!0});let l=r=>{let i=Math.min(B.max,B.min+(r-o)/n*t);if(_({at:i}),i>=B.max){N=null,_({playing:!1}),S().loop&&setTimeout(()=>{N||B.at!==B.max||(_({at:B.min}),e())},1200);return}N=requestAnimationFrame(l)};cancelAnimationFrame(N),N=requestAnimationFrame(l)},"reachCounts",0,function(e,t){let n=new Map(e.map(e=>[e.id,0]));for(let r of e){let e=t.get(r.id);for(let r=0;null!=e&&r<7;r++)n.set(e,(n.get(e)||0)+1),e=t.get(e)}return n},"saveLayout",0,function(e){let t=String(e||"").trim().slice(0,40);if(!t)return;let n=S(),r=Object.fromEntries(h.map(e=>[e,n[e]]));C([...F().filter(e=>e.name!==t),{name:t,settings:r}])},"setClock",0,_,"setLab",0,x,"stopReplay",0,function(){j(),_({at:null})},"watchClock",0,function(e){return I.add(e),()=>I.delete(e)},"watchLab",0,function(e){w.add(e);let t=t=>{t.key===p&&(k=null,e())};return window.addEventListener("storage",t),()=>{w.delete(e),window.removeEventListener("storage",t)}},"watchLayouts",0,function(e){return M.add(e),()=>M.delete(e)}],39160)},19821,e=>{"use strict";async function t(e){let t=e?`/api/network?userId=${encodeURIComponent(e)}`:"/api/network",n=await fetch(t);if(!n.ok)throw Error(`Failed to load network (${n.status})`);let r=await n.json();return{degree1:r.degree1||[],degree2:r.degree2||[],degree3:r.degree3||[],ties:Number(r.ties)||0}}e.s(["loadNetwork",0,t])},48235,51798,e=>{"use strict";let t={fast:{label:"Fast",pagePause:20,chunkCooldown:60,profileGap:60},medium:{label:"Medium",pagePause:45,chunkCooldown:180,profileGap:90},slow:{label:"Slow",pagePause:90,chunkCooldown:300,profileGap:120}},n=e=>t[e]||t.fast;function r(e,t){let r=n(e),o=Math.max(0,Math.floor(Number(t)||0));return o*(6+r.pagePause)+Math.floor(o/10)*r.chunkCooldown}e.s(["PACES",0,t,"PACE_NAMES",0,["slow","medium","fast"],"durationText",0,function(e){if(!(e>=60))return"under a minute";let t=Math.round(e/60);if(t<60)return`about ${t} min`;let n=Math.floor(t/60),r=t%60;return`about ${n} h${r?` ${r} min`:""}`},"paceOf",0,n,"paceSeconds",0,r,"searchesPerHour",0,function(e){let t=n(e);return Math.round(3600/(6+t.pagePause+t.chunkCooldown/10))}],51798);var o=e.i(7214);function l(e,t){return e?t.scanned.has(e.id)||e.profile_url&&t.read?.has((0,o.keyFor)(e))?"scanned":e.profile_url&&t.hidden.has((0,o.keyFor)(e))?"hidden":"todo":"todo"}function i(e,t){if(!e||1!==e.degree||null==e.unlocked_from_bridge_id)return null;let n=l(e,t);return"todo"===n?"ready":n}e.s(["circleScanCost",0,function(e=100,t="fast"){let n=Math.max(1,Math.min(100,Math.round(e)||100)),o=t&&"fast"!==t?Math.max(5,Math.round(r(t,n)/60)):n>=100?55:Math.max(5,Math.round(.55*n));return{profileViews:1,searches:n,minutes:o}},"circleState",0,l,"reachIndex",0,function(e=[],t=[],n={}){let r=new Set;for(let e of t||[])e?.source_connection_id!=null&&r.add(e.source_connection_id);let l=new Set;for(let e of n?.skips||[])e?.profileUrl&&l.add((0,o.keyFor)({profile_url:e.profileUrl}));let i=new Set;for(let e of n?.read||[])e&&i.add((0,o.keyFor)({profile_url:e}));let a=new Map;for(let[e,t]of Object.entries(n?.lists||{}))e&&t&&a.set((0,o.keyFor)({profile_url:e}),t);let s=new Map;for(let t of e||[]){let e=t?.unlocked_from_bridge_id;if(null==e||1!==t.degree)continue;let n=s.get(e);n||s.set(e,n=[]),n.push(t)}return{scanned:r,read:i,hidden:l,reachedFrom:s,lists:a}},"reachState",0,i,"readyByCircle",0,function(e){let t=new Map;for(let[n,r]of e.reachedFrom){let o=r.filter(t=>"ready"===i(t,e)).length;o&&t.set(n,o)}return t},"readyToScan",0,function(e,t){return(e||[]).filter(e=>"ready"===i(e,t)).sort(o.compareBridges)},"scanBars",0,function(e,t){let n=l(e,t),r=e?.profile_url?t.lists?.get((0,o.keyFor)(e)):null;return"hidden"===n?null:r?r.more?r.total?Math.max(1,Math.min(4,Math.round(5*Math.min(1,10*r.pages/r.total)))):2:5:"scanned"===n?2:null}],48235)},7214,36774,e=>{"use strict";let t=/^[A-Za-z0-9_-]+\.(webp|jpg|jpeg|png)$/,n="/avatars/";function r(e){return"string"==typeof e&&e.startsWith(n)&&t.test(e.slice(n.length))?e:null}e.s(["localPhoto",0,r],36774);let o={S:0,A:1,B:2,C:3,D:4};function l(e){let t=parseFloat(e?.power_score);return Number.isFinite(t)?t:0}function i(e){return Math.round(10*l(e))/10}function a(e){return String(e?.profile_url||"").split(/[?#]/)[0].replace(/\/+$/,"")||`id:${e?.id}`}let s=(e,t)=>String(e??"").localeCompare(String(t??""),void 0,{numeric:!0});function u(e,t){return(o[e.tier]??9)-(o[t.tier]??9)||l(t)-l(e)||String(e.name||"").localeCompare(String(t.name||""))||s(e.id,t.id)}function d(e,t){return e.bridge&&t.bridge?u(e.bridge,t.bridge):e.bridge?-1:t.bridge?1:s(e.id,t.id)}function f(e,t){return t.score-e.score||t.waysIn-e.waysIn||d(e.routes[0]||c,t.routes[0]||c)||String(e.person.name||"").localeCompare(String(t.person.name||""))||(e.key<t.key?-1:+(e.key>t.key))}let c={id:null,bridge:null};function p(e){let t=String(e||"").trim().split(/\s+/).filter(Boolean);return t.length<2?t[0]||"":`${t[0]} ${t[t.length-1].charAt(0)}.`}function g(e,t){let n=String(e||"");return t<=1?n?"…":"":n.length>t?`${n.slice(0,t-1)}…`:n}e.s(["TIERS",0,["S","A","B","C","D"],"compareBridges",0,u,"comparePower",0,f,"convergeLayout",0,function(e,t=800,n=!1,{cards:r=!1,mutuals:o=0}={}){let l=r?46:n?40:34,i=Math.round(t*(n?.44:.36)),a=Math.round(t*(n?.8:r?.6:.62)),s=[],u=null;for(let t of e?.routes||[])t.bridge?s.push({id:t.id,bridge:t.bridge,unresolved:!1,count:1}):u?u.count++:s.push(u={id:null,bridge:null,unresolved:!0,count:1});let d=Math.max(0,Math.floor(Number(o)||0)-(e?.waysIn||0)),f=Math.min(60,d),c=r?12:11,m=r?220:n?96:120,h=Math.max(1,Math.floor(m/c)+1),y=Math.ceil(f/h),b=f?40+y*c:0,w=Math.max(0,s.length-1)*l+b,k=Math.max(n?190:r?250:220,32+w+48),S=k/2,x=S-w/2,v=Math.max(4,Math.floor((i-10-42)/6)),M=s.map((e,t)=>{let n=e.unresolved?`can't be named (${e.count})`:e.bridge.name||"";return{...e,x:i,y:x+t*l,r:6,primary:0===t&&!e.unresolved,label:n.length<=v?n:g(e.unresolved?n:p(n),v)}}),F={x:a,y:S,r:17*!r,rings:r?[]:[32,50,70].filter(e=>e<=S-4)},C=M.map(t=>({key:e?.key,bridgeId:t.id,primary:t.primary,unresolved:t.unresolved,tier:t.bridge?.tier??null,x1:t.x,y1:t.y,x2:F.x,y2:F.y})),I={x:20,y:S,r:14},B=M.map(e=>({id:e.id,x1:I.x,y1:I.y,x2:e.x,y2:e.y})),N=e?[{key:e.key,p:e,x:F.x,y:F.y,r:F.r,rings:F.rings,big:!0,label:""}]:[],_=x+Math.max(0,s.length-1)*l+40,j=r?i-236+8:i-m,O=Array.from({length:f},(e,t)=>({x:j+t%h*c,y:_+Math.floor(t/h)*c})),T=e?.waysIn?e.waysIn/(e.waysIn+d):1;return{width:t,height:k,you:I,target:F,people:N,bridges:M,links:C,spokes:B,ghosts:O,unscanned:d,ghostLabel:f?{x:j,y:_-13}:null,drawn:T}},"keyFor",0,a,"mapCount",0,function(e,t=10){let n=Math.max(0,Math.min(100,Number(e)||0));return n<=50?t:Math.max(1,Math.round(t*(100-n)/50))},"mostMutuals",0,function(e=[],t=()=>0,n=7){return[...e].sort((e,n)=>Math.max(t(n)||0,n.waysIn)-Math.max(t(e)||0,e.waysIn)||n.waysIn-e.waysIn||f(e,n)).slice(0,n)},"routeIndex",0,function(e=[]){let t=new Map;for(let n of e||[]){let e=a(n),r=t.get(e);r||(r=new Set,t.set(e,r)),r.add(n.source_connection_id??null)}return t},"routesFor",0,function(e,t,n){return e?[...t?.get(a(e))??(null!=e.source_connection_id?new Set([e.source_connection_id]):new Set)].map(e=>({id:e,bridge:n?.get(e)??null})).sort(d):[]},"score",0,l,"score1",0,i,"separationPeople",0,function(e=[],t=[]){let n=new Map;for(let e of t||[])n.set(e.id,e);let o=new Map,l=new Map;for(let t of e||[]){let e=a(t);l.set(t.id,e);let n=o.get(e);n?function(e,t){let n=i(e)-i(t);if(n)return n>0;let o=!!r(e.profile_image_url);return!!r(t.profile_image_url)!==o?o:0>s(e.id,t.id)}(t,n.person)&&(n.person=t):(n={key:e,person:t,rowIds:[],routeIds:new Set},o.set(e,n)),n.rowIds.push(t.id),n.routeIds.add(t.source_connection_id??null)}let u={people:o.size,byTier:{S:0,A:0,B:0,C:0,D:0},multi:0,bridges:0,unresolvedIds:0,peopleOnlyUnresolved:0,onlyUnresolvedVia:0},c=new Set,p=new Set,g=new Set,m=[];for(let e of o.values()){let t=[...e.routeIds].map(e=>({id:e,bridge:n.get(e)??null}));t.sort(d);let r=t.filter(e=>e.bridge);for(let e of t)(e.bridge?c:p).add(e.id);if(!r.length)for(let e of(u.peopleOnlyUnresolved++,t))g.add(e.id);let{person:o}=e,l=o.tier;void 0!==u.byTier[l]&&u.byTier[l]++,t.length>1&&u.multi++,m.push({key:e.key,person:o,score:i(o),tier:l,routes:t,waysIn:t.length,rowIds:e.rowIds,haystack:[o.name,o.headline,o.company,o.role,...r.map(e=>e.bridge.name)].filter(Boolean).join("\n").toLowerCase(),rank:0,tied:!1})}return u.bridges=c.size,u.unresolvedIds=p.size,u.onlyUnresolvedVia=g.size,m.sort(f),function(e){for(let t=0;t<e.length;t++){let n=e[t],r=e[t-1],o=r&&r.score===n.score&&r.waysIn===n.waysIn;n.rank=o?r.rank:t+1,o&&(n.tied=!0,r.tied=!0)}}(m),{people:m,rowToKey:l,summary:u}},"shortName",0,p,"summitLayout",0,function(e=[],t=800,n=!1,{cards:r=!1}={}){let o=r?50:n?36:26,l=Math.round(.42*t),i=Math.round(.58*t),a=e.map((e,n)=>{var l;return{key:e.key,p:e,x:i,y:16+n*o,r:r?0:(l=e.waysIn)>=4?8.5:3===l?7:2===l?5.5:4,label:g(`#${e.rank}${e.tied?"=":""} ${e.person.name||""}`,Math.floor((t-i-60)/6.2))}}),s=new Map,d="\0unresolved";for(let e of a)for(let t of e.p.routes){let n=t.bridge?t.id:d,r=s.get(n);r||(r={id:t.bridge?t.id:null,bridge:t.bridge,unresolved:!t.bridge,ys:[],count:0},s.set(n,r)),r.count++,r.ys.push(e.y)}let f=[...s.values()].map(e=>({...e,bary:e.ys.reduce((e,t)=>e+t,0)/e.ys.length}));f.sort((e,t)=>e.bary-t.bary||e.unresolved-t.unresolved||(e.bridge&&t.bridge?u(e.bridge,t.bridge):0));let c=a.length?a[a.length-1].y:16,m=function(e=[],t=18,n=0){let r=[];e.forEach((e,n)=>{for(r.push({sum:e-n*t,count:1});r.length>1&&r[r.length-2].sum/r[r.length-2].count>r[r.length-1].sum/r[r.length-1].count;){let e=r.pop();r[r.length-1].sum+=e.sum,r[r.length-1].count+=e.count}});let o=r.flatMap(e=>Array(e.count).fill(e.sum/e.count)).map((e,n)=>e+n*t),l=o.length&&o[0]<n?n-o[0]:0;return o.map(e=>e+l)}(f.map(e=>e.bary),r?36:18,16),h=Math.max(4,Math.floor((l-10-42)/6));f.forEach((e,t)=>{if(e.x=l,e.y=m[t],e.r=5,e.unresolved)e.label=g(`can't be named (${e.count})`,h);else{let t=e.bridge.name||"";e.label=t.length<=h?t:g(p(t),h)}delete e.ys});let y=new Map(f.map(e=>[e.unresolved?d:e.id,e]));for(let e of f)e.onlyFor=0,e.bestFor=0;for(let e of a){let t=e.p.routes[0],n=t?y.get(t.bridge?t.id:d):null;n&&n.bestFor++,1===e.p.waysIn&&n&&n.onlyFor++}let b=[];for(let e of a){let t=new Set;e.p.routes.forEach((n,r)=>{let o=n.bridge?n.id:d;if(t.has(o))return;t.add(o);let l=y.get(o);b.push({key:e.key,bridgeId:l.id,primary:0===r&&!l.unresolved,unresolved:l.unresolved,tier:l.bridge?.tier??null,x1:l.x,y1:l.y,x2:e.x,y2:e.y})})}let w=Math.max(c,f.length?f[f.length-1].y:0),k=a.length?Math.ceil(w+16):0,S={x:20,y:a.length?(16+Math.max(c,w))/2:16,r:14},x=f.map(e=>({id:e.id,x1:S.x,y1:S.y,x2:e.x,y2:e.y}));return{width:t,height:k,you:S,people:a,bridges:f,links:b,spokes:x}}],7214)},5258,e=>{"use strict";e.s(["TIER_COLORS_CLASSIC",0,{S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},"TIER_ORDER",0,["S","A","B","C","D"],"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()}])}]);