six-degrees 0.5.1-beta.1 → 0.7.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 (567) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +3 -0
  3. package/.next/standalone/.next/build-manifest.json +3 -3
  4. package/.next/standalone/.next/prerender-manifest.json +14 -14
  5. package/.next/standalone/.next/routes-manifest.json +18 -0
  6. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_not-found/page.js +1 -1
  12. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  15. package/.next/standalone/.next/server/app/_not-found.rsc +28 -19
  16. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +28 -19
  17. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +25 -15
  18. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  19. package/.next/standalone/.next/server/app/api/admin-delete/route.js +2 -2
  20. package/.next/standalone/.next/server/app/api/admin-delete/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/admin-update/route.js +2 -2
  22. package/.next/standalone/.next/server/app/api/admin-update/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/bridges/route.js +2 -2
  24. package/.next/standalone/.next/server/app/api/bridges/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/bulk-import/route.js +2 -2
  26. package/.next/standalone/.next/server/app/api/bulk-import/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js +3 -3
  28. package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/company-scores/route.js +3 -3
  30. package/.next/standalone/.next/server/app/api/company-scores/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/connections/route.js +2 -2
  32. package/.next/standalone/.next/server/app/api/connections/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/data/backup/route/app-paths-manifest.json +3 -0
  34. package/.next/standalone/.next/server/app/api/data/backup/route/build-manifest.json +12 -0
  35. package/.next/standalone/.next/server/app/api/data/backup/route/server-reference-manifest.json +4 -0
  36. package/.next/standalone/.next/server/app/api/data/backup/route.js +7 -0
  37. package/.next/standalone/.next/server/app/api/data/backup/route.js.map +5 -0
  38. package/.next/standalone/.next/server/app/api/data/backup/route.js.nft.json +1 -0
  39. package/.next/standalone/.next/server/app/api/data/backup/route_client-reference-manifest.js +3 -0
  40. package/.next/standalone/.next/server/app/api/data/csv/route/app-paths-manifest.json +3 -0
  41. package/.next/standalone/.next/server/app/api/data/csv/route/build-manifest.json +12 -0
  42. package/.next/standalone/.next/server/app/api/data/csv/route/server-reference-manifest.json +4 -0
  43. package/.next/standalone/.next/server/app/api/data/csv/route.js +8 -0
  44. package/.next/standalone/.next/server/app/api/data/csv/route.js.map +5 -0
  45. package/.next/standalone/.next/server/app/api/data/csv/route.js.nft.json +1 -0
  46. package/.next/standalone/.next/server/app/api/data/csv/route_client-reference-manifest.js +3 -0
  47. package/.next/standalone/.next/server/app/api/data/export/route.js +1 -1
  48. package/.next/standalone/.next/server/app/api/data/export/route.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/api/data/import/route.js +1 -1
  50. package/.next/standalone/.next/server/app/api/data/import/route.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/api/data/restart/route.js +1 -1
  52. package/.next/standalone/.next/server/app/api/data/restart/route.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/app/api/data/restore/route/app-paths-manifest.json +3 -0
  54. package/.next/standalone/.next/server/app/api/data/restore/route/build-manifest.json +12 -0
  55. package/.next/standalone/.next/server/app/api/data/restore/route/server-reference-manifest.json +4 -0
  56. package/.next/standalone/.next/server/app/api/data/restore/route.js +7 -0
  57. package/.next/standalone/.next/server/app/api/data/restore/route.js.map +5 -0
  58. package/.next/standalone/.next/server/app/api/data/restore/route.js.nft.json +1 -0
  59. package/.next/standalone/.next/server/app/api/data/restore/route_client-reference-manifest.js +3 -0
  60. package/.next/standalone/.next/server/app/api/data/reveal/route.js +1 -1
  61. package/.next/standalone/.next/server/app/api/data/reveal/route.js.nft.json +1 -1
  62. package/.next/standalone/.next/server/app/api/data/route.js +1 -1
  63. package/.next/standalone/.next/server/app/api/data/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/delete-cluster/route.js +2 -2
  65. package/.next/standalone/.next/server/app/api/delete-cluster/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/ingest/route.js +2 -2
  67. package/.next/standalone/.next/server/app/api/ingest/route.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/api/network/route.js +2 -2
  69. package/.next/standalone/.next/server/app/api/network/route.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/api/notifications/route.js +2 -2
  71. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/api/outreach/route.js +2 -2
  73. package/.next/standalone/.next/server/app/api/outreach/route.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/api/queue/route.js +2 -2
  75. package/.next/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/api/scraper/route.js +4 -2
  77. package/.next/standalone/.next/server/app/api/scraper/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/settings/route.js +3 -3
  79. package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js +3 -3
  81. package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js +3 -3
  83. package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/setup-profile/route.js +2 -2
  85. package/.next/standalone/.next/server/app/api/setup-profile/route.js.nft.json +1 -1
  86. package/.next/standalone/.next/server/app/api/social/crm/route.js +1 -1
  87. package/.next/standalone/.next/server/app/api/social/crm/route.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/api/social/messages/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/social/messages/route.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/api/social/route.js +2 -2
  91. package/.next/standalone/.next/server/app/api/social/route.js.nft.json +1 -1
  92. package/.next/standalone/.next/server/app/api/unlock/route.js +2 -2
  93. package/.next/standalone/.next/server/app/api/unlock/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/update/route.js.nft.json +1 -1
  95. package/.next/standalone/.next/server/app/api/update-images/route.js +2 -2
  96. package/.next/standalone/.next/server/app/api/update-images/route.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/api/users/route.js +2 -2
  98. package/.next/standalone/.next/server/app/api/users/route.js.nft.json +1 -1
  99. package/.next/standalone/.next/server/app/avatars/[file]/route.js +1 -1
  100. package/.next/standalone/.next/server/app/avatars/[file]/route.js.nft.json +1 -1
  101. package/.next/standalone/.next/server/app/import/page.js +1 -1
  102. package/.next/standalone/.next/server/app/import/page.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/import/page_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/import.html +1 -1
  105. package/.next/standalone/.next/server/app/import.rsc +32 -23
  106. package/.next/standalone/.next/server/app/import.segments/_full.segment.rsc +32 -23
  107. package/.next/standalone/.next/server/app/import.segments/_tree.segment.rsc +2 -2
  108. package/.next/standalone/.next/server/app/import.segments/import/__PAGE__.segment.rsc +23 -17
  109. package/.next/standalone/.next/server/app/index.html +1 -1
  110. package/.next/standalone/.next/server/app/index.rsc +29 -21
  111. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +23 -17
  112. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +29 -21
  113. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  114. package/.next/standalone/.next/server/app/launch/page.js +1 -1
  115. package/.next/standalone/.next/server/app/launch/page.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/launch/page_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/launch.html +2 -2
  118. package/.next/standalone/.next/server/app/launch.rsc +32 -23
  119. package/.next/standalone/.next/server/app/launch.segments/_full.segment.rsc +32 -23
  120. package/.next/standalone/.next/server/app/launch.segments/_tree.segment.rsc +2 -2
  121. package/.next/standalone/.next/server/app/launch.segments/launch/__PAGE__.segment.rsc +23 -17
  122. package/.next/standalone/.next/server/app/page.js +1 -1
  123. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/paths/page.js +1 -1
  126. package/.next/standalone/.next/server/app/paths/page.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/paths/page_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/paths.html +1 -1
  129. package/.next/standalone/.next/server/app/paths.rsc +32 -23
  130. package/.next/standalone/.next/server/app/paths.segments/_full.segment.rsc +32 -23
  131. package/.next/standalone/.next/server/app/paths.segments/_tree.segment.rsc +2 -2
  132. package/.next/standalone/.next/server/app/paths.segments/paths/__PAGE__.segment.rsc +18 -14
  133. package/.next/standalone/.next/server/app/profile/page.js +1 -1
  134. package/.next/standalone/.next/server/app/profile/page.js.nft.json +1 -1
  135. package/.next/standalone/.next/server/app/profile/page_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/profile.html +1 -1
  137. package/.next/standalone/.next/server/app/profile.rsc +32 -23
  138. package/.next/standalone/.next/server/app/profile.segments/_full.segment.rsc +32 -23
  139. package/.next/standalone/.next/server/app/profile.segments/_tree.segment.rsc +2 -2
  140. package/.next/standalone/.next/server/app/profile.segments/profile/__PAGE__.segment.rsc +23 -17
  141. package/.next/standalone/.next/server/app/queue/page.js +1 -1
  142. package/.next/standalone/.next/server/app/queue/page.js.nft.json +1 -1
  143. package/.next/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/queue.html +1 -1
  145. package/.next/standalone/.next/server/app/queue.rsc +32 -23
  146. package/.next/standalone/.next/server/app/queue.segments/_full.segment.rsc +32 -23
  147. package/.next/standalone/.next/server/app/queue.segments/_tree.segment.rsc +2 -2
  148. package/.next/standalone/.next/server/app/queue.segments/queue/__PAGE__.segment.rsc +20 -17
  149. package/.next/standalone/.next/server/app/scores/page.js +1 -1
  150. package/.next/standalone/.next/server/app/scores/page.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/scores/page_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/scores.html +1 -1
  153. package/.next/standalone/.next/server/app/scores.rsc +32 -23
  154. package/.next/standalone/.next/server/app/scores.segments/_full.segment.rsc +32 -23
  155. package/.next/standalone/.next/server/app/scores.segments/_tree.segment.rsc +2 -2
  156. package/.next/standalone/.next/server/app/scores.segments/scores/__PAGE__.segment.rsc +23 -17
  157. package/.next/standalone/.next/server/app/settings/page.js +1 -1
  158. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/settings.html +1 -1
  161. package/.next/standalone/.next/server/app/settings.rsc +32 -23
  162. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +32 -23
  163. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  164. package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +20 -17
  165. package/.next/standalone/.next/server/app/setup/page.js +1 -1
  166. package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/setup.html +1 -1
  169. package/.next/standalone/.next/server/app/setup.rsc +32 -23
  170. package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +32 -23
  171. package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  172. package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +18 -14
  173. package/.next/standalone/.next/server/app/social/page.js +1 -1
  174. package/.next/standalone/.next/server/app/social/page.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/social/page_client-reference-manifest.js +1 -1
  176. package/.next/standalone/.next/server/app/social.html +1 -1
  177. package/.next/standalone/.next/server/app/social.rsc +32 -23
  178. package/.next/standalone/.next/server/app/social.segments/_full.segment.rsc +32 -23
  179. package/.next/standalone/.next/server/app/social.segments/_tree.segment.rsc +2 -2
  180. package/.next/standalone/.next/server/app/social.segments/social/__PAGE__.segment.rsc +23 -17
  181. package/.next/standalone/.next/server/app-paths-manifest.json +3 -0
  182. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00la_y0._.js +1 -1
  183. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05_3-22._.js +1 -1
  184. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__15wc9e-._.js → [root-of-the-server]__063s0x7._.js} +2 -2
  185. package/.next/standalone/.next/server/chunks/[root-of-the-server]__066rab1._.js +7 -0
  186. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07t47cm._.js +1 -1
  187. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__13dx4sd._.js → [root-of-the-server]__0_4y8z7._.js} +3 -3
  188. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cj5jqc._.js +1 -1
  189. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e0fei3._.js +1 -1
  190. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fooke1._.js +7 -0
  191. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ljnyho._.js +1 -1
  192. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o5-tcg._.js +1 -1
  193. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qrnous._.js +1 -1
  194. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t3v1a1._.js +1 -1
  195. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t6y79e._.js +7 -0
  196. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wmexuc._.js +1 -1
  197. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x29muh._.js +7 -0
  198. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xu34sz._.js +1 -1
  199. package/.next/standalone/.next/server/chunks/[root-of-the-server]__133knx1._.js +1 -1
  200. package/.next/standalone/.next/server/chunks/[root-of-the-server]__15-17hl._.js +1 -1
  201. package/.next/standalone/.next/server/chunks/[root-of-the-server]__19b7mig._.js +1 -1
  202. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1a_6x37._.js +8 -0
  203. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1an_8pa._.js +7 -0
  204. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1bbcwub._.js +1 -1
  205. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1ducpz2._.js +3 -0
  206. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1eris29._.js +1 -1
  207. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1gjo_cq._.js +1 -1
  208. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1qcm08_._.js +1 -1
  209. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1tir0vc._.js +1 -1
  210. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1w25q0m._.js +1 -1
  211. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1xhyinn._.js +3 -0
  212. package/.next/standalone/.next/server/chunks/[root-of-the-server]__20rwfdw._.js +1 -1
  213. package/.next/standalone/.next/server/chunks/_02twlca._.js +1 -1
  214. package/.next/standalone/.next/server/chunks/_072jl0y._.js +1 -1
  215. package/.next/standalone/.next/server/chunks/_0lw8_i0._.js +1 -1
  216. package/.next/standalone/.next/server/chunks/_0sqqpzb._.js +3 -0
  217. package/.next/standalone/.next/server/chunks/_1_fynia._.js +7 -7
  218. package/.next/standalone/.next/server/chunks/_1fn30_l._.js +1 -1
  219. package/.next/standalone/.next/server/chunks/_1itd1o_._.js +1 -1
  220. package/.next/standalone/.next/server/chunks/_1iwkh8t._.js +1 -1
  221. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_backup_route_actions_0zoj04p.js +3 -0
  222. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_csv_route_actions_0l6m7lg.js +3 -0
  223. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_restore_route_actions_0-b05bv.js +3 -0
  224. package/.next/standalone/.next/server/chunks/lib_02iz_9q._.js +4 -0
  225. package/.next/standalone/.next/server/chunks/lib_05agvk3._.js +4 -0
  226. package/.next/standalone/.next/server/chunks/lib_0v84u66._.js +4 -0
  227. package/.next/standalone/.next/server/chunks/lib_db-client_0_dch35.js +174 -0
  228. package/.next/standalone/.next/server/chunks/lib_linkedin-export_12imqxg.js +1 -1
  229. package/.next/standalone/.next/server/chunks/lib_rpc_005abye.js +3 -0
  230. package/.next/standalone/.next/server/chunks/lib_rpc_0b17r6v.js +3 -0
  231. package/.next/standalone/.next/server/chunks/lib_rpc_0c9d9ti.js +7 -0
  232. package/.next/standalone/.next/server/chunks/lib_rpc_0doq0t-.js +3 -0
  233. package/.next/standalone/.next/server/chunks/lib_rpc_0fd2rlw.js +3 -0
  234. package/.next/standalone/.next/server/chunks/lib_rpc_0is4qoc.js +3 -0
  235. package/.next/standalone/.next/server/chunks/lib_rpc_0jnfp2e.js +3 -0
  236. package/.next/standalone/.next/server/chunks/lib_rpc_0nef_n7.js +3 -0
  237. package/.next/standalone/.next/server/chunks/lib_rpc_0plrzra.js +3 -0
  238. package/.next/standalone/.next/server/chunks/lib_rpc_13a4m0c.js +3 -0
  239. package/.next/standalone/.next/server/chunks/lib_rpc_1if17c-.js +3 -0
  240. package/.next/standalone/.next/server/chunks/lib_rpc_1j-zw7v.js +3 -0
  241. package/.next/standalone/.next/server/chunks/lib_rpc_1sngt-q.js +3 -0
  242. package/.next/standalone/.next/server/chunks/lib_rpc_1v2sgme.js +3 -0
  243. package/.next/standalone/.next/server/chunks/lib_rpc_1vh-tgx.js +3 -0
  244. package/.next/standalone/.next/server/chunks/lib_rpc_1zaubz7.js +3 -0
  245. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qd8pzm._.js +3 -0
  246. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qdeuyo._.js → [root-of-the-server]__1-012q1._.js} +2 -2
  247. package/.next/standalone/.next/server/chunks/ssr/_01o3i5y._.js +7 -0
  248. package/.next/standalone/.next/server/chunks/ssr/_02sband._.js +7 -0
  249. package/.next/standalone/.next/server/chunks/ssr/_06rgzfh._.js +3 -0
  250. package/.next/standalone/.next/server/chunks/ssr/_07zb7lu._.js +3 -0
  251. package/.next/standalone/.next/server/chunks/ssr/_0_79idq._.js +3 -0
  252. package/.next/standalone/.next/server/chunks/ssr/_0gy11ar._.js +3 -0
  253. package/.next/standalone/.next/server/chunks/ssr/_0hb-dhy._.js +3 -0
  254. package/.next/standalone/.next/server/chunks/ssr/_14nxd3q._.js +3 -0
  255. package/.next/standalone/.next/server/chunks/ssr/_189g8lg._.js +3 -0
  256. package/.next/standalone/.next/server/chunks/ssr/_1f_n00p._.js +3 -0
  257. package/.next/standalone/.next/server/chunks/ssr/_1fm1ih_._.js +9 -0
  258. package/.next/standalone/.next/server/chunks/ssr/_1k2nmbw._.js +9 -0
  259. package/.next/standalone/.next/server/chunks/ssr/_1k9qfsk._.js +3 -0
  260. package/.next/standalone/.next/server/chunks/ssr/app_141w189._.js +1 -1
  261. package/.next/standalone/.next/server/chunks/ssr/app_components_0t908t-._.js +3 -0
  262. package/.next/standalone/.next/server/chunks/ssr/app_components_0uuff77._.js +36 -0
  263. package/.next/standalone/.next/server/chunks/ssr/app_components_1j3q-h5._.js +36 -0
  264. package/.next/standalone/.next/server/chunks/ssr/app_components_CompanyScores_1g0mytz.js +3 -0
  265. package/.next/standalone/.next/server/chunks/ssr/app_import_page_1fmu6_l.js +1 -1
  266. package/.next/standalone/.next/server/chunks/ssr/app_launch_page_19t0dyd.js +1 -1
  267. package/.next/standalone/.next/server/chunks/ssr/app_page_1fazqbf.js +28 -14
  268. package/.next/standalone/.next/server/chunks/ssr/app_paths_page_1ol90m7.js +2 -2
  269. package/.next/standalone/.next/server/chunks/ssr/app_profile_page_0u3-l5y.js +1 -1
  270. package/.next/standalone/.next/server/chunks/ssr/app_queue_page_0c6znd6.js +12 -12
  271. package/.next/standalone/.next/server/chunks/ssr/app_settings_page_1f8mjj_.js +1 -1
  272. package/.next/standalone/.next/server/chunks/ssr/app_setup_page_1-282zx.js +12 -13
  273. package/.next/standalone/.next/server/chunks/ssr/app_social_page_0h7zxda.js +1 -1
  274. package/.next/standalone/.next/server/chunks/ssr/{lib_0i8v-s3._.js → lib_csv_1ttiu_h.js} +2 -2
  275. package/.next/standalone/.next/server/chunks/ssr/lib_galaxy-lab_108_lu-.js +1 -1
  276. package/.next/standalone/.next/server/chunks/ssr/lib_separation_1305zsx.js +3 -0
  277. package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__0pco7a6._.js +1 -1
  278. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  279. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  280. package/.next/standalone/.next/server/pages/404.html +1 -1
  281. package/.next/standalone/.next/server/pages/500.html +1 -1
  282. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  283. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  284. package/.next/standalone/.next/static/chunks/03-_esd2x_yk6.js +1 -0
  285. package/.next/standalone/.next/static/chunks/03-demj2iy-0p.js +44 -0
  286. package/.next/standalone/.next/static/chunks/0_1r-3csplxnj.js +1 -0
  287. package/.next/standalone/.next/static/chunks/0an_b6zi1r_qq.js +5 -0
  288. package/.next/standalone/.next/static/chunks/0e3g0sil79cus.js +21 -0
  289. package/.next/standalone/.next/static/chunks/0kscsqnvfq3-r.js +1 -0
  290. package/.next/standalone/.next/static/chunks/0p3g5tfostsep.js +7 -0
  291. package/.next/standalone/.next/static/chunks/0zd0t7e60bn4z.js +1 -0
  292. package/.next/standalone/.next/static/chunks/163b-20vwa06i.js +34 -0
  293. package/.next/{static/chunks/3sowbvbaj1s6n.js → standalone/.next/static/chunks/1eyajb9ntzlrl.js} +1 -1
  294. package/.next/standalone/.next/static/chunks/1pa-2v1ajvrko.js +1 -0
  295. package/.next/standalone/.next/static/chunks/1qbjermbf68xj.js +1 -0
  296. package/.next/standalone/.next/static/chunks/1z9lb-dbcg4aa.js +1 -0
  297. package/.next/standalone/.next/static/chunks/23_1z47al92nz.js +57 -0
  298. package/.next/standalone/.next/static/chunks/260bomtr214m8.js +34 -0
  299. package/.next/standalone/.next/static/chunks/2eo9pqq9gay3r.js +34 -0
  300. package/.next/standalone/.next/static/chunks/2xk2ra4piiuod.js +34 -0
  301. package/.next/standalone/.next/static/chunks/2z1-q0_vunbql.js +2 -0
  302. package/.next/standalone/.next/static/chunks/2zf4jmz9l3li2.js +1 -0
  303. package/.next/standalone/.next/static/chunks/34g73qhayuevu.js +1 -0
  304. package/.next/standalone/.next/static/chunks/3b0-14cxqsprt.js +1 -0
  305. package/.next/standalone/.next/static/chunks/3jarus1_38s2z.js +1 -0
  306. package/.next/standalone/.next/static/chunks/3ssu341hav_sq.css +3 -0
  307. package/.next/standalone/.next/static/chunks/3v1qd3sqhqn0d.js +1 -0
  308. package/.next/standalone/.next/static/chunks/43pg2sursiypz.js +1 -0
  309. package/.next/standalone/.next/static/chunks/44yn0tcd9dfk3.js +1 -0
  310. package/.next/standalone/CHANGELOG.md +188 -0
  311. package/.next/standalone/README.md +93 -57
  312. package/.next/standalone/SECURITY.md +17 -11
  313. package/.next/standalone/app/api/data/backup/route.js +25 -0
  314. package/.next/standalone/app/api/data/csv/route.js +74 -0
  315. package/.next/standalone/app/api/data/export/route.js +1 -1
  316. package/.next/standalone/app/api/data/restore/route.js +48 -0
  317. package/.next/standalone/app/api/data/reveal/route.js +19 -6
  318. package/.next/standalone/app/api/data/route.js +15 -4
  319. package/.next/standalone/app/api/ingest/route.js +1 -1
  320. package/.next/standalone/app/api/queue/route.js +1 -1
  321. package/.next/standalone/app/api/scraper/route.js +129 -31
  322. package/.next/standalone/app/api/social/crm/route.js +2 -1
  323. package/.next/standalone/app/components/AppHeader.js +261 -0
  324. package/.next/standalone/app/components/AppTabs.js +8 -8
  325. package/.next/standalone/app/components/AutoScanButton.js +2 -2
  326. package/.next/standalone/app/components/Avatar.js +3 -2
  327. package/.next/standalone/app/components/ChainView.js +192 -120
  328. package/.next/standalone/app/components/CirclePanel.js +16 -16
  329. package/.next/standalone/app/components/ClusterSpinner.js +64 -0
  330. package/.next/standalone/app/components/CompanyScores.js +20 -20
  331. package/.next/standalone/app/components/EmptyState.js +39 -18
  332. package/.next/standalone/app/components/FieldStep.js +15 -13
  333. package/.next/standalone/app/components/FilterPanel.js +34 -26
  334. package/.next/standalone/app/components/ForceGraph.js +209 -36
  335. package/.next/standalone/app/components/GalaxyLab.js +75 -44
  336. package/.next/standalone/app/components/GridView.js +22 -22
  337. package/.next/standalone/app/components/LegacyScoresCard.js +10 -11
  338. package/.next/standalone/app/components/LinkedInLimits.js +26 -20
  339. package/.next/standalone/app/components/LiquidGlass.js +99 -0
  340. package/.next/standalone/app/components/ListView.js +23 -23
  341. package/.next/standalone/app/components/MapControls.js +5 -5
  342. package/.next/standalone/app/components/MappingProgress.js +16 -16
  343. package/.next/standalone/app/components/NoteDetail.js +15 -14
  344. package/.next/standalone/app/components/OnboardingGate.js +5 -5
  345. package/.next/standalone/app/components/OutlinkQuest.js +27 -26
  346. package/.next/standalone/app/components/PathsAnalyzer.js +40 -38
  347. package/.next/standalone/app/components/PeopleMap.js +23 -22
  348. package/.next/standalone/app/components/RingsView.js +14 -14
  349. package/.next/standalone/app/components/ScanRadar.js +84 -39
  350. package/.next/standalone/app/components/ScanStatusBar.js +22 -18
  351. package/.next/standalone/app/components/ScanTrail.js +88 -0
  352. package/.next/standalone/app/components/SeparationView.js +247 -160
  353. package/.next/standalone/app/components/Sidebar.js +162 -162
  354. package/.next/standalone/app/components/StaleServerBanner.js +4 -4
  355. package/.next/standalone/app/components/TheirCircle.js +28 -27
  356. package/.next/standalone/app/components/ThemeDefs.js +42 -0
  357. package/.next/standalone/app/components/ThemeLoader.js +28 -0
  358. package/.next/standalone/app/components/UpdatePanel.js +22 -22
  359. package/.next/standalone/app/components/UserProvider.js +22 -15
  360. package/.next/standalone/app/components/settings/AppearanceSection.js +249 -0
  361. package/.next/standalone/app/components/settings/DataSection.js +276 -109
  362. package/.next/standalone/app/components/settings/NetworkHealthSection.js +15 -14
  363. package/.next/standalone/app/components/settings/SectorPicker.js +12 -12
  364. package/.next/standalone/app/components/settings/SectorSection.js +13 -14
  365. package/.next/standalone/app/components/settings/TierSection.js +9 -9
  366. package/.next/standalone/app/components/settings/TitleSection.js +11 -11
  367. package/.next/standalone/app/components/settings/UsageSection.js +313 -0
  368. package/.next/standalone/app/components/ui.js +10 -9
  369. package/.next/standalone/app/globals.css +229 -4
  370. package/.next/standalone/app/import/page.js +96 -40
  371. package/.next/standalone/app/launch/page.js +5 -5
  372. package/.next/standalone/app/layout.js +15 -2
  373. package/.next/standalone/app/page.js +110 -240
  374. package/.next/standalone/app/paths/page.js +68 -81
  375. package/.next/standalone/app/profile/page.js +66 -65
  376. package/.next/standalone/app/queue/page.js +59 -72
  377. package/.next/standalone/app/scores/page.js +2 -2
  378. package/.next/standalone/app/settings/page.js +18 -13
  379. package/.next/standalone/app/setup/page.js +287 -196
  380. package/.next/standalone/app/social/Crm.js +65 -63
  381. package/.next/standalone/app/social/SocialHub.js +22 -22
  382. package/.next/standalone/app/social/Thread.js +7 -7
  383. package/.next/standalone/app/social/page.js +2 -2
  384. package/.next/standalone/lib/backups.js +458 -0
  385. package/.next/standalone/lib/chain-layout.js +32 -0
  386. package/.next/standalone/lib/csv-store.js +131 -0
  387. package/.next/standalone/lib/csv.js +137 -39
  388. package/.next/standalone/lib/data-folder.js +19 -3
  389. package/.next/standalone/lib/data-import.js +5 -2
  390. package/.next/standalone/lib/db-client.js +78 -20
  391. package/.next/standalone/lib/demo.js +5 -4
  392. package/.next/standalone/lib/galaxy-export.js +11 -3
  393. package/.next/standalone/lib/galaxy-lab.js +41 -11
  394. package/.next/standalone/lib/galaxy-layouts.js +43 -0
  395. package/.next/standalone/lib/gate.js +10 -4
  396. package/.next/standalone/lib/ingest.js +1 -1
  397. package/.next/standalone/lib/level.js +51 -0
  398. package/.next/standalone/lib/linkedin-limits.js +212 -11
  399. package/.next/standalone/lib/liquid-glass.js +59 -0
  400. package/.next/standalone/lib/notifications.js +13 -0
  401. package/.next/standalone/lib/scan-pace.js +11 -0
  402. package/.next/standalone/lib/scan-progress.js +20 -0
  403. package/.next/standalone/lib/scan-risk.js +44 -0
  404. package/.next/standalone/lib/scanner-setup.js +97 -15
  405. package/.next/standalone/lib/scraper-client.js +18 -3
  406. package/.next/standalone/lib/search-risk.js +7 -3
  407. package/.next/standalone/lib/separation.js +4 -2
  408. package/.next/standalone/lib/settings-client.js +5 -3
  409. package/.next/standalone/lib/settings.js +10 -0
  410. package/.next/standalone/lib/social-store.js +3 -2
  411. package/.next/standalone/lib/synced-setting.js +46 -0
  412. package/.next/standalone/lib/theme-store.js +93 -0
  413. package/.next/standalone/lib/themes.js +276 -0
  414. package/.next/standalone/lib/tiers.js +2 -8
  415. package/.next/standalone/lib/usage.js +195 -0
  416. package/.next/standalone/package-lock.json +2 -2
  417. package/.next/standalone/package.json +1 -1
  418. package/.next/standalone/scripts/build-site.mjs +85 -15
  419. package/.next/standalone/scripts/readme_buttons.py +3 -0
  420. package/.next/standalone/scripts/scrape.py +26 -2
  421. package/.next/standalone/scripts/site-news.mjs +54 -9
  422. package/.next/static/chunks/03-_esd2x_yk6.js +1 -0
  423. package/.next/static/chunks/03-demj2iy-0p.js +44 -0
  424. package/.next/static/chunks/0_1r-3csplxnj.js +1 -0
  425. package/.next/static/chunks/0an_b6zi1r_qq.js +5 -0
  426. package/.next/static/chunks/0e3g0sil79cus.js +21 -0
  427. package/.next/static/chunks/0kscsqnvfq3-r.js +1 -0
  428. package/.next/static/chunks/0p3g5tfostsep.js +7 -0
  429. package/.next/static/chunks/0zd0t7e60bn4z.js +1 -0
  430. package/.next/static/chunks/163b-20vwa06i.js +34 -0
  431. package/.next/{standalone/.next/static/chunks/3sowbvbaj1s6n.js → static/chunks/1eyajb9ntzlrl.js} +1 -1
  432. package/.next/static/chunks/1pa-2v1ajvrko.js +1 -0
  433. package/.next/static/chunks/1qbjermbf68xj.js +1 -0
  434. package/.next/static/chunks/1z9lb-dbcg4aa.js +1 -0
  435. package/.next/static/chunks/23_1z47al92nz.js +57 -0
  436. package/.next/static/chunks/260bomtr214m8.js +34 -0
  437. package/.next/static/chunks/2eo9pqq9gay3r.js +34 -0
  438. package/.next/static/chunks/2xk2ra4piiuod.js +34 -0
  439. package/.next/static/chunks/2z1-q0_vunbql.js +2 -0
  440. package/.next/static/chunks/2zf4jmz9l3li2.js +1 -0
  441. package/.next/static/chunks/34g73qhayuevu.js +1 -0
  442. package/.next/static/chunks/3b0-14cxqsprt.js +1 -0
  443. package/.next/static/chunks/3jarus1_38s2z.js +1 -0
  444. package/.next/static/chunks/3ssu341hav_sq.css +3 -0
  445. package/.next/static/chunks/3v1qd3sqhqn0d.js +1 -0
  446. package/.next/static/chunks/43pg2sursiypz.js +1 -0
  447. package/.next/static/chunks/44yn0tcd9dfk3.js +1 -0
  448. package/CHANGELOG.md +188 -0
  449. package/README.md +93 -57
  450. package/SECURITY.md +17 -11
  451. package/lib/backups.js +458 -0
  452. package/lib/chain-layout.js +32 -0
  453. package/lib/csv-store.js +131 -0
  454. package/lib/csv.js +137 -39
  455. package/lib/data-folder.js +19 -3
  456. package/lib/data-import.js +5 -2
  457. package/lib/db-client.js +78 -20
  458. package/lib/demo.js +5 -4
  459. package/lib/galaxy-export.js +11 -3
  460. package/lib/galaxy-lab.js +41 -11
  461. package/lib/galaxy-layouts.js +43 -0
  462. package/lib/gate.js +10 -4
  463. package/lib/ingest.js +1 -1
  464. package/lib/level.js +51 -0
  465. package/lib/linkedin-limits.js +212 -11
  466. package/lib/liquid-glass.js +59 -0
  467. package/lib/notifications.js +13 -0
  468. package/lib/scan-pace.js +11 -0
  469. package/lib/scan-progress.js +20 -0
  470. package/lib/scan-risk.js +44 -0
  471. package/lib/scanner-setup.js +97 -15
  472. package/lib/scraper-client.js +18 -3
  473. package/lib/search-risk.js +7 -3
  474. package/lib/separation.js +4 -2
  475. package/lib/settings-client.js +5 -3
  476. package/lib/settings.js +10 -0
  477. package/lib/social-store.js +3 -2
  478. package/lib/synced-setting.js +46 -0
  479. package/lib/theme-store.js +93 -0
  480. package/lib/themes.js +276 -0
  481. package/lib/tiers.js +2 -8
  482. package/lib/usage.js +195 -0
  483. package/package.json +1 -1
  484. package/scripts/scrape.py +26 -2
  485. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-rnla2._.js +0 -3
  486. package/.next/standalone/.next/server/chunks/[root-of-the-server]__14ou7j5._.js +0 -3
  487. package/.next/standalone/.next/server/chunks/[root-of-the-server]__16iu0hv._.js +0 -3
  488. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1kbl21f._.js +0 -3
  489. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1rphsdk._.js +0 -3
  490. package/.next/standalone/.next/server/chunks/lib_0851sk0._.js +0 -8
  491. package/.next/standalone/.next/server/chunks/lib_1q7p2ro._.js +0 -8
  492. package/.next/standalone/.next/server/chunks/lib_1r6l86l._.js +0 -8
  493. package/.next/standalone/.next/server/chunks/lib_db-client_15le7cw.js +0 -174
  494. package/.next/standalone/.next/server/chunks/lib_rpc_04s8mzr.js +0 -3
  495. package/.next/standalone/.next/server/chunks/lib_rpc_053z7as.js +0 -3
  496. package/.next/standalone/.next/server/chunks/lib_rpc_0b_-2te.js +0 -3
  497. package/.next/standalone/.next/server/chunks/lib_rpc_0dhbxdm.js +0 -3
  498. package/.next/standalone/.next/server/chunks/lib_rpc_0dxlk31.js +0 -3
  499. package/.next/standalone/.next/server/chunks/lib_rpc_0f8b-qc.js +0 -3
  500. package/.next/standalone/.next/server/chunks/lib_rpc_0pzie7_.js +0 -3
  501. package/.next/standalone/.next/server/chunks/lib_rpc_0r76fq_.js +0 -3
  502. package/.next/standalone/.next/server/chunks/lib_rpc_0ut7pjp.js +0 -3
  503. package/.next/standalone/.next/server/chunks/lib_rpc_15zyqaz.js +0 -3
  504. package/.next/standalone/.next/server/chunks/lib_rpc_18zpjtq.js +0 -3
  505. package/.next/standalone/.next/server/chunks/lib_rpc_1a8xkiz.js +0 -3
  506. package/.next/standalone/.next/server/chunks/lib_rpc_1e_55xo.js +0 -3
  507. package/.next/standalone/.next/server/chunks/lib_rpc_1oxfd1_.js +0 -3
  508. package/.next/standalone/.next/server/chunks/lib_rpc_1s0lod0.js +0 -3
  509. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__16hs8kw._.js +0 -3
  510. package/.next/standalone/.next/server/chunks/ssr/_01kacen._.js +0 -3
  511. package/.next/standalone/.next/server/chunks/ssr/_03l7vge._.js +0 -3
  512. package/.next/standalone/.next/server/chunks/ssr/_0gtv9jb._.js +0 -3
  513. package/.next/standalone/.next/server/chunks/ssr/_0jdkqgi._.js +0 -3
  514. package/.next/standalone/.next/server/chunks/ssr/_0xi-fbs._.js +0 -3
  515. package/.next/standalone/.next/server/chunks/ssr/_0xmwmfv._.js +0 -3
  516. package/.next/standalone/.next/server/chunks/ssr/_1-b9hj7._.js +0 -9
  517. package/.next/standalone/.next/server/chunks/ssr/_112ewem._.js +0 -3
  518. package/.next/standalone/.next/server/chunks/ssr/_16ab63q._.js +0 -3
  519. package/.next/standalone/.next/server/chunks/ssr/_1fxm0-s._.js +0 -3
  520. package/.next/standalone/.next/server/chunks/ssr/_1ra1d3r._.js +0 -9
  521. package/.next/standalone/.next/server/chunks/ssr/app_components_settings_SectorPicker_1c-29qw.js +0 -3
  522. package/.next/standalone/.next/server/chunks/ssr/app_components_ui_0pdmz2z.js +0 -3
  523. package/.next/standalone/.next/server/chunks/ssr/lib_13rapwj._.js +0 -3
  524. package/.next/standalone/.next/static/chunks/03bziijw5srol.js +0 -1
  525. package/.next/standalone/.next/static/chunks/0bgq8wmopl_ig.js +0 -7
  526. package/.next/standalone/.next/static/chunks/0ezus6p2eb-vg.js +0 -1
  527. package/.next/standalone/.next/static/chunks/0g_fy2034bp0x.js +0 -34
  528. package/.next/standalone/.next/static/chunks/0muwt9bykzr-1.js +0 -1
  529. package/.next/standalone/.next/static/chunks/0w-byiwb2zax8.js +0 -2
  530. package/.next/standalone/.next/static/chunks/17-rhp8sg4m1b.js +0 -44
  531. package/.next/standalone/.next/static/chunks/1g7jcovdejc9-.js +0 -1
  532. package/.next/standalone/.next/static/chunks/1i51yylxdzht1.js +0 -1
  533. package/.next/standalone/.next/static/chunks/1x_ysly42-teq.css +0 -3
  534. package/.next/standalone/.next/static/chunks/1zf8swaasjf1e.js +0 -43
  535. package/.next/standalone/.next/static/chunks/28ls896_x19n0.js +0 -22
  536. package/.next/standalone/.next/static/chunks/2dwtoszeq91us.js +0 -1
  537. package/.next/standalone/.next/static/chunks/2wgz9ietkqqe6.js +0 -1
  538. package/.next/standalone/.next/static/chunks/30x3oq_st7a5r.js +0 -1
  539. package/.next/standalone/.next/static/chunks/355ryio1b7sm1.js +0 -1
  540. package/.next/standalone/.next/static/chunks/3ap5hgma7n0o7.js +0 -1
  541. package/.next/standalone/.next/static/chunks/3fci6qi39-1n5.js +0 -1
  542. package/.next/standalone/.next/static/chunks/3za16c56eo_e2.js +0 -1
  543. package/.next/static/chunks/03bziijw5srol.js +0 -1
  544. package/.next/static/chunks/0bgq8wmopl_ig.js +0 -7
  545. package/.next/static/chunks/0ezus6p2eb-vg.js +0 -1
  546. package/.next/static/chunks/0g_fy2034bp0x.js +0 -34
  547. package/.next/static/chunks/0muwt9bykzr-1.js +0 -1
  548. package/.next/static/chunks/0w-byiwb2zax8.js +0 -2
  549. package/.next/static/chunks/17-rhp8sg4m1b.js +0 -44
  550. package/.next/static/chunks/1g7jcovdejc9-.js +0 -1
  551. package/.next/static/chunks/1i51yylxdzht1.js +0 -1
  552. package/.next/static/chunks/1x_ysly42-teq.css +0 -3
  553. package/.next/static/chunks/1zf8swaasjf1e.js +0 -43
  554. package/.next/static/chunks/28ls896_x19n0.js +0 -22
  555. package/.next/static/chunks/2dwtoszeq91us.js +0 -1
  556. package/.next/static/chunks/2wgz9ietkqqe6.js +0 -1
  557. package/.next/static/chunks/30x3oq_st7a5r.js +0 -1
  558. package/.next/static/chunks/355ryio1b7sm1.js +0 -1
  559. package/.next/static/chunks/3ap5hgma7n0o7.js +0 -1
  560. package/.next/static/chunks/3fci6qi39-1n5.js +0 -1
  561. package/.next/static/chunks/3za16c56eo_e2.js +0 -1
  562. /package/.next/standalone/.next/static/{TZLzIJ2kezH-xwpkmgbjp → ZVpLBK-2vpllv2HxOFs2d}/_buildManifest.js +0 -0
  563. /package/.next/standalone/.next/static/{TZLzIJ2kezH-xwpkmgbjp → ZVpLBK-2vpllv2HxOFs2d}/_clientMiddlewareManifest.js +0 -0
  564. /package/.next/standalone/.next/static/{TZLzIJ2kezH-xwpkmgbjp → ZVpLBK-2vpllv2HxOFs2d}/_ssgManifest.js +0 -0
  565. /package/.next/static/{TZLzIJ2kezH-xwpkmgbjp → ZVpLBK-2vpllv2HxOFs2d}/_buildManifest.js +0 -0
  566. /package/.next/static/{TZLzIJ2kezH-xwpkmgbjp → ZVpLBK-2vpllv2HxOFs2d}/_clientMiddlewareManifest.js +0 -0
  567. /package/.next/static/{TZLzIJ2kezH-xwpkmgbjp → ZVpLBK-2vpllv2HxOFs2d}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -41,22 +41,24 @@ know placed on rings by how much they can open up for you, the handful of people
41
41
  whose own circles reach the furthest, and the shortest chain from you to a stranger
42
42
  worth meeting.
43
43
 
44
- It's a Mac app (or `npx six-degrees` on Linux). It runs on your computer, against your own data, with no account and
44
+ It's a Mac app, and now a Windows and Linux app too (beta). It runs on your computer, against your own data, with no account and
45
45
  no server.
46
46
 
47
47
  ## Download
48
48
 
49
49
  <p align="center">
50
50
  <a href="https://github.com/blakeb056/six-degrees/releases/latest/download/Six-Degrees-Mac-Apple-Silicon.dmg"><img src="docs/img/download-apple-silicon.png" width="346" alt="Download Six Degrees for a Mac with Apple Silicon (M1 or newer)"></a>
51
- <a href="https://github.com/blakeb056/six-degrees/releases/latest/download/Six-Degrees-Mac-Intel.dmg"><img src="docs/img/download-intel.png" width="346" alt="Download Six Degrees for a Mac with an Intel chip"></a>
51
+ <a href="https://github.com/blakeb056/six-degrees/releases/latest/download/Six-Degrees-Mac-Intel.dmg"><img src="docs/img/download-intel.png" width="346" alt="Download Six Degrees for a Mac with an Intel chip"></a><br>
52
+ <a href="https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Windows-Setup.exe"><img src="docs/img/download-windows.png" width="346" alt="Download Six Degrees for Windows 10 or 11 (beta): one-click Setup.exe"></a>
53
+ <a href="https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Linux-x64.deb"><img src="docs/img/download-linux.png" width="346" alt="Download Six Degrees for Linux (beta): .deb for Ubuntu and Debian"></a>
52
54
  </p>
53
55
 
54
56
  | Platform | Download | Needs |
55
57
  |---|---|---|
56
58
  | **macOS**, Apple Silicon (M1 or newer) | [Six-Degrees-Mac-Apple-Silicon.dmg](https://github.com/blakeb056/six-degrees/releases/latest/download/Six-Degrees-Mac-Apple-Silicon.dmg) | macOS 13.5 (Ventura) or later |
57
59
  | **macOS**, Intel | [Six-Degrees-Mac-Intel.dmg](https://github.com/blakeb056/six-degrees/releases/latest/download/Six-Degrees-Mac-Intel.dmg) | macOS 13.5 (Ventura) or later |
58
- | **Linux** | App: *coming soon.* Run it today from the Terminal: `npx six-degrees` ([how](https://sixdegreesapp.com/download/#linux)) | Node 22.13 or later |
59
- | **Windows** | *Coming soon.* [Watch releases](https://github.com/blakeb056/six-degrees) (Watch → Custom → Releases) to hear when it's out | — |
60
+ | **Windows** (beta) | [Six-Degrees-Windows-Setup.exe](https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Windows-Setup.exe) | Windows 10 or 11, 64-bit |
61
+ | **Linux** (beta) | [Six-Degrees-Linux-x64.deb](https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Linux-x64.deb) or [.tar.gz](https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Linux-x64.tar.gz), or from the Terminal: `npx six-degrees` ([how](https://sixdegreesapp.com/download/#linux)) | Ubuntu or Debian, 64-bit (npx: Node 22.13 or later) |
60
62
 
61
63
  <sub>Every release is on [GitHub Releases](https://github.com/blakeb056/six-degrees/releases) with a
62
64
  `SHA256SUMS` file ([latest](https://github.com/blakeb056/six-degrees/releases/latest/download/SHA256SUMS)); the Terminal install below checks the download against it.
@@ -66,7 +68,7 @@ The links above always fetch the newest release.</sub>
66
68
 
67
69
  **Which download?** Apple menu → **About This Mac**. If it says "Chip: Apple M…", take
68
70
  **Apple Silicon**. If it says "Processor: …Intel…", take **Intel**. It needs **macOS 13.5
69
- (Ventura) or later**, and it's about 220 MB. Everything the scanner needs except Google
71
+ (Ventura) or later**, and it's about 210 MB. Everything the scanner needs except Google
70
72
  Chrome is inside, Python included, so there's nothing else to install.
71
73
 
72
74
  **The first time you open it**, macOS stops it, because the app isn't signed with a
@@ -110,11 +112,25 @@ Downloading the new `.dmg` works too; you'll repeat step 3 once for it.
110
112
 
111
113
  Your network isn't stored in the app. It's in a hidden folder in your home folder,
112
114
  `.six-degrees` (open it any time with *Help → Show the Data Folder*), so updates never
113
- touch it. Each new version also copies your data into its `backups` folder before it
114
- first opens it. To take it to another computer, see
115
+ touch it. Each new version also backs up your data, photos and all, into its `backups`
116
+ folder before it first opens it, and Six Degrees makes a backup each day it's open
117
+ (see [Backups](#backups)). To take it to another computer, see
115
118
  [Moving to a new computer](#moving-to-a-new-computer).
116
119
 
117
- **Linux:** install **Node 22.13 or later** (from nodejs.org or nvm; Ubuntu's own
120
+ **Windows (beta):** download [Six-Degrees-Windows-Setup.exe](https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Windows-Setup.exe)
121
+ and open it. It installs for you alone (no administrator password), adds Start Menu and
122
+ Desktop shortcuts, and opens Six Degrees. It isn't signed with a paid certificate yet, so
123
+ SmartScreen may say it protected your PC: **More info → Run anyway**. A newer Setup.exe
124
+ updates it in place; your network stays in `%USERPROFILE%\.six-degrees`, which
125
+ uninstalling never touches. Scanning needs Google Chrome.
126
+
127
+ **Linux app (beta):** `sudo apt install ./Six-Degrees-Linux-x64.deb` with the
128
+ [.deb](https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Linux-x64.deb), then open it from your apps. The
129
+ [.tar.gz](https://github.com/blakeb056/six-degrees/releases/download/v0.5.1-beta.1/Six-Degrees-Linux-x64.tar.gz) runs from its folder; on Ubuntu 24.04 and
130
+ later run `sudo chown root:root chrome-sandbox && sudo chmod 4755 chrome-sandbox` in it
131
+ once (or start it with `--no-sandbox`). Scanning needs Google Chrome (not Chromium).
132
+
133
+ **Linux from the Terminal:** install **Node 22.13 or later** (from nodejs.org or nvm; Ubuntu's own
118
134
  `nodejs` package is too old), then run:
119
135
 
120
136
  ```bash
@@ -131,8 +147,7 @@ up the scanner** button downloads a private copy into your data folder (24–33
131
147
  GitHub, checked against a checksum built into Six Degrees). It's tested on Ubuntu, and
132
148
  works on a Mac too if you'd rather not install the app.
133
149
 
134
- **Windows:** not yet. There's no Windows app, and `npx six-degrees` doesn't run on
135
- Windows yet; npm says so if you try.
150
+ `npx six-degrees` doesn't run on Windows; use the Windows app above.
136
151
 
137
152
  <details>
138
153
  <summary>Run it from source (contributors)</summary>
@@ -248,7 +263,7 @@ two steps away, and 503 of them, 84%, are reached through only one connection.
248
263
  | Any network, any data, research-grade statistics | — (LinkedIn networks only) | — | any data | ✓ what they're built for |
249
264
  | Runs on your computer, with no account | ✓ | — (online, with your account) | varies | ✓ |
250
265
  | Price | free, MIT | free, with paid plans | free to paid | free, open source |
251
- | Windows | coming soon | ✓ | ✓ | ✓ |
266
+ | Windows | ✓ (beta) | ✓ | ✓ | ✓ |
252
267
 
253
268
  Something out of date, or unfair to another tool? [Open an issue](https://github.com/blakeb056/six-degrees/issues).
254
269
 
@@ -269,6 +284,10 @@ Something out of date, or unfair to another tool? [Open an issue](https://github
269
284
  >
270
285
  > **The CSV import and the sample network carry no LinkedIn risk at all.** Details:
271
286
  > [how scanning works and what it risks](docs/SCRAPING.md).
287
+ >
288
+ > The app asks for an explicit "I understand" once, before the first scan.
289
+ >
290
+ > Six Degrees is not affiliated with or endorsed by LinkedIn.
272
291
 
273
292
  ## First run
274
293
 
@@ -284,7 +303,7 @@ The app opens on a welcome screen with three ways in, and asks nothing about you
284
303
  - **Import my LinkedIn CSV**: LinkedIn's official export, read on your machine. On
285
304
  LinkedIn: **Settings & Privacy → Data privacy → Get a copy of your data →
286
305
  Connections**. LinkedIn emails a link in about ten minutes; unzip it and drop
287
- `Connections.csv` into the app.
306
+ `Connections.csv` into the app. It's kept on your computer until you remove it.
288
307
  - **Explore a sample network**: 150 invented connections and the 598 invented people
289
308
  they know. Click through before deciding anything.
290
309
 
@@ -303,8 +322,12 @@ people you *haven't* met, have nothing to draw. That data exists in no official
303
322
  the scanner is the only way to it, and it's opt-in for that reason.
304
323
 
305
324
  While the sample or a CSV is loaded, the top bar shows *Sample network ×* or *Your CSV
306
- ×* (click × to go back), and Outlink and Scan are hidden. Neither is ever added to your
307
- network: they last as long as the app's window is open.
325
+ ×*, and Outlink and Scan are hidden. Neither is ever added to your network. The sample
326
+ lasts as long as the app's window is open. A CSV import is kept on your computer, in the
327
+ data folder (`csv-network.json`), so it's still there after you close the window or
328
+ restart; click × to remove it (your `Connections.csv` itself isn't touched). Once you've
329
+ scanned your own connections, the map shows your scan instead; the CSV stays kept until
330
+ you remove it from the import page.
308
331
 
309
332
  ## How scoring works
310
333
 
@@ -368,8 +391,9 @@ It estimates **network position**, not what anyone is worth as a person.
368
391
 
369
392
  - Your network is stored on your computer and nowhere else. No account, no server, no
370
393
  telemetry, no analytics, no crash reporting.
371
- - A CSV import is read on your machine and never added to your network. It's held only
372
- in the app window's own storage, and you import it again next time.
394
+ - A CSV import is read on your machine and never added to your network. It's kept in the
395
+ data folder as `csv-network.json` (names, positions, companies, profile links and when
396
+ you connected; never email addresses) until you click × beside *Your CSV*.
373
397
  - The app contacts only these, and only when you act:
374
398
  - **LinkedIn**, while you scan. Each profile photo is saved on your computer as the
375
399
  scan reads it, and the app shows photos only from there, so looking at your network
@@ -399,30 +423,58 @@ See [SECURITY.md](SECURITY.md) for the threat model.
399
423
  ```
400
424
  .six-degrees/ in your home folder (hidden)
401
425
  ├── six-degrees.sqlite your network: connections, scores, tiers, queue, settings
402
- ├── backups/ copies of the database from before each new version, and
403
- │ before an import, touched it
426
+ ├── backups/ backups of your network: daily, before each new version, before
427
+ │ an import or a restore, and any you make (see Backups below)
404
428
  ├── avatars/ profile photos, if you scan
405
429
  ├── chrome-profile/ the scanner's Chrome sign-in, if you scan (see below)
406
430
  ├── venv/ the scanner's Python add-ons, if you set it up without the Mac app
407
431
  ├── python/ a private Python for them, if Set up the scanner downloaded one
408
432
  ├── pushback/ what LinkedIn's page said if it ever pushed back
433
+ ├── csv-network.json a LinkedIn CSV import, kept until you remove it
409
434
  └── *.json the scanner's budget, cooldown, progress and skip lists
410
435
  ```
411
436
 
412
437
  **Settings → Your data** shows where this folder is (with *Copy the path* and *Show in
413
438
  Finder*), what each part takes up, and the backups in it.
414
439
 
440
+ ### Backups
441
+
442
+ A backup is your whole network in one `.sixdegrees` file: your connections, their profile
443
+ photos, your settings (the look and your saved Galaxy layouts too), and the scanner's
444
+ progress, skip lists and LinkedIn budget. Each one is checked as it's made, the same way a
445
+ restore would check it, so a backup that's listed would restore. The Social tab's messages
446
+ and notes are never in a backup, so deleting them there (*Forget it*) deletes them
447
+ everywhere, and a restore leaves them as they are. Six Degrees makes one:
448
+
449
+ - **each day** it's open with a network in it (when it starts, and after a scan, if the
450
+ newest daily one is a day old; nothing runs on a timer), keeping the last 7;
451
+ - **before a new version** first opens your data, keeping the last 3;
452
+ - **when you click Back up now** in Settings → Your data. These are never deleted for you.
453
+
454
+ An import or a restore keeps what it replaced as well (`before-import-…`), keeping the
455
+ last 3, and never one that's under 30 days old. Anything else you put in `backups/`
456
+ yourself is never touched.
457
+
458
+ Settings → Your data says when the last backup was made and whether it passed its check
459
+ ("Last backup: <time>, verified"), or what's wrong with it if it didn't. Each backup has
460
+ **Restore** and **Show in Finder**. Backups stay on this computer: to keep one safe if the
461
+ computer is lost, copy it somewhere else (Show in Finder, then drag it to a USB stick).
462
+
463
+ They take space. For a network of about 650 connections and 5,000 people beyond them,
464
+ with their photos, each backup is about 25 to 35 MB, so the kept ones add up to about
465
+ 300 to 400 MB.
466
+
415
467
  ### Moving to a new computer
416
468
 
417
- 1. On the old computer, open **Settings → Your data** and click **Save a copy of my
418
- network**. You get one file, `Six Degrees backup <date>.sixdegrees`, with your network,
469
+ 1. On the old computer, open **Settings → Your data** and click **Export backup
470
+ file…**. You get one file, `Six Degrees backup <date>.sixdegrees`, with your network,
419
471
  your settings, the scanner's progress, skip lists and LinkedIn budget, and the profile
420
472
  photos of the people in it (untick them to leave them out; they come back as you scan
421
473
  again).
422
474
  2. Move that file to the new computer yourself (a USB stick, AirDrop). It holds other
423
475
  people's names and photos, so don't post it or share it.
424
- 3. On the new computer, install Six Degrees, open **Settings → Your data**, choose the
425
- file and click **Import**. It's checked first, and nothing changes if it isn't a whole
476
+ 3. On the new computer, install Six Degrees, open **Settings → Your data**, click
477
+ **Restore from a file…**, choose the file and click **Restore**. It's checked first, and nothing changes if it isn't a whole
426
478
  and undamaged Six Degrees copy. If that computer already has a network, you're asked to
427
479
  confirm that the import replaces it. The two networks are never merged. Your LinkedIn
428
480
  search budget is the one thing that is: it belongs to your LinkedIn account, not to a
@@ -432,42 +484,27 @@ Finder*), what each part takes up, and the backups in it.
432
484
  **Restart now**; with `npx six-degrees`, press Ctrl-C and start it again. If another
433
485
  copy of Six Degrees has the same folder open (one started from the Terminal, say), the
434
486
  import waits, and Settings says so. What was there before is kept in `backups/`
435
- (`before-import-…`), and those copies are never deleted automatically: see
436
- [Undo an import](#undo-an-import).
487
+ (`before-import-…`), for at least 30 days: see [Undo an import](#undo-an-import).
437
488
  5. Sign in to LinkedIn again on the new computer before you scan. Your sign-in never goes
438
- into a copy. A network opened from a LinkedIn CSV isn't in the copy either: it lives in
439
- its browser tab, so import the CSV again there.
489
+ into a copy. A LinkedIn CSV import kept on the old computer does go into it, and opens
490
+ on the new one.
440
491
 
441
492
  ### Undo an import
442
493
 
443
- An import keeps what it replaced in the data folder's `backups/`, named with the time it
444
- finished (Settings → Your data shows the exact name):
445
-
446
- - `before-import-<time>.sqlite`: your network as it was.
447
- - `before-import-<time>-files/`: its profile photos (`avatars/`), the scanner's notes about
448
- it (`bridge-progress.json`, `bridge-skips.json`, `bridge-unclear.json`), and a copy of
449
- your LinkedIn budget files as they were.
450
-
451
- To put it back (there's no button for this yet):
452
-
453
- 1. Quit Six Degrees (⌘Q in the Mac app, Ctrl-C for `npx six-degrees`). Do the rest while
454
- it's closed.
455
- 2. Open the data folder (Settings → Your data → *Show in Finder*, or `~/.six-degrees`).
456
- Move these out of it, to the Trash or somewhere safe if you might want the imported
457
- network again: `six-degrees.sqlite`, and `six-degrees.sqlite-wal` and
458
- `six-degrees.sqlite-shm` if they're there (a `-wal` left beside a different database
459
- is replayed into it and damages it), then `avatars/` and the three `bridge-*.json`
460
- files.
461
- 3. Copy `backups/before-import-<time>.sqlite` into the data folder and rename the copy
462
- `six-degrees.sqlite`. If `before-import-<time>.sqlite-wal` and `-shm` files are beside
463
- it, copy them too, renamed to match (`six-degrees.sqlite-wal`,
464
- `six-degrees.sqlite-shm`).
465
- 4. Copy `avatars/` and the three `bridge-*.json` files from
466
- `backups/before-import-<time>-files/` back into the data folder.
467
- 5. Leave `linkedin-activity.json`, `linkedin-cooldown.json` and `scan-limits.json` as they
468
- are. They're your LinkedIn account's budget, which the import kept (it only added the
469
- other computer's searches), so they're right whichever network you use.
470
- 6. Open Six Degrees again.
494
+ An import, or a restore, keeps what it replaced in the data folder's `backups/`, named with
495
+ the time it finished: `before-import-<time>.sqlite`, your network as it was, and
496
+ `before-import-<time>-files/` beside it, with its profile photos, the scanner's notes
497
+ about it, and a CSV import kept with it if there was one.
498
+
499
+ To put it back, open **Settings → Your data**, open **The backups**, find **Before an import
500
+ or a restore** with that time, and click **Restore**. It's checked first, then finishes when
501
+ Six Degrees restarts (**Restart now** in the Mac app; with `npx six-degrees`, press Ctrl-C
502
+ and start it again), and what's there now is kept in the same way, so you can go back
503
+ again. Your LinkedIn search budget stays as it is: it belongs to your LinkedIn account,
504
+ not to a network.
505
+
506
+ The same **Restore** puts back any other backup: yesterday's, or the one from before the
507
+ last update.
471
508
 
472
509
  Don't put the live folder in iCloud Drive or Dropbox to share it between computers
473
510
  instead. A sync service that copies the database while it's open can damage it, and it
@@ -476,8 +513,7 @@ would also sync your LinkedIn sign-in.
476
513
  **To remove everything:** quit the app and drag **Six Degrees** from Applications to the
477
514
  Trash. Then in Finder choose **Go → Go to Folder…** (⇧⌘G), paste `~/.six-degrees` and
478
515
  move that folder to the Trash. Do the same for
479
- `~/Library/Application Support/Six Degrees`, the app window's own storage and cache
480
- (it can include a CSV you imported).
516
+ `~/Library/Application Support/Six Degrees`, the app window's own storage and cache.
481
517
 
482
518
  > [!WARNING]
483
519
  > `chrome-profile/` holds a **real, signed-in LinkedIn session**. It's the one thing here
@@ -491,7 +527,7 @@ Nothing to configure. Two optional environment variables exist:
491
527
  | Variable | Purpose |
492
528
  |---|---|
493
529
  | `SIX_DEGREES_HOME` | Where your data lives. Defaults to `~/.six-degrees`. It's read at launch, so it applies to `npx six-degrees` and source runs (npx also takes `--data-dir`; see `npx six-degrees --help`), not when the Mac app is opened from the Dock or Finder. A relative folder is taken from the folder you run the command in. |
494
- | `ADMIN_TOKEN` | Not needed on your own computer. The app listens only on 127.0.0.1 and isn't built to be exposed: don't put it behind a tunnel or bind it to another address ([SECURITY.md](SECURITY.md)). If it's ever bound elsewhere, the ten routes that delete, replace or hand over your data, run the scanner, open the data folder or update a copy run from source refuse every caller without this token, including the app's own buttons. Everything else, including reading your whole network, stays open. |
530
+ | `ADMIN_TOKEN` | Not needed on your own computer. The app listens only on 127.0.0.1 and isn't built to be exposed: don't put it behind a tunnel or bind it to another address ([SECURITY.md](SECURITY.md)). If it's ever bound elsewhere, the eleven routes that delete, replace or hand over your data, run the scanner, open the data folder or update a copy run from source refuse every caller without this token, including the app's own buttons. Everything else, including reading your whole network, stays open. |
495
531
 
496
532
  ## Docs
497
533
 
package/SECURITY.md CHANGED
@@ -12,21 +12,25 @@ This app is designed to run **on your own machine, against your own network**.
12
12
 
13
13
  - The web UI binds to localhost. It is not hardened for exposure to the
14
14
  internet, and it has no multi-user authentication or per-user authorization.
15
- - Ten API routes are gated (`admin-delete`, `admin-update`, `delete-cluster`,
16
- `setup-profile`, `scraper`, `update`, and Settings → Your data's
17
- `data/export`, `data/import`, `data/restart`, `data/reveal`). The first four
18
- can irreversibly destroy or rewrite data, `scraper` starts processes, and
19
- `update` changes the code that runs next. `data/export` hands over the whole
15
+ - Thirteen API routes are gated (`admin-delete`, `admin-update`, `delete-cluster`,
16
+ `setup-profile`, `scraper`, `update`, Settings → Your data's
17
+ `data/export`, `data/import`, `data/restart`, `data/reveal`, `data/backup`,
18
+ `data/restore`, and `data/csv`). The first four can irreversibly destroy or rewrite data,
19
+ `scraper` starts processes, and `update` changes the code that runs next. `data/export` hands over the whole
20
20
  network in one file, `data/import` replaces it, `data/restart` stops the
21
- server, and `data/reveal` starts a process (Finder, or the Linux file
22
- browser, on the data folder's own path). While the server is bound to
21
+ server, `data/reveal` starts a process (Finder, or the Linux file
22
+ browser, on the data folder's own path or a backup in it), `data/backup`
23
+ writes the whole network to a file in `backups/`, `data/restore`
24
+ replaces the network with one of those backups, named as `backups/` lists
25
+ it, never by a path from the request, and `data/csv` keeps, hands over and
26
+ removes a LinkedIn CSV import kept in the data folder. While the server is bound to
23
27
  127.0.0.1 they need no token — anyone who can reach it can already open the
24
28
  database file directly, so a token there adds friction rather than safety. If
25
29
  it is bound to any other address, every caller must send `ADMIN_TOKEN` as a
26
30
  bearer, including this machine and the app's own buttons, and the routes
27
31
  refuse to run when it is unset. Reading the data folder's facts
28
- (`GET /api/data`: its path and sizes) changes nothing and stays open, like
29
- every other read.
32
+ (`GET /api/data`: its path, sizes and backups) changes nothing and stays
33
+ open, like every other read.
30
34
  - A localhost-bound service is still reachable by any web page you visit — the
31
35
  binding keeps other machines out, not your own browser. Every mutating API
32
36
  request is therefore refused when the browser reports it came from another
@@ -113,8 +117,10 @@ This app is designed to run **on your own machine, against your own network**.
113
117
 
114
118
  Everything stays local:
115
119
 
116
- - A CSV import is parsed in the browser and held for that tab only. It is never
117
- uploaded and never written to a database.
120
+ - A CSV import is parsed in the browser. Only what the map needs about each
121
+ person (no email addresses) goes to the app on this computer, which keeps it
122
+ in the data folder as `csv-network.json` until you remove it, apart from the
123
+ database. It is never uploaded anywhere.
118
124
  - Scanned data and cached avatars are written to your machine and are gitignored.
119
125
  The app shows photos only from those files, so looking at your network never
120
126
  contacts LinkedIn.