six-degrees 0.4.7 → 0.4.9
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.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +1 -0
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +6 -0
- package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +2 -2
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +13 -13
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +11 -11
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/api/admin-delete/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/admin-update/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/bridges/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/bulk-import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js +2 -1
- package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/company-scores/route.js +2 -1
- package/.next/standalone/.next/server/app/api/company-scores/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/connections/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/export/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/restart/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/reveal/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/delete-cluster/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/ingest/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/outreach/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/scraper/route.js +2 -2
- package/.next/standalone/.next/server/app/api/scraper/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/route.js +3 -2
- package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js +2 -1
- package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js +2 -1
- package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/setup-profile/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/social/messages/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/social/messages/route/build-manifest.json +12 -0
- package/.next/standalone/.next/server/app/api/social/messages/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/social/messages/route.js +9 -0
- package/.next/standalone/.next/server/app/api/social/messages/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/social/messages/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/social/messages/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/social/route.js +4 -2
- package/.next/standalone/.next/server/app/api/social/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/unlock/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/update/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/update-images/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/users/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/avatars/[file]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/favicon.ico/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/favicon.ico.body +0 -0
- package/.next/standalone/.next/server/app/import/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/import/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/import.html +1 -1
- package/.next/standalone/.next/server/app/import.rsc +15 -15
- package/.next/standalone/.next/server/app/import.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/import.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/import.segments/import/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +15 -15
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/launch/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/launch/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/launch.html +2 -2
- package/.next/standalone/.next/server/app/launch.rsc +15 -15
- package/.next/standalone/.next/server/app/launch.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/launch.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/launch.segments/launch/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/paths/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/paths/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/paths.html +1 -1
- package/.next/standalone/.next/server/app/paths.rsc +15 -15
- package/.next/standalone/.next/server/app/paths.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/paths.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/paths.segments/paths/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/profile/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/profile/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/profile.html +1 -1
- package/.next/standalone/.next/server/app/profile.rsc +15 -15
- package/.next/standalone/.next/server/app/profile.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/profile.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/profile.segments/profile/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/queue/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/queue.html +1 -1
- package/.next/standalone/.next/server/app/queue.rsc +15 -15
- package/.next/standalone/.next/server/app/queue.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/queue.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/queue.segments/queue/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/scores/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/scores/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/scores.html +1 -1
- package/.next/standalone/.next/server/app/scores.rsc +15 -15
- package/.next/standalone/.next/server/app/scores.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/scores.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/scores.segments/scores/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings.html +1 -1
- package/.next/standalone/.next/server/app/settings.rsc +15 -15
- package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/setup.html +1 -1
- package/.next/standalone/.next/server/app/setup.rsc +15 -15
- package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app/social/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/social/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/social.html +1 -1
- package/.next/standalone/.next/server/app/social.rsc +15 -15
- package/.next/standalone/.next/server/app/social.segments/_full.segment.rsc +15 -15
- package/.next/standalone/.next/server/app/social.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/social.segments/social/__PAGE__.segment.rsc +13 -13
- package/.next/standalone/.next/server/app-paths-manifest.json +1 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__06mi9k2._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__08f5awg._.js +8 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0bat8nx._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__17hjtzl._.js +8 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__20tmem7._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0ea9qwy._.js +3 -0
- package/.next/standalone/.next/server/chunks/_1_fynia._.js +6 -6
- package/.next/standalone/.next/server/chunks/_1itd1o_._.js +1 -1
- package/.next/standalone/.next/server/chunks/_1mxn_lb._.js +1 -1
- package/.next/standalone/.next/server/chunks/_1xh07bp._.js +1 -1
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_social_messages_route_actions_0skh09r.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_18cr1gi._.js +8 -0
- package/.next/standalone/.next/server/chunks/lib_db-client_15le7cw.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_03i8xef.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_08fc3rp.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_08r2t_q.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_0btpv1t.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_0c9d9ti.js +5 -5
- package/.next/standalone/.next/server/chunks/lib_rpc_0cm2ev3.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_0iovswz.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_0is8flp.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_0v8ajtd.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_0xgmvvt.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_144mzbf.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_1bggi0n.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_1dkcu9f.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_1o0jb6w.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_scoring_1-e4ur0.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_1zc5q0a._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__00d8snt._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__00g61b8._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08lf3gy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0hg5gib._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ho-u0w._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__1feicqq._.js → [root-of-the-server]__0qdeuyo._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ze473p._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1194jps._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1cnxxc9._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1jeztd-._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1ll97ry._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1m0255u._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1w9z0zv._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0c_y09g._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0ezj4e0._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_1mj739k._.js → _0l8cxmo._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_1errbuf._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0wxbq78._.js → app_components_19c2d9c._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/app_components_ui_0pdmz2z.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_paths_page_1ol90m7.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_profile_page_0u3-l5y.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_queue_page_0c6znd6.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_scores_page_09wepvv.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_settings_page_1f8mjj_.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_setup_page_1-282zx.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_social_page_0h7zxda.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/lib_0i8v-s3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_1wax83z._.js → node_modules_0h91jdk._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{node_modules_1nkgb45._.js → node_modules_1f8t_rp._.js} +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/middleware-manifest.json +5 -5
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/{2_zu7rmb8flzl.js → 04bbi55urkrd6.js} +1 -1
- package/.next/{static/chunks/3q3pmt5vv-4pi.js → standalone/.next/static/chunks/054zdthcnyd2h.js} +1 -1
- package/.next/{static/chunks/236f0jtp68j_h.js → standalone/.next/static/chunks/1_mohm2643nxp.js} +1 -1
- package/.next/{static/chunks/3zw8bv7-mc4n6.js → standalone/.next/static/chunks/1z_rt4jteewqp.js} +1 -1
- package/.next/standalone/.next/static/chunks/24tvdun1cb3g1.js +1 -0
- package/.next/standalone/.next/static/chunks/2bftn9gubwf0w.js +1 -0
- package/.next/{static/chunks/0g_p4p7oci18u.js → standalone/.next/static/chunks/2kfhc58df2xyo.js} +1 -1
- package/.next/standalone/.next/static/chunks/2pw6_osz1n_te.js +1 -0
- package/.next/standalone/.next/static/chunks/39csdcx7yv227.js +1 -0
- package/.next/standalone/.next/static/chunks/3yzlf70j5t0-o.js +1 -0
- package/.next/standalone/.next/static/chunks/{2_wcobfqry2uj.js → 3z-swu5pet507.js} +1 -1
- package/.next/standalone/.next/static/media/favicon.23vm2o6v3er2z.ico +0 -0
- package/.next/standalone/CHANGELOG.md +72 -0
- package/.next/standalone/CONTRIBUTING.md +5 -0
- package/.next/standalone/README.md +168 -56
- package/.next/standalone/app/api/social/messages/route.js +130 -0
- package/.next/standalone/app/api/social/route.js +89 -47
- package/.next/standalone/app/components/ScanStatusBar.js +40 -3
- package/.next/standalone/app/components/settings/DataSection.js +2 -1
- package/.next/standalone/app/favicon.ico +0 -0
- package/.next/standalone/app/paths/page.js +27 -18
- package/.next/standalone/app/profile/page.js +2 -0
- package/.next/standalone/app/queue/page.js +2 -0
- package/.next/standalone/app/scores/page.js +2 -0
- package/.next/standalone/app/settings/page.js +2 -0
- package/.next/standalone/app/setup/page.js +6 -3
- package/.next/standalone/app/social/Conversations.js +246 -0
- package/.next/standalone/app/social/page.js +90 -9
- package/.next/standalone/lib/galaxy-lab.js +6 -1
- package/.next/standalone/lib/linkedin-export.js +175 -5
- package/.next/standalone/lib/scoring.js +42 -1
- package/.next/standalone/lib/social-store.js +73 -0
- package/.next/standalone/package-lock.json +2 -2
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/scripts/build-site.mjs +537 -0
- package/.next/standalone/scripts/scrape.py +156 -23
- package/.next/standalone/scripts/site-markdown.mjs +188 -0
- package/.next/standalone/scripts/site-news.mjs +311 -0
- package/.next/static/chunks/{2_zu7rmb8flzl.js → 04bbi55urkrd6.js} +1 -1
- package/.next/{standalone/.next/static/chunks/3q3pmt5vv-4pi.js → static/chunks/054zdthcnyd2h.js} +1 -1
- package/.next/{standalone/.next/static/chunks/236f0jtp68j_h.js → static/chunks/1_mohm2643nxp.js} +1 -1
- package/.next/{standalone/.next/static/chunks/3zw8bv7-mc4n6.js → static/chunks/1z_rt4jteewqp.js} +1 -1
- package/.next/static/chunks/24tvdun1cb3g1.js +1 -0
- package/.next/static/chunks/2bftn9gubwf0w.js +1 -0
- package/.next/{standalone/.next/static/chunks/0g_p4p7oci18u.js → static/chunks/2kfhc58df2xyo.js} +1 -1
- package/.next/static/chunks/2pw6_osz1n_te.js +1 -0
- package/.next/static/chunks/39csdcx7yv227.js +1 -0
- package/.next/static/chunks/3yzlf70j5t0-o.js +1 -0
- package/.next/static/chunks/{2_wcobfqry2uj.js → 3z-swu5pet507.js} +1 -1
- package/.next/static/media/favicon.23vm2o6v3er2z.ico +0 -0
- package/CHANGELOG.md +72 -0
- package/README.md +168 -56
- package/lib/galaxy-lab.js +6 -1
- package/lib/linkedin-export.js +175 -5
- package/lib/scoring.js +42 -1
- package/lib/social-store.js +73 -0
- package/package.json +1 -1
- package/scripts/scrape.py +156 -23
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__17kn1mk._.js +0 -8
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1dmc7-t._.js +0 -8
- package/.next/standalone/.next/server/chunks/ssr/_005q9n1._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_217nddo._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/app_0i3fw_m._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_server-async-storage_0t1dato.js +0 -3
- package/.next/standalone/.next/static/chunks/0a5iadnmt9u9k.js +0 -1
- package/.next/standalone/.next/static/chunks/0y1yms5kez2f3.js +0 -1
- package/.next/standalone/.next/static/chunks/14m1zu-8warte.js +0 -1
- package/.next/standalone/.next/static/chunks/15qbli9udo0vh.js +0 -1
- package/.next/standalone/.next/static/chunks/3p_pwu5gx2i9h.js +0 -1
- package/.next/standalone/.next/static/media/favicon.0zdzw5kurn8m-.ico +0 -0
- package/.next/static/chunks/0a5iadnmt9u9k.js +0 -1
- package/.next/static/chunks/0y1yms5kez2f3.js +0 -1
- package/.next/static/chunks/14m1zu-8warte.js +0 -1
- package/.next/static/chunks/15qbli9udo0vh.js +0 -1
- package/.next/static/chunks/3p_pwu5gx2i9h.js +0 -1
- package/.next/static/media/favicon.0zdzw5kurn8m-.ico +0 -0
- /package/.next/standalone/.next/static/{YNRcnda8lvMnnrOKL1L5l → yPlsfKhdS8MMtyXF7twSZ}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{YNRcnda8lvMnnrOKL1L5l → yPlsfKhdS8MMtyXF7twSZ}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{YNRcnda8lvMnnrOKL1L5l → yPlsfKhdS8MMtyXF7twSZ}/_ssgManifest.js +0 -0
- /package/.next/static/{YNRcnda8lvMnnrOKL1L5l → yPlsfKhdS8MMtyXF7twSZ}/_buildManifest.js +0 -0
- /package/.next/static/{YNRcnda8lvMnnrOKL1L5l → yPlsfKhdS8MMtyXF7twSZ}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{YNRcnda8lvMnnrOKL1L5l → yPlsfKhdS8MMtyXF7twSZ}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
module.exports=[90195,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944),e=a.i(37732),f=a.i(23310),g=a.i(58834),h=a.i(42510),i=a.i(36839);a.i(75930);var j=a.i(74365),k=a.i(72243),l=a.i(11366),m=a.i(53877),n=a.i(54433),o=a.i(64110),p=a.i(90017),q=a.i(9282);let r={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},s="1px solid rgba(255,255,255,0.1)",t=[...q.INDUSTRIES,q.UNKNOWN_INDUSTRY];function u(a){let b=0x811c9dc5;for(let c=0;c<a.length;c++)b=Math.imul(b^a.charCodeAt(c),0x1000193);return(b>>>0)%1e3/1e3}function v({value:a,onChange:c,options:d}){return(0,b.jsx)("div",{style:{display:"flex",borderRadius:7,overflow:"hidden",border:s},children:d.map(([d,e])=>(0,b.jsx)("button",{onClick:()=>c(d),style:{padding:"5px 10px",fontSize:11.5,fontWeight:600,border:"none",cursor:"pointer",background:a===d?"rgba(52,152,219,0.25)":"transparent",color:a===d?"#cfe6f7":"#8b9a9a"},children:e},d))})}function w(a,b){return("all"===b.degree||String(a.degree)===b.degree)&&("senior"!==b.seniority||!!(0,q.isSenior)(a.headline))&&("csuite"!==b.seniority||!((0,q.getSeniority)(a.headline).level<6))&&("SA"!==b.tier||"S"===a.tier||"A"===a.tier)}function x({d1:a=[],d2:d=[],d3:e=[],tab:f="map",onOpenCompany:g}){let[h,i]=(0,c.useState)({degree:"all",seniority:"all",tier:"all"}),[j,k]=(0,c.useState)(()=>new Set),[l,m]=(0,c.useState)(""),[n,o]=(0,c.useState)(null),p=(0,c.useMemo)(()=>[...a,...d,...e],[a,d,e]),r=(0,c.useMemo)(()=>(0,q.buildCompanyIndex)(p),[p]),s=(0,c.useMemo)(()=>(0,q.companyLinks)(a,d),[a,d]),u=(0,c.useMemo)(()=>{let a=l.trim().toLowerCase(),b=[];for(let c of r.values()){if(j.has(c.industry.key)||a&&!c.name.toLowerCase().includes(a))continue;let d=c.people.filter(a=>w(a,h));d.length&&b.push({...c,shown:d})}return b.sort((a,b)=>b.shown.length-a.shown.length)},[r,h,j,l]),v=(0,c.useMemo)(()=>{let a=new Map(t.map(a=>[a.key,{...a,people:[],companies:new Map}])),b=new Set;for(let c of p){let d=c.profile_url||`id:${c.id}`;if(b.has(d)||(b.add(d),!w(c,h)))continue;let e=(0,q.companyOf)(c),f=e?r.get(e)?.industry||(0,q.industryOf)(e,c.headline):(0,q.industryOf)(null,c.headline),g=a.get(f.key);g.people.push(c),e&&g.companies.set(e,(g.companies.get(e)||0)+1)}return[...a.values()].filter(a=>a.people.length).sort((a,b)=>b.people.length-a.people.length)},[p,r,h]),A=n?.kind==="company"?r.get(n.key):n?.kind==="industry"?v.find(a=>a.key===n.key):null;return(0,b.jsxs)("div",{style:{display:"flex",flex:1,minHeight:0},children:[(0,b.jsxs)("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column"},children:[(0,b.jsx)(y,{filters:h,setFilters:i,query:l,setQuery:m,industries:v,hidden:j,setHidden:k,onIndustry:a=>o({kind:"industry",key:a})}),"map"===f?(0,b.jsx)(z,{companies:u,links:s,focus:n,onCompany:a=>o({kind:"company",key:a}),onIndustry:a=>o({kind:"industry",key:a}),onClear:()=>o(null)}):(0,b.jsx)(B,{industries:v,index:r,d1:a,d2:d,onIndustry:a=>o({kind:"industry",key:a}),onCompany:a=>o({kind:"company",key:a})})]}),A&&(0,b.jsx)(D,{focus:n,data:A,index:r,links:s,d1:a,d2:d,filters:h,onClose:()=>o(null),onCompany:a=>o({kind:"company",key:a}),onOpenCompany:g})]})}function y({filters:a,setFilters:c,query:d,setQuery:e,industries:f,hidden:g,setHidden:h,onIndustry:i}){let j=(a,b)=>c(c=>({...c,[a]:b}));return(0,b.jsxs)("div",{style:{padding:"10px 16px",borderBottom:s,display:"flex",flexDirection:"column",gap:8},children:[(0,b.jsxs)("div",{style:{display:"flex",gap:8,flexWrap:"wrap",alignItems:"center"},children:[(0,b.jsx)("input",{value:d,onChange:a=>e(a.target.value),placeholder:"Find a company",style:{padding:"6px 10px",borderRadius:7,border:s,background:"rgba(255,255,255,0.05)",color:"#fff",fontSize:13,minWidth:170}}),(0,b.jsx)(v,{value:a.degree,onChange:a=>j("degree",a),options:[["all","All degrees"],["1","1st"],["2","2nd"],["3","3rd"]]}),(0,b.jsx)(v,{value:a.seniority,onChange:a=>j("seniority",a),options:[["all","Any level"],["senior","Director+"],["csuite","C-suite"]]}),(0,b.jsx)(v,{value:a.tier,onChange:a=>j("tier",a),options:[["all","All tiers"],["SA","S & A only"]]})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,flexWrap:"wrap"},children:[f.map(a=>{let c=g.has(a.key);return(0,b.jsxs)("span",{style:{display:"inline-flex",borderRadius:14,border:`1px solid ${a.color}55`,overflow:"hidden",opacity:c?.4:1},children:[(0,b.jsx)("button",{title:c?"Show on the map":"Hide from the map",onClick:()=>h(b=>{let c=new Set(b);return c.has(a.key)?c.delete(a.key):c.add(a.key),c}),style:{padding:"3px 7px",border:"none",background:`${a.color}22`,cursor:"pointer",color:a.color,fontSize:11},children:"●"}),(0,b.jsxs)("button",{onClick:()=>i(a.key),title:"Analyse this industry",style:{padding:"3px 9px 3px 5px",border:"none",background:"transparent",cursor:"pointer",color:"#cfd8d8",fontSize:11.5},children:[a.label," ",(0,b.jsx)("span",{style:{color:"#778"},children:a.people.length})]})]},a.key)}),(0,b.jsx)("span",{style:{fontSize:11,color:"#667",alignSelf:"center"},children:"industries inferred from companies and headlines"})]})]})}function z({companies:a,links:d,focus:e,onCompany:f,onIndustry:g,onClear:h}){let i=(0,c.useRef)(null),{w:p,h:s}=function(a){let[b,d]=(0,c.useState)({w:0,h:0});return(0,c.useEffect)(()=>{let b=a.current;if(!b)return;let c=()=>{let a=b.getBoundingClientRect();d(b=>b.w===Math.round(a.width)&&b.h===Math.round(a.height)?b:{w:Math.round(a.width),h:Math.round(a.height)})};c();let e=new ResizeObserver(c);return e.observe(b),()=>e.disconnect()},[a]),b}(i),[t,v]=(0,c.useState)(null),w=(0,c.useMemo)(()=>{let b=a.slice(0,140),c=new Set(b.map(a=>a.name)),e=[...new Set(b.map(a=>a.industry.key))],f=new Map(e.map((a,b)=>{let c=b/Math.max(1,e.length)*Math.PI*2-Math.PI/2;return[a,{x:260*Math.cos(c),y:260*Math.sin(c)}]})),g=b.map(a=>({id:a.name,co:a,r:4+3.4*Math.sqrt(a.shown.length),x:f.get(a.industry.key).x+(u(a.name)-.5)*40,y:f.get(a.industry.key).y+(u(a.name+"#")-.5)*40})),h=d.filter(a=>c.has(a.a)&&c.has(a.b)).map(a=>({source:a.a,target:a.b,weight:a.weight,via:a.via.size})),i=(0,m.forceSimulation)(g).force("x",(0,n.forceX)(a=>f.get(a.co.industry.key).x).strength(.12)).force("y",(0,o.forceY)(a=>f.get(a.co.industry.key).y).strength(.12)).force("collide",(0,j.forceCollide)(a=>a.r+3)).force("charge",(0,l.forceManyBody)().strength(-25)).force("link",(0,k.forceLink)(h).id(a=>a.id).strength(a=>Math.min(.25,.03*a.weight)).distance(60)).stop();for(let a=0;a<320;a++)i.tick();let p=g.flatMap(a=>[a.x-a.r,a.x+a.r]),r=g.flatMap(a=>[a.y-a.r,a.y+a.r]),s=g.length?{x:Math.min(...p)-60,y:Math.min(...r)-40,w:Math.max(...p)-Math.min(...p)+120,h:Math.max(...r)-Math.min(...r)+80}:{x:-300,y:-300,w:600,h:600},t=e.map(a=>{let b=g.filter(b=>b.co.industry.key===a),c=b.reduce((a,b)=>a+b.x,0)/b.length,d=b.reduce((a,b)=>a+b.y,0)/b.length,e=Math.hypot(c,d)||1,f=c/e,h=d/e,i=Math.max(...b.map(a=>(a.x-c)*f+(a.y-d)*h+a.r));return{key:a,x:c+f*(i+16),y:d+h*(i+16)+4,anchor:f>.35?"start":f<-.35?"end":"middle",ind:(0,q.industryByKey)(a)}});for(let a of t){let b=7.5*a.ind.label.length,c="start"===a.anchor?a.x:"end"===a.anchor?a.x-b:a.x-b/2,d=Math.max(s.x+s.w,c+b+10);s.x=Math.min(s.x,c-10),s.w=d-s.x;let e=Math.max(s.y+s.h,a.y+12);s.y=Math.min(s.y,a.y-18),s.h=e-s.y}return s.h+=Math.max(60,.1*s.h),{nodes:g,edges:h,box:s,labels:t,cut:Math.max(0,a.length-b.length)}},[a,d]),x=t||(e?.kind==="company"?e.key:null),y=e?.kind==="industry"?e.key:null,A=(0,c.useMemo)(()=>{if(!x)return null;let a=new Set([x]);for(let b of w.edges)b.source.id===x&&a.add(b.target.id),b.target.id===x&&a.add(b.source.id);return a},[x,w]),B=(0,c.useMemo)(()=>new Set(w.nodes.slice(0,28).map(a=>a.id)),[w]);return(0,b.jsxs)("div",{ref:i,style:{flex:1,minHeight:360,position:"relative"},onClick:h,children:[p>0&&(0,b.jsxs)("svg",{width:p,height:s,viewBox:`${w.box.x} ${w.box.y} ${w.box.w} ${w.box.h}`,style:{display:"block"},children:[(0,b.jsx)("g",{children:w.edges.map((a,c)=>{let d=x&&(a.source.id===x||a.target.id===x);return(0,b.jsx)("line",{x1:a.source.x,y1:a.source.y,x2:a.target.x,y2:a.target.y,stroke:d?"#FF6B35":"#8fa6c0",strokeOpacity:d?.8:x?.04:.14,strokeWidth:d?1+Math.log2(1+a.weight):.4+.5*Math.log2(1+a.weight)},c)})}),w.labels.map(a=>(0,b.jsx)("text",{x:a.x,y:a.y,textAnchor:a.anchor,fontSize:13,fontWeight:800,fill:a.ind.color,opacity:y&&y!==a.key?.25:.85,style:{cursor:"pointer"},onClick:b=>{b.stopPropagation(),g(a.key)},children:a.ind.label},a.key)),w.nodes.map(a=>{let c=A&&!A.has(a.id)||y&&a.co.industry.key!==y,d=e?.kind==="company"&&e.key===a.id;return(0,b.jsxs)("g",{transform:`translate(${a.x},${a.y})`,style:{cursor:"pointer"},opacity:c?.18:1,onMouseEnter:()=>v(a.id),onMouseLeave:()=>v(null),onClick:b=>{b.stopPropagation(),f(a.id)},children:[(0,b.jsx)("title",{children:`${a.co.name} \xb7 ${a.co.industry.label} (inferred)
|
|
2
|
-
${a.co.d1} you know \xb7 ${a.co.d2} reachable${a.co.d3?` \xb7 ${a.co.d3} further`:""}`}),(0,b.jsx)("circle",{r:a.r,fill:a.co.industry.color,fillOpacity:.75,stroke:d?"#fff":a.co.S?r.S:"rgba(0,0,0,0.35)",strokeWidth:d?2.5:a.co.S?1.5:.6}),a.co.d1>0&&(0,b.jsx)("circle",{r:a.r*Math.sqrt(a.co.d1/Math.max(1,a.co.people.length)),fill:"#fff",fillOpacity:.35}),(B.has(a.id)||a.id===x||d)&&(0,b.jsx)("text",{y:a.r+11,textAnchor:"middle",fontSize:10,fill:"#e6edf0",style:{pointerEvents:"none"},children:a.co.name})]},a.id)})]}),(0,b.jsxs)("div",{style:{position:"absolute",left:12,bottom:10,fontSize:11,color:"#778",lineHeight:1.6,pointerEvents:"none"},children:["Bubble = a company, sized by your people there; white centre = the share you already know; gold ring = an S-tier person inside.",(0,b.jsx)("br",{}),"A line = one of your connections at one company knows people at the other.",w.cut?` Showing the 140 largest; ${w.cut} smaller companies are in Industries.`:""]})]})}function A({parts:a,total:c}){return(0,b.jsx)("div",{style:{display:"flex",height:6,borderRadius:3,overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:a.map(([a,d],e)=>(0,b.jsx)("div",{style:{width:`${a/Math.max(1,c)*100}%`,background:d}},e))})}function B({industries:a,index:d,d1:e,d2:f,onIndustry:g,onCompany:h}){let i=(0,c.useMemo)(()=>{let a=new Map(e.map(a=>[a.id,a])),b=new Map;for(let a of f){let c=(0,q.companyOf)(a),e=c?d.get(c)?.industry.key:(0,q.industryOf)(null,a.headline).key;if(!e)continue;let f=b.get(e)||new Map;f.set(a.source_connection_id,(f.get(a.source_connection_id)||0)+1),b.set(e,f)}let c=new Map;for(let[d,e]of b){let[b,f]=[...e.entries()].sort((a,b)=>b[1]-a[1])[0]||[];a.get(b)&&c.set(d,{bridge:a.get(b),n:f})}return c},[d,e,f]);return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:16},children:(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:12},children:a.map(a=>{let c=a.people.filter(a=>1===a.degree).length,d=a.people.filter(a=>2===a.degree).length,e=a.people.filter(a=>(0,q.isSenior)(a.headline)).length,f=a.people.filter(a=>"S"===a.tier).length,j=[...a.companies.entries()].sort((a,b)=>b[1]-a[1]).slice(0,3),k=i.get(a.key);return(0,b.jsxs)("div",{onClick:()=>g(a.key),style:{padding:14,borderRadius:10,border:s,borderTop:`3px solid ${a.color}`,background:"rgba(255,255,255,0.03)",cursor:"pointer"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline"},children:[(0,b.jsx)("b",{style:{fontSize:14,color:a.color},children:a.label}),(0,b.jsx)("span",{style:{fontSize:20,fontWeight:800},children:a.people.length})]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#8b9a9a",margin:"4px 0 6px"},children:[c," you know · ",d," reachable · ",a.companies.size," companies · ",e," director+ · ",f," S-tier"]}),(0,b.jsx)(A,{total:a.people.length,parts:[[c,"#00ff88"],[d,"#FF6B35"]]}),j.length>0&&(0,b.jsx)("div",{style:{marginTop:8,display:"flex",gap:6,flexWrap:"wrap"},children:j.map(([a,c])=>(0,b.jsxs)("button",{onClick:b=>{b.stopPropagation(),h(a)},style:{padding:"2px 8px",borderRadius:10,border:s,background:"rgba(255,255,255,0.05)",color:"#dfe6e9",fontSize:11,cursor:"pointer"},children:[a," ",(0,b.jsx)("span",{style:{color:"#778"},children:c})]},a))}),k&&(0,b.jsxs)("div",{style:{marginTop:8,fontSize:11.5,color:"#aab7b7"},children:["Best way in: ",(0,b.jsx)("b",{style:{color:r[k.bridge.tier]||"#ccc"},children:k.bridge.name})," knows ",k.n," here"]})]},a.key)})})})}function C({p:a,note:c}){return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"5px 0",fontSize:12.5},children:[(0,b.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:r[a.tier]||"#667",flexShrink:0}}),(0,b.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,b.jsx)("div",{style:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:11,color:"#8b9a9a",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c||a.headline})]})]})}function D({focus:a,data:d,index:e,links:f,d1:g,d2:h,filters:i,onClose:j,onCompany:k,onOpenCompany:l}){let m,n,o,p="company"===a.kind,r=d.people.filter(a=>w(a,i)),t=(0,c.useMemo)(()=>{let a=new Map;for(let b of r){let c=(0,q.getSeniority)(b.headline);a.set(c.label,{n:(a.get(c.label)?.n||0)+1,level:c.level})}return[...a.entries()].sort((a,b)=>b[1].level-a[1].level)},[r]),u=(0,c.useMemo)(()=>p?(0,q.waysInto)(d.name,g,h):null,[p,d,g,h]),v=(0,c.useMemo)(()=>p?f.filter(a=>a.a===d.name||a.b===d.name).map(a=>({name:a.a===d.name?a.b:a.a,weight:a.weight})).sort((a,b)=>b.weight-a.weight).slice(0,8):[],[p,f,d]),x=[...r].sort((a,b)=>(Number(b.power_score)||0)-(Number(a.power_score)||0)).slice(0,6),y=p?d.industry:d,z=r.filter(a=>1===a.degree).length,B=r.filter(a=>2===a.degree).length,G=p?[]:[...d.companies.entries()].sort((a,b)=>b[1]-a[1]).slice(0,10);return(0,b.jsxs)("aside",{style:{width:360,flexShrink:0,borderLeft:s,overflow:"auto",padding:16,background:"rgba(255,255,255,0.02)"},children:[(0,b.jsx)("button",{onClick:j,style:{background:"none",border:"none",color:"#888",cursor:"pointer",fontSize:12,padding:0},children:"✕ Close"}),(0,b.jsxs)("div",{style:{fontSize:10,letterSpacing:1,color:"#8b9a9a",marginTop:8},children:[p?"COMPANY":"INDUSTRY"," ANALYZER"]}),(0,b.jsx)("h2",{style:{margin:"4px 0 6px",fontSize:20},children:p?d.name:d.label}),(0,b.jsxs)("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:10,background:`${y.color}22`,color:y.color},children:[y.label,p?" · inferred":""]}),p&&(0,b.jsx)(F,{name:d.name}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(3, 1fr)",gap:8,margin:"14px 0"},children:[[z,"you know","#00ff88"],[B,"reachable","#FF6B35"],[r.filter(a=>(0,q.isSenior)(a.headline)).length,"director+","#FFD700"]].map(([a,c,d])=>(0,b.jsxs)("div",{style:{padding:8,borderRadius:8,background:"rgba(255,255,255,0.04)",textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:20,fontWeight:800,color:d},children:a}),(0,b.jsx)("div",{style:{fontSize:10.5,color:"#8b9a9a"},children:c})]},c))}),(0,b.jsx)(E,{title:"By level",children:t.map(([a,{n:c}])=>(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"110px 1fr 28px",gap:8,alignItems:"center",fontSize:11.5,marginBottom:4},children:[(0,b.jsx)("span",{style:{color:"#aab7b7"},children:a}),(0,b.jsx)(A,{total:r.length,parts:[[c,"#3498DB"]]}),(0,b.jsx)("span",{style:{color:"#778",textAlign:"right"},children:c})]},a))}),p&&u&&(0,b.jsxs)(E,{title:"Ways in",children:[u.direct.length>0&&(0,b.jsxs)("div",{style:{fontSize:11,color:"#00ff88",margin:"2px 0"},children:["You already know ",u.direct.length," here"]}),(m=new Map(u.bridges.map(({bridge:a,n:b})=>[a.id,b])),n=[...u.direct].sort((a,b)=>(m.get(b.id)||0)-(m.get(a.id)||0)).slice(0,4),o=new Set(u.direct.map(a=>a.id)),(0,b.jsxs)(b.Fragment,{children:[n.map(a=>(0,b.jsx)(C,{p:a,note:m.get(a.id)?`works here \xb7 knows ${m.get(a.id)} here`:`works here \xb7 ${a.headline||""}`},a.id)),u.bridges.filter(({bridge:a})=>!o.has(a.id)).slice(0,5).map(({bridge:a,n:c})=>(0,b.jsx)(C,{p:a,note:`knows ${c} ${1===c?"person":"people"} here`},a.id))]})),!u.direct.length&&!u.bridges.length&&(0,b.jsx)("div",{style:{fontSize:12,color:"#778"},children:"No one you know links here yet."})]}),(0,b.jsx)(E,{title:p?"Most powerful people here":"Most powerful people in this industry",children:x.map(a=>(0,b.jsx)(C,{p:a,note:`${1===a.degree?"you know them":2===a.degree?"2nd degree":"3rd+"} \xb7 ${a.headline||""}`},a.id))}),p&&v.length>0&&(0,b.jsx)(E,{title:"Connected companies",children:(0,b.jsx)("div",{style:{display:"flex",gap:6,flexWrap:"wrap"},children:v.map(a=>(0,b.jsxs)("button",{onClick:()=>k(a.name),style:{padding:"3px 9px",borderRadius:10,border:s,background:`${e.get(a.name)?.industry.color||"#666"}22`,color:"#dfe6e9",fontSize:11.5,cursor:"pointer"},children:[a.name," ",(0,b.jsx)("span",{style:{color:"#778"},children:a.weight})]},a.name))})}),!p&&(0,b.jsx)(E,{title:"Companies",children:G.map(([a,c])=>(0,b.jsxs)("div",{onClick:()=>k(a),style:{display:"grid",gridTemplateColumns:"1fr 60px 24px",gap:8,alignItems:"center",fontSize:12,padding:"3px 0",cursor:"pointer"},children:[(0,b.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),(0,b.jsx)(A,{total:G[0][1],parts:[[c,y.color]]}),(0,b.jsx)("span",{style:{color:"#778",textAlign:"right"},children:c})]},a))}),p&&l&&(0,b.jsxs)("button",{onClick:()=>l(d),style:{marginTop:14,width:"100%",padding:"10px",borderRadius:8,border:"none",cursor:"pointer",fontWeight:700,background:"linear-gradient(135deg, #00ff88, #3498DB)",color:"#000"},children:["Path to the top of ",d.name," →"]})]})}function E({title:a,children:c}){return(0,b.jsxs)("div",{style:{marginTop:14},children:[(0,b.jsx)("div",{style:{fontSize:10.5,letterSpacing:.8,color:"#8b9a9a",fontWeight:700,marginBottom:6},children:a.toUpperCase()}),c]})}function F({name:a}){let{companies:c,setScore:d}=(0,p.useCompanyScores)(),e=c?.find(b=>b.name===a);if(!e)return null;let f={yours:"your score",known:"known list",network:"estimated",default:"unknown company"}[e.source];return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:10,fontSize:12,color:"#aab7b7"},children:["Company score ",(0,b.jsx)("b",{style:{color:"#fff",fontSize:15},children:e.score}),"/10 · ",f,(0,b.jsx)("span",{style:{marginLeft:"auto"},children:(0,b.jsx)(p.ScorePicker,{company:e,onSet:d,compact:!0})})]})}var G=a.i(75857),H=a.i(61782),I=a.i(38246),J=a.i(56377);let K=[["map","Map"],["industries","Industries"],["companies","Companies"]];function L(){let{userId:a}=(0,G.useUser)(),[i,j]=(0,c.useState)([]),[k,l]=(0,c.useState)(null),[m,n]=(0,c.useState)([]),[o,p]=(0,c.useState)(!0),[r,s]=(0,c.useState)([]),[t,u]=(0,c.useState)([]),[v,w]=(0,c.useState)([]),y=(0,d.useSearchParams)().get("tab"),[z,A]=(0,c.useState)(()=>K.some(([a])=>a===y)?y:"map"),B=(0,d.useRouter)();(0,c.useEffect)(()=>{"scores"===y&&B.replace("/scores#companies")},[y,B]);let[C,D]=(0,c.useState)(0),[E,F]=(0,c.useState)(!1);(0,c.useEffect)(()=>{!g.IS_DEMO&&a&&b();async function b(){let b=(0,h.hasCsvNetwork)()?(0,h.loadCsvNetwork)():null;F(!!b);let c=[],d=[],e=[];if(b)c=b.degree1,d=b.degree2||[];else{let b=await (0,f.loadNetwork)(a);c=b.degree1,d=b.degree2,e=b.degree3}s(c),u(d),w(e||[]);let g={},i=new Set;[...c,...d,...e].forEach(a=>{if(i.has(a.profile_url))return;i.add(a.profile_url);let b=(0,q.companyOf)(a);b&&(g[b]||(g[b]={name:b,d1:0,d2:0,d3:0,sCount:0,aCount:0,people:[]}),1===a.degree?g[b].d1++:2===a.degree?g[b].d2++:g[b].d3++,"S"===a.tier&&g[b].sCount++,"A"===a.tier&&g[b].aCount++,g[b].people.push(a))}),j(Object.values(g).filter(a=>a.d1+a.d2+a.d3>=3).sort((a,b)=>3*b.sCount+2*b.aCount+b.d1+b.d2+b.d3-(3*a.sCount+2*a.aCount+a.d1+a.d2+a.d3))),p(!1)}},[a,C]);let[J,L]=(0,c.useState)(!1),[N,O]=(0,c.useState)([]),P=(0,H.default)(),Q=!J&&P.running?(0,e.busyReason)(P):null;function R(a){let b=new Set(r.map(a=>a.profile_url)),c=new Set([...r,...t].map(a=>a.profile_url));return a.map(d=>({...d,connected:b.has(d.profile_url||d.profileUrl),known:c.has(d.profile_url||d.profileUrl),seniority:(0,q.getSeniority)(d.headline),mutualCount:a.filter(a=>b.has(a.profile_url||a.profileUrl)&&a.id!==d.id).length}))}function S(a){l(a),n(R(a.people))}async function T(){if(g.IS_DEMO||E||!k)return;let a=!1;try{a="1"===localStorage.getItem("six-degrees-company-scan-ok")}catch{}if(!a){if(!window.confirm("Company scans are experimental: they have not been tested against live LinkedIn yet, so the results may be incomplete. Like any scan, it opens a Chrome window and counts toward the profile views LinkedIn watches.\n\nRun it anyway?"))return;try{localStorage.setItem("six-degrees-company-scan-ok","1")}catch{}}L(!0),O(["Checking the scanner..."]);let b=(0,e.notReadyMessage)(await (0,e.scraperStatus)().catch(()=>null));if(b){O([b]),L(!1);return}try{let a=await (0,e.runScrape)("company",{name:k.name,onLog:O});if(0===a.exitCode){O(a=>[...a,"Loading the new people..."]);let a=await fetch(`/api/connections?scanned_company=${encodeURIComponent(k.name)}&limit=500`),b=(await a.json()).connections||[];b.length?(n(R(b)),O(a=>[...a,`${b.length} people at ${k.name}.`])):O(a=>[...a,"Nothing new was found."])}}catch(a){O([a.message||"Failed to start the scan"])}finally{L(!1)}}let U={},V=0;m.forEach(a=>{let b=a.seniority.key;U[b]||(U[b]={...a.seniority,people:[]}),a.connected&&V++;let c=Math.min(90,12*a.mutualCount);a.seniority.level<=1?c+=20:a.seniority.level<=2?c+=10:a.seniority.level>=5&&(c-=10),c=Math.max(5,Math.min(95,c)),a.connected&&(c=100);let d=null;if(2===a.degree&&a.source_connection_id){let b=r.find(b=>b.id===a.source_connection_id);b&&(d=b.name)}let e={0:5,1:10,2:20,3:35,4:50,5:75,6:100}[a.seniority.level]||10;U[b].people.push({...a,likelihood:c,bridgeName:d,xp:e})}),Object.values(U).forEach(a=>a.people.sort((a,b)=>b.likelihood-a.likelihood));let W=Object.values(U).sort((a,b)=>b.level-a.level);return g.IS_DEMO?(0,b.jsxs)("div",{style:{minHeight:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,background:"#0a0a1a",color:"rgba(255,255,255,0.7)",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[(0,b.jsx)("h1",{style:{fontSize:20,fontWeight:700,margin:0,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("p",{style:{fontSize:13,margin:0},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(I.default,{href:"/",style:{fontSize:13,color:"#888",textDecoration:"none"},children:"← Back to the network"})]}):o?(0,b.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading..."}):(0,b.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,b.jsx)("header",{style:{padding:"14px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",flexShrink:0},children:(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12},children:[(0,b.jsxs)(I.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Map"]}),(0,b.jsx)("h1",{style:{fontSize:20,fontWeight:700,margin:0,background:"linear-gradient(135deg, #00ff88, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Paths"}),!k&&(0,b.jsx)("div",{style:{display:"flex",gap:4,marginLeft:8,padding:3,borderRadius:8,background:"rgba(255,255,255,0.05)"},children:K.map(([a,c])=>(0,b.jsx)("button",{onClick:()=>A(a),style:{padding:"5px 12px",borderRadius:6,border:"none",cursor:"pointer",fontSize:12.5,fontWeight:700,background:z===a?"linear-gradient(135deg, #00ff88, #3498DB)":"transparent",color:z===a?"#000":"#aab"},children:c},a))}),k&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{onClick:()=>{l(null),n([])},style:{background:"none",border:"none",color:"#888",cursor:"pointer",fontSize:12},children:"← Companies"}),(0,b.jsx)("span",{style:{fontSize:13,fontWeight:600},children:k.name}),(0,b.jsxs)("span",{style:{fontSize:11,color:"#888"},children:[V,"/",m.length," connected"]}),E?(0,b.jsx)("span",{style:{marginLeft:"auto",fontSize:11,color:"#888"},children:"Scanning needs your own network"}):(0,b.jsx)("button",{onClick:T,disabled:J||!!Q,title:Q?`${Q}. One scan at a time.`:void 0,style:{marginLeft:"auto",padding:"5px 12px",borderRadius:6,border:"none",cursor:J||Q?"not-allowed":"pointer",background:J||Q?"#333":"rgba(0,255,136,0.15)",color:J||Q?"#555":"#00ff88",fontSize:11,fontWeight:600},children:J?"Scanning...":Q?"Scanner busy":"+ Scan Full Company"}),(0,b.jsx)("span",{title:"Not yet tested against live LinkedIn. Results may be incomplete.",style:{fontSize:9.5,fontWeight:800,letterSpacing:.6,padding:"3px 7px",borderRadius:20,border:"1px solid rgba(255,215,0,0.45)",color:"#FFD700"},children:"EXPERIMENTAL"})]})]})}),k||"companies"===z?(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"16px 24px"},children:(0,b.jsxs)("div",{style:{maxWidth:700,margin:"0 auto"},children:[!k&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("p",{style:{fontSize:13,color:"#888",marginBottom:16},children:["Pick a company to see your path to the top. Based on ",r.length+t.length," people in your network."]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:10},children:i.slice(0,60).map(a=>(0,b.jsxs)("button",{onClick:()=>S(a),style:{padding:"14px",borderRadius:10,border:"none",cursor:"pointer",textAlign:"left",background:"rgba(255,255,255,0.04)",transition:"background 0.15s",borderLeft:`3px solid ${a.sCount>0?"#FFD700":a.aCount>0?"#9B59B6":"#3498DB"}`},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.08)",onMouseLeave:a=>a.currentTarget.style.background="rgba(255,255,255,0.04)",children:[(0,b.jsx)("div",{style:{fontSize:14,fontWeight:700,color:"#fff",marginBottom:4},children:a.name}),(0,b.jsxs)("div",{style:{display:"flex",gap:8,fontSize:10,color:"#888"},children:[(0,b.jsxs)("span",{style:{color:"#00ff88"},children:[a.d1," connected"]}),(0,b.jsxs)("span",{children:[a.d2+a.d3," locked"]})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginTop:4,fontSize:9},children:[a.sCount>0&&(0,b.jsxs)("span",{style:{color:"#FFD700",fontWeight:600},children:[a.sCount,"S"]}),a.aCount>0&&(0,b.jsxs)("span",{style:{color:"#9B59B6",fontWeight:600},children:[a.aCount,"A"]}),(0,b.jsxs)("span",{style:{color:"#555"},children:[a.d1+a.d2," total"]})]}),(0,b.jsx)("div",{style:{height:3,background:"rgba(255,255,255,0.08)",borderRadius:2,marginTop:6},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:2,width:`${a.d1/Math.max(a.d1+a.d2+a.d3,1)*100}%`,background:a.sCount>0?"#FFD700":"#00ff88"}})})]},a.name))})]}),J&&(0,b.jsxs)("div",{style:{padding:"10px",borderRadius:8,background:"rgba(0,255,136,0.06)",border:"1px solid rgba(0,255,136,0.2)",marginBottom:12},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(0,b.jsx)("div",{style:{width:6,height:6,borderRadius:"50%",background:"#00ff88",animation:"pulse 1s infinite"}}),(0,b.jsx)("span",{style:{fontSize:10,fontWeight:600,color:"#00ff88"},children:"Scanning LinkedIn..."})]}),(0,b.jsx)("div",{style:{fontFamily:"monospace",fontSize:9,color:"#777",maxHeight:60,overflow:"auto"},children:N.map((a,c)=>(0,b.jsx)("div",{children:a},c))})]}),k&&W.map(a=>(0,b.jsxs)("div",{style:{marginBottom:16},children:[(0,b.jsxs)("div",{style:{padding:"8px 12px",borderRadius:6,marginBottom:4,background:a.level>=5?"rgba(255,215,0,0.08)":a.level>=3?"rgba(155,89,182,0.08)":"rgba(52,152,219,0.08)",borderLeft:`3px solid ${a.level>=5?"#FFD700":a.level>=3?"#9B59B6":"#3498DB"}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700,color:a.level>=5?"#FFD700":a.level>=3?"#9B59B6":"#3498DB"},children:a.label}),a.level>=5&&(0,b.jsx)("span",{style:{fontSize:9,color:"#FF6B35",marginLeft:8,fontWeight:700},children:"TARGET"})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[(0,b.jsxs)("span",{style:{fontSize:9,color:"#FF6B35",fontWeight:600},children:["+",a.people.filter(a=>!a.connected).reduce((a,b)=>a+(b.xp||0),0)," XP"]}),(0,b.jsxs)("span",{style:{fontSize:10,color:"#666"},children:[a.people.filter(a=>a.connected).length,"/",a.people.length]})]})]}),a.people.map((c,d)=>(0,b.jsx)(M,{p:c,level:a,companyPeople:m,d1Data:r,selectedCompany:k},c.id||d))]},a.key))]})}):(0,b.jsx)(x,{d1:r,d2:t,d3:v,tab:z,onOpenCompany:a=>S({...a,sCount:a.S,aCount:a.A})})]})}function M({p:a,level:d,companyPeople:e,d1Data:f,selectedCompany:g}){let[h,i]=(0,c.useState)(!1),j=new Set(f.map(a=>a.profile_url));e.filter(a=>j.has(a.profile_url||a.profileUrl));let k=e.filter(b=>(0,q.getSeniority)(b.headline).level>a.seniority.level&&!j.has(b.profile_url||b.profileUrl)),l=e.filter(b=>(0,q.getSeniority)(b.headline).level===a.seniority.level&&b.id!==a.id),m=[];if(!a.connected){let b=k.length;b>0&&m.push({icon:"⬆️",text:`Adding them gives you a mutual with ${b} people above in the hierarchy`,color:"#00ff88"});let c=l.filter(a=>j.has(a.profile_url||a.profileUrl)).length;c>0?m.push({icon:"🤝",text:`${c} people at their level already connected — high social proof`,color:"#FFD700"}):m.push({icon:"🎯",text:"First connection at this level — opens a new layer",color:"#3498DB"}),a.bridgeName&&m.push({icon:"🔗",text:`Reachable through ${a.bridgeName} — warm intro possible`,color:"#FF6B35"}),a.seniority.level>=5?m.push({icon:"👑",text:`${a.seniority.label} — decision maker, high strategic value but low accept rate`,color:"#FFD700"}):a.seniority.level>=3?m.push({icon:"📊",text:`${a.seniority.label} — middle management, good balance of access and accept rate`,color:"#9B59B6"}):m.push({icon:"✅",text:`${a.seniority.label} — highest accept rate, builds mutual foundation for people above`,color:"#00ff88"}),a.likelihood>=60?m.push({icon:"🔥",text:`${a.likelihood}% likely to accept — strong mutual overlap + approachable role`,color:"#00ff88"}):a.likelihood>=30?m.push({icon:"⚡",text:`${a.likelihood}% likely — moderate chance, add more people at their level first`,color:"#FFD700"}):m.push({icon:"🔒",text:`${a.likelihood}% likely — low chance right now, build more connections below them first`,color:"#ff5050"})}return(0,b.jsxs)("div",{style:{borderBottom:"1px solid rgba(255,255,255,0.03)"},children:[(0,b.jsxs)("div",{onClick:()=>i(!h),style:{display:"flex",alignItems:"center",gap:8,padding:"6px 8px",cursor:"pointer",opacity:a.connected?.7:1},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.04)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,b.jsx)("span",{style:{fontSize:8,color:"#555",flexShrink:0,width:10},children:h?"▾":"▸"}),(0,b.jsx)("div",{style:{width:18,height:18,borderRadius:"50%",flexShrink:0,fontSize:8,display:"flex",alignItems:"center",justifyContent:"center",background:a.connected?"rgba(0,255,136,0.2)":"rgba(255,255,255,0.05)",color:a.connected?"#00ff88":"#555",border:`1px solid ${a.connected?"rgba(0,255,136,0.3)":"rgba(255,255,255,0.1)"}`},children:a.connected?"✓":"🔒"}),(0,J.localPhoto)(a.profile_image_url||a.imageUrl)?(0,b.jsx)("img",{src:(0,J.localPhoto)(a.profile_image_url||a.imageUrl),alt:"",style:{width:26,height:26,borderRadius:"50%",objectFit:"cover",flexShrink:0},onError:a=>a.target.style.display="none"}):(0,b.jsx)("div",{style:{width:26,height:26,borderRadius:"50%",flexShrink:0,fontSize:10,fontWeight:700,background:"#333",color:"#888",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,45)})]}),!a.connected&&a.bridgeName&&(0,b.jsxs)("span",{style:{fontSize:8,color:"#FF6B35",flexShrink:0,maxWidth:55,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["via ",a.bridgeName.split(" ")[0]]}),!a.connected&&(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,flexShrink:0},children:[(0,b.jsxs)("span",{style:{fontSize:8,fontWeight:700,color:"#FF6B35"},children:["+",a.xp]}),(0,b.jsxs)("div",{style:{fontSize:9,fontWeight:700,minWidth:30,textAlign:"right",color:a.likelihood>=60?"#00ff88":a.likelihood>=30?"#FFD700":"#ff5050"},children:[a.likelihood,"%"]})]}),!a.connected&&(0,b.jsx)("a",{href:a.profile_url||a.profileUrl,target:"_blank",rel:"noopener noreferrer",onClick:a=>a.stopPropagation(),style:{padding:"3px 7px",borderRadius:4,fontSize:8,fontWeight:700,background:"#0077B5",color:"#fff",textDecoration:"none",flexShrink:0},children:"Add"})]}),h&&(0,b.jsxs)("div",{style:{padding:"8px 12px 10px 44px",background:"rgba(255,255,255,0.02)",borderTop:"1px solid rgba(255,255,255,0.04)"},children:[(0,b.jsx)("div",{style:{fontSize:11,color:"#aaa",marginBottom:8},children:a.headline||"No headline available"}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"center",marginBottom:8,flexWrap:"wrap"},children:[(0,b.jsxs)("div",{style:{display:"inline-block",padding:"2px 8px",borderRadius:4,fontSize:9,fontWeight:600,background:a.seniority.level>=5?"rgba(255,215,0,0.1)":a.seniority.level>=3?"rgba(155,89,182,0.1)":"rgba(52,152,219,0.1)",color:a.seniority.level>=5?"#FFD700":a.seniority.level>=3?"#9B59B6":"#3498DB",border:`1px solid ${a.seniority.level>=5?"rgba(255,215,0,0.2)":a.seniority.level>=3?"rgba(155,89,182,0.2)":"rgba(52,152,219,0.2)"}`},children:[a.seniority.label," · Level ",a.seniority.level]}),!a.connected&&(0,b.jsxs)("div",{style:{display:"inline-block",padding:"2px 8px",borderRadius:4,fontSize:9,fontWeight:700,background:"rgba(255,107,53,0.1)",color:"#FF6B35",border:"1px solid rgba(255,107,53,0.2)"},children:["+",a.xp," XP"]})]}),!a.connected&&m.length>0&&(0,b.jsxs)("div",{style:{marginTop:4},children:[(0,b.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#888",letterSpacing:.5,marginBottom:4},children:"STRATEGIC VALUE"}),m.map((a,c)=>(0,b.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"flex-start",padding:"2px 0",fontSize:10,color:"#bbb"},children:[(0,b.jsx)("span",{style:{fontSize:11,lineHeight:1},children:a.icon}),(0,b.jsx)("span",{style:{color:a.color},children:a.text})]},c))]}),a.connected&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#00ff88",fontWeight:600},children:["✓ Already connected — contributes as mutual for others at ",g?.name]})]})]})}a.s(["default",0,function(){return(0,b.jsx)(i.default,{children:(0,b.jsx)(c.Suspense,{children:(0,b.jsx)(L,{})})})}],90195)}];
|
|
2
|
+
${a.co.d1} you know \xb7 ${a.co.d2} reachable${a.co.d3?` \xb7 ${a.co.d3} further`:""}`}),(0,b.jsx)("circle",{r:a.r,fill:a.co.industry.color,fillOpacity:.75,stroke:d?"#fff":a.co.S?r.S:"rgba(0,0,0,0.35)",strokeWidth:d?2.5:a.co.S?1.5:.6}),a.co.d1>0&&(0,b.jsx)("circle",{r:a.r*Math.sqrt(a.co.d1/Math.max(1,a.co.people.length)),fill:"#fff",fillOpacity:.35}),(B.has(a.id)||a.id===x||d)&&(0,b.jsx)("text",{y:a.r+11,textAnchor:"middle",fontSize:10,fill:"#e6edf0",style:{pointerEvents:"none"},children:a.co.name})]},a.id)})]}),(0,b.jsxs)("div",{style:{position:"absolute",left:12,bottom:10,fontSize:11,color:"#778",lineHeight:1.6,pointerEvents:"none"},children:["Bubble = a company, sized by your people there; white centre = the share you already know; gold ring = an S-tier person inside.",(0,b.jsx)("br",{}),"A line = one of your connections at one company knows people at the other.",w.cut?` Showing the 140 largest; ${w.cut} smaller companies are in Industries.`:""]})]})}function A({parts:a,total:c}){return(0,b.jsx)("div",{style:{display:"flex",height:6,borderRadius:3,overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:a.map(([a,d],e)=>(0,b.jsx)("div",{style:{width:`${a/Math.max(1,c)*100}%`,background:d}},e))})}function B({industries:a,index:d,d1:e,d2:f,onIndustry:g,onCompany:h}){let i=(0,c.useMemo)(()=>{let a=new Map(e.map(a=>[a.id,a])),b=new Map;for(let a of f){let c=(0,q.companyOf)(a),e=c?d.get(c)?.industry.key:(0,q.industryOf)(null,a.headline).key;if(!e)continue;let f=b.get(e)||new Map;f.set(a.source_connection_id,(f.get(a.source_connection_id)||0)+1),b.set(e,f)}let c=new Map;for(let[d,e]of b){let[b,f]=[...e.entries()].sort((a,b)=>b[1]-a[1])[0]||[];a.get(b)&&c.set(d,{bridge:a.get(b),n:f})}return c},[d,e,f]);return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:16},children:(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(280px, 1fr))",gap:12},children:a.map(a=>{let c=a.people.filter(a=>1===a.degree).length,d=a.people.filter(a=>2===a.degree).length,e=a.people.filter(a=>(0,q.isSenior)(a.headline)).length,f=a.people.filter(a=>"S"===a.tier).length,j=[...a.companies.entries()].sort((a,b)=>b[1]-a[1]).slice(0,3),k=i.get(a.key);return(0,b.jsxs)("div",{onClick:()=>g(a.key),style:{padding:14,borderRadius:10,border:s,borderTop:`3px solid ${a.color}`,background:"rgba(255,255,255,0.03)",cursor:"pointer"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline"},children:[(0,b.jsx)("b",{style:{fontSize:14,color:a.color},children:a.label}),(0,b.jsx)("span",{style:{fontSize:20,fontWeight:800},children:a.people.length})]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#8b9a9a",margin:"4px 0 6px"},children:[c," you know · ",d," reachable · ",a.companies.size," companies · ",e," director+ · ",f," S-tier"]}),(0,b.jsx)(A,{total:a.people.length,parts:[[c,"#00ff88"],[d,"#FF6B35"]]}),j.length>0&&(0,b.jsx)("div",{style:{marginTop:8,display:"flex",gap:6,flexWrap:"wrap"},children:j.map(([a,c])=>(0,b.jsxs)("button",{onClick:b=>{b.stopPropagation(),h(a)},style:{padding:"2px 8px",borderRadius:10,border:s,background:"rgba(255,255,255,0.05)",color:"#dfe6e9",fontSize:11,cursor:"pointer"},children:[a," ",(0,b.jsx)("span",{style:{color:"#778"},children:c})]},a))}),k&&(0,b.jsxs)("div",{style:{marginTop:8,fontSize:11.5,color:"#aab7b7"},children:["Best way in: ",(0,b.jsx)("b",{style:{color:r[k.bridge.tier]||"#ccc"},children:k.bridge.name})," knows ",k.n," here"]})]},a.key)})})})}function C({p:a,note:c}){return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"5px 0",fontSize:12.5},children:[(0,b.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:r[a.tier]||"#667",flexShrink:0}}),(0,b.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,b.jsx)("div",{style:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:11,color:"#8b9a9a",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c||a.headline})]})]})}function D({focus:a,data:d,index:e,links:f,d1:g,d2:h,filters:i,onClose:j,onCompany:k,onOpenCompany:l}){let m,n,o,p="company"===a.kind,r=d.people.filter(a=>w(a,i)),t=(0,c.useMemo)(()=>{let a=new Map;for(let b of r){let c=(0,q.getSeniority)(b.headline);a.set(c.label,{n:(a.get(c.label)?.n||0)+1,level:c.level})}return[...a.entries()].sort((a,b)=>b[1].level-a[1].level)},[r]),u=(0,c.useMemo)(()=>p?(0,q.waysInto)(d.name,g,h):null,[p,d,g,h]),v=(0,c.useMemo)(()=>p?f.filter(a=>a.a===d.name||a.b===d.name).map(a=>({name:a.a===d.name?a.b:a.a,weight:a.weight})).sort((a,b)=>b.weight-a.weight).slice(0,8):[],[p,f,d]),x=[...r].sort((a,b)=>(Number(b.power_score)||0)-(Number(a.power_score)||0)).slice(0,6),y=p?d.industry:d,z=r.filter(a=>1===a.degree).length,B=r.filter(a=>2===a.degree).length,G=p?[]:[...d.companies.entries()].sort((a,b)=>b[1]-a[1]).slice(0,10);return(0,b.jsxs)("aside",{style:{width:360,flexShrink:0,borderLeft:s,overflow:"auto",padding:16,background:"rgba(255,255,255,0.02)"},children:[(0,b.jsx)("button",{onClick:j,style:{background:"none",border:"none",color:"#888",cursor:"pointer",fontSize:12,padding:0},children:"✕ Close"}),(0,b.jsxs)("div",{style:{fontSize:10,letterSpacing:1,color:"#8b9a9a",marginTop:8},children:[p?"COMPANY":"INDUSTRY"," ANALYZER"]}),(0,b.jsx)("h2",{style:{margin:"4px 0 6px",fontSize:20},children:p?d.name:d.label}),(0,b.jsxs)("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:10,background:`${y.color}22`,color:y.color},children:[y.label,p?" · inferred":""]}),p&&(0,b.jsx)(F,{name:d.name}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(3, 1fr)",gap:8,margin:"14px 0"},children:[[z,"you know","#00ff88"],[B,"reachable","#FF6B35"],[r.filter(a=>(0,q.isSenior)(a.headline)).length,"director+","#FFD700"]].map(([a,c,d])=>(0,b.jsxs)("div",{style:{padding:8,borderRadius:8,background:"rgba(255,255,255,0.04)",textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:20,fontWeight:800,color:d},children:a}),(0,b.jsx)("div",{style:{fontSize:10.5,color:"#8b9a9a"},children:c})]},c))}),(0,b.jsx)(E,{title:"By level",children:t.map(([a,{n:c}])=>(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"110px 1fr 28px",gap:8,alignItems:"center",fontSize:11.5,marginBottom:4},children:[(0,b.jsx)("span",{style:{color:"#aab7b7"},children:a}),(0,b.jsx)(A,{total:r.length,parts:[[c,"#3498DB"]]}),(0,b.jsx)("span",{style:{color:"#778",textAlign:"right"},children:c})]},a))}),p&&u&&(0,b.jsxs)(E,{title:"Ways in",children:[u.direct.length>0&&(0,b.jsxs)("div",{style:{fontSize:11,color:"#00ff88",margin:"2px 0"},children:["You already know ",u.direct.length," here"]}),(m=new Map(u.bridges.map(({bridge:a,n:b})=>[a.id,b])),n=[...u.direct].sort((a,b)=>(m.get(b.id)||0)-(m.get(a.id)||0)).slice(0,4),o=new Set(u.direct.map(a=>a.id)),(0,b.jsxs)(b.Fragment,{children:[n.map(a=>(0,b.jsx)(C,{p:a,note:m.get(a.id)?`works here \xb7 knows ${m.get(a.id)} here`:`works here \xb7 ${a.headline||""}`},a.id)),u.bridges.filter(({bridge:a})=>!o.has(a.id)).slice(0,5).map(({bridge:a,n:c})=>(0,b.jsx)(C,{p:a,note:`knows ${c} ${1===c?"person":"people"} here`},a.id))]})),!u.direct.length&&!u.bridges.length&&(0,b.jsx)("div",{style:{fontSize:12,color:"#778"},children:"No one you know links here yet."})]}),(0,b.jsx)(E,{title:p?"Most powerful people here":"Most powerful people in this industry",children:x.map(a=>(0,b.jsx)(C,{p:a,note:`${1===a.degree?"you know them":2===a.degree?"2nd degree":"3rd+"} \xb7 ${a.headline||""}`},a.id))}),p&&v.length>0&&(0,b.jsx)(E,{title:"Connected companies",children:(0,b.jsx)("div",{style:{display:"flex",gap:6,flexWrap:"wrap"},children:v.map(a=>(0,b.jsxs)("button",{onClick:()=>k(a.name),style:{padding:"3px 9px",borderRadius:10,border:s,background:`${e.get(a.name)?.industry.color||"#666"}22`,color:"#dfe6e9",fontSize:11.5,cursor:"pointer"},children:[a.name," ",(0,b.jsx)("span",{style:{color:"#778"},children:a.weight})]},a.name))})}),!p&&(0,b.jsx)(E,{title:"Companies",children:G.map(([a,c])=>(0,b.jsxs)("div",{onClick:()=>k(a),style:{display:"grid",gridTemplateColumns:"1fr 60px 24px",gap:8,alignItems:"center",fontSize:12,padding:"3px 0",cursor:"pointer"},children:[(0,b.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),(0,b.jsx)(A,{total:G[0][1],parts:[[c,y.color]]}),(0,b.jsx)("span",{style:{color:"#778",textAlign:"right"},children:c})]},a))}),p&&l&&(0,b.jsxs)("button",{onClick:()=>l(d),style:{marginTop:14,width:"100%",padding:"10px",borderRadius:8,border:"none",cursor:"pointer",fontWeight:700,background:"linear-gradient(135deg, #00ff88, #3498DB)",color:"#000"},children:["Path to the top of ",d.name," →"]})]})}function E({title:a,children:c}){return(0,b.jsxs)("div",{style:{marginTop:14},children:[(0,b.jsx)("div",{style:{fontSize:10.5,letterSpacing:.8,color:"#8b9a9a",fontWeight:700,marginBottom:6},children:a.toUpperCase()}),c]})}function F({name:a}){let{companies:c,setScore:d}=(0,p.useCompanyScores)(),e=c?.find(b=>b.name===a);if(!e)return null;let f={yours:"your score",known:"known list",network:"estimated",default:"unknown company"}[e.source];return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:10,fontSize:12,color:"#aab7b7"},children:["Company score ",(0,b.jsx)("b",{style:{color:"#fff",fontSize:15},children:e.score}),"/10 · ",f,(0,b.jsx)("span",{style:{marginLeft:"auto"},children:(0,b.jsx)(p.ScorePicker,{company:e,onSet:d,compact:!0})})]})}var G=a.i(75857),H=a.i(61782),I=a.i(38246),J=a.i(56377);let K=[["map","Map"],["industries","Industries"],["companies","Companies"]];function L(){let{userId:a}=(0,G.useUser)(),[i,j]=(0,c.useState)([]),[k,l]=(0,c.useState)(null),[m,n]=(0,c.useState)([]),[o,p]=(0,c.useState)(!0),[r,s]=(0,c.useState)([]),[t,u]=(0,c.useState)([]),[v,w]=(0,c.useState)([]),y=(0,d.useSearchParams)().get("tab"),[z,A]=(0,c.useState)(()=>K.some(([a])=>a===y)?y:"map"),B=(0,d.useRouter)();(0,c.useEffect)(()=>{"scores"===y&&B.replace("/scores#companies")},[y,B]);let[C,D]=(0,c.useState)(0),[E,F]=(0,c.useState)(!1);(0,c.useEffect)(()=>{!g.IS_DEMO&&a&&b();async function b(){let b=(0,h.hasCsvNetwork)()?(0,h.loadCsvNetwork)():null;F(!!b);let c=[],d=[],e=[];if(b)c=b.degree1,d=b.degree2||[];else{let b=await (0,f.loadNetwork)(a);c=b.degree1,d=b.degree2,e=b.degree3}s(c),u(d),w(e||[]);let g={},i=new Set;[...c,...d,...e].forEach(a=>{if(i.has(a.profile_url))return;i.add(a.profile_url);let b=(0,q.companyOf)(a);b&&(g[b]||(g[b]={name:b,d1:0,d2:0,d3:0,sCount:0,aCount:0,people:[]}),1===a.degree?g[b].d1++:2===a.degree?g[b].d2++:g[b].d3++,"S"===a.tier&&g[b].sCount++,"A"===a.tier&&g[b].aCount++,g[b].people.push(a))}),j(Object.values(g).filter(a=>a.d1+a.d2+a.d3>=3).sort((a,b)=>3*b.sCount+2*b.aCount+b.d1+b.d2+b.d3-(3*a.sCount+2*a.aCount+a.d1+a.d2+a.d3))),p(!1)}},[a,C]);let[J,L]=(0,c.useState)(!1),[N,O]=(0,c.useState)([]),P=(0,H.default)(),Q=!J&&P.running?(0,e.busyReason)(P):null;function R(a){let b=new Set(r.map(a=>a.profile_url)),c=new Set([...r,...t].map(a=>a.profile_url)),d=new Map,e=0;for(let c of a)b.has(c.profile_url||c.profileUrl)&&(e++,d.set(c.id,(d.get(c.id)||0)+1));return a.map(a=>({...a,connected:b.has(a.profile_url||a.profileUrl),known:c.has(a.profile_url||a.profileUrl),seniority:(0,q.getSeniority)(a.headline),mutualCount:e-(d.get(a.id)||0)}))}function S(a){l(a),n(R(a.people))}async function T(){if(g.IS_DEMO||E||!k)return;let a=!1;try{a="1"===localStorage.getItem("six-degrees-company-scan-ok")}catch{}if(!a){if(!window.confirm("Company scans are experimental: they have not been tested against live LinkedIn yet, so the results may be incomplete. Like any scan, it opens a Chrome window and counts toward the profile views LinkedIn watches.\n\nRun it anyway?"))return;try{localStorage.setItem("six-degrees-company-scan-ok","1")}catch{}}L(!0),O(["Checking the scanner..."]);let b=(0,e.notReadyMessage)(await (0,e.scraperStatus)().catch(()=>null));if(b){O([b]),L(!1);return}try{let a=await (0,e.runScrape)("company",{name:k.name,onLog:O});if(0===a.exitCode){O(a=>[...a,"Loading the new people..."]);let a=await fetch(`/api/connections?scanned_company=${encodeURIComponent(k.name)}&limit=500`),b=(await a.json()).connections||[];b.length?(n(R(b)),O(a=>[...a,`${b.length} people at ${k.name}.`])):O(a=>[...a,"Nothing new was found."])}}catch(a){O([a.message||"Failed to start the scan"])}finally{L(!1)}}let U=new Map;for(let a of r)U.has(a.id)||U.set(a.id,a);let V=new Set(r.map(a=>a.profile_url)),W={},X=0;m.forEach(a=>{let b=a.seniority.key;W[b]||(W[b]={...a.seniority,people:[]}),a.connected&&X++;let c=Math.min(90,12*a.mutualCount);a.seniority.level<=1?c+=20:a.seniority.level<=2?c+=10:a.seniority.level>=5&&(c-=10),c=Math.max(5,Math.min(95,c)),a.connected&&(c=100);let d=null;if(2===a.degree&&a.source_connection_id){let b=U.get(a.source_connection_id);b&&(d=b.name)}let e={0:5,1:10,2:20,3:35,4:50,5:75,6:100}[a.seniority.level]||10;W[b].people.push({...a,likelihood:c,bridgeName:d,xp:e})}),Object.values(W).forEach(a=>a.people.sort((a,b)=>b.likelihood-a.likelihood));let Y=Object.values(W).sort((a,b)=>b.level-a.level);return g.IS_DEMO?(0,b.jsxs)("div",{style:{minHeight:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,background:"#0a0a1a",color:"rgba(255,255,255,0.7)",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[(0,b.jsx)("h1",{style:{fontSize:20,fontWeight:700,margin:0,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("p",{style:{fontSize:13,margin:0},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(I.default,{href:"/",style:{fontSize:13,color:"#888",textDecoration:"none"},children:"← Back to the network"})]}):o?(0,b.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading..."}):(0,b.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,b.jsx)("header",{style:{padding:"14px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",flexShrink:0},children:(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12},children:[(0,b.jsxs)(I.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Map"]}),(0,b.jsx)("h1",{style:{fontSize:20,fontWeight:700,margin:0,background:"linear-gradient(135deg, #00ff88, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Paths"}),!k&&(0,b.jsx)("div",{style:{display:"flex",gap:4,marginLeft:8,padding:3,borderRadius:8,background:"rgba(255,255,255,0.05)"},children:K.map(([a,c])=>(0,b.jsx)("button",{onClick:()=>A(a),style:{padding:"5px 12px",borderRadius:6,border:"none",cursor:"pointer",fontSize:12.5,fontWeight:700,background:z===a?"linear-gradient(135deg, #00ff88, #3498DB)":"transparent",color:z===a?"#000":"#aab"},children:c},a))}),k&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{onClick:()=>{l(null),n([])},style:{background:"none",border:"none",color:"#888",cursor:"pointer",fontSize:12},children:"← Companies"}),(0,b.jsx)("span",{style:{fontSize:13,fontWeight:600},children:k.name}),(0,b.jsxs)("span",{style:{fontSize:11,color:"#888"},children:[X,"/",m.length," connected"]}),E?(0,b.jsx)("span",{style:{marginLeft:"auto",fontSize:11,color:"#888"},children:"Scanning needs your own network"}):(0,b.jsx)("button",{onClick:T,disabled:J||!!Q,title:Q?`${Q}. One scan at a time.`:void 0,style:{marginLeft:"auto",padding:"5px 12px",borderRadius:6,border:"none",cursor:J||Q?"not-allowed":"pointer",background:J||Q?"#333":"rgba(0,255,136,0.15)",color:J||Q?"#555":"#00ff88",fontSize:11,fontWeight:600},children:J?"Scanning...":Q?"Scanner busy":"+ Scan Full Company"}),(0,b.jsx)("span",{title:"Not yet tested against live LinkedIn. Results may be incomplete.",style:{fontSize:9.5,fontWeight:800,letterSpacing:.6,padding:"3px 7px",borderRadius:20,border:"1px solid rgba(255,215,0,0.45)",color:"#FFD700"},children:"EXPERIMENTAL"})]})]})}),(0,b.jsx)("div",{id:"scan-bar-slot"}),k||"companies"===z?(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"16px 24px"},children:(0,b.jsxs)("div",{style:{maxWidth:700,margin:"0 auto"},children:[!k&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("p",{style:{fontSize:13,color:"#888",marginBottom:16},children:["Pick a company to see your path to the top. Based on ",r.length+t.length," people in your network."]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:10},children:i.slice(0,60).map(a=>(0,b.jsxs)("button",{onClick:()=>S(a),style:{padding:"14px",borderRadius:10,border:"none",cursor:"pointer",textAlign:"left",background:"rgba(255,255,255,0.04)",transition:"background 0.15s",borderLeft:`3px solid ${a.sCount>0?"#FFD700":a.aCount>0?"#9B59B6":"#3498DB"}`},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.08)",onMouseLeave:a=>a.currentTarget.style.background="rgba(255,255,255,0.04)",children:[(0,b.jsx)("div",{style:{fontSize:14,fontWeight:700,color:"#fff",marginBottom:4},children:a.name}),(0,b.jsxs)("div",{style:{display:"flex",gap:8,fontSize:10,color:"#888"},children:[(0,b.jsxs)("span",{style:{color:"#00ff88"},children:[a.d1," connected"]}),(0,b.jsxs)("span",{children:[a.d2+a.d3," locked"]})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginTop:4,fontSize:9},children:[a.sCount>0&&(0,b.jsxs)("span",{style:{color:"#FFD700",fontWeight:600},children:[a.sCount,"S"]}),a.aCount>0&&(0,b.jsxs)("span",{style:{color:"#9B59B6",fontWeight:600},children:[a.aCount,"A"]}),(0,b.jsxs)("span",{style:{color:"#555"},children:[a.d1+a.d2," total"]})]}),(0,b.jsx)("div",{style:{height:3,background:"rgba(255,255,255,0.08)",borderRadius:2,marginTop:6},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:2,width:`${a.d1/Math.max(a.d1+a.d2+a.d3,1)*100}%`,background:a.sCount>0?"#FFD700":"#00ff88"}})})]},a.name))})]}),J&&(0,b.jsxs)("div",{style:{padding:"10px",borderRadius:8,background:"rgba(0,255,136,0.06)",border:"1px solid rgba(0,255,136,0.2)",marginBottom:12},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(0,b.jsx)("div",{style:{width:6,height:6,borderRadius:"50%",background:"#00ff88",animation:"pulse 1s infinite"}}),(0,b.jsx)("span",{style:{fontSize:10,fontWeight:600,color:"#00ff88"},children:"Scanning LinkedIn..."})]}),(0,b.jsx)("div",{style:{fontFamily:"monospace",fontSize:9,color:"#777",maxHeight:60,overflow:"auto"},children:N.map((a,c)=>(0,b.jsx)("div",{children:a},c))})]}),k&&Y.map(a=>(0,b.jsxs)("div",{style:{marginBottom:16},children:[(0,b.jsxs)("div",{style:{padding:"8px 12px",borderRadius:6,marginBottom:4,background:a.level>=5?"rgba(255,215,0,0.08)":a.level>=3?"rgba(155,89,182,0.08)":"rgba(52,152,219,0.08)",borderLeft:`3px solid ${a.level>=5?"#FFD700":a.level>=3?"#9B59B6":"#3498DB"}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700,color:a.level>=5?"#FFD700":a.level>=3?"#9B59B6":"#3498DB"},children:a.label}),a.level>=5&&(0,b.jsx)("span",{style:{fontSize:9,color:"#FF6B35",marginLeft:8,fontWeight:700},children:"TARGET"})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[(0,b.jsxs)("span",{style:{fontSize:9,color:"#FF6B35",fontWeight:600},children:["+",a.people.filter(a=>!a.connected).reduce((a,b)=>a+(b.xp||0),0)," XP"]}),(0,b.jsxs)("span",{style:{fontSize:10,color:"#666"},children:[a.people.filter(a=>a.connected).length,"/",a.people.length]})]})]}),a.people.map((c,d)=>(0,b.jsx)(M,{p:c,level:a,companyPeople:m,d1Urls:V,selectedCompany:k},c.id||d))]},a.key))]})}):(0,b.jsx)(x,{d1:r,d2:t,d3:v,tab:z,onOpenCompany:a=>S({...a,sCount:a.S,aCount:a.A})})]})}function M({p:a,level:d,companyPeople:e,d1Urls:f,selectedCompany:g}){let[h,i]=(0,c.useState)(!1),j=[];if(h&&!a.connected){let b=e.filter(b=>b.seniority.level>a.seniority.level&&!f.has(b.profile_url||b.profileUrl)),c=e.filter(b=>b.seniority.level===a.seniority.level&&b.id!==a.id),d=b.length;d>0&&j.push({icon:"⬆️",text:`Adding them gives you a mutual with ${d} people above in the hierarchy`,color:"#00ff88"});let g=c.filter(a=>f.has(a.profile_url||a.profileUrl)).length;g>0?j.push({icon:"🤝",text:`${g} people at their level already connected — high social proof`,color:"#FFD700"}):j.push({icon:"🎯",text:"First connection at this level — opens a new layer",color:"#3498DB"}),a.bridgeName&&j.push({icon:"🔗",text:`Reachable through ${a.bridgeName} — warm intro possible`,color:"#FF6B35"}),a.seniority.level>=5?j.push({icon:"👑",text:`${a.seniority.label} — decision maker, high strategic value but low accept rate`,color:"#FFD700"}):a.seniority.level>=3?j.push({icon:"📊",text:`${a.seniority.label} — middle management, good balance of access and accept rate`,color:"#9B59B6"}):j.push({icon:"✅",text:`${a.seniority.label} — highest accept rate, builds mutual foundation for people above`,color:"#00ff88"}),a.likelihood>=60?j.push({icon:"🔥",text:`${a.likelihood}% likely to accept — strong mutual overlap + approachable role`,color:"#00ff88"}):a.likelihood>=30?j.push({icon:"⚡",text:`${a.likelihood}% likely — moderate chance, add more people at their level first`,color:"#FFD700"}):j.push({icon:"🔒",text:`${a.likelihood}% likely — low chance right now, build more connections below them first`,color:"#ff5050"})}return(0,b.jsxs)("div",{style:{borderBottom:"1px solid rgba(255,255,255,0.03)"},children:[(0,b.jsxs)("div",{onClick:()=>i(!h),style:{display:"flex",alignItems:"center",gap:8,padding:"6px 8px",cursor:"pointer",opacity:a.connected?.7:1},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.04)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,b.jsx)("span",{style:{fontSize:8,color:"#555",flexShrink:0,width:10},children:h?"▾":"▸"}),(0,b.jsx)("div",{style:{width:18,height:18,borderRadius:"50%",flexShrink:0,fontSize:8,display:"flex",alignItems:"center",justifyContent:"center",background:a.connected?"rgba(0,255,136,0.2)":"rgba(255,255,255,0.05)",color:a.connected?"#00ff88":"#555",border:`1px solid ${a.connected?"rgba(0,255,136,0.3)":"rgba(255,255,255,0.1)"}`},children:a.connected?"✓":"🔒"}),(0,J.localPhoto)(a.profile_image_url||a.imageUrl)?(0,b.jsx)("img",{src:(0,J.localPhoto)(a.profile_image_url||a.imageUrl),alt:"",style:{width:26,height:26,borderRadius:"50%",objectFit:"cover",flexShrink:0},onError:a=>a.target.style.display="none"}):(0,b.jsx)("div",{style:{width:26,height:26,borderRadius:"50%",flexShrink:0,fontSize:10,fontWeight:700,background:"#333",color:"#888",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,45)})]}),!a.connected&&a.bridgeName&&(0,b.jsxs)("span",{style:{fontSize:8,color:"#FF6B35",flexShrink:0,maxWidth:55,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["via ",a.bridgeName.split(" ")[0]]}),!a.connected&&(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,flexShrink:0},children:[(0,b.jsxs)("span",{style:{fontSize:8,fontWeight:700,color:"#FF6B35"},children:["+",a.xp]}),(0,b.jsxs)("div",{style:{fontSize:9,fontWeight:700,minWidth:30,textAlign:"right",color:a.likelihood>=60?"#00ff88":a.likelihood>=30?"#FFD700":"#ff5050"},children:[a.likelihood,"%"]})]}),!a.connected&&(0,b.jsx)("a",{href:a.profile_url||a.profileUrl,target:"_blank",rel:"noopener noreferrer",onClick:a=>a.stopPropagation(),style:{padding:"3px 7px",borderRadius:4,fontSize:8,fontWeight:700,background:"#0077B5",color:"#fff",textDecoration:"none",flexShrink:0},children:"Add"})]}),h&&(0,b.jsxs)("div",{style:{padding:"8px 12px 10px 44px",background:"rgba(255,255,255,0.02)",borderTop:"1px solid rgba(255,255,255,0.04)"},children:[(0,b.jsx)("div",{style:{fontSize:11,color:"#aaa",marginBottom:8},children:a.headline||"No headline available"}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"center",marginBottom:8,flexWrap:"wrap"},children:[(0,b.jsxs)("div",{style:{display:"inline-block",padding:"2px 8px",borderRadius:4,fontSize:9,fontWeight:600,background:a.seniority.level>=5?"rgba(255,215,0,0.1)":a.seniority.level>=3?"rgba(155,89,182,0.1)":"rgba(52,152,219,0.1)",color:a.seniority.level>=5?"#FFD700":a.seniority.level>=3?"#9B59B6":"#3498DB",border:`1px solid ${a.seniority.level>=5?"rgba(255,215,0,0.2)":a.seniority.level>=3?"rgba(155,89,182,0.2)":"rgba(52,152,219,0.2)"}`},children:[a.seniority.label," · Level ",a.seniority.level]}),!a.connected&&(0,b.jsxs)("div",{style:{display:"inline-block",padding:"2px 8px",borderRadius:4,fontSize:9,fontWeight:700,background:"rgba(255,107,53,0.1)",color:"#FF6B35",border:"1px solid rgba(255,107,53,0.2)"},children:["+",a.xp," XP"]})]}),!a.connected&&j.length>0&&(0,b.jsxs)("div",{style:{marginTop:4},children:[(0,b.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#888",letterSpacing:.5,marginBottom:4},children:"STRATEGIC VALUE"}),j.map((a,c)=>(0,b.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"flex-start",padding:"2px 0",fontSize:10,color:"#bbb"},children:[(0,b.jsx)("span",{style:{fontSize:11,lineHeight:1},children:a.icon}),(0,b.jsx)("span",{style:{color:a.color},children:a.text})]},c))]}),a.connected&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#00ff88",fontWeight:600},children:["✓ Already connected — contributes as mutual for others at ",g?.name]})]})]})}a.s(["default",0,function(){return(0,b.jsx)(i.default,{children:(0,b.jsx)(c.Suspense,{children:(0,b.jsx)(L,{})})})}],90195)}];
|
|
3
3
|
|
|
4
4
|
//# sourceMappingURL=app_paths_page_1ol90m7.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[79243,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(23310),e=a.i(76939),f=a.i(91443);let g={height:10,borderRadius:6},h={background:"rgba(52,152,219,0.06)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(52,152,219,0.2)"};function i({degree1:a=[],degree2:c=[],skips:d=[]}){let k=function(a=[],b=[],c=[]){let d=(0,f.reachIndex)(a,b,{skips:c}),e=a=>{let b=(0,f.circleState)(a,d);return"scanned"===b?"mapped":b},g={mapped:0,hidden:0,todo:0},h={};for(let b of a){let a=e(b);g[a]+=1;let c=b.tier||"D";h[c]=h[c]||{mapped:0,hidden:0,todo:0,total:0},h[c][a]+=1,h[c].total+=1}let i=a.length,j=g.mapped+g.hidden;return{...g,total:i,resolved:j,percent:i?Math.round(j/i*100):0,batches:Math.ceil(g.todo/25),byTier:h}}(a,c,d);if(!k.total)return null;let l=a=>k.total?a/k.total*100:0,m=0===k.todo;return(0,b.jsxs)("div",{style:h,children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",marginBottom:10},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0,color:"#3498DB"},children:"2nd-degree mapping"}),(0,b.jsx)("span",{style:{fontSize:12,color:m?"#00ff88":"#8b9a9a",fontWeight:600},children:m?"Everything reachable is mapped":`${k.percent}%`})]}),(0,b.jsxs)("div",{style:{...g,display:"flex",overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:[(0,b.jsx)("div",{style:{width:`${l(k.mapped)}%`,background:"#00ff88"}}),(0,b.jsx)("div",{style:{width:`${l(k.hidden)}%`,background:"rgba(255,255,255,0.22)"}})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:16,marginTop:10,fontSize:12,flexWrap:"wrap"},children:[(0,b.jsx)(j,{color:"#00ff88",label:"mapped",value:k.mapped}),(0,b.jsx)(j,{color:"rgba(255,255,255,0.35)",label:"hidden",value:k.hidden}),(0,b.jsx)(j,{color:"rgba(255,255,255,0.12)",label:"to go",value:k.todo}),(0,b.jsxs)("span",{style:{color:"#667",marginLeft:"auto"},children:["of ",k.total]})]}),k.hidden>0&&(0,b.jsx)("p",{style:{fontSize:11.5,color:"#667",margin:"10px 0 0",lineHeight:1.6},children:"Hidden means they keep their connections private — that will not change, and it does not count against you."}),!m&&(0,b.jsxs)("p",{style:{fontSize:11.5,color:"#8b9a9a",margin:"10px 0 0",lineHeight:1.6},children:[k.todo," left — about ",(0,b.jsxs)("b",{children:[k.batches," ",1===k.batches?"batch":"batches"]})," of ",25,". Run one, leave it a while, run another. Long unbroken runs are what gets an account restricted."]}),(0,b.jsx)("div",{style:{marginTop:16,display:"flex",flexDirection:"column",gap:7},children:["S","A","B","C","D"].filter(a=>k.byTier[a]?.total).map(a=>{let c=k.byTier[a];return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,fontSize:11},children:[(0,b.jsx)("span",{style:{width:14,color:e.TIER_COLORS_CLASSIC[a],fontWeight:700},children:a}),(0,b.jsxs)("div",{style:{flex:1,height:5,borderRadius:3,display:"flex",overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:[(0,b.jsx)("div",{style:{width:`${c.mapped/c.total*100}%`,background:e.TIER_COLORS_CLASSIC[a]}}),(0,b.jsx)("div",{style:{width:`${c.hidden/c.total*100}%`,background:"rgba(255,255,255,0.22)"}})]}),(0,b.jsxs)("span",{style:{color:"#667",width:62,textAlign:"right"},children:[c.mapped,"/",c.total]})]},a)})})]})}function j({color:a,label:c,value:d}){return(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:6,color:"#8b9a9a"},children:[(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:2,background:a}}),(0,b.jsx)("b",{style:{color:"#e2e8f0"},children:d})," ",c]})}var k=a.i(58834),l=a.i(36839),m=a.i(75857),n=a.i(54919),o=a.i(38246);let p={1:"Observer",11:"Connector",31:"Networker",51:"Strategist",76:"Architect"};function q(){let{userId:a,userName:e,userProfile:f}=(0,m.useUser)(),g=f||{name:e||"User",headline:"",sectors:[],goals:[]},[h,j]=(0,c.useState)(null),[l,q]=(0,c.useState)(!0),[s,t]=(0,c.useState)([]),[u,v]=(0,c.useState)({total:0,sent:0,accepted:0}),[w,x]=(0,c.useState)({degree1:[],degree2:[],skips:[]}),[y,z]=(0,c.useState)(null);if((0,c.useEffect)(()=>{!k.IS_DEMO&&a&&b();async function b(){fetch("/api/settings").then(a=>a.json().then(b=>a.ok&&b.settings?b:Promise.reject(Error(b.error)))).then(a=>z(a.settings.sectorFocus||{sectors:[],strength:"lean"})).catch(()=>z({failed:!0}));let b=await (0,d.loadNetwork)(a),c=b.degree1,e=b.degree2,f={S:0,A:0,B:0,C:0,D:0};c.forEach(a=>{f[a.tier]=(f[a.tier]||0)+1});let g={S:0,A:0,B:0,C:0,D:0};e.forEach(a=>{g[a.tier]=(g[a.tier]||0)+1});let h=[...new Set(e.map(a=>a.source_connection_id).filter(Boolean))].length,i=c.filter(a=>a.is_catalyst).length,k={};c.forEach(a=>{a.company&&(k[a.company]=(k[a.company]||0)+1)});let l=Object.entries(k).sort((a,b)=>b[1]-a[1]).slice(0,10),m=100*f.S+40*f.A+15*f.B+5*f.C+ +f.D+200*h+150*i+50*g.S+c.length,n=Math.floor(Math.sqrt(m/10)),o=n*n*10,p=(n+1)*(n+1)*10;j({d1Count:c.length,d2Count:e.length,tiers:f,d2Tiers:g,clusters:h,catalysts:i,networkPower:m,level:n,xpProgress:(m-o)/(p-o)*100,topCompanies:l,unlockedPaths:0}),fetch("/api/scraper").then(a=>a.json()).then(a=>x({degree1:c,degree2:e,skips:a.skips||[]})).catch(()=>x({degree1:c,degree2:e,skips:[]})),fetch(`/api/notifications?userId=${a}`).then(a=>a.json()).then(a=>t(a.notifications||[])).catch(()=>{}),fetch("/api/queue").then(a=>a.json()).then(a=>{let b=a.items||[];v({total:b.length,sent:b.filter(a=>"sent"===a.status).length,accepted:b.filter(a=>"accepted"===a.status).length})}).catch(()=>{}),q(!1)}},[a]),k.IS_DEMO)return(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,textAlign:"center",padding:24,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[(0,b.jsx)("h2",{style:{margin:0,fontSize:20,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("p",{style:{margin:0,fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(o.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]});if(l)return(0,b.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading profile..."});let A={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},B=[{label:"First S-Tier",done:h.tiers.S>0,icon:"👑"},{label:"100 Connections",done:h.d1Count>=100,icon:"🔗"},{label:"500 Connections",done:h.d1Count>=500,icon:"🌐"},{label:"First Cluster",done:h.clusters>0,icon:"🔭"},{label:"10 Clusters",done:h.clusters>=10,icon:"🏰"},{label:"50 S-Tier",done:h.tiers.S>=50,icon:"💎"},{label:"Catalyst Found",done:h.catalysts>0,icon:"⚡"},{label:"Level 25",done:h.level>=25,icon:"🎯"},{label:"Level 50",done:h.level>=50,icon:"🚀"},{label:"D2 S-Tier > 50",done:h.d2Tiers.S>=50,icon:"🌟"}];return(0,b.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,b.jsxs)("header",{style:{padding:"16px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",display:"flex",alignItems:"center",gap:16},children:[(0,b.jsxs)(o.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Back to Map"]}),(0,b.jsx)("h1",{style:{fontSize:22,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Profile"})]}),(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"30px 20px"},children:(0,b.jsxs)("div",{style:{maxWidth:700,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.05)",borderRadius:16,padding:32,marginBottom:24,border:"1px solid rgba(255,215,0,0.2)",textAlign:"center"},children:[(0,b.jsx)("div",{style:{width:100,height:100,borderRadius:"50%",margin:"0 auto 16px",background:"linear-gradient(135deg, #FFD700, #FF6B35)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:36,fontWeight:800,color:"#000",boxShadow:"0 0 30px rgba(255,215,0,0.3)"},children:h.level}),(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700,marginBottom:4},children:g.name}),(0,b.jsx)("div",{style:{fontSize:14,color:"#888",marginBottom:4},children:g.headline}),(0,b.jsx)("div",{style:{display:"inline-block",padding:"4px 16px",borderRadius:20,background:"rgba(255,215,0,0.15)",border:"1px solid rgba(255,215,0,0.3)",color:"#FFD700",fontSize:13,fontWeight:700,marginBottom:16},children:function(a){let b="Observer";for(let[c,d]of Object.entries(p))a>=parseInt(c)&&(b=d);return b}(h.level)}),(0,b.jsxs)("div",{style:{maxWidth:300,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#666",marginBottom:4},children:[(0,b.jsxs)("span",{children:["Level ",h.level]}),(0,b.jsxs)("span",{children:["Level ",h.level+1]})]}),(0,b.jsx)("div",{style:{height:8,background:"rgba(255,255,255,0.1)",borderRadius:4},children:(0,b.jsx)("div",{style:{height:"100%",width:`${Math.min(h.xpProgress,100)}%`,background:"linear-gradient(90deg, #FFD700, #FF6B35)",borderRadius:4,transition:"width 1s ease"}})}),(0,b.jsxs)("div",{style:{fontSize:10,color:"#888",marginTop:4},children:["Network Power: ",h.networkPower.toLocaleString()]})]})]}),(0,b.jsx)(i,{degree1:w.degree1,degree2:w.degree2,skips:w.skips}),(0,b.jsxs)("div",{style:{background:"rgba(255,107,53,0.06)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,107,53,0.2)"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0,color:"#FF6B35"},children:"Queue Progress"}),(0,b.jsx)(o.default,{href:"/queue",style:{fontSize:11,color:"#FF6B35",textDecoration:"none",fontWeight:600},children:"View Queue →"})]}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12},children:[(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#FFA500"},children:u.total}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888"},children:"In Queue"})]}),(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#3498DB"},children:u.sent}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888"},children:"Sent"})]}),(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#00ff88"},children:u.accepted}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888"},children:"Accepted"})]})]})]}),s.length>0&&(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsxs)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:["Recent Activity (",s.filter(a=>!a.seen).length," new)"]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6,maxHeight:200,overflowY:"auto"},children:s.slice(0,10).map(a=>(0,b.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center",padding:"6px 8px",borderRadius:6,background:a.seen?"transparent":"rgba(255,215,0,0.05)",borderLeft:a.seen?"none":"2px solid #FFD700"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:a.icon||"📌"}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,color:a.seen?"#888":"#fff"},children:a.title}),a.message&&(0,b.jsx)("div",{style:{fontSize:10,color:"#666"},children:a.message})]}),(0,b.jsx)("span",{style:{fontSize:9,color:"#555",flexShrink:0},children:new Date(a.created_at).toLocaleDateString()})]},a.id))})]}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12,marginBottom:24},children:[(0,b.jsx)(r,{label:"Connections",value:h.d1Count}),(0,b.jsx)(r,{label:"Degree-2 Reach",value:h.d2Count}),(0,b.jsx)(r,{label:"Clusters",value:h.clusters}),(0,b.jsx)(r,{label:"S-Tier",value:h.tiers.S,color:"#FFD700"}),(0,b.jsx)(r,{label:"A-Tier",value:h.tiers.A,color:"#9B59B6"}),(0,b.jsx)(r,{label:"Catalysts",value:h.catalysts,color:"#00ff88"})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Tier Distribution"}),["S","A","B","C","D"].map(a=>{let c=h.tiers[a]||0,d=h.d1Count>0?c/h.d1Count*100:0;return(0,b.jsxs)("div",{style:{marginBottom:8},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,marginBottom:2},children:[(0,b.jsxs)("span",{style:{color:A[a],fontWeight:600},children:[a,"-Tier"]}),(0,b.jsxs)("span",{style:{color:"#888"},children:[c," (",d.toFixed(1),"%)"]})]}),(0,b.jsx)("div",{style:{height:6,background:"rgba(255,255,255,0.08)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",width:`${d}%`,background:A[a],borderRadius:3}})})]},a)})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Degree-2 Reach"}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700,color:"#FF6B35"},children:h.d2Count}),(0,b.jsx)("div",{style:{fontSize:11,color:"#888"},children:"People reachable via bridges"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700,color:"#FFD700"},children:h.d2Tiers.S}),(0,b.jsx)("div",{style:{fontSize:11,color:"#888"},children:"S-Tier degree-2"})]})]})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsxs)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:["Milestones (",B.filter(a=>a.done).length,"/",B.length,")"]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:B.map((a,c)=>(0,b.jsxs)("div",{style:{padding:"8px 10px",borderRadius:8,fontSize:12,background:a.done?"rgba(255,215,0,0.08)":"rgba(255,255,255,0.02)",border:`1px solid ${a.done?"rgba(255,215,0,0.2)":"rgba(255,255,255,0.05)"}`,color:a.done?"#FFD700":"#555",display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)("span",{style:{fontSize:16},children:a.done?a.icon:"🔒"}),(0,b.jsx)("span",{style:{fontWeight:a.done?600:400},children:a.label})]},c))})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Top Companies in Your Network"}),h.topCompanies.map(([a,c],d)=>(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",padding:"4px 0",borderBottom:d<h.topCompanies.length-1?"1px solid rgba(255,255,255,0.04)":"none",fontSize:12},children:[(0,b.jsx)("span",{children:a}),(0,b.jsx)("span",{style:{color:"#888"},children:c})]},d))]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0},children:"Your Sectors"}),(0,b.jsxs)(o.default,{href:"/scores#sector",style:{fontSize:11,color:"#3498DB",textDecoration:"none",fontWeight:600},children:[y?.sectors?.length?"Change":y&&!y.failed?"Pick on Scores":"Scores"," →"]})]}),y?y.failed?(0,b.jsx)("div",{style:{fontSize:12,color:"#ff7676"},children:"Couldn’t load your sectors. Reload this page, or open Settings to see them."}):y.sectors?.length?(0,b.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,alignItems:"center"},children:[y.sectors.map(a=>{let c=(0,n.sectorByKey)(a);return(0,b.jsx)("span",{style:{padding:"4px 12px",borderRadius:20,fontSize:11,fontWeight:600,background:`${c.color}26`,border:`1px solid ${c.color}66`,color:c.color},children:c.label},a)}),(0,b.jsxs)("span",{style:{fontSize:11,color:"#888"},children:["strong"===y.strength?"Strong":"Lean",": companies here count for more in your scores."]})]}):(0,b.jsx)("div",{style:{fontSize:12,color:"#888"},children:"None picked. Pick up to three in Settings and companies in them count for more in your scores."}):(0,b.jsx)("div",{style:{fontSize:12,color:"#888"},children:"Loading…"})]})]})})]})}function r({label:a,value:c,color:d}){return(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:10,padding:"14px 12px",border:"1px solid rgba(255,255,255,0.08)",textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:d||"#fff"},children:c}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888",marginTop:2},children:a})]})}a.s(["default",0,function(){return(0,b.jsx)(l.default,{children:(0,b.jsx)(q,{})})}],79243)}];
|
|
1
|
+
module.exports=[79243,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(23310),e=a.i(76939),f=a.i(91443);let g={height:10,borderRadius:6},h={background:"rgba(52,152,219,0.06)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(52,152,219,0.2)"};function i({degree1:a=[],degree2:c=[],skips:d=[]}){let k=function(a=[],b=[],c=[]){let d=(0,f.reachIndex)(a,b,{skips:c}),e=a=>{let b=(0,f.circleState)(a,d);return"scanned"===b?"mapped":b},g={mapped:0,hidden:0,todo:0},h={};for(let b of a){let a=e(b);g[a]+=1;let c=b.tier||"D";h[c]=h[c]||{mapped:0,hidden:0,todo:0,total:0},h[c][a]+=1,h[c].total+=1}let i=a.length,j=g.mapped+g.hidden;return{...g,total:i,resolved:j,percent:i?Math.round(j/i*100):0,batches:Math.ceil(g.todo/25),byTier:h}}(a,c,d);if(!k.total)return null;let l=a=>k.total?a/k.total*100:0,m=0===k.todo;return(0,b.jsxs)("div",{style:h,children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",marginBottom:10},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0,color:"#3498DB"},children:"2nd-degree mapping"}),(0,b.jsx)("span",{style:{fontSize:12,color:m?"#00ff88":"#8b9a9a",fontWeight:600},children:m?"Everything reachable is mapped":`${k.percent}%`})]}),(0,b.jsxs)("div",{style:{...g,display:"flex",overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:[(0,b.jsx)("div",{style:{width:`${l(k.mapped)}%`,background:"#00ff88"}}),(0,b.jsx)("div",{style:{width:`${l(k.hidden)}%`,background:"rgba(255,255,255,0.22)"}})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:16,marginTop:10,fontSize:12,flexWrap:"wrap"},children:[(0,b.jsx)(j,{color:"#00ff88",label:"mapped",value:k.mapped}),(0,b.jsx)(j,{color:"rgba(255,255,255,0.35)",label:"hidden",value:k.hidden}),(0,b.jsx)(j,{color:"rgba(255,255,255,0.12)",label:"to go",value:k.todo}),(0,b.jsxs)("span",{style:{color:"#667",marginLeft:"auto"},children:["of ",k.total]})]}),k.hidden>0&&(0,b.jsx)("p",{style:{fontSize:11.5,color:"#667",margin:"10px 0 0",lineHeight:1.6},children:"Hidden means they keep their connections private — that will not change, and it does not count against you."}),!m&&(0,b.jsxs)("p",{style:{fontSize:11.5,color:"#8b9a9a",margin:"10px 0 0",lineHeight:1.6},children:[k.todo," left — about ",(0,b.jsxs)("b",{children:[k.batches," ",1===k.batches?"batch":"batches"]})," of ",25,". Run one, leave it a while, run another. Long unbroken runs are what gets an account restricted."]}),(0,b.jsx)("div",{style:{marginTop:16,display:"flex",flexDirection:"column",gap:7},children:["S","A","B","C","D"].filter(a=>k.byTier[a]?.total).map(a=>{let c=k.byTier[a];return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,fontSize:11},children:[(0,b.jsx)("span",{style:{width:14,color:e.TIER_COLORS_CLASSIC[a],fontWeight:700},children:a}),(0,b.jsxs)("div",{style:{flex:1,height:5,borderRadius:3,display:"flex",overflow:"hidden",background:"rgba(255,255,255,0.06)"},children:[(0,b.jsx)("div",{style:{width:`${c.mapped/c.total*100}%`,background:e.TIER_COLORS_CLASSIC[a]}}),(0,b.jsx)("div",{style:{width:`${c.hidden/c.total*100}%`,background:"rgba(255,255,255,0.22)"}})]}),(0,b.jsxs)("span",{style:{color:"#667",width:62,textAlign:"right"},children:[c.mapped,"/",c.total]})]},a)})})]})}function j({color:a,label:c,value:d}){return(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:6,color:"#8b9a9a"},children:[(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:2,background:a}}),(0,b.jsx)("b",{style:{color:"#e2e8f0"},children:d})," ",c]})}var k=a.i(58834),l=a.i(36839),m=a.i(75857),n=a.i(54919),o=a.i(38246);let p={1:"Observer",11:"Connector",31:"Networker",51:"Strategist",76:"Architect"};function q(){let{userId:a,userName:e,userProfile:f}=(0,m.useUser)(),g=f||{name:e||"User",headline:"",sectors:[],goals:[]},[h,j]=(0,c.useState)(null),[l,q]=(0,c.useState)(!0),[s,t]=(0,c.useState)([]),[u,v]=(0,c.useState)({total:0,sent:0,accepted:0}),[w,x]=(0,c.useState)({degree1:[],degree2:[],skips:[]}),[y,z]=(0,c.useState)(null);if((0,c.useEffect)(()=>{!k.IS_DEMO&&a&&b();async function b(){fetch("/api/settings").then(a=>a.json().then(b=>a.ok&&b.settings?b:Promise.reject(Error(b.error)))).then(a=>z(a.settings.sectorFocus||{sectors:[],strength:"lean"})).catch(()=>z({failed:!0}));let b=await (0,d.loadNetwork)(a),c=b.degree1,e=b.degree2,f={S:0,A:0,B:0,C:0,D:0};c.forEach(a=>{f[a.tier]=(f[a.tier]||0)+1});let g={S:0,A:0,B:0,C:0,D:0};e.forEach(a=>{g[a.tier]=(g[a.tier]||0)+1});let h=[...new Set(e.map(a=>a.source_connection_id).filter(Boolean))].length,i=c.filter(a=>a.is_catalyst).length,k={};c.forEach(a=>{a.company&&(k[a.company]=(k[a.company]||0)+1)});let l=Object.entries(k).sort((a,b)=>b[1]-a[1]).slice(0,10),m=100*f.S+40*f.A+15*f.B+5*f.C+ +f.D+200*h+150*i+50*g.S+c.length,n=Math.floor(Math.sqrt(m/10)),o=n*n*10,p=(n+1)*(n+1)*10;j({d1Count:c.length,d2Count:e.length,tiers:f,d2Tiers:g,clusters:h,catalysts:i,networkPower:m,level:n,xpProgress:(m-o)/(p-o)*100,topCompanies:l,unlockedPaths:0}),fetch("/api/scraper").then(a=>a.json()).then(a=>x({degree1:c,degree2:e,skips:a.skips||[]})).catch(()=>x({degree1:c,degree2:e,skips:[]})),fetch(`/api/notifications?userId=${a}`).then(a=>a.json()).then(a=>t(a.notifications||[])).catch(()=>{}),fetch("/api/queue").then(a=>a.json()).then(a=>{let b=a.items||[];v({total:b.length,sent:b.filter(a=>"sent"===a.status).length,accepted:b.filter(a=>"accepted"===a.status).length})}).catch(()=>{}),q(!1)}},[a]),k.IS_DEMO)return(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,textAlign:"center",padding:24,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'},children:[(0,b.jsx)("h2",{style:{margin:0,fontSize:20,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("p",{style:{margin:0,fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(o.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]});if(l)return(0,b.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading profile..."});let A={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},B=[{label:"First S-Tier",done:h.tiers.S>0,icon:"👑"},{label:"100 Connections",done:h.d1Count>=100,icon:"🔗"},{label:"500 Connections",done:h.d1Count>=500,icon:"🌐"},{label:"First Cluster",done:h.clusters>0,icon:"🔭"},{label:"10 Clusters",done:h.clusters>=10,icon:"🏰"},{label:"50 S-Tier",done:h.tiers.S>=50,icon:"💎"},{label:"Catalyst Found",done:h.catalysts>0,icon:"⚡"},{label:"Level 25",done:h.level>=25,icon:"🎯"},{label:"Level 50",done:h.level>=50,icon:"🚀"},{label:"D2 S-Tier > 50",done:h.d2Tiers.S>=50,icon:"🌟"}];return(0,b.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,b.jsxs)("header",{style:{padding:"16px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",display:"flex",alignItems:"center",gap:16},children:[(0,b.jsxs)(o.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Back to Map"]}),(0,b.jsx)("h1",{style:{fontSize:22,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Profile"})]}),(0,b.jsx)("div",{id:"scan-bar-slot"}),(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"30px 20px"},children:(0,b.jsxs)("div",{style:{maxWidth:700,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.05)",borderRadius:16,padding:32,marginBottom:24,border:"1px solid rgba(255,215,0,0.2)",textAlign:"center"},children:[(0,b.jsx)("div",{style:{width:100,height:100,borderRadius:"50%",margin:"0 auto 16px",background:"linear-gradient(135deg, #FFD700, #FF6B35)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:36,fontWeight:800,color:"#000",boxShadow:"0 0 30px rgba(255,215,0,0.3)"},children:h.level}),(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700,marginBottom:4},children:g.name}),(0,b.jsx)("div",{style:{fontSize:14,color:"#888",marginBottom:4},children:g.headline}),(0,b.jsx)("div",{style:{display:"inline-block",padding:"4px 16px",borderRadius:20,background:"rgba(255,215,0,0.15)",border:"1px solid rgba(255,215,0,0.3)",color:"#FFD700",fontSize:13,fontWeight:700,marginBottom:16},children:function(a){let b="Observer";for(let[c,d]of Object.entries(p))a>=parseInt(c)&&(b=d);return b}(h.level)}),(0,b.jsxs)("div",{style:{maxWidth:300,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#666",marginBottom:4},children:[(0,b.jsxs)("span",{children:["Level ",h.level]}),(0,b.jsxs)("span",{children:["Level ",h.level+1]})]}),(0,b.jsx)("div",{style:{height:8,background:"rgba(255,255,255,0.1)",borderRadius:4},children:(0,b.jsx)("div",{style:{height:"100%",width:`${Math.min(h.xpProgress,100)}%`,background:"linear-gradient(90deg, #FFD700, #FF6B35)",borderRadius:4,transition:"width 1s ease"}})}),(0,b.jsxs)("div",{style:{fontSize:10,color:"#888",marginTop:4},children:["Network Power: ",h.networkPower.toLocaleString()]})]})]}),(0,b.jsx)(i,{degree1:w.degree1,degree2:w.degree2,skips:w.skips}),(0,b.jsxs)("div",{style:{background:"rgba(255,107,53,0.06)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,107,53,0.2)"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0,color:"#FF6B35"},children:"Queue Progress"}),(0,b.jsx)(o.default,{href:"/queue",style:{fontSize:11,color:"#FF6B35",textDecoration:"none",fontWeight:600},children:"View Queue →"})]}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12},children:[(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#FFA500"},children:u.total}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888"},children:"In Queue"})]}),(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#3498DB"},children:u.sent}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888"},children:"Sent"})]}),(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:"#00ff88"},children:u.accepted}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888"},children:"Accepted"})]})]})]}),s.length>0&&(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsxs)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:["Recent Activity (",s.filter(a=>!a.seen).length," new)"]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6,maxHeight:200,overflowY:"auto"},children:s.slice(0,10).map(a=>(0,b.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center",padding:"6px 8px",borderRadius:6,background:a.seen?"transparent":"rgba(255,215,0,0.05)",borderLeft:a.seen?"none":"2px solid #FFD700"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:a.icon||"📌"}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,color:a.seen?"#888":"#fff"},children:a.title}),a.message&&(0,b.jsx)("div",{style:{fontSize:10,color:"#666"},children:a.message})]}),(0,b.jsx)("span",{style:{fontSize:9,color:"#555",flexShrink:0},children:new Date(a.created_at).toLocaleDateString()})]},a.id))})]}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:12,marginBottom:24},children:[(0,b.jsx)(r,{label:"Connections",value:h.d1Count}),(0,b.jsx)(r,{label:"Degree-2 Reach",value:h.d2Count}),(0,b.jsx)(r,{label:"Clusters",value:h.clusters}),(0,b.jsx)(r,{label:"S-Tier",value:h.tiers.S,color:"#FFD700"}),(0,b.jsx)(r,{label:"A-Tier",value:h.tiers.A,color:"#9B59B6"}),(0,b.jsx)(r,{label:"Catalysts",value:h.catalysts,color:"#00ff88"})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Tier Distribution"}),["S","A","B","C","D"].map(a=>{let c=h.tiers[a]||0,d=h.d1Count>0?c/h.d1Count*100:0;return(0,b.jsxs)("div",{style:{marginBottom:8},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,marginBottom:2},children:[(0,b.jsxs)("span",{style:{color:A[a],fontWeight:600},children:[a,"-Tier"]}),(0,b.jsxs)("span",{style:{color:"#888"},children:[c," (",d.toFixed(1),"%)"]})]}),(0,b.jsx)("div",{style:{height:6,background:"rgba(255,255,255,0.08)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",width:`${d}%`,background:A[a],borderRadius:3}})})]},a)})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Degree-2 Reach"}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700,color:"#FF6B35"},children:h.d2Count}),(0,b.jsx)("div",{style:{fontSize:11,color:"#888"},children:"People reachable via bridges"})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700,color:"#FFD700"},children:h.d2Tiers.S}),(0,b.jsx)("div",{style:{fontSize:11,color:"#888"},children:"S-Tier degree-2"})]})]})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsxs)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:["Milestones (",B.filter(a=>a.done).length,"/",B.length,")"]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:B.map((a,c)=>(0,b.jsxs)("div",{style:{padding:"8px 10px",borderRadius:8,fontSize:12,background:a.done?"rgba(255,215,0,0.08)":"rgba(255,255,255,0.02)",border:`1px solid ${a.done?"rgba(255,215,0,0.2)":"rgba(255,255,255,0.05)"}`,color:a.done?"#FFD700":"#555",display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)("span",{style:{fontSize:16},children:a.done?a.icon:"🔒"}),(0,b.jsx)("span",{style:{fontWeight:a.done?600:400},children:a.label})]},c))})]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,marginBottom:24,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,marginTop:0,marginBottom:12},children:"Top Companies in Your Network"}),h.topCompanies.map(([a,c],d)=>(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",padding:"4px 0",borderBottom:d<h.topCompanies.length-1?"1px solid rgba(255,255,255,0.04)":"none",fontSize:12},children:[(0,b.jsx)("span",{children:a}),(0,b.jsx)("span",{style:{color:"#888"},children:c})]},d))]}),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:12,padding:20,border:"1px solid rgba(255,255,255,0.08)"},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:12},children:[(0,b.jsx)("h3",{style:{fontSize:14,fontWeight:700,margin:0},children:"Your Sectors"}),(0,b.jsxs)(o.default,{href:"/scores#sector",style:{fontSize:11,color:"#3498DB",textDecoration:"none",fontWeight:600},children:[y?.sectors?.length?"Change":y&&!y.failed?"Pick on Scores":"Scores"," →"]})]}),y?y.failed?(0,b.jsx)("div",{style:{fontSize:12,color:"#ff7676"},children:"Couldn’t load your sectors. Reload this page, or open Settings to see them."}):y.sectors?.length?(0,b.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,alignItems:"center"},children:[y.sectors.map(a=>{let c=(0,n.sectorByKey)(a);return(0,b.jsx)("span",{style:{padding:"4px 12px",borderRadius:20,fontSize:11,fontWeight:600,background:`${c.color}26`,border:`1px solid ${c.color}66`,color:c.color},children:c.label},a)}),(0,b.jsxs)("span",{style:{fontSize:11,color:"#888"},children:["strong"===y.strength?"Strong":"Lean",": companies here count for more in your scores."]})]}):(0,b.jsx)("div",{style:{fontSize:12,color:"#888"},children:"None picked. Pick up to three in Settings and companies in them count for more in your scores."}):(0,b.jsx)("div",{style:{fontSize:12,color:"#888"},children:"Loading…"})]})]})})]})}function r({label:a,value:c,color:d}){return(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:10,padding:"14px 12px",border:"1px solid rgba(255,255,255,0.08)",textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700,color:d||"#fff"},children:c}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888",marginTop:2},children:a})]})}a.s(["default",0,function(){return(0,b.jsx)(l.default,{children:(0,b.jsx)(q,{})})}],79243)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=app_profile_page_0u3-l5y.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[78386,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(23310),e=a.i(58834),f=a.i(38246),g=a.i(91443);let h={S:25,A:15,B:10,C:5,D:2},i={S:100,A:60,B:35,C:15,D:5};var j=a.i(76939),k=a.i(56377);let l={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},m="1px solid rgba(255,255,255,0.1)";function n({person:a,size:c=36,ring:d}){let e=l[a?.tier]||"#667";return(0,b.jsxs)("div",{style:{position:"relative",width:c,height:c,flexShrink:0},children:[(0,b.jsx)("div",{style:{width:c,height:c,borderRadius:"50%",background:e,color:a?.tier==="S"?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center",fontSize:.34*c,fontWeight:800,border:`2px solid ${d||e}`},children:(0,j.initialsFor)(a?.name||"?")}),(0,k.localPhoto)(a?.profile_image_url)&&(0,b.jsx)("img",{src:(0,k.localPhoto)(a.profile_image_url),alt:"",onError:a=>{a.currentTarget.style.display="none"},style:{position:"absolute",inset:0,width:c,height:c,borderRadius:"50%",objectFit:"cover",border:`2px solid ${d||e}`}})]})}function o({progress:a,size:c=86,color:d="#FF6B35",children:e}){let f=c/2-5,g=2*Math.PI*f;return(0,b.jsxs)("div",{style:{position:"relative",width:c,height:c},children:[(0,b.jsxs)("svg",{width:c,height:c,style:{position:"absolute",inset:0,transform:"rotate(-90deg)"},children:[(0,b.jsx)("circle",{cx:c/2,cy:c/2,r:f,fill:"none",stroke:"rgba(255,255,255,0.08)",strokeWidth:5}),(0,b.jsx)("circle",{cx:c/2,cy:c/2,r:f,fill:"none",stroke:d,strokeWidth:5,strokeLinecap:"round",strokeDasharray:`${g*Math.min(1,a)} ${g}`,style:{transition:"stroke-dasharray 0.5s ease"}})]}),(0,b.jsx)("div",{style:{position:"absolute",inset:9,display:"flex",alignItems:"center",justifyContent:"center"},children:e})]})}function p({recs:a,sentIds:d,added:e,mappedIds:j,reach:k,onSend:s,onUndo:t}){let u=(0,c.useMemo)(()=>(function({recs:a=[],sentIds:b=new Set,added:c=[],mappedIds:d=new Set,reach:e=null}){var f;let j,k,l,m=new Map,n=new Set;for(let b of[...a].sort((a,b)=>(b.priority||0)-(a.priority||0))){if(!b.bridge)continue;let a=`${b.bridge.id}|${b.profile_url||b.id}`;if(n.has(a))continue;n.add(a);let c=m.get(b.bridge.id);c||(c={bridge:b.bridge,people:[]},m.set(b.bridge.id,c)),c.people.push(b)}let o=new Map;for(let a of c){let b=a.unlocked_from_bridge_id;b&&o.set(b,[...o.get(b)||[],a])}let p=[],q=0,r=0;for(let{bridge:a,people:c}of m.values()){let d=c.filter(a=>b.has(a.id)),e=o.get(a.id)||[];r+=d.length,q+=d.reduce((a,b)=>a+(h[b.tier]||2),0),q+=e.reduce((a,b)=>a+(i[b.tier]||5),0);let f=Math.ceil(c.length/5)||1,g=0;for(;g<f-1&&c.slice(5*g,(g+1)*5).every(a=>b.has(a.id));)g++;let j=c.slice(5*g,(g+1)*5),k=j.filter(a=>b.has(a.id)).length,l=k===j.length&&g===f-1;p.push({bridge:a,people:c,stage:g+1,stages:f,targets:j,done:k,progress:j.length?k/j.length:1,complete:l,sent:d.length,added:e,value:j.filter(a=>!b.has(a.id)).reduce((a,b)=>a+(b.priority||0),0),open:{S:j.filter(a=>"S"===a.tier&&!b.has(a.id)).length,A:j.filter(a=>"A"===a.tier&&!b.has(a.id)).length}})}p.sort((a,b)=>a.complete-b.complete||(b.progress>0&&b.progress<1)-(a.progress>0&&a.progress<1)||b.progress-a.progress||b.value-a.value);let s=p.filter(a=>!a.complete).flatMap(a=>a.targets.filter(a=>!b.has(a.id)).map(b=>({person:b,cluster:a,score:(b.priority||0)*(1+.6*a.progress)}))).sort((a,b)=>b.score-a.score),t=new Set,u=[];for(let a of s){let b=a.person.profile_url||a.person.id;if(!t.has(b)&&(t.add(b),u.push(a),3===u.length))break}let v=c.filter(a=>a.unlocked_from_bridge_id).length;return{clusters:p,nextMoves:u,points:q,level:(k=((j=Math.floor(Math.sqrt(Math.max(0,f=q)/40))+1)-1)**2*40,l=j**2*40,{level:j,floor:k,next:l,progress:(f-k)/(l-k)}),sentTotal:r,addedTotal:v,newDoors:c.filter(a=>a.unlocked_from_bridge_id&&"todo"===(0,g.circleState)(a,e||{scanned:d,hidden:new Set})),clearedStages:p.reduce((a,b)=>a+(b.stage-1)+ +!!b.complete,0)}})({recs:a,sentIds:d,added:e,mappedIds:j,reach:k}),[a,d,e,j,k]),[v,w]=(0,c.useState)(null),[x,y]=(0,c.useState)(null),{level:z}=u;async function A(a,b){await s(a);let c=b.done+1,d=String(b.bridge.name||"").split(/[\s,]+/)[0];y(c>=b.targets.length?`+${h[a.tier]||2} \xb7 Stage ${b.stage} of ${d}'s circle cleared — the next 5 are up`:`+${h[a.tier]||2} \xb7 ${d}'s circle ${c}/${b.targets.length}`),setTimeout(()=>y(null),3500)}let B=u.clusters.find(a=>a.bridge.id===v);return(0,b.jsxs)("div",{style:{maxWidth:1100,margin:"0 auto",padding:"16px 20px 60px"},children:[(0,b.jsxs)("div",{style:{display:"flex",gap:16,alignItems:"center",flexWrap:"wrap",padding:16,borderRadius:12,border:m,background:"linear-gradient(135deg, rgba(255,107,53,0.10), rgba(155,89,182,0.08))"},children:[(0,b.jsxs)("div",{style:{width:64,height:64,borderRadius:16,background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:800},children:"LEVEL"}),(0,b.jsx)("div",{style:{fontSize:26,fontWeight:900,lineHeight:1},children:z.level})]}),(0,b.jsxs)("div",{style:{flex:1,minWidth:220},children:[(0,b.jsxs)("div",{style:{fontSize:13,color:"#dfe6e9"},children:[(0,b.jsx)("b",{children:u.points})," points · ",(0,b.jsx)("b",{children:z.next-u.points})," to level ",z.level+1]}),(0,b.jsx)("div",{style:{height:8,borderRadius:4,background:"rgba(255,255,255,0.08)",marginTop:6,overflow:"hidden"},children:(0,b.jsx)("div",{style:{height:"100%",width:`${Math.round(100*z.progress)}%`,background:"linear-gradient(90deg, #FFD700, #FF6B35)",transition:"width 0.5s"}})}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#8b9a9a",marginTop:6},children:"Points come from invites you send and people who accept — not from browsing."})]}),[[u.sentTotal,"invites sent"],[u.addedTotal,"people added"],[u.clearedStages,"stages cleared"]].map(([a,c])=>(0,b.jsxs)("div",{style:{textAlign:"center",minWidth:80},children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:900},children:a}),(0,b.jsx)("div",{style:{fontSize:11,color:"#8b9a9a"},children:c})]},c))]}),u.newDoors.length>0&&(0,b.jsxs)("div",{style:{marginTop:12,padding:"10px 14px",borderRadius:10,border:"1px solid rgba(0,255,136,0.3)",background:"rgba(0,255,136,0.06)",fontSize:13},children:["🚪 ",(0,b.jsxs)("b",{children:[u.newDoors.length," new ",1===u.newDoors.length?"door":"doors",":"]})," people you added through a circle, whose own circle isn’t mapped yet. That’s the next degree. ",(0,b.jsx)(f.default,{href:"/setup",style:{color:"#00ff88"},children:"Map them on the Scan page →"})]}),u.nextMoves.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h3",{style:{margin:"22px 0 10px",fontSize:15},children:"Next best moves"}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(300px, 1fr))",gap:12},children:u.nextMoves.map(({person:a,cluster:c},d)=>(0,b.jsxs)("div",{style:{padding:14,borderRadius:12,border:`1px solid ${l[a.tier]}55`,background:"rgba(255,255,255,0.03)",position:"relative"},children:[(0,b.jsxs)("div",{style:{position:"absolute",top:10,right:12,fontSize:11,fontWeight:800,color:"#FF6B35"},children:["#",d+1]}),(0,b.jsxs)("div",{style:{display:"flex",gap:10,alignItems:"center"},children:[(0,b.jsx)(n,{person:a,size:44}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontWeight:700,fontSize:14},children:a.name}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#8b9a9a",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:220},children:a.headline})]})]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#aab7b7",margin:"10px 0"},children:["via ",(0,b.jsx)("b",{style:{color:l[c.bridge.tier]},children:c.bridge.name})," · their circle ",c.done,"/",c.targets.length," this stage"]}),(0,b.jsxs)("div",{style:{display:"flex",gap:8},children:[a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:r,children:"Open on LinkedIn"}),(0,b.jsxs)("button",{onClick:()=>A(a,c),style:q,children:["I sent an invite · +",h[a.tier]||2]})]})]},a.id))})]}),(0,b.jsx)("h3",{style:{margin:"26px 0 4px",fontSize:15},children:"Circles to work through"}),(0,b.jsxs)("div",{style:{fontSize:12,color:"#8b9a9a",marginBottom:12},children:["Each is one of your connections and the best people they know, ",5," at a time. Fill the ring to clear a stage."]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(190px, 1fr))",gap:12},children:u.clusters.map(a=>{let c=v===a.bridge.id;return(0,b.jsxs)("button",{onClick:()=>w(c?null:a.bridge.id),style:{padding:12,borderRadius:12,cursor:"pointer",textAlign:"center",color:"#fff",border:c?"1px solid #FF6B35":m,background:a.complete?"rgba(0,255,136,0.06)":"rgba(255,255,255,0.03)",display:"flex",flexDirection:"column",alignItems:"center",gap:6},children:[(0,b.jsx)(o,{progress:a.progress,color:a.complete?"#00ff88":"#FF6B35",children:(0,b.jsx)(n,{person:a.bridge,size:60})}),(0,b.jsx)("div",{style:{fontWeight:700,fontSize:13,maxWidth:170,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.bridge.name}),(0,b.jsx)("div",{style:{fontSize:11,color:a.complete?"#00ff88":"#aab7b7"},children:a.complete?"Circle cleared":`Stage ${a.stage} of ${a.stages} \xb7 ${a.done}/${a.targets.length}`}),(0,b.jsx)("div",{style:{display:"flex",gap:4},children:a.targets.map(a=>(0,b.jsx)("span",{title:a.name,style:{width:12,height:12,borderRadius:"50%",border:`2px solid ${l[a.tier]||"#667"}`,background:d.has(a.id)?l[a.tier]||"#667":"transparent"}},a.id))}),(0,b.jsxs)("div",{style:{fontSize:10.5,color:"#778"},children:[a.open.S?`${a.open.S} S \xb7 `:"",a.open.A?`${a.open.A} A \xb7 `:"",a.people.length," worth adding",a.added.length?` \xb7 ★ ${a.added.length} added`:""]})]},a.bridge.id)})}),B&&(0,b.jsxs)("div",{style:{marginTop:14,padding:16,borderRadius:12,border:"1px solid rgba(255,107,53,0.4)",background:"rgba(255,107,53,0.05)"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:10},children:[(0,b.jsx)(n,{person:B.bridge,size:40}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{fontWeight:800},children:[B.bridge.name,"’s circle · stage ",B.stage," of ",B.stages]}),(0,b.jsxs)("div",{style:{fontSize:12,color:"#aab7b7"},children:["Ask ",B.bridge.name?.split(" ")[0]," for an intro, or invite them directly. Mark each one when it’s sent."]})]})]}),B.targets.map(a=>{let c=d.has(a.id);return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 0",borderTop:"1px solid rgba(255,255,255,0.05)"},children:[(0,b.jsx)(n,{person:a,size:34,ring:c?"#00ff88":void 0}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsxs)("div",{style:{fontWeight:600,fontSize:13},children:[a.name," ",(0,b.jsx)("span",{style:{color:l[a.tier],fontSize:11},children:a.tier})]}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#8b9a9a",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline})]}),a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:r,children:"LinkedIn"}),c?(0,b.jsx)("button",{onClick:()=>t(a),style:{...r,color:"#00ff88"},children:"Sent ✓ (undo)"}):(0,b.jsxs)("button",{onClick:()=>A(a,B),style:q,children:["Sent · +",h[a.tier]||2]})]},a.id)}),B.added.length>0&&(0,b.jsxs)("div",{style:{marginTop:10,fontSize:12,color:"#00ff88"},children:["★ Added from this circle: ",B.added.map(a=>a.name).join(", ")]})]}),x&&(0,b.jsx)("div",{role:"status",style:{position:"fixed",bottom:24,left:"50%",transform:"translateX(-50%)",padding:"10px 18px",borderRadius:24,background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000",fontWeight:800,fontSize:13,boxShadow:"0 8px 30px rgba(0,0,0,0.5)",zIndex:50},children:x})]})}let q={padding:"7px 12px",borderRadius:8,border:"none",cursor:"pointer",fontWeight:800,fontSize:12,background:"linear-gradient(135deg, #FF6B35, #FFD700)",color:"#000"},r={padding:"7px 12px",borderRadius:8,border:m,cursor:"pointer",fontWeight:600,fontSize:12,background:"rgba(255,255,255,0.05)",color:"#dfe6e9",textDecoration:"none"};var s=a.i(36839),t=a.i(75857),u=a.i(30889),v=a.i(76892),w=a.i(24475),x=a.i(90231),y=a.i(37732);let z={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"};function A(){let{userId:a,userProfile:h}=(0,t.useUser)(),i=h?.sectors||[],[j,l]=(0,c.useState)([]),[m,n]=(0,c.useState)(!0),[o,q]=(0,c.useState)("all"),[r,s]=(0,c.useState)(new Set),A=(0,v.default)(),[B,C]=(0,c.useState)([]),[D,E]=(0,c.useState)({}),[F,G]=(0,c.useState)("quest"),[H,I]=(0,c.useState)([]),[J,K]=(0,c.useState)(()=>new Set),[L,M]=(0,c.useState)(null),[N,O]=(0,c.useState)(null),[P,Q]=(0,c.useState)(()=>"bridge");(0,c.useEffect)(()=>{},[]),(0,c.useEffect)(()=>{!e.IS_DEMO&&a&&b();async function b(){let[b,c,e]=await Promise.all([(0,d.loadNetwork)(a),fetch(`/api/outreach?userId=${a}`).then(a=>a.json()).catch(()=>({pending:[]})),(0,y.loadScanNotes)()]),f=b.degree1,h=b.degree2;I(f.filter(a=>a.unlocked_from_bridge_id)),K(new Set(h.map(a=>a.source_connection_id).filter(Boolean))),M((0,g.reachIndex)(f,h,e));let j=new Set(f.map(a=>a.profile_url)),k={};f.forEach(a=>{k[a.id]=a}),C(c.pending||[]),E(k),l(h.filter(a=>("S"===a.tier||"A"===a.tier||"B"===a.tier)&&!j.has(a.profile_url)).map(a=>{let b,c,d=k[a.source_connection_id],e=(b=parseFloat(a.power_score)||0,c=(a.headline||"").toLowerCase(),(0,u.rowCompanyScore)(a)>=u.TOP_COMPANY&&(b+=1),(i||[]).forEach(a=>{c.includes(a.toLowerCase())&&(b+=.5)}),"S"===a.tier?b*=1.5:"A"===a.tier&&(b*=1.2),b),f="S"===a.tier?50:"A"===a.tier?25:10;return{...a,bridge:d,priority:e,xp:f}}).sort((a,b)=>b.priority-a.priority)),n(!1)}},[a]);let R=(0,c.useMemo)(()=>new Set([...B,...j].filter(a=>(0,w.hasRequest)(a,A)).map(a=>a.id)),[B,j,A]),S=(0,c.useMemo)(()=>{let a=new Set,b=[];for(let c of[...B,...j]){let d=(0,x.keyFor)(c);!a.has(d)&&(0,w.hasRequest)(c,A)&&(a.add(d),b.push({...c,bridge:D[c.source_connection_id]||c.bridge||null}))}return b},[B,j,A,D]);if(e.IS_DEMO)return(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:10,textAlign:"center",padding:24},children:[(0,b.jsx)("h2",{style:{margin:0,fontSize:18,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("div",{style:{fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(f.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]});let T="all"===o?j:j.filter(a=>a.tier===o);N&&(T=T.filter(a=>a.bridge?.id===N));let U={S:0,A:0,B:0};j.forEach(a=>{void 0!==U[a.tier]&&U[a.tier]++});let V={};T.forEach(a=>{let b;V[b="bridge"===P?a.bridge?.id||"unknown":"company"===P?(a.company||"Unknown").trim()||"Unknown":a.tier]||(V[b]=[]),V[b].push(a)});let W={S:0,A:1,B:2},X=Object.entries(V).sort((a,b)=>{if("tier"===P)return(W[a[0]]||9)-(W[b[0]]||9);if("bridge"===P){let c=a[1][0]?.bridge,d=b[1][0]?.bridge,e=W[c?.tier]??9,f=W[d?.tier]??9;if(e!==f)return e-f}return b[1].length-a[1].length});function Y(a){s(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})}return m?(0,b.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading..."}):(0,b.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,b.jsxs)("header",{style:{padding:"14px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",flexShrink:0},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:10},children:[(0,b.jsxs)(f.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Map"]}),(0,b.jsx)("h1",{style:{fontSize:20,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FF6B35, #FFD700)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Outlink"}),(0,b.jsxs)("div",{style:{display:"flex",gap:2,background:"rgba(255,255,255,0.06)",borderRadius:6,padding:2},children:[(0,b.jsx)("button",{onClick:()=>G("quest"),style:{padding:"5px 12px",borderRadius:4,border:"none",fontSize:11,fontWeight:700,cursor:"pointer",background:"quest"===F?"linear-gradient(135deg, #FFD700, #FF6B35)":"transparent",color:"quest"===F?"#000":"#FFD700"},children:"Circles"}),(0,b.jsxs)("button",{onClick:()=>G("recs"),style:{padding:"5px 12px",borderRadius:4,border:"none",fontSize:11,fontWeight:600,cursor:"pointer",background:"recs"===F?"#fff":"transparent",color:"recs"===F?"#000":"#888"},children:["To Add (",j.length,")"]}),(0,b.jsxs)("button",{onClick:()=>G("pending"),style:{padding:"5px 12px",borderRadius:4,border:"none",fontSize:11,fontWeight:600,cursor:"pointer",background:"pending"===F?"linear-gradient(135deg, #FF6B35, #FFD700)":"transparent",color:"pending"===F?"#000":"#FF6B35"},children:["Pending (",S.length,")"]})]}),(0,b.jsx)("div",{style:{marginLeft:"auto",display:"flex",gap:6},children:"recs"===F&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{onClick:()=>Q("tier"),style:{padding:"4px 10px",borderRadius:4,border:"none",fontSize:10,fontWeight:600,cursor:"pointer",background:"tier"===P?"rgba(255,255,255,0.15)":"rgba(255,255,255,0.05)",color:"tier"===P?"#fff":"#666"},children:"By Tier"}),(0,b.jsx)("button",{onClick:()=>Q("bridge"),style:{padding:"4px 10px",borderRadius:4,border:"none",fontSize:10,fontWeight:600,cursor:"pointer",background:"bridge"===P?"rgba(255,255,255,0.15)":"rgba(255,255,255,0.05)",color:"bridge"===P?"#fff":"#666"},children:"By Bridge"}),(0,b.jsx)("button",{onClick:()=>Q("company"),style:{padding:"4px 10px",borderRadius:4,border:"none",fontSize:10,fontWeight:600,cursor:"pointer",background:"company"===P?"rgba(255,255,255,0.15)":"rgba(255,255,255,0.05)",color:"company"===P?"#fff":"#666"},children:"By Company"})]})})]}),(0,b.jsx)("div",{style:{display:"quest"===F?"none":"flex",gap:6},children:[{k:"all",l:`All (${j.length})`},{k:"S",l:`S (${U.S})`,c:z.S},{k:"A",l:`A (${U.A})`,c:z.A},{k:"B",l:`B (${U.B})`,c:z.B}].map(a=>(0,b.jsx)("button",{onClick:()=>q(a.k),style:{padding:"4px 12px",borderRadius:16,border:"none",fontSize:11,fontWeight:600,cursor:"pointer",background:o===a.k?a.c||"#fff":"rgba(255,255,255,0.06)",color:o===a.k?"#000":a.c||"#888"},children:a.l},a.k))})]}),"recs"===F&&r.size>0&&(0,b.jsxs)("div",{style:{padding:"10px 24px",background:"rgba(255,215,0,0.08)",borderBottom:"1px solid rgba(255,215,0,0.2)",display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[(0,b.jsxs)("span",{style:{fontSize:12,color:"#FFD700",fontWeight:600},children:[r.size," selected"]}),(0,b.jsxs)("button",{onClick:function(){let a=T.filter(a=>r.has(a.id));if(0===a.length)return;if(1===a.length)return void window.open(a[0].profile_url,"_blank");let b=new Blob([`<!DOCTYPE html><html><head><title>Outlink — ${a.length} profiles</title>
|
|
1
|
+
module.exports=[78386,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(23310),e=a.i(58834),f=a.i(38246),g=a.i(91443);let h={S:25,A:15,B:10,C:5,D:2},i={S:100,A:60,B:35,C:15,D:5};var j=a.i(76939),k=a.i(56377);let l={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},m="1px solid rgba(255,255,255,0.1)";function n({person:a,size:c=36,ring:d}){let e=l[a?.tier]||"#667";return(0,b.jsxs)("div",{style:{position:"relative",width:c,height:c,flexShrink:0},children:[(0,b.jsx)("div",{style:{width:c,height:c,borderRadius:"50%",background:e,color:a?.tier==="S"?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center",fontSize:.34*c,fontWeight:800,border:`2px solid ${d||e}`},children:(0,j.initialsFor)(a?.name||"?")}),(0,k.localPhoto)(a?.profile_image_url)&&(0,b.jsx)("img",{src:(0,k.localPhoto)(a.profile_image_url),alt:"",onError:a=>{a.currentTarget.style.display="none"},style:{position:"absolute",inset:0,width:c,height:c,borderRadius:"50%",objectFit:"cover",border:`2px solid ${d||e}`}})]})}function o({progress:a,size:c=86,color:d="#FF6B35",children:e}){let f=c/2-5,g=2*Math.PI*f;return(0,b.jsxs)("div",{style:{position:"relative",width:c,height:c},children:[(0,b.jsxs)("svg",{width:c,height:c,style:{position:"absolute",inset:0,transform:"rotate(-90deg)"},children:[(0,b.jsx)("circle",{cx:c/2,cy:c/2,r:f,fill:"none",stroke:"rgba(255,255,255,0.08)",strokeWidth:5}),(0,b.jsx)("circle",{cx:c/2,cy:c/2,r:f,fill:"none",stroke:d,strokeWidth:5,strokeLinecap:"round",strokeDasharray:`${g*Math.min(1,a)} ${g}`,style:{transition:"stroke-dasharray 0.5s ease"}})]}),(0,b.jsx)("div",{style:{position:"absolute",inset:9,display:"flex",alignItems:"center",justifyContent:"center"},children:e})]})}function p({recs:a,sentIds:d,added:e,mappedIds:j,reach:k,onSend:s,onUndo:t}){let u=(0,c.useMemo)(()=>(function({recs:a=[],sentIds:b=new Set,added:c=[],mappedIds:d=new Set,reach:e=null}){var f;let j,k,l,m=new Map,n=new Set;for(let b of[...a].sort((a,b)=>(b.priority||0)-(a.priority||0))){if(!b.bridge)continue;let a=`${b.bridge.id}|${b.profile_url||b.id}`;if(n.has(a))continue;n.add(a);let c=m.get(b.bridge.id);c||(c={bridge:b.bridge,people:[]},m.set(b.bridge.id,c)),c.people.push(b)}let o=new Map;for(let a of c){let b=a.unlocked_from_bridge_id;b&&o.set(b,[...o.get(b)||[],a])}let p=[],q=0,r=0;for(let{bridge:a,people:c}of m.values()){let d=c.filter(a=>b.has(a.id)),e=o.get(a.id)||[];r+=d.length,q+=d.reduce((a,b)=>a+(h[b.tier]||2),0),q+=e.reduce((a,b)=>a+(i[b.tier]||5),0);let f=Math.ceil(c.length/5)||1,g=0;for(;g<f-1&&c.slice(5*g,(g+1)*5).every(a=>b.has(a.id));)g++;let j=c.slice(5*g,(g+1)*5),k=j.filter(a=>b.has(a.id)).length,l=k===j.length&&g===f-1;p.push({bridge:a,people:c,stage:g+1,stages:f,targets:j,done:k,progress:j.length?k/j.length:1,complete:l,sent:d.length,added:e,value:j.filter(a=>!b.has(a.id)).reduce((a,b)=>a+(b.priority||0),0),open:{S:j.filter(a=>"S"===a.tier&&!b.has(a.id)).length,A:j.filter(a=>"A"===a.tier&&!b.has(a.id)).length}})}p.sort((a,b)=>a.complete-b.complete||(b.progress>0&&b.progress<1)-(a.progress>0&&a.progress<1)||b.progress-a.progress||b.value-a.value);let s=p.filter(a=>!a.complete).flatMap(a=>a.targets.filter(a=>!b.has(a.id)).map(b=>({person:b,cluster:a,score:(b.priority||0)*(1+.6*a.progress)}))).sort((a,b)=>b.score-a.score),t=new Set,u=[];for(let a of s){let b=a.person.profile_url||a.person.id;if(!t.has(b)&&(t.add(b),u.push(a),3===u.length))break}let v=c.filter(a=>a.unlocked_from_bridge_id).length;return{clusters:p,nextMoves:u,points:q,level:(k=((j=Math.floor(Math.sqrt(Math.max(0,f=q)/40))+1)-1)**2*40,l=j**2*40,{level:j,floor:k,next:l,progress:(f-k)/(l-k)}),sentTotal:r,addedTotal:v,newDoors:c.filter(a=>a.unlocked_from_bridge_id&&"todo"===(0,g.circleState)(a,e||{scanned:d,hidden:new Set})),clearedStages:p.reduce((a,b)=>a+(b.stage-1)+ +!!b.complete,0)}})({recs:a,sentIds:d,added:e,mappedIds:j,reach:k}),[a,d,e,j,k]),[v,w]=(0,c.useState)(null),[x,y]=(0,c.useState)(null),{level:z}=u;async function A(a,b){await s(a);let c=b.done+1,d=String(b.bridge.name||"").split(/[\s,]+/)[0];y(c>=b.targets.length?`+${h[a.tier]||2} \xb7 Stage ${b.stage} of ${d}'s circle cleared — the next 5 are up`:`+${h[a.tier]||2} \xb7 ${d}'s circle ${c}/${b.targets.length}`),setTimeout(()=>y(null),3500)}let B=u.clusters.find(a=>a.bridge.id===v);return(0,b.jsxs)("div",{style:{maxWidth:1100,margin:"0 auto",padding:"16px 20px 60px"},children:[(0,b.jsxs)("div",{style:{display:"flex",gap:16,alignItems:"center",flexWrap:"wrap",padding:16,borderRadius:12,border:m,background:"linear-gradient(135deg, rgba(255,107,53,0.10), rgba(155,89,182,0.08))"},children:[(0,b.jsxs)("div",{style:{width:64,height:64,borderRadius:16,background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:800},children:"LEVEL"}),(0,b.jsx)("div",{style:{fontSize:26,fontWeight:900,lineHeight:1},children:z.level})]}),(0,b.jsxs)("div",{style:{flex:1,minWidth:220},children:[(0,b.jsxs)("div",{style:{fontSize:13,color:"#dfe6e9"},children:[(0,b.jsx)("b",{children:u.points})," points · ",(0,b.jsx)("b",{children:z.next-u.points})," to level ",z.level+1]}),(0,b.jsx)("div",{style:{height:8,borderRadius:4,background:"rgba(255,255,255,0.08)",marginTop:6,overflow:"hidden"},children:(0,b.jsx)("div",{style:{height:"100%",width:`${Math.round(100*z.progress)}%`,background:"linear-gradient(90deg, #FFD700, #FF6B35)",transition:"width 0.5s"}})}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#8b9a9a",marginTop:6},children:"Points come from invites you send and people who accept — not from browsing."})]}),[[u.sentTotal,"invites sent"],[u.addedTotal,"people added"],[u.clearedStages,"stages cleared"]].map(([a,c])=>(0,b.jsxs)("div",{style:{textAlign:"center",minWidth:80},children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:900},children:a}),(0,b.jsx)("div",{style:{fontSize:11,color:"#8b9a9a"},children:c})]},c))]}),u.newDoors.length>0&&(0,b.jsxs)("div",{style:{marginTop:12,padding:"10px 14px",borderRadius:10,border:"1px solid rgba(0,255,136,0.3)",background:"rgba(0,255,136,0.06)",fontSize:13},children:["🚪 ",(0,b.jsxs)("b",{children:[u.newDoors.length," new ",1===u.newDoors.length?"door":"doors",":"]})," people you added through a circle, whose own circle isn’t mapped yet. That’s the next degree. ",(0,b.jsx)(f.default,{href:"/setup",style:{color:"#00ff88"},children:"Map them on the Scan page →"})]}),u.nextMoves.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h3",{style:{margin:"22px 0 10px",fontSize:15},children:"Next best moves"}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(300px, 1fr))",gap:12},children:u.nextMoves.map(({person:a,cluster:c},d)=>(0,b.jsxs)("div",{style:{padding:14,borderRadius:12,border:`1px solid ${l[a.tier]}55`,background:"rgba(255,255,255,0.03)",position:"relative"},children:[(0,b.jsxs)("div",{style:{position:"absolute",top:10,right:12,fontSize:11,fontWeight:800,color:"#FF6B35"},children:["#",d+1]}),(0,b.jsxs)("div",{style:{display:"flex",gap:10,alignItems:"center"},children:[(0,b.jsx)(n,{person:a,size:44}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontWeight:700,fontSize:14},children:a.name}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#8b9a9a",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:220},children:a.headline})]})]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#aab7b7",margin:"10px 0"},children:["via ",(0,b.jsx)("b",{style:{color:l[c.bridge.tier]},children:c.bridge.name})," · their circle ",c.done,"/",c.targets.length," this stage"]}),(0,b.jsxs)("div",{style:{display:"flex",gap:8},children:[a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:r,children:"Open on LinkedIn"}),(0,b.jsxs)("button",{onClick:()=>A(a,c),style:q,children:["I sent an invite · +",h[a.tier]||2]})]})]},a.id))})]}),(0,b.jsx)("h3",{style:{margin:"26px 0 4px",fontSize:15},children:"Circles to work through"}),(0,b.jsxs)("div",{style:{fontSize:12,color:"#8b9a9a",marginBottom:12},children:["Each is one of your connections and the best people they know, ",5," at a time. Fill the ring to clear a stage."]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(190px, 1fr))",gap:12},children:u.clusters.map(a=>{let c=v===a.bridge.id;return(0,b.jsxs)("button",{onClick:()=>w(c?null:a.bridge.id),style:{padding:12,borderRadius:12,cursor:"pointer",textAlign:"center",color:"#fff",border:c?"1px solid #FF6B35":m,background:a.complete?"rgba(0,255,136,0.06)":"rgba(255,255,255,0.03)",display:"flex",flexDirection:"column",alignItems:"center",gap:6},children:[(0,b.jsx)(o,{progress:a.progress,color:a.complete?"#00ff88":"#FF6B35",children:(0,b.jsx)(n,{person:a.bridge,size:60})}),(0,b.jsx)("div",{style:{fontWeight:700,fontSize:13,maxWidth:170,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.bridge.name}),(0,b.jsx)("div",{style:{fontSize:11,color:a.complete?"#00ff88":"#aab7b7"},children:a.complete?"Circle cleared":`Stage ${a.stage} of ${a.stages} \xb7 ${a.done}/${a.targets.length}`}),(0,b.jsx)("div",{style:{display:"flex",gap:4},children:a.targets.map(a=>(0,b.jsx)("span",{title:a.name,style:{width:12,height:12,borderRadius:"50%",border:`2px solid ${l[a.tier]||"#667"}`,background:d.has(a.id)?l[a.tier]||"#667":"transparent"}},a.id))}),(0,b.jsxs)("div",{style:{fontSize:10.5,color:"#778"},children:[a.open.S?`${a.open.S} S \xb7 `:"",a.open.A?`${a.open.A} A \xb7 `:"",a.people.length," worth adding",a.added.length?` \xb7 ★ ${a.added.length} added`:""]})]},a.bridge.id)})}),B&&(0,b.jsxs)("div",{style:{marginTop:14,padding:16,borderRadius:12,border:"1px solid rgba(255,107,53,0.4)",background:"rgba(255,107,53,0.05)"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:10},children:[(0,b.jsx)(n,{person:B.bridge,size:40}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{fontWeight:800},children:[B.bridge.name,"’s circle · stage ",B.stage," of ",B.stages]}),(0,b.jsxs)("div",{style:{fontSize:12,color:"#aab7b7"},children:["Ask ",B.bridge.name?.split(" ")[0]," for an intro, or invite them directly. Mark each one when it’s sent."]})]})]}),B.targets.map(a=>{let c=d.has(a.id);return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 0",borderTop:"1px solid rgba(255,255,255,0.05)"},children:[(0,b.jsx)(n,{person:a,size:34,ring:c?"#00ff88":void 0}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsxs)("div",{style:{fontWeight:600,fontSize:13},children:[a.name," ",(0,b.jsx)("span",{style:{color:l[a.tier],fontSize:11},children:a.tier})]}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#8b9a9a",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline})]}),a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:r,children:"LinkedIn"}),c?(0,b.jsx)("button",{onClick:()=>t(a),style:{...r,color:"#00ff88"},children:"Sent ✓ (undo)"}):(0,b.jsxs)("button",{onClick:()=>A(a,B),style:q,children:["Sent · +",h[a.tier]||2]})]},a.id)}),B.added.length>0&&(0,b.jsxs)("div",{style:{marginTop:10,fontSize:12,color:"#00ff88"},children:["★ Added from this circle: ",B.added.map(a=>a.name).join(", ")]})]}),x&&(0,b.jsx)("div",{role:"status",style:{position:"fixed",bottom:24,left:"50%",transform:"translateX(-50%)",padding:"10px 18px",borderRadius:24,background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000",fontWeight:800,fontSize:13,boxShadow:"0 8px 30px rgba(0,0,0,0.5)",zIndex:50},children:x})]})}let q={padding:"7px 12px",borderRadius:8,border:"none",cursor:"pointer",fontWeight:800,fontSize:12,background:"linear-gradient(135deg, #FF6B35, #FFD700)",color:"#000"},r={padding:"7px 12px",borderRadius:8,border:m,cursor:"pointer",fontWeight:600,fontSize:12,background:"rgba(255,255,255,0.05)",color:"#dfe6e9",textDecoration:"none"};var s=a.i(36839),t=a.i(75857),u=a.i(30889),v=a.i(76892),w=a.i(24475),x=a.i(90231),y=a.i(37732);let z={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"};function A(){let{userId:a,userProfile:h}=(0,t.useUser)(),i=h?.sectors||[],[j,l]=(0,c.useState)([]),[m,n]=(0,c.useState)(!0),[o,q]=(0,c.useState)("all"),[r,s]=(0,c.useState)(new Set),A=(0,v.default)(),[B,C]=(0,c.useState)([]),[D,E]=(0,c.useState)({}),[F,G]=(0,c.useState)("quest"),[H,I]=(0,c.useState)([]),[J,K]=(0,c.useState)(()=>new Set),[L,M]=(0,c.useState)(null),[N,O]=(0,c.useState)(null),[P,Q]=(0,c.useState)(()=>"bridge");(0,c.useEffect)(()=>{},[]),(0,c.useEffect)(()=>{!e.IS_DEMO&&a&&b();async function b(){let[b,c,e]=await Promise.all([(0,d.loadNetwork)(a),fetch(`/api/outreach?userId=${a}`).then(a=>a.json()).catch(()=>({pending:[]})),(0,y.loadScanNotes)()]),f=b.degree1,h=b.degree2;I(f.filter(a=>a.unlocked_from_bridge_id)),K(new Set(h.map(a=>a.source_connection_id).filter(Boolean))),M((0,g.reachIndex)(f,h,e));let j=new Set(f.map(a=>a.profile_url)),k={};f.forEach(a=>{k[a.id]=a}),C(c.pending||[]),E(k),l(h.filter(a=>("S"===a.tier||"A"===a.tier||"B"===a.tier)&&!j.has(a.profile_url)).map(a=>{let b,c,d=k[a.source_connection_id],e=(b=parseFloat(a.power_score)||0,c=(a.headline||"").toLowerCase(),(0,u.rowCompanyScore)(a)>=u.TOP_COMPANY&&(b+=1),(i||[]).forEach(a=>{c.includes(a.toLowerCase())&&(b+=.5)}),"S"===a.tier?b*=1.5:"A"===a.tier&&(b*=1.2),b),f="S"===a.tier?50:"A"===a.tier?25:10;return{...a,bridge:d,priority:e,xp:f}}).sort((a,b)=>b.priority-a.priority)),n(!1)}},[a]);let R=(0,c.useMemo)(()=>new Set([...B,...j].filter(a=>(0,w.hasRequest)(a,A)).map(a=>a.id)),[B,j,A]),S=(0,c.useMemo)(()=>{let a=new Set,b=[];for(let c of[...B,...j]){let d=(0,x.keyFor)(c);!a.has(d)&&(0,w.hasRequest)(c,A)&&(a.add(d),b.push({...c,bridge:D[c.source_connection_id]||c.bridge||null}))}return b},[B,j,A,D]);if(e.IS_DEMO)return(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:10,textAlign:"center",padding:24},children:[(0,b.jsx)("h2",{style:{margin:0,fontSize:18,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("div",{style:{fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(f.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]});let T="all"===o?j:j.filter(a=>a.tier===o);N&&(T=T.filter(a=>a.bridge?.id===N));let U={S:0,A:0,B:0};j.forEach(a=>{void 0!==U[a.tier]&&U[a.tier]++});let V={};T.forEach(a=>{let b;V[b="bridge"===P?a.bridge?.id||"unknown":"company"===P?(a.company||"Unknown").trim()||"Unknown":a.tier]||(V[b]=[]),V[b].push(a)});let W={S:0,A:1,B:2},X=Object.entries(V).sort((a,b)=>{if("tier"===P)return(W[a[0]]||9)-(W[b[0]]||9);if("bridge"===P){let c=a[1][0]?.bridge,d=b[1][0]?.bridge,e=W[c?.tier]??9,f=W[d?.tier]??9;if(e!==f)return e-f}return b[1].length-a[1].length});function Y(a){s(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})}return m?(0,b.jsx)("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",background:"#0a0a1a",color:"#fff"},children:"Loading..."}):(0,b.jsxs)("div",{style:{height:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,b.jsxs)("header",{style:{padding:"14px 24px",borderBottom:"1px solid rgba(255,255,255,0.1)",flexShrink:0},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:10},children:[(0,b.jsxs)(f.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)"},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Map"]}),(0,b.jsx)("h1",{style:{fontSize:20,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FF6B35, #FFD700)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Outlink"}),(0,b.jsxs)("div",{style:{display:"flex",gap:2,background:"rgba(255,255,255,0.06)",borderRadius:6,padding:2},children:[(0,b.jsx)("button",{onClick:()=>G("quest"),style:{padding:"5px 12px",borderRadius:4,border:"none",fontSize:11,fontWeight:700,cursor:"pointer",background:"quest"===F?"linear-gradient(135deg, #FFD700, #FF6B35)":"transparent",color:"quest"===F?"#000":"#FFD700"},children:"Circles"}),(0,b.jsxs)("button",{onClick:()=>G("recs"),style:{padding:"5px 12px",borderRadius:4,border:"none",fontSize:11,fontWeight:600,cursor:"pointer",background:"recs"===F?"#fff":"transparent",color:"recs"===F?"#000":"#888"},children:["To Add (",j.length,")"]}),(0,b.jsxs)("button",{onClick:()=>G("pending"),style:{padding:"5px 12px",borderRadius:4,border:"none",fontSize:11,fontWeight:600,cursor:"pointer",background:"pending"===F?"linear-gradient(135deg, #FF6B35, #FFD700)":"transparent",color:"pending"===F?"#000":"#FF6B35"},children:["Pending (",S.length,")"]})]}),(0,b.jsx)("div",{style:{marginLeft:"auto",display:"flex",gap:6},children:"recs"===F&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("button",{onClick:()=>Q("tier"),style:{padding:"4px 10px",borderRadius:4,border:"none",fontSize:10,fontWeight:600,cursor:"pointer",background:"tier"===P?"rgba(255,255,255,0.15)":"rgba(255,255,255,0.05)",color:"tier"===P?"#fff":"#666"},children:"By Tier"}),(0,b.jsx)("button",{onClick:()=>Q("bridge"),style:{padding:"4px 10px",borderRadius:4,border:"none",fontSize:10,fontWeight:600,cursor:"pointer",background:"bridge"===P?"rgba(255,255,255,0.15)":"rgba(255,255,255,0.05)",color:"bridge"===P?"#fff":"#666"},children:"By Bridge"}),(0,b.jsx)("button",{onClick:()=>Q("company"),style:{padding:"4px 10px",borderRadius:4,border:"none",fontSize:10,fontWeight:600,cursor:"pointer",background:"company"===P?"rgba(255,255,255,0.15)":"rgba(255,255,255,0.05)",color:"company"===P?"#fff":"#666"},children:"By Company"})]})})]}),(0,b.jsx)("div",{style:{display:"quest"===F?"none":"flex",gap:6},children:[{k:"all",l:`All (${j.length})`},{k:"S",l:`S (${U.S})`,c:z.S},{k:"A",l:`A (${U.A})`,c:z.A},{k:"B",l:`B (${U.B})`,c:z.B}].map(a=>(0,b.jsx)("button",{onClick:()=>q(a.k),style:{padding:"4px 12px",borderRadius:16,border:"none",fontSize:11,fontWeight:600,cursor:"pointer",background:o===a.k?a.c||"#fff":"rgba(255,255,255,0.06)",color:o===a.k?"#000":a.c||"#888"},children:a.l},a.k))})]}),(0,b.jsx)("div",{id:"scan-bar-slot"}),"recs"===F&&r.size>0&&(0,b.jsxs)("div",{style:{padding:"10px 24px",background:"rgba(255,215,0,0.08)",borderBottom:"1px solid rgba(255,215,0,0.2)",display:"flex",alignItems:"center",gap:12,flexShrink:0},children:[(0,b.jsxs)("span",{style:{fontSize:12,color:"#FFD700",fontWeight:600},children:[r.size," selected"]}),(0,b.jsxs)("button",{onClick:function(){let a=T.filter(a=>r.has(a.id));if(0===a.length)return;if(1===a.length)return void window.open(a[0].profile_url,"_blank");let b=new Blob([`<!DOCTYPE html><html><head><title>Outlink — ${a.length} profiles</title>
|
|
2
2
|
<style>body{background:#0a0a1a;color:#fff;font-family:-apple-system,sans-serif;padding:24px;margin:0}
|
|
3
3
|
h2{color:#FFD700;margin-bottom:4px}p{color:#888;font-size:13px;margin-bottom:16px}
|
|
4
4
|
.btn{display:block;padding:12px 16px;margin-bottom:6px;background:rgba(255,255,255,0.06);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[94264,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(36839),f=a.i(16874),g=a.i(803),h=a.i(79663),i=a.i(59534),j=a.i(54919),k=a.i(30889),l=a.i(76939);a.i(42510);var m=a.i(31483);let n={lean:"Lean",strong:"Strong"},o=["wheel","touchstart","keydown","pointerdown"],p={1:"1st",2:"2nd",3:"3rd"},q=(a,b,c=`${b}s`)=>`${a.toLocaleString()} ${1===a?b:c}`,r=i.DIRECTORY.filter(a=>"function"===a.kind).map(a=>a.label);function s(a,b,c){let[d,e]=c?["moved","moved"]:["moves","move"];if(!a&&!b)return c?"No one changed tier.":"No one changes tier.";let f=a=>1===a?d:e;return a&&b?`${q(a,"person","people")} ${f(a)} up a tier and ${b.toLocaleString()} ${f(b)} down.`:a?`${q(a,"person","people")} ${f(a)} up a tier.`:`${q(b,"person","people")} ${f(b)} down a tier.`}function t({onSaved:a}={}){let[d,e]=(0,c.useState)(null),[i,l]=(0,c.useState)(null),[p,v]=(0,c.useState)(null),[w,x]=(0,c.useState)(!1),[y,z]=(0,c.useState)(null),[A,B]=(0,c.useState)(null),[C,D]=(0,c.useState)({loading:!0}),[E]=(0,c.useState)(()=>null),F=(0,c.useRef)(null),G=(0,c.useRef)(0),H=(0,c.useRef)(!1);function I(a){l(a),z(null),clearTimeout(F.current);let b=++G.current;if((0,h.sameFocus)(a,d))return void v(null);let c=(0,h.focusFingerprint)(a);v({key:c,loading:!0}),F.current=setTimeout(async()=>{try{let d=await fetch("/api/settings/sector-preview",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sectorFocus:a})}),e=await d.json();if(b!==G.current)return;v(d.ok?{key:c,...e}:{key:c,error:e.error||"Could not work out what would change."})}catch{b===G.current&&v({key:c,error:"Could not reach the app to work out what would change."})}},250)}async function J(){var b,c;let d;x(!0),z(null),clearTimeout(F.current),G.current++;let f=await (0,m.saveSettings)({sectorFocus:i});(x(!1),f.settings&&(e(f.settings.sectorFocus),l(f.settings.sectorFocus),v(null)),f.error)?z({tone:"bad",text:f.error}):(z({tone:"ok",text:(b=f.settings.sectorFocus,c=f.effects?.sectorFocus,d=b.sectors.length?`Saved: ${b.sectors.map(a=>(0,j.sectorByKey)(a).label).join(" · ")} (${n[b.strength].toLowerCase()}).`:"Saved: no sector.",c?c.scored?`${d} Rescored your network (${q(c.people??c.scored,"person","people")}). ${s(c.up,c.down,!0)}`:`${d} There's no scanned network yet; it will apply when you scan.`:d)}),a?.())}(0,c.useEffect)(()=>{let a=!1;return fetch("/api/settings").then(a=>a.json().then(b=>a.ok?b:Promise.reject(Error(b.error||"Could not load your sector.")))).then(b=>{if(a)return;let c=b.settings?.sectorFocus||{sectors:[],strength:"lean"};e(c),l(c)}).catch(b=>{a||B(b.message)}),fetch("/api/settings/sector-suggestions").then(a=>a.json().then(b=>a.ok?b:Promise.reject(Error(b.error||"Could not load suggestions.")))).then(b=>{a||D({scored:b.scored,list:b.suggestions||[]})}).catch(b=>{a||D({error:b.message})}),()=>{a=!0,clearTimeout(F.current)}},[]),(0,c.useEffect)(()=>{if(H.current||!i&&!A)return;H.current=!0;let a=document.getElementById("sector");if("#sector"!==window.location.hash||!a)return;let b=()=>a.scrollIntoView({block:"start"});b();let c=new ResizeObserver(b);c.observe(document.body);let d=()=>{for(let a of(c.disconnect(),clearTimeout(e),o))window.removeEventListener(a,d,!0)},e=setTimeout(d,2e3);for(let a of o)window.addEventListener(a,d,{capture:!0,passive:!0});return d},[i,A]);let K=i&&d&&!(0,h.sameFocus)(i,d);return(0,b.jsxs)(f.Section,{id:"sector",title:"Your sector",intro:"Pick up to three sectors you work in. Companies in them count for more when your network is scored, so the people there rank higher.",children:[A&&(0,b.jsx)(f.Status,{tone:"bad",children:A}),!i&&!A&&(0,b.jsx)(f.Body,{children:"Loading…"}),i&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g.default,{sectors:i.sectors,onChange:a=>I({...i,sectors:a}),disabled:w,suggest:C}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:8,marginTop:14},children:[(0,b.jsx)("span",{style:{fontSize:13,color:"#8b9a9a"},children:"How much:"}),Object.keys(k.SECTOR_BONUS).map(a=>(0,b.jsxs)("button",{type:"button","aria-pressed":i.strength===a,disabled:w,onClick:()=>I({...i,strength:a}),style:{padding:"5px 12px",borderRadius:7,fontSize:12.5,fontWeight:600,cursor:"pointer",color:i.strength===a?"#fff":"#8b9a9a",background:i.strength===a?"rgba(52,152,219,0.25)":"transparent",border:f.LINE},children:[n[a]," · +",k.SECTOR_BONUS[a]]},a))]}),(0,b.jsx)(f.Body,{style:{fontSize:12.5},children:"Each company in your sectors gets +1 (lean) or +2 (strong) on its score out of 10, never above 10. A company in more than one of your picks still gets it once."}),(0,b.jsx)(u,{preview:K?p:null,draft:i}),(0,b.jsxs)("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginTop:14},children:[(0,b.jsx)(f.Btn,{primary:!0,onClick:J,disabled:!K||w,children:w?"Saving and rescoring…":"Save"}),K&&!w&&(0,b.jsx)(f.Btn,{onClick:()=>I(d),children:"Cancel"}),!K&&i.sectors.length>0&&!w&&(0,b.jsx)(f.Btn,{onClick:()=>I({...i,sectors:[]}),children:"Turn off"})]}),y&&(0,b.jsx)(f.Status,{tone:y.tone,children:y.text}),(0,b.jsxs)("ul",{style:{margin:"16px 0 0",paddingLeft:18,fontSize:12.5,color:"#778",lineHeight:1.7},children:[(0,b.jsx)("li",{children:"Tiers rank how reachable someone is through your network, not the people themselves."}),(0,b.jsxs)("li",{children:["A company score you set on ",(0,b.jsx)("a",{href:"#companies",style:{color:"#3498DB"},children:"Company scores"}),", below, always wins. Your sector never changes it."]}),(0,b.jsx)("li",{children:"If you scan highest tier first, people in your sectors come up sooner. Scanning newest first, the default, doesn’t go by tier."}),(0,b.jsx)("li",{children:"An industry includes its sectors. It counts a company in any of its sectors (Healthcare & Biotech counts a practice that is only in Dental), and a company whose industry the app’s list of well-known companies or the company’s own name gives (Meridian Health). Not one known only from its people’s job titles: a recruiter at Acme Widgets doesn’t make Acme a consulting firm."}),(0,b.jsx)("li",{children:"A narrower sector counts a company when its name says so (Smith Family Dental), it’s a well-known company in that sector, or at least half of the people you know there say so in their headlines (dentist, DDS, orthodontist). The words are a fixed list that comes with the app, the same on every computer. Nothing is sent anywhere."}),(0,b.jsxs)("li",{children:["Some sectors are work every kind of company has: ",r.length>1?`${r.slice(0,-1).join(", ")} and ${r.at(-1)}`:r.join(""),". For those a job title doesn’t count, since a recruiter at Acme Widgets doesn’t make it a recruiting firm. The company’s name does (Acme Staffing, Smith CPA), and so does a kind of firm in a headline (staffing agency, law firm, SaaS)."]}),E&&(0,b.jsxs)("li",{style:{color:"#FFD700"},children:["sample"===E?"The sample network":"The CSV import"," open in this window isn’t changed by this, and isn’t counted in the suggestions. Your sector applies to networks you’ve scanned."]})]})]})]})}function u({preview:a,draft:c}){if(!a||a.key!==(0,h.focusFingerprint)(c))return null;let d={marginTop:12,padding:"10px 14px",borderRadius:8,fontSize:13,lineHeight:1.6,border:f.LINE,background:"rgba(255,255,255,0.03)",color:"#cfd8d8"};if(a.loading)return(0,b.jsx)("div",{style:d,"aria-live":"polite",children:"Working out what would change…"});if(a.error)return(0,b.jsx)(f.Status,{tone:"bad",children:a.error});if(!a.scored)return(0,b.jsx)("div",{style:d,"aria-live":"polite",children:"There’s no scanned network yet, so nothing changes now. Your choice applies once you scan."});let e=(a,b)=>`${q(a,"company","companies")} ${1===a?"scores":"score"} ${b}`,g=[a.companiesUp&&e(a.companiesUp,"higher"),a.companiesDown&&e(a.companiesDown,"lower")].filter(Boolean).join(" and ");return(0,b.jsxs)("div",{style:d,"aria-live":"polite",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("b",{style:{color:"#fff"},children:"If you save:"})," ",g?`${g}.`:"No company changes score."," ",s(a.up,a.down,!1)]}),a.examples?.length>0&&(0,b.jsx)("div",{style:{marginTop:6,display:"flex",flexWrap:"wrap",gap:"4px 12px",fontSize:12.5},children:a.examples.map((a,c)=>(0,b.jsxs)("span",{title:a.company||void 0,children:[a.name,a.degree?(0,b.jsxs)("span",{style:{color:"#667"},children:[" (",p[a.degree]||`${a.degree}th`,")"]}):null," ",(0,b.jsx)("b",{style:{color:l.TIER_COLORS_CLASSIC[a.from]||"#889"},children:a.from||"–"})," → ",(0,b.jsx)("b",{style:{color:l.TIER_COLORS_CLASSIC[a.to]||"#889"},children:a.to})]},c))}),a.companyExamples?.length>0&&(0,b.jsx)("div",{style:{marginTop:4,fontSize:12,color:"#8b9a9a"},children:a.companyExamples.slice(0,3).map(a=>`${a.name} ${a.from} → ${a.to}`).join(" · ")})]})}let v=a=>`${Math.round(100*a)}%`,[w,x,y]=k.CURVE.map(([,a])=>a),z=[{key:"curve",label:"On your network's curve",note:`Your top ${v(w)} are S, the next ${v(x-w)} A and the next ${v(y-x)} B, so any network has a top, even one full of companies the app doesn't know. It only lifts: nobody drops a tier because their network is strong, and nobody under ${k.CURVE_FLOOR} is lifted into S or A.`},{key:"fixed",label:"On the fixed scale",note:"The same lines for everyone: S from 7.5, A from 5.5, B from 4, C from 2.5. Easy to compare from one network to another, but a network outside well-known companies has almost nobody in S or A."}];function A({onSaved:a}={}){let[d,e]=(0,c.useState)(null),[g,h]=(0,c.useState)(!1),[i,j]=(0,c.useState)(null),[k,l]=(0,c.useState)(null),[n]=(0,c.useState)(()=>null);async function o(b){if(g||b===d)return;h(!0),j(null);let{settings:c,effects:f,error:i}=await (0,m.saveSettings)({tierScale:b});if(c&&e(c.tierScale),i)j({tone:"bad",text:i});else{let b,c=f?.tierScale;j({tone:"ok",text:c?`Saved. ${b=c.moved,`${b.toLocaleString()} ${1===b?"person":"people"}`} changed tier.`:"Saved."}),a?.()}h(!1)}return(0,c.useEffect)(()=>{let a=!1;return fetch("/api/settings").then(a=>a.json().then(b=>a.ok?b:Promise.reject(Error(b.error||"Could not load how tiers are graded.")))).then(b=>{a||e(b.settings?.tierScale||"curve")}).catch(b=>{a||l(b.message)}),()=>{a=!0}},[]),(0,b.jsxs)(f.Section,{id:"tiers",title:"Tiers",intro:"How the S to D rings are drawn. A tier says where someone sits in your network, not what they're worth.",children:[k&&(0,b.jsx)(f.Status,{tone:"bad",children:k}),d&&(0,b.jsx)("div",{role:"radiogroup","aria-label":"How tiers are graded",style:{display:"grid",gap:8},children:z.map(a=>{let c=d===a.key;return(0,b.jsxs)("button",{type:"button",role:"radio","aria-checked":c,disabled:g,onClick:()=>o(a.key),style:{textAlign:"left",padding:"12px 14px",borderRadius:8,cursor:g?"wait":c?"default":"pointer",color:"#fff",background:c?"rgba(155,89,182,0.14)":"rgba(255,255,255,0.03)",border:c?"1px solid rgba(155,89,182,0.6)":f.LINE},children:[(0,b.jsxs)("div",{style:{fontSize:14,fontWeight:650},children:[c?"● ":"○ ",a.label,"curve"===a.key?" (recommended)":""]}),(0,b.jsx)(f.Body,{style:{marginTop:4},children:a.note})]},a.key)})}),n&&(0,b.jsxs)(f.Body,{style:{color:"#FFD700",marginTop:10},children:["sample"===n?"The sample network open in this window keeps its own tiers (they’re the same either way).":"The CSV import open in this window is always graded on its own curve."," ","This applies to networks you’ve scanned."]}),i&&(0,b.jsx)(f.Status,{tone:i.tone,children:i.text})]})}var B=a.i(75857),C=a.i(23310),D=a.i(45889);let E={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},F=a=>`${Math.round(100*a)}%`;function G(){let{userId:a}=(0,B.useUser)(),[e,g]=(0,c.useState)(null),[h,i]=(0,c.useState)(!1);(0,c.useEffect)(()=>{if(!a)return;let b=!0;return(0,C.loadNetwork)(a).then(a=>{b&&g(function({degree1:a=[],degree2:b=[],ties:c=0}={}){let d=new Map;for(let a of b)a?.source_connection_id!=null&&d.set(a.source_connection_id,(d.get(a.source_connection_id)||0)+1);let e=(0,D.exclusiveReach)(b,a),f=a.length,g=Math.max(0,Number(c)||0),h=f?f-2*g/f:0,i=new Map(a.map(a=>[a.id,a])),j=[...e.entries()].sort((a,b)=>b[1].reach-a[1].reach||String(a[0]).localeCompare(String(b[0]))).slice(0,5).map(([a,b])=>{let c=i.get(a)||{};return{id:a,name:c.name||"",company:c.company||"",tier:c.tier||"",circle:d.get(a)||0,only:b.only,share:b.total?b.only/b.total:0}});return{circles:d.size,early:d.size<5,twoWays:(0,D.redundancy)(b,a),effective:{n:f,ties:g,size:h,efficiency:f?h/f:0},top:j}}(a))}).catch(()=>{b&&i(!0)}),()=>{b=!1}},[a]);let j={padding:"12px 14px",borderRadius:8,border:f.LINE,background:"rgba(255,255,255,0.03)"};return(0,b.jsxs)("section",{id:"health",style:{marginTop:20},children:[(0,b.jsx)("h2",{style:{fontSize:16,margin:"0 0 6px"},children:"Network health"}),h&&(0,b.jsx)(f.Body,{children:"Couldn’t read your network just now."}),!h&&!e&&(0,b.jsx)(f.Body,{children:"Reading your network…"}),e&&0===e.circles&&(0,b.jsx)(f.Body,{children:"Scan a few of your connections’ circles (the Scan page, step 4) and this shows how your network holds together."}),e&&e.circles>0&&(0,b.jsxs)(b.Fragment,{children:[e.early&&(0,b.jsxs)("div",{style:{fontSize:12.5,color:"#FFD700",margin:"4px 0 10px"},children:["An early estimate: ",e.circles," ",1===e.circles?"circle":"circles"," scanned. These get sharper as you scan more."]}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:10},children:[(0,b.jsxs)("div",{style:j,children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700},children:F(e.twoWays)}),(0,b.jsx)("div",{style:{fontSize:12.5,color:"#b8c4c4"},children:"of your 2nd degree you reach two or more ways"}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#778",marginTop:4},children:"Higher is safer: lose one connection and they’re still reachable."})]}),(0,b.jsxs)("div",{style:j,children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700},children:Math.round(e.effective.size).toLocaleString()}),(0,b.jsxs)("div",{style:{fontSize:12.5,color:"#b8c4c4"},children:["effective reach of your ",e.effective.n.toLocaleString()," connections (",F(e.effective.efficiency)," non-overlapping)"]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#778",marginTop:4},children:["From ",e.effective.ties.toLocaleString()," ",1===e.effective.ties?"tie":"ties"," between your connections seen in circle scans so far, so it can only come down as you scan more."]})]})]}),e.top.length>0&&(0,b.jsxs)("div",{style:{...j,marginTop:10,padding:0},children:[(0,b.jsx)("div",{style:{padding:"10px 14px",fontSize:12.5,color:"#b8c4c4",borderBottom:f.LINE},children:"Your connections who reach the most people no one else does"}),e.top.map((a,c)=>(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 14px",borderBottom:c<e.top.length-1?"1px solid rgba(255,255,255,0.04)":"none",fontSize:13},children:[(0,b.jsxs)("span",{style:{width:22,color:"#778"},children:["#",c+1]}),(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:E[a.tier]||"#667",flexShrink:0}}),(0,b.jsxs)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[(0,b.jsx)("b",{children:a.name}),a.company?(0,b.jsxs)("span",{style:{color:"#8b9a9a"},children:[" · ",a.company]}):null]}),(0,b.jsxs)("span",{style:{color:"#b8c4c4",whiteSpace:"nowrap"},children:[a.circle.toLocaleString()," in circle"]}),(0,b.jsxs)("span",{style:{color:"#00ff88",whiteSpace:"nowrap"},children:[a.only.toLocaleString()," only them (",F(a.share),")"]}),(0,b.jsx)(d.default,{href:`/?chain=${encodeURIComponent(a.id)}`,style:{color:"#3498DB",textDecoration:"none",whiteSpace:"nowrap"},children:"Explore →"})]},a.id))]})]})]})}var H=a.i(90017),I=a.i(58834);let J={color:"#3498DB",textDecoration:"none",fontWeight:600};function K(){let[a,e]=(0,c.useState)(0),g=()=>e(a=>a+1);return I.IS_DEMO?(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,textAlign:"center",padding:24,fontFamily:f.FONT},children:[(0,b.jsx)("h2",{style:{margin:0,fontSize:20,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("p",{style:{margin:0,fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(d.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]}):(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:f.FONT},children:[(0,b.jsxs)("header",{style:{padding:"16px 24px",borderBottom:f.LINE,display:"flex",alignItems:"center",gap:16},children:[(0,b.jsx)(d.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:f.LINE},children:"← Back to Map"}),(0,b.jsx)("h1",{style:{fontSize:22,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Scores"})]}),(0,b.jsxs)("main",{style:{maxWidth:980,margin:"0 auto",padding:"8px 24px 64px"},children:[(0,b.jsxs)(f.Body,{style:{marginTop:16},children:["How someone’s power score is worked out, and the three things you can change about it:"," ",(0,b.jsx)("a",{href:"#sector",style:J,children:"your field"}),", ",(0,b.jsx)("a",{href:"#tiers",style:J,children:"how tiers are graded"})," and"," ",(0,b.jsx)("a",{href:"#companies",style:J,children:"any company’s score"}),". A change here rescores everyone."," ","First, ",(0,b.jsx)("a",{href:"#health",style:J,children:"how your network holds together"}),"."]}),(0,b.jsx)(G,{}),(0,b.jsx)(t,{onSaved:g}),(0,b.jsx)(A,{onSaved:g}),(0,b.jsx)("div",{id:"companies",style:{marginTop:28},children:(0,b.jsx)(H.default,{version:a})})]})]})}a.s(["default",0,function(){return(0,b.jsx)(e.default,{children:(0,b.jsx)(K,{})})}],94264)}];
|
|
1
|
+
module.exports=[94264,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(38246),e=a.i(36839),f=a.i(16874),g=a.i(803),h=a.i(79663),i=a.i(59534),j=a.i(54919),k=a.i(30889),l=a.i(76939);a.i(42510);var m=a.i(31483);let n={lean:"Lean",strong:"Strong"},o=["wheel","touchstart","keydown","pointerdown"],p={1:"1st",2:"2nd",3:"3rd"},q=(a,b,c=`${b}s`)=>`${a.toLocaleString()} ${1===a?b:c}`,r=i.DIRECTORY.filter(a=>"function"===a.kind).map(a=>a.label);function s(a,b,c){let[d,e]=c?["moved","moved"]:["moves","move"];if(!a&&!b)return c?"No one changed tier.":"No one changes tier.";let f=a=>1===a?d:e;return a&&b?`${q(a,"person","people")} ${f(a)} up a tier and ${b.toLocaleString()} ${f(b)} down.`:a?`${q(a,"person","people")} ${f(a)} up a tier.`:`${q(b,"person","people")} ${f(b)} down a tier.`}function t({onSaved:a}={}){let[d,e]=(0,c.useState)(null),[i,l]=(0,c.useState)(null),[p,v]=(0,c.useState)(null),[w,x]=(0,c.useState)(!1),[y,z]=(0,c.useState)(null),[A,B]=(0,c.useState)(null),[C,D]=(0,c.useState)({loading:!0}),[E]=(0,c.useState)(()=>null),F=(0,c.useRef)(null),G=(0,c.useRef)(0),H=(0,c.useRef)(!1);function I(a){l(a),z(null),clearTimeout(F.current);let b=++G.current;if((0,h.sameFocus)(a,d))return void v(null);let c=(0,h.focusFingerprint)(a);v({key:c,loading:!0}),F.current=setTimeout(async()=>{try{let d=await fetch("/api/settings/sector-preview",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sectorFocus:a})}),e=await d.json();if(b!==G.current)return;v(d.ok?{key:c,...e}:{key:c,error:e.error||"Could not work out what would change."})}catch{b===G.current&&v({key:c,error:"Could not reach the app to work out what would change."})}},250)}async function J(){var b,c;let d;x(!0),z(null),clearTimeout(F.current),G.current++;let f=await (0,m.saveSettings)({sectorFocus:i});(x(!1),f.settings&&(e(f.settings.sectorFocus),l(f.settings.sectorFocus),v(null)),f.error)?z({tone:"bad",text:f.error}):(z({tone:"ok",text:(b=f.settings.sectorFocus,c=f.effects?.sectorFocus,d=b.sectors.length?`Saved: ${b.sectors.map(a=>(0,j.sectorByKey)(a).label).join(" · ")} (${n[b.strength].toLowerCase()}).`:"Saved: no sector.",c?c.scored?`${d} Rescored your network (${q(c.people??c.scored,"person","people")}). ${s(c.up,c.down,!0)}`:`${d} There's no scanned network yet; it will apply when you scan.`:d)}),a?.())}(0,c.useEffect)(()=>{let a=!1;return fetch("/api/settings").then(a=>a.json().then(b=>a.ok?b:Promise.reject(Error(b.error||"Could not load your sector.")))).then(b=>{if(a)return;let c=b.settings?.sectorFocus||{sectors:[],strength:"lean"};e(c),l(c)}).catch(b=>{a||B(b.message)}),fetch("/api/settings/sector-suggestions").then(a=>a.json().then(b=>a.ok?b:Promise.reject(Error(b.error||"Could not load suggestions.")))).then(b=>{a||D({scored:b.scored,list:b.suggestions||[]})}).catch(b=>{a||D({error:b.message})}),()=>{a=!0,clearTimeout(F.current)}},[]),(0,c.useEffect)(()=>{if(H.current||!i&&!A)return;H.current=!0;let a=document.getElementById("sector");if("#sector"!==window.location.hash||!a)return;let b=()=>a.scrollIntoView({block:"start"});b();let c=new ResizeObserver(b);c.observe(document.body);let d=()=>{for(let a of(c.disconnect(),clearTimeout(e),o))window.removeEventListener(a,d,!0)},e=setTimeout(d,2e3);for(let a of o)window.addEventListener(a,d,{capture:!0,passive:!0});return d},[i,A]);let K=i&&d&&!(0,h.sameFocus)(i,d);return(0,b.jsxs)(f.Section,{id:"sector",title:"Your sector",intro:"Pick up to three sectors you work in. Companies in them count for more when your network is scored, so the people there rank higher.",children:[A&&(0,b.jsx)(f.Status,{tone:"bad",children:A}),!i&&!A&&(0,b.jsx)(f.Body,{children:"Loading…"}),i&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(g.default,{sectors:i.sectors,onChange:a=>I({...i,sectors:a}),disabled:w,suggest:C}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:8,marginTop:14},children:[(0,b.jsx)("span",{style:{fontSize:13,color:"#8b9a9a"},children:"How much:"}),Object.keys(k.SECTOR_BONUS).map(a=>(0,b.jsxs)("button",{type:"button","aria-pressed":i.strength===a,disabled:w,onClick:()=>I({...i,strength:a}),style:{padding:"5px 12px",borderRadius:7,fontSize:12.5,fontWeight:600,cursor:"pointer",color:i.strength===a?"#fff":"#8b9a9a",background:i.strength===a?"rgba(52,152,219,0.25)":"transparent",border:f.LINE},children:[n[a]," · +",k.SECTOR_BONUS[a]]},a))]}),(0,b.jsx)(f.Body,{style:{fontSize:12.5},children:"Each company in your sectors gets +1 (lean) or +2 (strong) on its score out of 10, never above 10. A company in more than one of your picks still gets it once."}),(0,b.jsx)(u,{preview:K?p:null,draft:i}),(0,b.jsxs)("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginTop:14},children:[(0,b.jsx)(f.Btn,{primary:!0,onClick:J,disabled:!K||w,children:w?"Saving and rescoring…":"Save"}),K&&!w&&(0,b.jsx)(f.Btn,{onClick:()=>I(d),children:"Cancel"}),!K&&i.sectors.length>0&&!w&&(0,b.jsx)(f.Btn,{onClick:()=>I({...i,sectors:[]}),children:"Turn off"})]}),y&&(0,b.jsx)(f.Status,{tone:y.tone,children:y.text}),(0,b.jsxs)("ul",{style:{margin:"16px 0 0",paddingLeft:18,fontSize:12.5,color:"#778",lineHeight:1.7},children:[(0,b.jsx)("li",{children:"Tiers rank how reachable someone is through your network, not the people themselves."}),(0,b.jsxs)("li",{children:["A company score you set on ",(0,b.jsx)("a",{href:"#companies",style:{color:"#3498DB"},children:"Company scores"}),", below, always wins. Your sector never changes it."]}),(0,b.jsx)("li",{children:"If you scan highest tier first, people in your sectors come up sooner. Scanning newest first, the default, doesn’t go by tier."}),(0,b.jsx)("li",{children:"An industry includes its sectors. It counts a company in any of its sectors (Healthcare & Biotech counts a practice that is only in Dental), and a company whose industry the app’s list of well-known companies or the company’s own name gives (Meridian Health). Not one known only from its people’s job titles: a recruiter at Acme Widgets doesn’t make Acme a consulting firm."}),(0,b.jsx)("li",{children:"A narrower sector counts a company when its name says so (Smith Family Dental), it’s a well-known company in that sector, or at least half of the people you know there say so in their headlines (dentist, DDS, orthodontist). The words are a fixed list that comes with the app, the same on every computer. Nothing is sent anywhere."}),(0,b.jsxs)("li",{children:["Some sectors are work every kind of company has: ",r.length>1?`${r.slice(0,-1).join(", ")} and ${r.at(-1)}`:r.join(""),". For those a job title doesn’t count, since a recruiter at Acme Widgets doesn’t make it a recruiting firm. The company’s name does (Acme Staffing, Smith CPA), and so does a kind of firm in a headline (staffing agency, law firm, SaaS)."]}),E&&(0,b.jsxs)("li",{style:{color:"#FFD700"},children:["sample"===E?"The sample network":"The CSV import"," open in this window isn’t changed by this, and isn’t counted in the suggestions. Your sector applies to networks you’ve scanned."]})]})]})]})}function u({preview:a,draft:c}){if(!a||a.key!==(0,h.focusFingerprint)(c))return null;let d={marginTop:12,padding:"10px 14px",borderRadius:8,fontSize:13,lineHeight:1.6,border:f.LINE,background:"rgba(255,255,255,0.03)",color:"#cfd8d8"};if(a.loading)return(0,b.jsx)("div",{style:d,"aria-live":"polite",children:"Working out what would change…"});if(a.error)return(0,b.jsx)(f.Status,{tone:"bad",children:a.error});if(!a.scored)return(0,b.jsx)("div",{style:d,"aria-live":"polite",children:"There’s no scanned network yet, so nothing changes now. Your choice applies once you scan."});let e=(a,b)=>`${q(a,"company","companies")} ${1===a?"scores":"score"} ${b}`,g=[a.companiesUp&&e(a.companiesUp,"higher"),a.companiesDown&&e(a.companiesDown,"lower")].filter(Boolean).join(" and ");return(0,b.jsxs)("div",{style:d,"aria-live":"polite",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("b",{style:{color:"#fff"},children:"If you save:"})," ",g?`${g}.`:"No company changes score."," ",s(a.up,a.down,!1)]}),a.examples?.length>0&&(0,b.jsx)("div",{style:{marginTop:6,display:"flex",flexWrap:"wrap",gap:"4px 12px",fontSize:12.5},children:a.examples.map((a,c)=>(0,b.jsxs)("span",{title:a.company||void 0,children:[a.name,a.degree?(0,b.jsxs)("span",{style:{color:"#667"},children:[" (",p[a.degree]||`${a.degree}th`,")"]}):null," ",(0,b.jsx)("b",{style:{color:l.TIER_COLORS_CLASSIC[a.from]||"#889"},children:a.from||"–"})," → ",(0,b.jsx)("b",{style:{color:l.TIER_COLORS_CLASSIC[a.to]||"#889"},children:a.to})]},c))}),a.companyExamples?.length>0&&(0,b.jsx)("div",{style:{marginTop:4,fontSize:12,color:"#8b9a9a"},children:a.companyExamples.slice(0,3).map(a=>`${a.name} ${a.from} → ${a.to}`).join(" · ")})]})}let v=a=>`${Math.round(100*a)}%`,[w,x,y]=k.CURVE.map(([,a])=>a),z=[{key:"curve",label:"On your network's curve",note:`Your top ${v(w)} are S, the next ${v(x-w)} A and the next ${v(y-x)} B, so any network has a top, even one full of companies the app doesn't know. It only lifts: nobody drops a tier because their network is strong, and nobody under ${k.CURVE_FLOOR} is lifted into S or A.`},{key:"fixed",label:"On the fixed scale",note:"The same lines for everyone: S from 7.5, A from 5.5, B from 4, C from 2.5. Easy to compare from one network to another, but a network outside well-known companies has almost nobody in S or A."}];function A({onSaved:a}={}){let[d,e]=(0,c.useState)(null),[g,h]=(0,c.useState)(!1),[i,j]=(0,c.useState)(null),[k,l]=(0,c.useState)(null),[n]=(0,c.useState)(()=>null);async function o(b){if(g||b===d)return;h(!0),j(null);let{settings:c,effects:f,error:i}=await (0,m.saveSettings)({tierScale:b});if(c&&e(c.tierScale),i)j({tone:"bad",text:i});else{let b,c=f?.tierScale;j({tone:"ok",text:c?`Saved. ${b=c.moved,`${b.toLocaleString()} ${1===b?"person":"people"}`} changed tier.`:"Saved."}),a?.()}h(!1)}return(0,c.useEffect)(()=>{let a=!1;return fetch("/api/settings").then(a=>a.json().then(b=>a.ok?b:Promise.reject(Error(b.error||"Could not load how tiers are graded.")))).then(b=>{a||e(b.settings?.tierScale||"curve")}).catch(b=>{a||l(b.message)}),()=>{a=!0}},[]),(0,b.jsxs)(f.Section,{id:"tiers",title:"Tiers",intro:"How the S to D rings are drawn. A tier says where someone sits in your network, not what they're worth.",children:[k&&(0,b.jsx)(f.Status,{tone:"bad",children:k}),d&&(0,b.jsx)("div",{role:"radiogroup","aria-label":"How tiers are graded",style:{display:"grid",gap:8},children:z.map(a=>{let c=d===a.key;return(0,b.jsxs)("button",{type:"button",role:"radio","aria-checked":c,disabled:g,onClick:()=>o(a.key),style:{textAlign:"left",padding:"12px 14px",borderRadius:8,cursor:g?"wait":c?"default":"pointer",color:"#fff",background:c?"rgba(155,89,182,0.14)":"rgba(255,255,255,0.03)",border:c?"1px solid rgba(155,89,182,0.6)":f.LINE},children:[(0,b.jsxs)("div",{style:{fontSize:14,fontWeight:650},children:[c?"● ":"○ ",a.label,"curve"===a.key?" (recommended)":""]}),(0,b.jsx)(f.Body,{style:{marginTop:4},children:a.note})]},a.key)})}),n&&(0,b.jsxs)(f.Body,{style:{color:"#FFD700",marginTop:10},children:["sample"===n?"The sample network open in this window keeps its own tiers (they’re the same either way).":"The CSV import open in this window is always graded on its own curve."," ","This applies to networks you’ve scanned."]}),i&&(0,b.jsx)(f.Status,{tone:i.tone,children:i.text})]})}var B=a.i(75857),C=a.i(23310),D=a.i(45889);let E={S:"#FFD700",A:"#9B59B6",B:"#3498DB",C:"#95A5A6",D:"#BDC3C7"},F=a=>`${Math.round(100*a)}%`;function G(){let{userId:a}=(0,B.useUser)(),[e,g]=(0,c.useState)(null),[h,i]=(0,c.useState)(!1);(0,c.useEffect)(()=>{if(!a)return;let b=!0;return(0,C.loadNetwork)(a).then(a=>{b&&g(function({degree1:a=[],degree2:b=[],ties:c=0}={}){let d=new Map;for(let a of b)a?.source_connection_id!=null&&d.set(a.source_connection_id,(d.get(a.source_connection_id)||0)+1);let e=(0,D.exclusiveReach)(b,a),f=a.length,g=Math.max(0,Number(c)||0),h=f?f-2*g/f:0,i=new Map(a.map(a=>[a.id,a])),j=[...e.entries()].sort((a,b)=>b[1].reach-a[1].reach||String(a[0]).localeCompare(String(b[0]))).slice(0,5).map(([a,b])=>{let c=i.get(a)||{};return{id:a,name:c.name||"",company:c.company||"",tier:c.tier||"",circle:d.get(a)||0,only:b.only,share:b.total?b.only/b.total:0}});return{circles:d.size,early:d.size<5,twoWays:(0,D.redundancy)(b,a),effective:{n:f,ties:g,size:h,efficiency:f?h/f:0},top:j}}(a))}).catch(()=>{b&&i(!0)}),()=>{b=!1}},[a]);let j={padding:"12px 14px",borderRadius:8,border:f.LINE,background:"rgba(255,255,255,0.03)"};return(0,b.jsxs)("section",{id:"health",style:{marginTop:20},children:[(0,b.jsx)("h2",{style:{fontSize:16,margin:"0 0 6px"},children:"Network health"}),h&&(0,b.jsx)(f.Body,{children:"Couldn’t read your network just now."}),!h&&!e&&(0,b.jsx)(f.Body,{children:"Reading your network…"}),e&&0===e.circles&&(0,b.jsx)(f.Body,{children:"Scan a few of your connections’ circles (the Scan page, step 4) and this shows how your network holds together."}),e&&e.circles>0&&(0,b.jsxs)(b.Fragment,{children:[e.early&&(0,b.jsxs)("div",{style:{fontSize:12.5,color:"#FFD700",margin:"4px 0 10px"},children:["An early estimate: ",e.circles," ",1===e.circles?"circle":"circles"," scanned. These get sharper as you scan more."]}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(220px, 1fr))",gap:10},children:[(0,b.jsxs)("div",{style:j,children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700},children:F(e.twoWays)}),(0,b.jsx)("div",{style:{fontSize:12.5,color:"#b8c4c4"},children:"of your 2nd degree you reach two or more ways"}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#778",marginTop:4},children:"Higher is safer: lose one connection and they’re still reachable."})]}),(0,b.jsxs)("div",{style:j,children:[(0,b.jsx)("div",{style:{fontSize:22,fontWeight:700},children:Math.round(e.effective.size).toLocaleString()}),(0,b.jsxs)("div",{style:{fontSize:12.5,color:"#b8c4c4"},children:["effective reach of your ",e.effective.n.toLocaleString()," connections (",F(e.effective.efficiency)," non-overlapping)"]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#778",marginTop:4},children:["From ",e.effective.ties.toLocaleString()," ",1===e.effective.ties?"tie":"ties"," between your connections seen in circle scans so far, so it can only come down as you scan more."]})]})]}),e.top.length>0&&(0,b.jsxs)("div",{style:{...j,marginTop:10,padding:0},children:[(0,b.jsx)("div",{style:{padding:"10px 14px",fontSize:12.5,color:"#b8c4c4",borderBottom:f.LINE},children:"Your connections who reach the most people no one else does"}),e.top.map((a,c)=>(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 14px",borderBottom:c<e.top.length-1?"1px solid rgba(255,255,255,0.04)":"none",fontSize:13},children:[(0,b.jsxs)("span",{style:{width:22,color:"#778"},children:["#",c+1]}),(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:E[a.tier]||"#667",flexShrink:0}}),(0,b.jsxs)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[(0,b.jsx)("b",{children:a.name}),a.company?(0,b.jsxs)("span",{style:{color:"#8b9a9a"},children:[" · ",a.company]}):null]}),(0,b.jsxs)("span",{style:{color:"#b8c4c4",whiteSpace:"nowrap"},children:[a.circle.toLocaleString()," in circle"]}),(0,b.jsxs)("span",{style:{color:"#00ff88",whiteSpace:"nowrap"},children:[a.only.toLocaleString()," only them (",F(a.share),")"]}),(0,b.jsx)(d.default,{href:`/?chain=${encodeURIComponent(a.id)}`,style:{color:"#3498DB",textDecoration:"none",whiteSpace:"nowrap"},children:"Explore →"})]},a.id))]})]})]})}var H=a.i(90017),I=a.i(58834);let J={color:"#3498DB",textDecoration:"none",fontWeight:600};function K(){let[a,e]=(0,c.useState)(0),g=()=>e(a=>a+1);return I.IS_DEMO?(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"rgba(255,255,255,0.7)",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,textAlign:"center",padding:24,fontFamily:f.FONT},children:[(0,b.jsx)("h2",{style:{margin:0,fontSize:20,fontWeight:700,color:"#fff"},children:"Not part of the demo"}),(0,b.jsx)("p",{style:{margin:0,fontSize:13},children:"The public demo includes the Network Circle and Degrees views only."}),(0,b.jsx)(d.default,{href:"/",style:{fontSize:12,color:"rgba(255,255,255,0.5)",textDecoration:"none"},children:"← Back to the network"})]}):(0,b.jsxs)("div",{style:{minHeight:"100vh",background:"#0a0a1a",color:"#fff",fontFamily:f.FONT},children:[(0,b.jsxs)("header",{style:{padding:"16px 24px",borderBottom:f.LINE,display:"flex",alignItems:"center",gap:16},children:[(0,b.jsx)(d.default,{href:"/",style:{display:"flex",alignItems:"center",gap:6,color:"#888",textDecoration:"none",fontSize:13,fontWeight:600,padding:"6px 14px",borderRadius:6,background:"rgba(255,255,255,0.06)",border:f.LINE},children:"← Back to Map"}),(0,b.jsx)("h1",{style:{fontSize:22,fontWeight:700,margin:0,background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Scores"})]}),(0,b.jsx)("div",{id:"scan-bar-slot"}),(0,b.jsxs)("main",{style:{maxWidth:980,margin:"0 auto",padding:"8px 24px 64px"},children:[(0,b.jsxs)(f.Body,{style:{marginTop:16},children:["How someone’s power score is worked out, and the three things you can change about it:"," ",(0,b.jsx)("a",{href:"#sector",style:J,children:"your field"}),", ",(0,b.jsx)("a",{href:"#tiers",style:J,children:"how tiers are graded"})," and"," ",(0,b.jsx)("a",{href:"#companies",style:J,children:"any company’s score"}),". A change here rescores everyone."," ","First, ",(0,b.jsx)("a",{href:"#health",style:J,children:"how your network holds together"}),"."]}),(0,b.jsx)(G,{}),(0,b.jsx)(t,{onSaved:g}),(0,b.jsx)(A,{onSaved:g}),(0,b.jsx)("div",{id:"companies",style:{marginTop:28},children:(0,b.jsx)(H.default,{version:a})})]})]})}a.s(["default",0,function(){return(0,b.jsx)(e.default,{children:(0,b.jsx)(K,{})})}],94264)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=app_scores_page_09wepvv.js.map
|