six-degrees 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +4 -0
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +42 -14
- package/.next/standalone/.next/routes-manifest.json +24 -0
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- 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 +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page.js +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 +26 -18
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +26 -18
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +25 -16
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/admin-delete/route.js +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +3 -3
- 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 +3 -3
- 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 +2 -2
- package/.next/standalone/.next/server/app/api/connections/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/data/backup/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/data/backup/route/build-manifest.json +12 -0
- package/.next/standalone/.next/server/app/api/data/backup/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/data/backup/route.js +7 -0
- package/.next/standalone/.next/server/app/api/data/backup/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/data/backup/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/data/backup/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/data/csv/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/data/csv/route/build-manifest.json +12 -0
- package/.next/standalone/.next/server/app/api/data/csv/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/data/csv/route.js +8 -0
- package/.next/standalone/.next/server/app/api/data/csv/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/data/csv/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/data/csv/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/data/export/route.js +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 +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 +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/restore/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/data/restore/route/build-manifest.json +12 -0
- package/.next/standalone/.next/server/app/api/data/restore/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/data/restore/route.js +7 -0
- package/.next/standalone/.next/server/app/api/data/restore/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/data/restore/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/data/restore/route_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/api/data/reveal/route.js +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 +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 +2 -2
- 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 +2 -2
- package/.next/standalone/.next/server/app/api/ingest/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/route.js +2 -2
- package/.next/standalone/.next/server/app/api/network/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/notifications/route.js +2 -2
- package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/outreach/route.js +3 -3
- package/.next/standalone/.next/server/app/api/outreach/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/queue/route.js +2 -2
- package/.next/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/scraper/route.js +5 -3
- 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 -3
- 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 +3 -3
- 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 +3 -3
- 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 +2 -2
- package/.next/standalone/.next/server/app/api/setup-profile/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/social/crm/route.js +1 -1
- package/.next/standalone/.next/server/app/api/social/crm/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/social/messages/route.js +1 -1
- package/.next/standalone/.next/server/app/api/social/messages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/social/route.js +2 -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 +2 -2
- 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 +2 -2
- 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 +2 -2
- package/.next/standalone/.next/server/app/api/users/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/avatars/[file]/route.js +1 -1
- package/.next/standalone/.next/server/app/avatars/[file]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/import/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/import.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/import.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/import.segments/import/__PAGE__.segment.rsc +23 -18
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +29 -22
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +20 -15
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +29 -22
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/insights/page/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/insights/page/build-manifest.json +20 -0
- package/.next/standalone/.next/server/app/insights/page/next-font-manifest.json +11 -0
- package/.next/standalone/.next/server/app/insights/page/react-loadable-manifest.json +1 -0
- package/.next/standalone/.next/server/app/insights/page/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/insights/page.js +13 -0
- package/.next/standalone/.next/server/app/insights/page.js.map +5 -0
- package/.next/standalone/.next/server/app/insights/page.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/insights/page_client-reference-manifest.js +3 -0
- package/.next/standalone/.next/server/app/insights.html +1 -0
- package/.next/standalone/.next/server/app/insights.meta +26 -0
- package/.next/standalone/.next/server/app/insights.rsc +35 -0
- package/.next/standalone/.next/server/app/insights.segments/_full.segment.rsc +35 -0
- package/.next/standalone/.next/server/app/insights.segments/_tree.segment.rsc +4 -0
- package/.next/standalone/.next/server/app/insights.segments/insights/__PAGE__.segment.rsc +33 -0
- package/.next/standalone/.next/server/app/launch/page.js +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 +32 -24
- package/.next/standalone/.next/server/app/launch.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/launch.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/launch.segments/launch/__PAGE__.segment.rsc +23 -18
- package/.next/standalone/.next/server/app/page.js +1 -1
- 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 +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 +32 -24
- package/.next/standalone/.next/server/app/paths.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/paths.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/paths.segments/paths/__PAGE__.segment.rsc +21 -18
- package/.next/standalone/.next/server/app/profile/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/profile.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/profile.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/profile.segments/profile/__PAGE__.segment.rsc +23 -18
- package/.next/standalone/.next/server/app/queue/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/queue.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/queue.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/queue.segments/queue/__PAGE__.segment.rsc +21 -18
- package/.next/standalone/.next/server/app/scores/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/scores.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/scores.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/scores.segments/scores/__PAGE__.segment.rsc +23 -18
- package/.next/standalone/.next/server/app/settings/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +20 -18
- package/.next/standalone/.next/server/app/setup/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +21 -18
- package/.next/standalone/.next/server/app/social/page.js +1 -1
- 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 +32 -24
- package/.next/standalone/.next/server/app/social.segments/_full.segment.rsc +32 -24
- package/.next/standalone/.next/server/app/social.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/social.segments/social/__PAGE__.segment.rsc +23 -18
- package/.next/standalone/.next/server/app-paths-manifest.json +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00la_y0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05_3-22._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__066rab1._.js +7 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__07t47cm._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cj5jqc._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e0fei3._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fooke1._.js +7 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ljnyho._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o5-tcg._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qrnous._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__15wc9e-._.js → [root-of-the-server]__0r-0t-9._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ra6xyg._.js +15 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__20rwfdw._.js → [root-of-the-server]__0rcpjad._.js} +6 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t3v1a1._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t6y79e._.js +7 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wmexuc._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x29muh._.js +7 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xu34sz._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__133knx1._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__15-17hl._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__19b7mig._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1a_6x37._.js +8 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1an_8pa._.js +7 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1bbcwub._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1ducpz2._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1eris29._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1gjo_cq._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1qcm08_._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1tir0vc._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1w25q0m._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1xhyinn._.js +3 -0
- package/.next/standalone/.next/server/chunks/_072jl0y._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0lw8_i0._.js +1 -1
- package/.next/standalone/.next/server/chunks/_0sqqpzb._.js +3 -0
- package/.next/standalone/.next/server/chunks/_1_fynia._.js +7 -7
- package/.next/standalone/.next/server/chunks/_1fn30_l._.js +1 -1
- package/.next/standalone/.next/server/chunks/_1itd1o_._.js +1 -1
- package/.next/standalone/.next/server/chunks/_1iwkh8t._.js +1 -1
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_backup_route_actions_0zoj04p.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_csv_route_actions_0l6m7lg.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_restore_route_actions_0-b05bv.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_02iz_9q._.js +4 -0
- package/.next/standalone/.next/server/chunks/lib_05agvk3._.js +4 -0
- package/.next/standalone/.next/server/chunks/lib_0v84u66._.js +4 -0
- package/.next/standalone/.next/server/chunks/lib_db-client_0_dch35.js +174 -0
- package/.next/standalone/.next/server/chunks/lib_linkedin-export_12imqxg.js +1 -1
- package/.next/standalone/.next/server/chunks/lib_rpc_00nndai.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_03ibb-x.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_03ri3ji.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_078ce48.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0a69mgr.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0c9d9ti.js +7 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0cej3t8.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0cmh4g6.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0nx2_pc.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0r79-w1.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0t552z6.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_0yx8ynd.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_12p-o9-.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_1466dnb.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_1sryxv6.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_1trn-x5.js +3 -0
- package/.next/standalone/.next/server/chunks/lib_rpc_1ygu_mv.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0egamyq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qd8pzm._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qdeuyo._.js → [root-of-the-server]__1-012q1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_04am_h8._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_06rgzfh._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_07zb7lu._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0_79idq._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0gds903._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0hb-dhy._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0klqt9z._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_14jak5s._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/_14nxd3q._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1cj2yog._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_1fm1ih_._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_1hdqw0-._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/_1k2nmbw._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_1r62six._.js +7 -0
- package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_insights_page_actions_0-0tf75.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_141w189._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_components_0uuff77._.js +25 -2
- package/.next/standalone/.next/server/chunks/ssr/app_components_1j3q-h5._.js +25 -2
- package/.next/standalone/.next/server/chunks/ssr/app_components_CompanyScores_1g0mytz.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_components_settings_SectorPicker_1c-29qw.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_components_ui_0pdmz2z.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_import_page_1fmu6_l.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_insights_page_1d_chja.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/app_launch_page_19t0dyd.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/app_page_1fazqbf.js +26 -14
- package/.next/standalone/.next/server/chunks/ssr/app_paths_page_1ol90m7.js +2 -2
- 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 +11 -11
- 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 +12 -13
- package/.next/standalone/.next/server/chunks/ssr/app_social_page_0h7zxda.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{lib_1c4ieuw._.js → lib_csv_1ttiu_h.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/lib_galaxy-lab_108_lu-.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/lib_separation_1305zsx.js +3 -0
- package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__0pco7a6._.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/next-font-manifest.js +1 -1
- package/.next/standalone/.next/server/next-font-manifest.json +4 -0
- 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/prefetch-hints.json +14 -0
- 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/02wnf8dkxegxg.js +34 -0
- package/.next/standalone/.next/static/chunks/03-_esd2x_yk6.js +1 -0
- package/.next/standalone/.next/static/chunks/03-demj2iy-0p.js +44 -0
- package/.next/standalone/.next/static/chunks/0838_s6w-i_ik.js +1 -0
- package/.next/standalone/.next/static/chunks/0_1r-3csplxnj.js +1 -0
- package/.next/standalone/.next/static/chunks/0ka4prpk3w9wn.js +34 -0
- package/.next/standalone/.next/static/chunks/0kscsqnvfq3-r.js +1 -0
- package/.next/standalone/.next/static/chunks/0s_xxwp7z88vv.js +1 -0
- package/.next/standalone/.next/static/chunks/1-nnl8amfm4yh.js +57 -0
- package/.next/standalone/.next/static/chunks/112mv-com-mqa.js +21 -0
- package/.next/standalone/.next/static/chunks/1bkt_hhjzvbh8.js +1 -0
- package/.next/standalone/.next/static/chunks/1cmphb3kh2ers.css +3 -0
- package/.next/standalone/.next/static/chunks/1d8yv3k_atka7.js +1 -0
- package/.next/standalone/.next/static/chunks/{0ws7zy0w57ufi.js → 1eyajb9ntzlrl.js} +1 -1
- package/.next/standalone/.next/static/chunks/1z9lb-dbcg4aa.js +1 -0
- package/.next/standalone/.next/static/chunks/23hc51oa4vkhc.js +5 -0
- package/.next/standalone/.next/static/chunks/27n8k9wxlz5-7.js +1 -0
- package/.next/standalone/.next/static/chunks/2q9i7pcxcnph1.js +7 -0
- package/.next/standalone/.next/static/chunks/2w-y83mjlpnse.js +1 -0
- package/.next/standalone/.next/static/chunks/2ws1xf293j-tm.js +5 -0
- package/.next/standalone/.next/static/chunks/2z1-q0_vunbql.js +2 -0
- package/.next/standalone/.next/static/chunks/34g73qhayuevu.js +1 -0
- package/.next/standalone/.next/static/chunks/3cqn-r-y5rrw1.js +5 -0
- package/.next/standalone/.next/static/chunks/3opgg1efrx8q6.js +1 -0
- package/.next/standalone/.next/static/chunks/3p51fpxxi4d5y.js +34 -0
- package/.next/standalone/.next/static/chunks/3y40z6of3r9py.js +1 -0
- package/.next/standalone/.next/static/chunks/403dpflln8ah5.js +1 -0
- package/.next/standalone/.next/static/chunks/43pg2sursiypz.js +1 -0
- package/.next/standalone/CHANGELOG.md +203 -0
- package/.next/standalone/README.md +96 -50
- package/.next/standalone/SECURITY.md +25 -11
- package/.next/standalone/app/api/data/backup/route.js +25 -0
- package/.next/standalone/app/api/data/csv/route.js +74 -0
- package/.next/standalone/app/api/data/export/route.js +1 -1
- package/.next/standalone/app/api/data/restore/route.js +48 -0
- package/.next/standalone/app/api/data/reveal/route.js +19 -6
- package/.next/standalone/app/api/data/route.js +15 -4
- package/.next/standalone/app/api/ingest/route.js +1 -1
- package/.next/standalone/app/api/outreach/route.js +13 -73
- package/.next/standalone/app/api/queue/route.js +1 -1
- package/.next/standalone/app/api/scraper/route.js +217 -36
- package/.next/standalone/app/api/social/crm/route.js +2 -1
- package/.next/standalone/app/components/AppHeader.js +41 -21
- package/.next/standalone/app/components/AppTabs.js +12 -8
- package/.next/standalone/app/components/AutoConnect.js +286 -0
- package/.next/standalone/app/components/AutoScanButton.js +2 -2
- package/.next/standalone/app/components/Avatar.js +1 -1
- package/.next/standalone/app/components/ChainView.js +258 -113
- package/.next/standalone/app/components/CirclePanel.js +16 -16
- package/.next/standalone/app/components/ClusterSpinner.js +64 -0
- package/.next/standalone/app/components/CompanyScores.js +20 -20
- package/.next/standalone/app/components/EmptyState.js +39 -18
- package/.next/standalone/app/components/FieldStep.js +15 -13
- package/.next/standalone/app/components/FilterPanel.js +25 -18
- package/.next/standalone/app/components/ForceGraph.js +49 -14
- package/.next/standalone/app/components/GalaxyLab.js +33 -33
- package/.next/standalone/app/components/GridView.js +18 -18
- package/.next/standalone/app/components/LegacyScoresCard.js +10 -11
- package/.next/standalone/app/components/LinkedInLimits.js +57 -27
- package/.next/standalone/app/components/LiquidGlass.js +99 -0
- package/.next/standalone/app/components/ListView.js +20 -20
- package/.next/standalone/app/components/MapControls.js +5 -5
- package/.next/standalone/app/components/MappingProgress.js +16 -16
- package/.next/standalone/app/components/NoteDetail.js +13 -13
- package/.next/standalone/app/components/OnboardingGate.js +4 -4
- package/.next/standalone/app/components/OutlinkQuest.js +56 -35
- package/.next/standalone/app/components/PathsAnalyzer.js +37 -36
- package/.next/standalone/app/components/PeopleMap.js +21 -21
- package/.next/standalone/app/components/RingsView.js +11 -11
- package/.next/standalone/app/components/ScanRadar.js +84 -39
- package/.next/standalone/app/components/ScanStatusBar.js +40 -21
- package/.next/standalone/app/components/ScanTrail.js +21 -8
- package/.next/standalone/app/components/SeparationView.js +172 -124
- package/.next/standalone/app/components/Sidebar.js +308 -199
- package/.next/standalone/app/components/StaleServerBanner.js +4 -4
- package/.next/standalone/app/components/TheirCircle.js +26 -26
- package/.next/standalone/app/components/ThemeDefs.js +42 -0
- package/.next/standalone/app/components/ThemeLoader.js +20 -1
- package/.next/standalone/app/components/UpdatePanel.js +22 -22
- package/.next/standalone/app/components/UserProvider.js +22 -15
- package/.next/standalone/app/components/insights/Boards.js +275 -0
- package/.next/standalone/app/components/insights/PeopleView.js +266 -0
- package/.next/standalone/app/components/insights/Rail.js +156 -0
- package/.next/standalone/app/components/insights/Report.js +382 -0
- package/.next/standalone/app/components/insights/parts.js +239 -0
- package/.next/standalone/app/components/settings/AppearanceSection.js +47 -24
- package/.next/standalone/app/components/settings/DataSection.js +276 -109
- package/.next/standalone/app/components/settings/NetworkHealthSection.js +13 -13
- package/.next/standalone/app/components/settings/SectorPicker.js +12 -12
- package/.next/standalone/app/components/settings/SectorSection.js +13 -14
- package/.next/standalone/app/components/settings/TierSection.js +9 -9
- package/.next/standalone/app/components/settings/TitleSection.js +11 -11
- package/.next/standalone/app/components/settings/UsageSection.js +360 -0
- package/.next/standalone/app/components/ui.js +8 -8
- package/.next/standalone/app/globals.css +161 -5
- package/.next/standalone/app/import/page.js +94 -38
- package/.next/standalone/app/insights/page.js +220 -0
- package/.next/standalone/app/launch/page.js +5 -5
- package/.next/standalone/app/layout.js +6 -2
- package/.next/standalone/app/page.js +53 -53
- package/.next/standalone/app/paths/page.js +63 -63
- package/.next/standalone/app/profile/page.js +58 -58
- package/.next/standalone/app/queue/page.js +84 -72
- package/.next/standalone/app/scores/page.js +2 -2
- package/.next/standalone/app/settings/page.js +16 -13
- package/.next/standalone/app/setup/page.js +236 -133
- package/.next/standalone/app/social/Crm.js +63 -62
- package/.next/standalone/app/social/SocialHub.js +22 -22
- package/.next/standalone/app/social/Thread.js +7 -7
- package/.next/standalone/app/social/page.js +2 -2
- package/.next/standalone/lib/auto-connect.js +145 -0
- package/.next/standalone/lib/backups.js +458 -0
- package/.next/standalone/lib/chain-layout.js +32 -0
- package/.next/standalone/lib/companies.js +1 -1
- package/.next/standalone/lib/csv-store.js +131 -0
- package/.next/standalone/lib/csv.js +137 -39
- package/.next/standalone/lib/data-folder.js +19 -3
- package/.next/standalone/lib/data-import.js +5 -2
- package/.next/standalone/lib/db-client.js +78 -20
- package/.next/standalone/lib/demo.js +5 -4
- package/.next/standalone/lib/galaxy-export.js +9 -2
- package/.next/standalone/lib/galaxy-lab.js +19 -5
- package/.next/standalone/lib/galaxy-layouts.js +43 -0
- package/.next/standalone/lib/gate.js +10 -4
- package/.next/standalone/lib/in-progress.js +46 -0
- package/.next/standalone/lib/ingest.js +1 -1
- package/.next/standalone/lib/insights-board.js +613 -0
- package/.next/standalone/lib/linkedin-limits.js +240 -14
- package/.next/standalone/lib/liquid-glass.js +59 -0
- package/.next/standalone/lib/notifications.js +13 -0
- package/.next/standalone/lib/requests-client.js +10 -0
- package/.next/standalone/lib/requests.js +124 -0
- package/.next/standalone/lib/scan-pace.js +11 -0
- package/.next/standalone/lib/scan-progress.js +20 -0
- package/.next/standalone/lib/scan-risk.js +44 -0
- package/.next/standalone/lib/scan-state.js +1 -0
- package/.next/standalone/lib/scanner-setup.js +97 -15
- package/.next/standalone/lib/scraper-client.js +35 -8
- package/.next/standalone/lib/search-risk.js +7 -3
- package/.next/standalone/lib/settings-client.js +5 -3
- package/.next/standalone/lib/settings.js +13 -0
- package/.next/standalone/lib/social-store.js +3 -2
- package/.next/standalone/lib/synced-setting.js +46 -0
- package/.next/standalone/lib/theme-store.js +42 -10
- package/.next/standalone/lib/themes.js +111 -21
- package/.next/standalone/lib/usage.js +200 -0
- package/.next/standalone/package-lock.json +2 -2
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/scripts/scrape.py +595 -11
- package/.next/static/chunks/02wnf8dkxegxg.js +34 -0
- package/.next/static/chunks/03-_esd2x_yk6.js +1 -0
- package/.next/static/chunks/03-demj2iy-0p.js +44 -0
- package/.next/static/chunks/0838_s6w-i_ik.js +1 -0
- package/.next/static/chunks/0_1r-3csplxnj.js +1 -0
- package/.next/static/chunks/0ka4prpk3w9wn.js +34 -0
- package/.next/static/chunks/0kscsqnvfq3-r.js +1 -0
- package/.next/static/chunks/0s_xxwp7z88vv.js +1 -0
- package/.next/static/chunks/1-nnl8amfm4yh.js +57 -0
- package/.next/static/chunks/112mv-com-mqa.js +21 -0
- package/.next/static/chunks/1bkt_hhjzvbh8.js +1 -0
- package/.next/static/chunks/1cmphb3kh2ers.css +3 -0
- package/.next/static/chunks/1d8yv3k_atka7.js +1 -0
- package/.next/static/chunks/{0ws7zy0w57ufi.js → 1eyajb9ntzlrl.js} +1 -1
- package/.next/static/chunks/1z9lb-dbcg4aa.js +1 -0
- package/.next/static/chunks/23hc51oa4vkhc.js +5 -0
- package/.next/static/chunks/27n8k9wxlz5-7.js +1 -0
- package/.next/static/chunks/2q9i7pcxcnph1.js +7 -0
- package/.next/static/chunks/2w-y83mjlpnse.js +1 -0
- package/.next/static/chunks/2ws1xf293j-tm.js +5 -0
- package/.next/static/chunks/2z1-q0_vunbql.js +2 -0
- package/.next/static/chunks/34g73qhayuevu.js +1 -0
- package/.next/static/chunks/3cqn-r-y5rrw1.js +5 -0
- package/.next/static/chunks/3opgg1efrx8q6.js +1 -0
- package/.next/static/chunks/3p51fpxxi4d5y.js +34 -0
- package/.next/static/chunks/3y40z6of3r9py.js +1 -0
- package/.next/static/chunks/403dpflln8ah5.js +1 -0
- package/.next/static/chunks/43pg2sursiypz.js +1 -0
- package/CHANGELOG.md +203 -0
- package/README.md +96 -50
- package/SECURITY.md +25 -11
- package/lib/auto-connect.js +145 -0
- package/lib/backups.js +458 -0
- package/lib/chain-layout.js +32 -0
- package/lib/companies.js +1 -1
- package/lib/csv-store.js +131 -0
- package/lib/csv.js +137 -39
- package/lib/data-folder.js +19 -3
- package/lib/data-import.js +5 -2
- package/lib/db-client.js +78 -20
- package/lib/demo.js +5 -4
- package/lib/galaxy-export.js +9 -2
- package/lib/galaxy-lab.js +19 -5
- package/lib/galaxy-layouts.js +43 -0
- package/lib/gate.js +10 -4
- package/lib/in-progress.js +46 -0
- package/lib/ingest.js +1 -1
- package/lib/insights-board.js +613 -0
- package/lib/linkedin-limits.js +240 -14
- package/lib/liquid-glass.js +59 -0
- package/lib/notifications.js +13 -0
- package/lib/requests-client.js +10 -0
- package/lib/requests.js +124 -0
- package/lib/scan-pace.js +11 -0
- package/lib/scan-progress.js +20 -0
- package/lib/scan-risk.js +44 -0
- package/lib/scan-state.js +1 -0
- package/lib/scanner-setup.js +97 -15
- package/lib/scraper-client.js +35 -8
- package/lib/search-risk.js +7 -3
- package/lib/settings-client.js +5 -3
- package/lib/settings.js +13 -0
- package/lib/social-store.js +3 -2
- package/lib/synced-setting.js +46 -0
- package/lib/theme-store.js +42 -10
- package/lib/themes.js +111 -21
- package/lib/usage.js +200 -0
- package/package.json +1 -1
- package/scripts/scrape.py +595 -11
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-rnla2._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__13dx4sd._.js +0 -8
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__14ou7j5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__16iu0hv._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1kbl21f._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1rphsdk._.js +0 -3
- package/.next/standalone/.next/server/chunks/_02twlca._.js +0 -10
- package/.next/standalone/.next/server/chunks/lib_0851sk0._.js +0 -8
- package/.next/standalone/.next/server/chunks/lib_1q7p2ro._.js +0 -8
- package/.next/standalone/.next/server/chunks/lib_1r6l86l._.js +0 -8
- package/.next/standalone/.next/server/chunks/lib_db-client_15le7cw.js +0 -174
- package/.next/standalone/.next/server/chunks/lib_rpc_04s8mzr.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_053z7as.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0b_-2te.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0dhbxdm.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0dxlk31.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0f8b-qc.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0pzie7_.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0r76fq_.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_0ut7pjp.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_15zyqaz.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_18zpjtq.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_1a8xkiz.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_1e_55xo.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_1oxfd1_.js +0 -3
- package/.next/standalone/.next/server/chunks/lib_rpc_1s0lod0.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08oxiqh._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_03l7vge._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_08g31gm._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0gk_ofx._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0nwsf93._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0vho1lb._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_1-658fq._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_1bc46kz._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_1f_n00p._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_2105jz8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/app_components_0t908t-._.js +0 -3
- package/.next/standalone/.next/static/chunks/02pq76u7y4v9-.js +0 -22
- package/.next/standalone/.next/static/chunks/0cmq0exd4d0h9.js +0 -1
- package/.next/standalone/.next/static/chunks/0i02yxppzds1o.js +0 -1
- package/.next/standalone/.next/static/chunks/0m_p4k-q2qh--.js +0 -1
- package/.next/standalone/.next/static/chunks/0oyslj62jkubd.js +0 -1
- package/.next/standalone/.next/static/chunks/0vo-l8hxneba6.css +0 -3
- package/.next/standalone/.next/static/chunks/0yh8z2tbrc5i_.js +0 -1
- package/.next/standalone/.next/static/chunks/17-rhp8sg4m1b.js +0 -44
- package/.next/standalone/.next/static/chunks/172e10mi-tpo_.js +0 -34
- package/.next/standalone/.next/static/chunks/1ei5vbe2uw6fl.js +0 -1
- package/.next/standalone/.next/static/chunks/1f7_pl_wq7lh3.js +0 -11
- package/.next/standalone/.next/static/chunks/1jzbe7zdx9vbj.js +0 -2
- package/.next/standalone/.next/static/chunks/1m3017gp790pw.js +0 -45
- package/.next/standalone/.next/static/chunks/1t20e8u0st7ep.js +0 -1
- package/.next/standalone/.next/static/chunks/2-ch9rm27eril.js +0 -11
- package/.next/standalone/.next/static/chunks/2ldv-v3s9yaif.js +0 -1
- package/.next/standalone/.next/static/chunks/3bp284gjf7dyq.js +0 -1
- package/.next/standalone/.next/static/chunks/3k1f6clbn3gj3.js +0 -7
- package/.next/standalone/.next/static/chunks/3l4t8je6iguzc.js +0 -1
- package/.next/standalone/.next/static/chunks/3tplzuc9jk-tl.js +0 -1
- package/.next/standalone/.next/static/chunks/42m0bqr8pbovz.js +0 -11
- package/.next/static/chunks/02pq76u7y4v9-.js +0 -22
- package/.next/static/chunks/0cmq0exd4d0h9.js +0 -1
- package/.next/static/chunks/0i02yxppzds1o.js +0 -1
- package/.next/static/chunks/0m_p4k-q2qh--.js +0 -1
- package/.next/static/chunks/0oyslj62jkubd.js +0 -1
- package/.next/static/chunks/0vo-l8hxneba6.css +0 -3
- package/.next/static/chunks/0yh8z2tbrc5i_.js +0 -1
- package/.next/static/chunks/17-rhp8sg4m1b.js +0 -44
- package/.next/static/chunks/172e10mi-tpo_.js +0 -34
- package/.next/static/chunks/1ei5vbe2uw6fl.js +0 -1
- package/.next/static/chunks/1f7_pl_wq7lh3.js +0 -11
- package/.next/static/chunks/1jzbe7zdx9vbj.js +0 -2
- package/.next/static/chunks/1m3017gp790pw.js +0 -45
- package/.next/static/chunks/1t20e8u0st7ep.js +0 -1
- package/.next/static/chunks/2-ch9rm27eril.js +0 -11
- package/.next/static/chunks/2ldv-v3s9yaif.js +0 -1
- package/.next/static/chunks/3bp284gjf7dyq.js +0 -1
- package/.next/static/chunks/3k1f6clbn3gj3.js +0 -7
- package/.next/static/chunks/3l4t8je6iguzc.js +0 -1
- package/.next/static/chunks/3tplzuc9jk-tl.js +0 -1
- package/.next/static/chunks/42m0bqr8pbovz.js +0 -11
- /package/.next/standalone/.next/static/{dQUvvVSXqbkEFC3-CNcwT → 3NCyJyAPDCEYsYTwF1Ieu}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{dQUvvVSXqbkEFC3-CNcwT → 3NCyJyAPDCEYsYTwF1Ieu}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{dQUvvVSXqbkEFC3-CNcwT → 3NCyJyAPDCEYsYTwF1Ieu}/_ssgManifest.js +0 -0
- /package/.next/static/{dQUvvVSXqbkEFC3-CNcwT → 3NCyJyAPDCEYsYTwF1Ieu}/_buildManifest.js +0 -0
- /package/.next/static/{dQUvvVSXqbkEFC3-CNcwT → 3NCyJyAPDCEYsYTwF1Ieu}/_clientMiddlewareManifest.js +0 -0
- /package/.next/static/{dQUvvVSXqbkEFC3-CNcwT → 3NCyJyAPDCEYsYTwF1Ieu}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98197,77170,44944,e=>{"use strict";var a=e.i(43476),s=e.i(71645),r=e.i(8819),i=e.i(89154),n=e.i(90179),t=e.i(69083);let o=["fan(s)","enthusiast(s)","lover(s)","junkie(s)","nerd(s)","buff(s)","addict(s)","hobbyist(s)","geek(s)","aficionado(s)"],l=[{key:"software",label:"Software & SaaS",group:"tech",kind:"function",words:["saas","b2b saas","paas","iaas","software as a service","software company","software companies","software startup(s)","software firm(s)","software vendor(s)","dev shop(s)"],roles:["software engineer(s)","software developer(s)","software engineering","swe","sde","full stack","fullstack","front end developer(s)","frontend developer(s)","front end engineer(s)","frontend engineer(s)","back end developer(s)","backend developer(s)","back end engineer(s)","backend engineer(s)","web developer(s)","mobile developer(s)","ios developer(s)","ios engineer(s)","android developer(s)","android engineer(s)","app developer(s)","devops","site reliability","sre","platform engineering","cloud engineer(s)","cloud architect(s)","solutions architect(s)","developer relations","devrel","developer advocate(s)","qa engineer(s)","sdet","test automation","javascript","typescript","kubernetes","open source"],names:["software"],companies:["microsoft","google","meta$","apple$","linkedin","salesforce","oracle$","adobe$","sap$","servicenow","workday","atlassian","hubspot","zoom$","zoom video","slack$","dropbox","box$","twilio","datadog","mongodb","github","gitlab","autodesk","intuit","docusign","zendesk","asana$","notion$","notion labs","figma","canva","airtable","monday com","squarespace","wix$","wix com","webflow","vercel","netlify","red hat","vmware","citrix","jetbrains","postman$","confluent","hashicorp","new relic","pagerduty","freshworks","zoho","calendly","clickup","smartsheet","retool","supabase","replit","procore","veeva","epic systems","klaviyo","rippling","gusto$","deel$","discord"]},{key:"ai-data",label:"AI & Data",group:"tech",kind:"function",words:["ai lab(s)","ai research lab(s)","ai startup(s)","ai company","ai companies"],roles:["artificial intelligence","machine learning","deep learning","reinforcement learning","generative ai","gen ai","genai","llm(s)","large language model(s)","nlp","natural language processing","computer vision","applied ai","head of ai","ai engineer(s)","ai engineering","ai researcher(s)","ai research","ai scientist(s)","ml engineer(s)","ml engineering","ml researcher(s)","ml scientist(s)","ml infrastructure","ml platform","mlops","machine learning engineer(s)","data science","data scientist(s)","data engineer(s)","data engineering","data analytics","data analyst(s)","analytics engineer(s)","big data","business intelligence","data warehouse","data warehousing","data governance","data platform(s)"],names:["ai"],companies:["openai","open ai","anthropic","cohere$","mistral$","hugging face","huggingface","databricks","snowflake$","palantir","nvidia","perplexity$","xai$","midjourney","runway ml","runwayml","datarobot","dataiku","alteryx","tableau","fivetran","dbt labs","weights & biases","labelbox","groq$","cerebras"],not:["neuro linguistic programming","nlp practitioner(s)","nlp coach","nlp coaches","llm in tax","llm in taxation","llm taxation"]},{key:"cybersecurity",label:"Cybersecurity",group:"tech",kind:"function",words:["cybersecurity company","cybersecurity companies","cybersecurity firm(s)","cybersecurity startup(s)","cybersecurity vendor(s)","cyber security firm(s)","managed security","mssp(s)"],roles:["cybersecurity","cyber security","cyber","infosec","information security","security engineer(s)","security analyst(s)","security architect(s)","security researcher(s)","security operations","soc analyst(s)","penetration tester(s)","penetration testing","pentester(s)","pen tester(s)","red team","blue team","appsec","application security","cloud security","network security","threat intelligence","threat hunter(s)","incident response","vulnerability management","vulnerability research","vulnerability researcher(s)","malware","ciso","zero trust","osint","dfir","cissp","oscp","ceh","comptia security","bug bounty","ethical hacker(s)","ethical hacking","devsecops","secops"],companies:["crowdstrike","palo alto networks","fortinet","okta","zscaler","sentinelone","cloudflare","proofpoint","rapid7","tenable","qualys","splunk","mandiant","cyberark","check point software","sophos","darktrace","wiz$","snyk","vanta$","drata","1password","lastpass","arctic wolf","huntress","mcafee","gen digital","trend micro","kaspersky","abnormal security","knowbe4","secureworks","recorded future","bishop fox","trail of bits","hackerone","bugcrowd","cisa$"],not:["cyber monday"]},{key:"telecom",label:"Telecom",group:"tech",kind:"industry",words:["telecom","telecoms","telecommunication(s)","telco(s)","wireless carrier(s)","mobile network(s)","5g","broadband","fiber optic(s)","fiber network(s)","rf engineer(s)","cell tower(s)","voip","unified communications","satellite communications"],companies:["at&t","verizon","t mobile","tmobile","sprint$","comcast","xfinity","charter communications","spectrum$","cox communications","lumen$","lumen technologies","centurylink","frontier communications","dish network","ericsson","nokia","cisco","juniper networks","qualcomm","american tower","crown castle","vodafone","telefonica","bt group","deutsche telekom","rogers communications","bell canada","telus","starlink","viasat","iridium"]},{key:"fintech",label:"Fintech & Payments",group:"finance",kind:"industry",words:["fintech","fin tech","payments","payment processing","merchant services","digital banking","neobank(s)","embedded finance","insurtech","regtech","wealthtech","buy now pay later","bnpl","card issuing","open banking","digital wallet(s)","mobile payments"],names:["pay"],companies:["stripe","paypal","venmo","square$","block$","cash app","plaid$","brex","ramp$","mercury$","chime$","affirm$","klarna","afterpay","marqeta","adyen","checkout com","sofi$","wise$","revolut","n26","nubank","monzo","bill com","expensify","carta$","fiserv","fis$","global payments","worldpay","visa$","mastercard","american express","amex$","discover financial","green dot","melio","payoneer","remitly","western union","moneygram","zelle","shift4","nuvei","paysafe","lithic","synctera","modern treasury","rapyd","dwolla","credit karma","nerdwallet","kalshi"],not:["pay per click","pay it forward"]},{key:"banking",label:"Banking & Lending",group:"finance",kind:"industry",words:["bank","banking","banker(s)","investment banking","investment banker(s)","commercial banking","commercial banker(s)","retail banking","community bank(s)","credit union(s)","bank teller(s)","loan officer(s)","mortgage(s)","mortgage lender(s)","mortgage lending","mortgage broker(s)","mortgage advisor(s)","mortgage underwriter(s)","lending","lender(s)","loan processor(s)","loan originator(s)","credit analyst(s)","nmls"],companies:["jpmorgan","jp morgan","j p morgan","chase$","chase bank","bank of america","wells fargo","citi$","citibank","citigroup","goldman sachs","morgan stanley","us bancorp","pnc","truist","capital one","td bank","td securities","hsbc","barclays","santander","bny","state street","fifth third","keybank","ally$","ally financial","navy federal","rocket mortgage","rocket companies","quicken loans","united wholesale mortgage","lendingtree","lendingclub","upstart$","lazard","evercore","jefferies","moelis","houlihan lokey","piper sandler","rbc","royal bank of canada","bmo","scotiabank","ubs$","credit suisse","deutsche bank","bnp paribas","mufg","societe generale","nomura","federal reserve","fdic$","freddie mac","fannie mae"],not:["coldwell banker","bankers life","food bank(s)","blood bank(s)","data bank(s)","sperm bank(s)","seed bank(s)","memory bank(s)","piggy bank(s)","question bank(s)","image bank(s)","time bank(s)","west bank","left bank","river bank(s)"]},{key:"vc-pe",label:"Venture Capital & Private Equity",group:"finance",kind:"industry",words:["venture capital","venture capitalist(s)","vc","vcs","vc fund(s)","venture fund(s)","venture partner(s)","private equity","growth equity","pe fund(s)","buyout(s)","leveraged buyout(s)","lbo","fund of funds","search fund(s)","venture studio(s)"],companies:["sequoia$","sequoia capital","andreessen horowitz","a16z","accel$","accel partners","kleiner perkins","greylock","lightspeed venture","general catalyst","founders fund","y combinator","yc$","techstars","500 startups","first round capital","insight partners","tiger global","thrive capital","khosla ventures","bessemer venture","ggv capital","nea$","new enterprise associates","battery ventures","union square ventures","softbank vision fund","blackstone$","kkr$","kohlberg kravis roberts","carlyle group","apollo global","tpg$","tpg capital","bain capital","warburg pincus","vista equity","thoma bravo","silver lake","advent international","hellman & friedman","general atlantic","ares management","blue owl","cvc capital","permira","l catterton","leonard green","clayton dubilier"],not:["vc backed","venture backed","pe backed","backed by"]},{key:"wealth",label:"Wealth & Asset Management",group:"finance",kind:"industry",words:["wealth management","wealth manager(s)","wealth advisor(s)","private wealth","private banking","financial advisor(s)","financial adviser(s)","financial planner(s)","financial planning","certified financial planner(s)","cfp","chfc","registered investment advisor(s)","investment advisor(s)","asset management","investment management","portfolio manager(s)","portfolio management","hedge fund(s)","family office(s)","retirement planning","cfa","cfa charterholder(s)","equity research","investment research","trader(s)","quantitative trader(s)","quant trader(s)","trading desk","prop trading","proprietary trading","equities","fixed income","derivatives","securities","finra","series 7","series 65","series 66"],companies:["blackrock","vanguard$","vanguard group","fidelity$","fidelity investments","charles schwab","schwab$","edward jones","ameriprise","raymond james","lpl financial","northwestern mutual","pimco","t rowe price","franklin templeton","invesco","capital group","wellington management","nuveen","bridgewater$","bridgewater associates","citadel$","citadel securities","two sigma","de shaw","d e shaw","renaissance technologies","millennium management","point72","jane street","hudson river trading","jump trading","optiver","susquehanna international","virtu financial","drw$","aqr","man group","elliott management","pershing square","robinhood","wealthfront","betterment","stifel"],not:["trader joe(s)","securities law","securities litigation","securities attorney(s)","securities lawyer(s)","social security"]},{key:"insurance",label:"Insurance",group:"finance",kind:"industry",words:["insurance","insurer(s)","insurtech","reinsurance","insurance underwriter(s)","claims adjuster(s)","insurance adjuster(s)","public adjuster(s)","actuary","actuaries","actuarial","p&c","property and casualty","annuity","annuities","cpcu","title insurance"],companies:["state farm","allstate","geico","progressive$","liberty mutual","nationwide$","usaa","farmers insurance","travelers$","hartford$","chubb","aig$","american international group","metlife","prudential","new york life","northwestern mutual","massmutual","mass mutual","aflac","oscar health","root insurance","humana","unitedhealth","aetna","cigna","anthem$","anthem blue cross","elevance","centene","molina healthcare","blue cross","bcbs","marsh$","marsh mclennan","aon$","willis towers watson","wtw$","gallagher$","arthur j gallagher","brown & brown","lockton","hub international","swiss re","munich re","assurant","erie insurance","american family insurance","primerica","globe life","mutual of omaha","guardian life","lincoln financial","transamerica","john hancock","pacific life","protective life","unum"]},{key:"accounting",label:"Accounting & Tax",group:"finance",kind:"function",words:["accounting firm(s)","cpa firm(s)","public accounting","tax preparation","external audit","audit & assurance","big four","big 4"],roles:["accounting","accountant(s)","cpa","cpas","certified public accountant(s)","chartered accountant(s)","acca","tax","tax preparer(s)","tax advisor(s)","enrolled agent(s)","bookkeeper(s)","bookkeeping","auditor(s)","internal audit","accounts payable","accounts receivable","financial controller(s)","corporate controller(s)","fractional cfo(s)","forensic accounting","forensic accountant(s)","quickbooks"],companies:["deloitte","pwc$","pricewaterhousecoopers","ey$","ernst & young","kpmg","grant thornton","bdo$","bdo usa","rsm$","rsm us","crowe$","baker tilly","cliftonlarsonallen","moss adams","cbiz","marcum$","eisneramper","cherry bekaert","plante moran","h&r block","jackson hewitt","liberty tax"]},{key:"crypto",label:"Crypto & Web3",group:"finance",kind:"industry",words:["crypto","cryptocurrency","cryptocurrencies","blockchain","web3","web 3","defi","nft(s)","bitcoin","ethereum","solana","stablecoin(s)","digital asset(s)","smart contract(s)","dapp(s)","on chain","onchain","crypto exchange(s)"],companies:["coinbase","binance","kraken$","ripple$","chainalysis","consensys","opensea","uniswap","polygon labs","fireblocks","anchorage digital","paxos","bitgo","crypto com","ledger$","metamask","polymarket","tether$","galaxy digital","grayscale investments","blockchain com","bitpay","moonpay","dydx","aave","chainlink labs","mysten labs"],not:["digital asset management"]},{key:"hospitals",label:"Hospitals & Clinics",group:"health",kind:"industry",words:["hospital(s)","clinic(s)","medical center(s)","health system(s)","healthcare system(s)","urgent care","emergency room","emergency department","emergency medicine","physician(s)","doctor(s)","surgeon(s)","surgery","nurse(s)","nursing","registered nurse(s)","rn","bsn","lpn","certified nursing assistant(s)","nurse practitioner(s)","physician assistant(s)","pa c","medical assistant(s)","patient care","hospitalist(s)","pediatrician(s)","cardiologist(s)","oncologist(s)","radiologist(s)","anesthesiologist(s)","dermatologist(s)","neurologist(s)","obgyn","ob gyn","family medicine","internal medicine","primary care","pediatrics","oncology","cardiology","radiology","paramedic(s)","emt(s)","respiratory therapist(s)","physical therapist(s)","physical therapy","occupational therapist(s)","occupational therapy","speech language pathologist(s)","radiologic technologist(s)","sonographer(s)","phlebotomist(s)","pharmacist(s)","pharmacy","home health","hospice","nursing home(s)","assisted living","senior living","skilled nursing","healthcare administration","hospital administrator(s)","medical practice(s)","medical group(s)","telehealth","telemedicine","concierge medicine","chiropractor(s)","chiropractic","optometrist(s)","optometry","ophthalmologist(s)","podiatrist(s)","medical billing","medical coding","medical coder(s)","revenue cycle"],companies:["kaiser permanente","hca$","hca healthcare","tenet healthcare","commonspirit","ascension$","ascension health","providence health","trinity health","mass general","massachusetts general","mount sinai","nyu langone","johns hopkins medicine","ucla health","stanford health","memorial sloan kettering","md anderson","dana farber","cedars sinai","city of hope","one medical","oak street health","carbon health","teladoc","amwell","davita","fresenius","lifepoint health","universal health services"],not:["animal hospital(s)","animal clinic(s)","pet hospital(s)","veterinary","veterinarian(s)","legal clinic(s)","law clinic(s)","doctor of philosophy","computer doctor(s)","script doctor(s)","tree surgery"]},{key:"dental",label:"Dental",group:"health",kind:"industry",words:["dental","dentist(s)","dentistry","dds","dmd","orthodontist(s)","orthodontic(s)","orthodontia","periodontist(s)","periodontics","periodontal","endodontist(s)","endodontics","prosthodontist(s)","prosthodontics","pedodontist(s)","pediatric dentist(s)","oral surgeon(s)","oral surgery","oral and maxillofacial","maxillofacial","dental hygienist(s)","rdh","dental assistant(s)","dso","dsos","dental support organization(s)","invisalign"],companies:["align technology","henry schein","dentsply","smile direct club","smiledirectclub","clearchoice","sonrava","envista$","envista holdings","straumann","ivoclar","nobel biocare","great expressions","smile brands","bright now","affordable dentures"]},{key:"pharma-biotech",label:"Pharma & Biotech",group:"health",kind:"industry",words:["pharma","pharmaceutical(s)","biotech","biotechnology","biopharma","biopharmaceutical(s)","therapeutics","bioscience(s)","biologics","drug discovery","drug development","clinical trial(s)","clinical research","clinical research associate(s)","medical science liaison(s)","pharmaceutical sales","pharma sales","regulatory affairs","pharmacovigilance","drug safety","gene therapy","cell therapy","genomics","bioinformatics","molecular biology","immunology","vaccine(s)","life sciences","antibody","antibodies","crispr","mrna","biostatistics","biostatistician(s)","medicinal chemistry"],companies:["pfizer","moderna","johnson & johnson","j&j$","janssen","merck","msd$","abbvie","bristol myers squibb","eli lilly","lilly$","novartis","roche$","roche diagnostics","genentech","astrazeneca","gsk$","glaxosmithkline","sanofi","novo nordisk","bayer","amgen","gilead","regeneron","vertex pharmaceuticals","biogen","takeda","boehringer ingelheim","viatris","mylan","biontech","illumina","thermo fisher","iqvia","syneos","parexel","charles river laboratories","catalent","lonza","danaher","alnylam","incyte","seagen","bluebird bio","intellia","editas","insitro","23andme","ginkgo bioworks","zoetis"]},{key:"medical-devices",label:"Medical Devices",group:"health",kind:"industry",words:["medical device(s)","medical technology","medtech","med tech","medical equipment","durable medical equipment","surgical robotics","surgical device(s)","orthopedic implant(s)","medical diagnostics","in vitro diagnostics","medical imaging","biomedical engineer(s)","biomedical engineering","regulatory affairs","medical device sales","510 k"],companies:["medtronic","stryker","boston scientific","abbott$","abbott laboratories","abbott diagnostics","becton dickinson","baxter international","baxter healthcare","zimmer biomet","smith & nephew","edwards lifesciences","intuitive surgical","ge healthcare","philips healthcare","siemens healthineers","hologic","dexcom","insulet","resmed","masimo","teleflex","hillrom","hill rom","steris","conmed","globus medical","nuvasive","integra lifesciences","penumbra$","abiomed","karl storz","arthrex","exactech","butterfly network","outset medical","shockwave medical","inari medical","axonics","tandem diabetes","varian"]},{key:"mental-health",label:"Mental Health",group:"health",kind:"industry",words:["mental health","behavioral health","psychologist(s)","psychiatrist(s)","psychiatry","psychiatric","psychotherapist(s)","psychotherapy","therapist(s)","lmft","lcsw","lpc","lmhc","lcpc","lpcc","psyd","licensed clinical social worker(s)","clinical social worker(s)","licensed professional counselor(s)","marriage and family therapist(s)","mental health counselor(s)","addiction counselor(s)","addiction treatment","addiction medicine","substance abuse","behavioral therapist(s)","aba therapist(s)","applied behavior analysis","bcba","eating disorder(s)","emdr","cognitive behavioral therapy","teletherapy","online therapy"],companies:["betterhelp","talkspace","headspace","lyra health","spring health","modern health","acadia healthcare","nami$","national alliance on mental illness","the jed foundation","crisis text line"],not:["physical therapist(s)","physical therapy","occupational therapist(s)","occupational therapy","respiratory therapist(s)","respiratory therapy","massage therapist(s)","massage therapy","speech therapist(s)","speech therapy","radiation therapist(s)","radiation therapy","infusion therapy"]},{key:"fitness-wellness",label:"Fitness & Wellness",group:"health",kind:"industry",words:["fitness","gym(s)","personal trainer(s)","personal training","fitness coach","fitness coaches","strength and conditioning","crossfit","pilates","yoga","yoga teacher(s)","yoga instructor(s)","wellness","massage therapist(s)","massage therapy","nutritionist(s)","dietitian(s)","registered dietitian(s)","health coach","health coaches","wellness coach","wellness coaches","meditation","mindfulness","group fitness","fitness instructor(s)","bodybuilding","athletic trainer(s)"],companies:["planet fitness","la fitness","equinox$","equinox fitness","orangetheory","orange theory","f45","crunch fitness","anytime fitness","golds gym","24 hour fitness","life time fitness","soulcycle","peloton","barrys bootcamp","corepower yoga","club pilates","xponential fitness","whoop$","oura$","strava","myfitnesspal","noom$","weightwatchers","ww international","beachbody","hydrow","tonal$","classpass","mindbody","ymca"],not:["corporate wellness","employee wellness","financial wellness",...o]},{key:"veterinary",label:"Veterinary & Animal Care",group:"health",kind:"industry",words:["veterinary","veterinarian(s)","veterinary medicine","veterinary technician(s)","veterinary assistant(s)","vet tech(s)","vet assistant(s)","vet clinic(s)","vet hospital(s)","emergency vet","dvm","animal hospital(s)","animal clinic(s)","pet hospital(s)","animal care","animal shelter(s)","animal rescue","animal welfare","animal control","pet care","pet grooming","pet groomer(s)","dog groomer(s)","groomer(s)","dog trainer(s)","dog training","pet sitter(s)","pet sitting","dog walker(s)","kennel(s)","doggy daycare","zookeeper(s)","zoo(s)","aquarium(s)","equine","farrier(s)","animal behaviorist(s)"],companies:["banfield","vca$","vca animal hospitals","bluepearl","mars veterinary health","national veterinary associates","thrive pet healthcare","heartland veterinary partners","petvet care centers","idexx","elanco","aspca","humane society","best friends animal society","rover$","trupanion","american veterinary medical association"],not:[...o]},{key:"k12",label:"K-12 Education",group:"education",kind:"industry",words:["k 12","k12","elementary school(s)","middle school(s)","high school(s)","junior high","primary school(s)","secondary school(s)","public school(s)","charter school(s)","private school(s)","school district(s)","independent school district","isd","montessori","preschool(s)","pre k","prek","kindergarten","early childhood","teacher(s)","substitute teacher(s)","assistant principal(s)","vice principal(s)","school principal(s)","head of school","headmaster","superintendent of schools","school superintendent(s)","school board","guidance counselor(s)","school counselor(s)","school psychologist(s)","school nurse(s)","special education","special ed","ese teacher(s)","sped","paraprofessional(s)","homeschool","tutor(s)","tutoring","intermediate school(s)","preparatory school(s)","prep school(s)"],names:["elementary"],companies:["teach for america","kipp","success academy","idea public schools","khan academy","kumon","sylvan learning","mathnasium","huntington learning","varsity tutors","connections academy","kindercare","bright horizons","learning care group"],not:["yoga teacher(s)","dance teacher(s)","piano teacher(s)"]},{key:"higher-ed",label:"Higher Education",group:"education",kind:"industry",words:["university","universities","universidad","college","colleges","community college(s)","higher education","higher ed","academia","professor(s)","assistant professor(s)","associate professor(s)","adjunct professor(s)","adjunct faculty","adjunct instructor(s)","lecturer(s)","senior lecturer(s)","faculty member(s)","postdoc(s)","postdoctoral","post doctoral","phd candidate(s)","phd student(s)","doctoral candidate(s)","doctoral student(s)","graduate student(s)","grad student(s)","graduate assistant(s)","graduate research assistant(s)","research assistant(s)","graduate teaching assistant(s)","provost","dean of","associate dean(s)","assistant dean(s)","registrar","bursar","financial aid","admissions counselor(s)","college admissions","university admissions","student affairs","residence life","academic advisor(s)","academic advising","career services","alumni relations","tenure track","tenured","chancellor","vice chancellor","undergraduate","undergrad","mba candidate(s)","mba student(s)","business school(s)","school of business","law school(s)","school of law","medical school(s)","school of medicine","graduate school(s)","school of management"],companies:["mit$","massachusetts institute of technology","caltech","california institute of technology","georgia tech","georgia institute of technology","virginia tech","texas a&m","ucla$","uc berkeley","uc davis","uc san diego","uc irvine","purdue$","purdue global","rutgers","cornell$","yale$","princeton$","harvard$","harvard business school","harvard law school","harvard medical school","harvard kennedy school","stanford$","stanford gsb","penn state","ohio state$","arizona state$","georgetown$","vanderbilt$","emory$","tulane$","wharton$","wharton school","kellogg school of management","insead","london business school","columbia business school","mit sloan","duke$","coursera","edx$"],not:["college park","college hunks","credit union(s)","university health","health system(s)","hospital(s)","medical center(s)"]},{key:"marketing-advertising",label:"Marketing & Advertising",group:"media",kind:"function",words:["ad agency","ad agencies","advertising agency","advertising agencies","digital agency","digital agencies","creative agency","creative agencies","marketing agency","marketing agencies","marketing firm(s)","media agency","media agencies","martech","adtech","ad tech"],roles:["marketing","marketer(s)","advertising","branding","brand strategy","brand strategist(s)","brand manager(s)","brand marketing","copywriter(s)","copywriting","seo","sem","ppc","search engine optimization","paid media","paid social","paid search","performance marketing","growth marketing","digital marketing","content marketing","email marketing","social media marketing","social media manager(s)","influencer marketing","affiliate marketing","demand generation","demand gen","lifecycle marketing","product marketing","marketing operations","marketing ops","media buyer(s)","media buying","media planner(s)","media planning","programmatic","ad operations","ad ops","market research"],companies:["wpp$","omnicom","publicis","interpublic","ipg$","ipg mediabrands","dentsu","havas","ogilvy","bbdo","tbwa","mccann$","mccann worldgroup","leo burnett","saatchi","grey group","droga5","wieden & kennedy","r ga","vaynermedia","vayner media","vaynerx","the trade desk","mediamonks","media monks","monks$","razorfish","digitas","wunderman thompson","vml","vmly&r","groupm","group m","mindshare$","mindshare worldwide","wavemaker","horizon media","starcom","spark foundry","kantar","nielsen$","nielsen holdings","nielseniq","ipsos","semrush","criteo","taboola","outbrain","applovin","integral ad science","doubleverify","magnite","pubmatic","72andsunny","crispin porter","goodby silverstein","isobar","iprospect","merkle$","acxiom"]},{key:"pr-comms",label:"PR & Communications",group:"media",kind:"function",words:["pr agency","pr agencies","pr firm(s)","public relations agency","public relations agencies","public relations firm(s)","communications agency","communications agencies","communications firm(s)"],roles:["public relations","pr manager(s)","pr director(s)","pr specialist(s)","pr lead","pr strategist(s)","pr professional(s)","pr executive(s)","pr comms","pr communications","comms","corporate communications","strategic communications","internal communications","external communications","crisis communications","marketing communications","communications manager(s)","communications director(s)","director of communications","head of communications","communications specialist(s)","communications coordinator(s)","communications lead","communications strategist(s)","vp communications","vp of communications","media relations","press secretary","spokesperson","spokeswoman","spokesman","publicist(s)"],names:["pr"],companies:["edelman$","weber shandwick","fleishmanhillard","fleishman hillard","ketchum$","burson","bcw$","hill & knowlton","brunswick group","finsbury","teneo$","golin$","porter novelli","ruder finn","apco worldwide","sard verbinnen","kekst","mww$","praytell","prosek","zeno group","allison worldwide","cision","meltwater","muck rack","pr newswire","business wire"]},{key:"media-publishing",label:"Media & Publishing",group:"media",kind:"industry",words:["journalist(s)","journalism","reporter(s)","editor(s)","editor in chief","managing editor(s)","copy editor(s)","news","newsroom(s)","newspaper(s)","magazine(s)","publishing","publisher(s)","book publishing","broadcast journalist(s)","news anchor(s)","correspondent(s)","columnist(s)","staff writer(s)","freelance writer(s)","podcast(s)"],companies:["new york times","nyt$","washington post","wall street journal","wsj$","dow jones","news corp","gannett","usa today","tribune","hearst","conde nast","axel springer","politico","axios","the atlantic$","vox media","buzzfeed","vice media","bustle","the athletic$","bloomberg$","reuters","thomson reuters","associated press","cnn$","msnbc","cbs news","abc news","npr$","national public radio","bbc","the guardian$","the economist","financial times","forbes$","forbes media","fortune$","business insider","insider$","techcrunch","the verge$","wired$","penguin random house","harpercollins","simon & schuster","hachette","macmillan publishers","macmillan learning","scholastic","mcgraw hill","pearson$","wiley$","john wiley","elsevier","springer nature","sinclair broadcast","nexstar","tegna","iheartmedia","audacy"],not:["video editor(s)","photo editor(s)","film editor(s)","newport news","good news"]},{key:"creator-economy",label:"Creator Economy",group:"media",kind:"industry",words:["content creator(s)","creator economy","digital creator(s)","ugc","ugc creator(s)","influencer(s)","youtuber(s)","tiktoker(s)","streamer(s)","podcast(s)","podcaster(s)","podcast host(s)","podcasting","blogger(s)","vlogger(s)","creator partnership(s)","influencer marketing","content creation"],companies:["youtube","tiktok","bytedance","snap$","patreon","substack","twitch$","linktree","kajabi","teachable","cameo$","whop$","beehiiv","convertkit","jellysmack","dude perfect","mrbeast","beast industries","fourthwall","captiv8","creatoriq","ltk$","rewardstyle"]},{key:"film-tv-music",label:"Film, TV & Music",group:"entertainment",kind:"industry",words:["film","films","filmmaker(s)","filmmaking","film production","movie(s)","motion picture(s)","cinematographer(s)","cinematography","screenwriter(s)","screenwriting","showrunner(s)","tv","television","broadcasting","post production","vfx","visual effects","animator(s)","animation studio(s)","music","musician(s)","songwriter(s)","record label(s)","recording artist(s)","recording studio(s)","music producer(s)","audio engineer(s)","sound engineer(s)","dj","djs","actor(s)","actress","actresses","casting director(s)","talent agency","hollywood","production company","production companies","theatre","theater","broadway","performing arts","live music","music festival(s)","orchestra","symphony","opera","video editor(s)","film editor(s)"],names:["records","pictures"],companies:["netflix","disney","walt disney","pixar","lucasfilm","marvel","warner bros","warner music","wbd$","hbo","paramount$","paramount global","paramount pictures","paramount skydance","nbcuniversal","nbc universal","universal music","umg$","sony$","lionsgate","mgm$","metro goldwyn mayer","a24","blumhouse","legendary entertainment","dreamworks","fox$","fox corporation","fox entertainment","20th century","amc networks","regal cinemas","cinemark","imax","roku","hulu","peacock$","spotify","soundcloud","siriusxm","sirius xm","live nation","ticketmaster","aeg$","aeg presents","caa$","creative artists agency","wme$","william morris endeavor","united talent agency","def jam","interscope","bmg$","ascap","recording academy","viacom","cbs$","cbs studios","showtime","starz","a&e networks","univision","telemundo","tubi$","crunchyroll","illumination entertainment","skydance"],not:["home theater","home theatre","operating theatre","medical records","window film","window tint","plastic film","threat actor(s)","bad actor(s)",...o]},{key:"gaming-esports",label:"Gaming & Esports",group:"entertainment",kind:"industry",words:["gaming","video game(s)","videogame(s)","game developer(s)","game development","game designer(s)","game design","game studio(s)","game artist(s)","game producer(s)","gameplay","esports","e sports","esport","unreal engine","unity developer(s)","level designer(s)","game engine(s)","indie game(s)","mobile games","mobile gaming","pro gamer(s)","professional gamer(s)","twitch streamer(s)"],companies:["electronic arts","ea$","ea sports","activision","blizzard entertainment","riot games","epic games","valve$","valve corporation","ubisoft","nintendo","playstation","xbox","take two","rockstar games","2k$","2k games","bungie","bethesda softworks","bethesda game studios","zynga","roblox","unity$","unity technologies","supercell","king digital","niantic","square enix","bandai namco","sega","capcom","konami","nexon","netease games","tencent games","scopely","playtika","jam city","moon active","twitch$","faze clan","team liquid","100 thieves","cloud9","optic gaming","dreamhack","gamestop","mojang","insomniac games","naughty dog","respawn entertainment"],not:["casino(s)","sportsbook(s)","sports betting","igaming","gaming commission","gaming control","slot machine(s)",...o]},{key:"sports",label:"Sports",group:"entertainment",kind:"industry",words:["sports","athlete(s)","athletics","athletic director(s)","athletic trainer(s)","professional athlete(s)","pro athlete(s)","nfl","nba","mlb","nhl","wnba","ncaa","nwsl","pga","lpga","nascar","ufc","wwe","fifa","olympic(s)","olympian(s)","football","basketball","baseball","soccer","hockey","golf","tennis","volleyball","lacrosse","softball","wrestling","rugby","boxing","mma","track and field","head coach","head coaches","assistant coach","assistant coaches","sports marketing","sports medicine","sports management","sports business","sports betting","sportsbook(s)","fantasy sports","stadium(s)","sports broadcaster(s)","sportscaster(s)"],companies:["national football league","national basketball association","major league baseball","national hockey league","major league soccer","espn","cbs sports","turner sports","dazn","the athletic$","bleacher report","barstool sports","draftkings","fanduel","fanatics","img academy","wasserman$","wasserman media","excel sports","klutch sports","genius sports","sportradar","hudl","special olympics","arizona cardinals","atlanta falcons","baltimore ravens","buffalo bills","carolina panthers","chicago bears","cincinnati bengals","cleveland browns","dallas cowboys","denver broncos","detroit lions","green bay packers","houston texans","indianapolis colts","jacksonville jaguars","kansas city chiefs","las vegas raiders","los angeles chargers","los angeles rams","miami dolphins","minnesota vikings","new england patriots","new orleans saints","new york giants","new york jets","philadelphia eagles","pittsburgh steelers","san francisco 49ers","seattle seahawks","tampa bay buccaneers","tennessee titans","washington commanders","atlanta hawks","boston celtics","brooklyn nets","charlotte hornets","chicago bulls","cleveland cavaliers","dallas mavericks","denver nuggets","detroit pistons","golden state warriors","houston rockets","indiana pacers","la clippers","los angeles clippers","los angeles lakers","memphis grizzlies","miami heat","milwaukee bucks","minnesota timberwolves","new orleans pelicans","new york knicks","oklahoma city thunder","orlando magic","philadelphia 76ers","phoenix suns","portland trail blazers","sacramento kings","san antonio spurs","toronto raptors","utah jazz","washington wizards","arizona diamondbacks","atlanta braves","baltimore orioles","boston red sox","chicago cubs","chicago white sox","cincinnati reds","cleveland guardians","colorado rockies","detroit tigers","houston astros","kansas city royals","los angeles angels","los angeles dodgers","miami marlins","milwaukee brewers","minnesota twins","new york mets","new york yankees","oakland athletics","philadelphia phillies","pittsburgh pirates","san diego padres","san francisco giants","seattle mariners","st louis cardinals","tampa bay rays","texas rangers baseball","toronto blue jays","washington nationals","anaheim ducks","boston bruins","buffalo sabres","calgary flames","carolina hurricanes","chicago blackhawks","colorado avalanche","columbus blue jackets","dallas stars","detroit red wings","edmonton oilers","florida panthers","los angeles kings","minnesota wild","montreal canadiens","nashville predators","new jersey devils","new york islanders","new york rangers","ottawa senators","philadelphia flyers","pittsburgh penguins","san jose sharks","seattle kraken","st louis blues","tampa bay lightning","toronto maple leafs","utah mammoth","utah hockey club","vancouver canucks","vegas golden knights","washington capitals","winnipeg jets","atlanta united fc","austin fc","charlotte fc","chicago fire fc","fc cincinnati","colorado rapids","columbus crew","dc united","d c united","fc dallas","houston dynamo","inter miami","la galaxy","lafc","los angeles fc","minnesota united fc","cf montreal","nashville sc","new england revolution","new york city fc","new york red bulls","orlando city sc","orlando city soccer","philadelphia union$","portland timbers","real salt lake","san diego fc","san jose earthquakes","seattle sounders","sporting kansas city","st louis city sc","toronto fc","vancouver whitecaps"],not:["cricket wireless","alumni","alum","veteran(s)","soccer mom(s)","hockey mom(s)","baseball mom(s)","football mom(s)","sports mom(s)","soccer dad(s)","hockey dad(s)","sports dad(s)",...o]},{key:"ecommerce-retail",label:"E-commerce & Retail",group:"consumer",kind:"industry",words:["e commerce","ecommerce","ecom","online store(s)","online retail","online retailer(s)","retail","retailer(s)","amazon seller(s)","amazon fba","fba","dtc","d2c","direct to consumer","marketplace seller(s)","store manager(s)","retail associate(s)","merchandising","merchandiser(s)","visual merchandiser(s)","retail buyer(s)","category manager(s)","omnichannel","loss prevention","cashier(s)","grocery","supermarket(s)","convenience store(s)","department store(s)"],companies:["amazon$","amazon com","walmart","target$","target corporation","costco","home depot","lowes$","best buy","kroger","albertsons","safeway","whole foods","trader joes","aldi$","walgreens","cvs health","macys","nordstrom","kohls","tj maxx","tjx","ross stores","dollar general","dollar tree","family dollar","ikea","wayfair","etsy","ebay","shopify","chewy","instacart","temu$","shein","alibaba","zappos","sephora","ulta","bath & body works","victorias secret","gap$","gap inc","old navy","banana republic","h&m","zara$","inditex","uniqlo","petsmart","petco","dicks sporting goods","academy sports","sams club","7 eleven","circle k","office depot","whatnot","poshmark","depop","stockx","bigcommerce","woocommerce"],not:["retail banking","retail bank(s)","retail investor(s)","retail real estate"]},{key:"consumer-goods",label:"Consumer Goods",group:"consumer",kind:"industry",words:["cpg","consumer goods","consumer packaged goods","consumer products","fmcg","packaged food(s)","beverage brand(s)","beverage company","brewery","breweries","winery","wineries","distillery","distilleries","craft beer","cosmetics","skincare","skin care","beauty brand(s)","fragrance(s)","apparel","fashion","fashion brand(s)","fashion designer(s)","footwear","jewelry","jewellery","consumer electronics","toy company","toys","home goods","household products","personal care","pet food","confectionery","dtc brand(s)"],companies:["procter & gamble","p&g","unilever","nestle","pepsico","pepsi","coca cola","kraft heinz","general mills","kelloggs","kellanova","mondelez","mars$","mars wrigley","hershey$","hershey company","colgate palmolive","kimberly clark","clorox","church & dwight","estee lauder","loreal","lvmh","kering","nike","adidas","puma$","under armour","lululemon","new balance","levi strauss","levis$","ralph lauren","tapestry$","michael kors","pvh$","tommy hilfiger","calvin klein","hanesbrands","vf$","the north face","patagonia","yeti$","kenvue","haleon","reckitt","henkel","beiersdorf","shiseido","coty$","revlon","elf beauty","glossier","fenty","rare beauty","olaplex","anheuser busch","ab inbev","molson coors","constellation brands","diageo","pernod ricard","bacardi","brown forman","boston beer","heineken","red bull","monster beverage","celsius holdings","keurig dr pepper","tyson foods","conagra","campbell$","hormel","smucker","j m smucker","post holdings","danone","chobani","hasbro","mattel","lego","spin master","funko","dyson$","whirlpool","sharkninja","newell brands","energizer","duracell","gillette","dollar shave club","warby parker","allbirds"],not:["personal care aide(s)","personal care assistant(s)"]},{key:"restaurants",label:"Restaurants & Food Service",group:"consumer",kind:"industry",words:["restaurant(s)","restaurateur(s)","chef(s)","sous chef(s)","executive chef(s)","head chef(s)","pastry chef(s)","line cook(s)","culinary","catering","caterer(s)","food service","foodservice","food truck(s)","bakery","bakeries","pastry","cafe(s)","coffee shop(s)","barista(s)","bartender(s)","bartending","mixologist(s)","sommelier(s)","waiter(s)","waitress","waitresses","front of house","back of house","qsr","quick service restaurant(s)","fast casual","fast food","pizzeria","diner","bistro","brewpub","taproom","grill","steakhouse","tavern","eatery","bbq","sushi","taqueria"],companies:["mcdonalds","starbucks","chick fil a","chipotle","taco bell","yum brands","kfc$","pizza hut","dominos","papa johns","subway$","wendys","burger king","restaurant brands international","popeyes","tim hortons","dunkin","panera","darden","olive garden","bloomin brands","outback steakhouse","texas roadhouse","cheesecake factory","chilis","brinker","applebees","dine brands","ihop$","dennys","cracker barrel","red lobster","shake shack","sweetgreen","cava group","wingstop","raising canes","five guys","in n out","jersey mikes","jimmy johns","firehouse subs","zaxbys","sysco","us foods","aramark","compass group","sodexo","gordon food service","doordash","grubhub","opentable","first watch","buffalo wild wings","dave & busters"]},{key:"hospitality-travel",label:"Hospitality & Travel",group:"consumer",kind:"industry",words:["hospitality","hotel(s)","hotelier(s)","resort(s)","motel(s)","inn","lodging","vacation rental(s)","short term rental(s)","airbnb host(s)","travel","travel agent(s)","travel agency","travel agencies","travel advisor(s)","tourism","tour operator(s)","tour guide(s)","cruises","cruise line(s)","cruise ship(s)","cruise director(s)","airline(s)","flight attendant(s)","airline pilot(s)","commercial pilot(s)","concierge","guest services","guest experience","event planner(s)","event planning","wedding planner(s)","venue(s)","theme park(s)","amusement park(s)","casino(s)","bed and breakfast","b&b","hostel(s)","timeshare(s)"],companies:["marriott","hilton$","hilton hotels","hilton worldwide","hilton grand vacations","hyatt","ihg$","intercontinental hotels","wyndham","choice hotels","best western","accor$","four seasons","ritz carlton","mgm resorts","caesars","wynn","las vegas sands","hard rock","airbnb","vrbo","expedia","booking com","booking holdings","priceline","kayak$","tripadvisor","navan$","delta air lines","delta airlines","american airlines","united airlines","southwest airlines","jetblue","alaska airlines","spirit airlines","frontier airlines","allegiant","hawaiian airlines","lufthansa","british airways","emirates$","qatar airways","air canada","carnival$","carnival cruise","carnival corporation","royal caribbean","norwegian cruise line","universal destinations","universal parks","seaworld","united parks","six flags","cedar fair","legoland","great wolf lodge","omni hotels","loews hotels","kimpton","vacasa","evolve vacation","hertz","enterprise rent a car","enterprise mobility","avis","aimbridge","highgate hotels","sabre$"],not:["travel nurse(s)","travel nursing","travel therapist(s)","travel rn","travel healthcare","concierge medicine","concierge doctor(s)",...o]},{key:"beauty-personal-care",label:"Beauty & Personal Care",group:"consumer",kind:"industry",words:["salon(s)","hair salon(s)","nail salon(s)","beauty salon(s)","salon owner(s)","hair stylist(s)","hairstylist(s)","hairdresser(s)","barber(s)","barbershop(s)","barber shop(s)","master barber(s)","esthetician(s)","aesthetician(s)","cosmetologist(s)","cosmetology","nail technician(s)","nail tech(s)","manicurist(s)","lash artist(s)","lash technician(s)","lash extensions","brow artist(s)","microblading","makeup artist(s)","med spa(s)","medspa(s)","medical spa(s)","day spa(s)","beauty school(s)","skin care specialist(s)","skincare specialist(s)","hair removal","tanning salon(s)","spray tan"],companies:["great clips","supercuts","sport clips","fantastic sams","regis$","drybar","european wax center","sola salon studios","sola salons","ideal image","hand & stone","massage envy","the lash lounge"],not:["salon com","salon media","barber foods","barber motorsports","barber nichols",...o]},{key:"logistics",label:"Logistics & Supply Chain",group:"industry",kind:"industry",words:["logistics","supply chain","freight","freight broker(s)","freight brokerage","trucking","truck driver(s)","cdl","truck dispatcher(s)","freight dispatcher(s)","fleet manager(s)","shipping","warehouse","warehouses","warehousing","distribution center(s)","fulfillment","fulfillment center(s)","order fulfillment","last mile","3pl","third party logistics","transportation management","freight forwarding","freight forwarder(s)","customs broker(s)","customs brokerage","import export","maritime","rail freight","railroad(s)","courier(s)","delivery driver(s)","forklift","material handler(s)","logistician(s)"],companies:["fedex","ups$","united parcel service","usps$","united states postal service","dhl","xpo","ch robinson","c h robinson","j b hunt","jb hunt","schneider national","werner enterprises","knight swift","old dominion freight","ryder","penske logistics","penske truck","maersk","flexport","uber freight","project44","fourkites","samsara$","manhattan associates","blue yonder","kinaxis","expeditors","kuehne nagel","db schenker","geodis","ceva logistics","gxo","union pacific","bnsf","csx$","norfolk southern","landstar","echo global logistics","coyote logistics","tql$","total quality logistics","estes express","saia$","shipbob","shipmonk","ontrac","lasership"],not:["data warehouse(s)","data warehousing"]},{key:"manufacturing",label:"Manufacturing",group:"industry",kind:"industry",words:["manufacturing","manufacturer(s)","factory worker(s)","factory manager(s)","factory floor","plant manager(s)","production supervisor(s)","machinist(s)","cnc","cnc machinist(s)","cnc programmer(s)","welder(s)","welding","fabrication","fabricator(s)","metal fabrication","assembly line","industrial engineer(s)","manufacturing engineer(s)","process engineer(s)","lean manufacturing","injection molding","plastics","machining","industrial automation","tool and die","chemical company","chemical manufacturing","specialty chemicals","industrial manufacturing","steel","aluminum","semiconductor manufacturing"],companies:["general electric","ge$","honeywell","3m$","3m company","siemens$","caterpillar","john deere","deere & company","emerson electric","emerson$","rockwell automation","parker hannifin","eaton$","eaton corporation","illinois tool works","itw$","dover$","cummins$","cummins inc","paccar","dow$","dow chemical","dupont$","dupont de nemours","basf","lyondellbasell","eastman chemical","celanese","nucor","us steel","united states steel","alcoa","jabil","flex$","foxconn","hon hai","tsmc$","taiwan semiconductor","applied materials","lam research","asml","corning","owens corning","ppg","sherwin williams","kohler$","stanley black & decker","milwaukee tool","bosch","abb$","schneider electric","mitsubishi$","hitachi","komatsu","trane","carrier global","lennox$","lennox international","johnson controls","westinghouse"]},{key:"energy",label:"Energy & Utilities",group:"industry",kind:"industry",words:["energy","utilities","utility company","utility companies","electric utility","power plant(s)","power generation","power grid","transmission and distribution","oil and gas","oil","petroleum","natural gas","lng","drilling","refinery","refineries","oil pipeline(s)","gas pipeline(s)","renewable energy","renewables","solar","solar panel(s)","photovoltaic","wind energy","wind power","wind farm(s)","offshore wind","hydroelectric","hydrogen","nuclear energy","nuclear power","nuclear plant(s)","geothermal","battery storage","energy storage","ev charging","lineman","linemen","lineworker(s)","energy efficiency","cleantech","clean energy","carbon capture","petroleum engineer(s)","reservoir engineer(s)","landman","roughneck(s)"],companies:["exxonmobil","exxon","chevron","shell$","shell plc","shell oil","bp$","conocophillips","occidental petroleum","marathon petroleum","valero","phillips 66","halliburton","schlumberger","slb$","baker hughes","kinder morgan","enterprise products","southern company","edison international","entergy","aep$","american electric power","exelon","sunrun","sunpower","sunnova","enphase","orsted","ørsted","vestas","siemens gamesa","ge vernova","brookfield renewable","invenergy","avangrid","plug power"],not:["energy drink(s)","monster energy","energy healer(s)","energy healing","energy work","positive energy","high energy","olive oil","essential oil(s)","oil painting(s)","oil painter(s)","offensive lineman","defensive lineman"]},{key:"automotive",label:"Automotive",group:"industry",kind:"industry",words:["automotive","dealership(s)","car dealership(s)","auto dealership(s)","auto dealer(s)","car dealer(s)","car sales","auto sales","automobile(s)","auto parts","auto repair","auto body","collision repair","automotive technician(s)","auto mechanic(s)","car mechanic(s)","diesel mechanic(s)","service advisor(s)","f&i","electric vehicle(s)","autonomous vehicle(s)","autonomous driving","self driving","adas","motorsport(s)","car wash","car washes","tire","tires","ev charging"],companies:["tesla","ford$","ford motor","general motors","stellantis","chrysler","jeep$","toyota","honda","nissan","hyundai","kia$","kia motors","bmw","mercedes benz","volkswagen","audi$","porsche","volvo","subaru","mazda","rivian","lucid motors","lucid group","polestar","waymo","cruise automation","zoox","aurora innovation","carvana","carmax","autonation","penske automotive","lithia","autozone","pep boys","goodyear","bridgestone","michelin","firestone$","firestone complete auto care","magna international","aptiv","borgwarner","lear$","denso","harley davidson","polaris industries","cars com","autotrader","truecar","copart","manheim"],not:["customer service advisor(s)","client service advisor(s)","financial service advisor(s)","member service advisor(s)","guest service advisor(s)"]},{key:"agriculture",label:"Agriculture & Farming",group:"industry",kind:"industry",words:["agriculture","agricultural","agribusiness","agtech","ag tech","agronomy","agronomist(s)","farming","farmer(s)","farm(s)","farmland","farm manager(s)","farmworker(s)","farm worker(s)","ranching","rancher(s)","cattle","livestock","poultry","dairy farm(s)","dairy farmer(s)","aquaculture","fishery","fisheries","horticulture","horticulturist(s)","viticulture","grower(s)","crop science","crop production","crop protection","crop consultant(s)","precision agriculture","irrigation","hydroponics","vertical farming","agricultural engineer(s)","farm equipment","grain elevator(s)","fertilizer(s)","feed mill(s)","forestry","forester(s)"],companies:["cargill","archer daniels midland","bunge$","corteva","syngenta","nutrien","cf industries","agco$","land o lakes","farm credit","indigo ag","john deere","driscolls","dole food","fresh del monte","simplot","j r simplot","the mosaic company"],not:["state farm","farm bureau","farmers insurance","farmers mutual","farmers bank","farmers state bank","farmers national bank","farmers savings bank","farmers trust","farmers merchants","farmer mac","farmer bros","farmer brothers","farmers dog","server farm(s)","wind farm(s)","solar farm(s)","content farm(s)","link farm(s)","click farm(s)","troll farm(s)","bot farm(s)","farm to table","farm team(s)",...o]},{key:"aerospace-defense",label:"Aerospace & Defense",group:"defense",kind:"industry",words:["aerospace","aerospace engineer(s)","aerospace engineering","defense","defence","defense contractor(s)","defense industry","department of defense","dod","avionics","aviation","aircraft","aircraft mechanic(s)","a&p mechanic(s)","airframe","propulsion","rocketry","spacecraft","satellite(s)","space industry","space systems","launch vehicle(s)","missile(s)","munitions","weapons systems","uav","uavs","unmanned aircraft","unmanned aerial","counter uas","security clearance","top secret","ts sci","secret clearance","itar","flight test","flight software","astronaut(s)"],companies:["lockheed","northrop grumman","boeing","raytheon","rtx$","general dynamics","l3harris","l3 harris","bae systems","leidos","saic$","science applications international","booz allen","caci","mantech","parsons$","huntington ingalls","textron","bell textron","sikorsky","pratt & whitney","spacex","blue origin","rocket lab","relativity space","sierra space","axiom space","anduril","shield ai","palantir","kratos","aerovironment","elbit","thales","airbus","embraer","bombardier","gulfstream","cessna","spirit aerosystems","nasa$","national aeronautics and space administration","jpl$","jet propulsion laboratory","sandia","los alamos","lawrence livermore","mitre$","darpa","navair","navsea","united launch alliance","maxar","planet labs","curtiss wright","heico","transdigm","hexcel"],not:["defense attorney(s)","defense lawyer(s)","criminal defense","defense counsel","self defense","insurance defense","dui defense","legal defense","defense litigation","public defender(s)","satellite office(s)","satellite campus","satellite location(s)"]},{key:"military",label:"Military",group:"defense",kind:"industry",words:["military","army","navy","air force","marine corps","usmc","marines","coast guard","uscg","national guard","army national guard","air national guard","space force","armed forces","active duty","soldier(s)","airman","airmen","infantry","infantryman","paratrooper(s)","special forces","green beret(s)","navy seal(s)","army ranger(s)","commissioned officer(s)","noncommissioned officer(s)","nco","army officer(s)","naval officer(s)","navy officer(s)","air force officer(s)","marine officer(s)","drill sergeant(s)","sergeant major","platoon","battalion","squadron","reservist(s)","army reserve","navy reserve","air force reserve","rotc","cadet(s)","west point","naval academy","air force academy","military intelligence"],companies:["us army","u s army","united states army","us navy","u s navy","united states navy","us air force","u s air force","united states air force","usaf$","us marine corps","united states marine corps","us coast guard","united states coast guard","us space force","u s space force","united states space force","british army","royal navy","royal air force","raf$","royal marines","canadian armed forces","nato$"],not:["veteran(s)","military spouse(s)","salvation army","old navy","navy federal","navy blue","navy pier","army of","swiss army","battalion chief(s)"]},{key:"government",label:"Government & Public Sector",group:"defense",kind:"industry",words:["government","federal government","state government","local government","public sector","public servant(s)","civil servant(s)","civil service","municipal","municipality","municipalities","city council","council member(s)","councilmember(s)","councilwoman","councilman","city manager(s)","county manager(s)","county commissioner(s)","county commission","board of county commissioners","mayor","mayors office","legislator(s)","legislature","legislative","state senator(s)","state representative(s)","congressman","congresswoman","congressional","member of congress","house of representatives","white house","governors office","office of the governor","lieutenant governor","federal agency","state agency","government agency","government agencies","police","police officer(s)","police department(s)","sheriff","sheriffs office","deputy sheriff(s)","law enforcement","state trooper(s)","highway patrol","firefighter(s)","fire department(s)","fire rescue","fire chief(s)","battalion chief(s)","public safety","911 dispatcher(s)","emergency management","corrections officer(s)","correctional officer(s)","department of corrections","probation officer(s)","parole officer(s)","postal service","veterans affairs","foreign service","foreign service officer(s)","diplomat(s)","embassy","consulate","city planner(s)","urban planning","public administration","federal employee(s)","state employee(s)","public works","parks and recreation"],companies:["city of","county of","town of","township of","village of","borough of","commonwealth of","government of","usps$","united states postal service","internal revenue service","irs$","fbi$","federal bureau of investigation","cia$","central intelligence agency","nsa$","national security agency","department of homeland security","dhs$","fema$","tsa$","transportation security administration","us department of","u s department of","united states department of","department of veterans affairs","social security administration","us census bureau","census bureau","gao$","government accountability office","us senate","u s senate","united states senate","gsa$","general services administration","epa$","environmental protection agency","fda$","food and drug administration","cdc$","centers for disease control","nih$","national institutes of health","securities and exchange commission","ftc$","federal trade commission","fcc$","federal communications commission","state department","department of state","united nations","european commission","state of alabama","state of alaska","state of arizona","state of arkansas","state of california","state of colorado","state of connecticut","state of delaware","state of florida","state of georgia","state of hawaii","state of idaho","state of illinois","state of indiana","state of iowa","state of kansas","state of kentucky","state of louisiana","state of maine","state of maryland","state of massachusetts","state of michigan","state of minnesota","state of mississippi","state of missouri","state of montana","state of nebraska","state of nevada","state of new hampshire","state of new jersey","state of new mexico","state of new york","state of north carolina","state of north dakota","state of ohio","state of oklahoma","state of oregon","state of pennsylvania","state of rhode island","state of south carolina","state of south dakota","state of tennessee","state of texas","state of utah","state of vermont","state of virginia","state of washington","state of west virginia","state of wisconsin","state of wyoming"],not:["student government","city of hope","government affairs","government relations","government sales"]},{key:"legal",label:"Legal",group:"consulting",kind:"function",words:["law firm(s)","law office(s)","law group","legal services","attorney at law","attorneys at law","legaltech","legal tech","bar association"],roles:["law","lawyer(s)","attorney(s)","legal","esq","esquire","paralegal(s)","legal assistant(s)","legal secretary","litigator(s)","litigation","counsel","of counsel","legal counsel","associate attorney(s)","juris doctor","jd candidate(s)","law student(s)","law clerk(s)","judicial clerk(s)","circuit judge(s)","district judge(s)","federal judge(s)","magistrate(s)","district attorney(s)","public defender(s)","prosecutor(s)","e discovery","ediscovery","intellectual property","patent attorney(s)","patent agent(s)","notary public","mediator(s)","arbitrator(s)","arbitration"],companies:["kirkland & ellis","latham & watkins","skadden","baker mckenzie","dla piper","sidley austin","white & case","jones day","sullivan & cromwell","cravath","wachtell","davis polk","gibson dunn","paul weiss","simpson thacher","cooley$","cooley llp","wilson sonsini","goodwin procter","ropes & gray","morgan lewis","morgan & morgan","greenberg traurig","holland & knight","hogan lovells","norton rose fulbright","clifford chance","freshfields","linklaters","allen & overy","a&o shearman","mayer brown","king & spalding","orrick","perkins coie","fenwick & west","quinn emanuel","williams & connolly","weil gotshal","proskauer","debevoise","milbank","covington & burling","arnold & porter","mcdermott will","fish & richardson","foley & lardner","bryan cave","littler","jackson lewis","ogletree","fisher phillips","legalzoom","rocket lawyer","clio$","lexisnexis","westlaw"],not:["law enforcement","general counsel","in house counsel","corporate counsel","chief legal officer(s)","legal sea foods","legal & general"]},{key:"management-consulting",label:"Management Consulting",group:"consulting",kind:"function",words:["management consulting","strategy consulting","business consulting","operations consulting","mbb","big four","big 4"],roles:["management consultant(s)","strategy consultant(s)"],companies:["mckinsey","boston consulting group","bcg$","bcg x","bain$","bain & company","deloitte","accenture","pwc$","pricewaterhousecoopers","ey$","ey parthenon","ernst & young","kpmg","oliver wyman","kearney$","a t kearney","roland berger","l e k consulting","lek consulting","booz allen hamilton","capgemini","huron consulting","alvarez & marsal","fti consulting","guidehouse","protiviti","west monroe partners","slalom","zs associates","gartner","simon kucher","putnam associates","charles river associates","cornerstone research","analysis group","navigant","ankura","the bridgespan group","dalberg"]},{key:"hr-recruiting",label:"HR & Recruiting",group:"consulting",kind:"function",words:["staffing agency","staffing agencies","staffing firm(s)","staffing company","staffing companies","recruitment agency","recruitment agencies","recruiting agency","recruiting agencies","recruiting firm(s)","executive search","peo","professional employer organization","rpo","recruitment process outsourcing","workforce solutions","hr tech","hrtech","hr consulting"],roles:["human resources","human resource","hr","hris","hrbp","hr business partner(s)","people operations","people ops","people & culture","talent acquisition","talent management","recruiter(s)","recruiting","recruitment","technical recruiter(s)","headhunter(s)","staffing","talent sourcing","sourcer(s)","employer branding","compensation and benefits","total rewards","benefits administration","payroll","hr consultant(s)","shrm","shrm cp","shrm scp","sphr","phr","learning and development","l&d","organizational development","dei","diversity equity and inclusion","employee relations","labor relations"],companies:["robert half","randstad","adecco","manpowergroup","manpower$","kelly services","kforce","insight global","teksystems","aerotek","allegis","korn ferry","spencer stuart","heidrick","egon zehnder","russell reynolds","michael page","pagegroup","express employment","aya healthcare","amn healthcare","cross country healthcare","indeed$","glassdoor","ziprecruiter","adp$","automatic data processing","paychex","paylocity","paycom","paycor","ukg$","justworks","trinet","insperity","bamboohr","greenhouse software","culture amp","hirevue","cielo talent","alexander mann","hudson rpo","workday"],not:["24 hr"]},{key:"security-services",label:"Security Services",group:"consulting",kind:"function",words:["security company","security companies","security firm(s)","security services","private security","security guard company","guard services","security patrol","executive protection","close protection","alarm company","alarm monitoring"],roles:["security guard(s)","security officer(s)","armed security","unarmed security","armed guard(s)","unarmed guard(s)","bodyguard(s)","event security","campus security","site security","security supervisor(s)","personal protection","protection agent(s)","loss prevention officer(s)"],companies:["allied universal","securitas","gardaworld","garda world","g4s","adt$","adt security","brinks","brinks home","pinkerton","prosegur","vivint","simplisafe","us security associates","guardsmark"],not:["information security","cyber security","it security","data security","network security","cloud security","application security","managed security","national security","homeland security","social security","food security","job security","financial security","security clearance","security operations center","chief security officer(s)","security token(s)","security analyst(s)","security engineer(s)","security architect(s)","security researcher(s)"]},{key:"real-estate",label:"Real Estate",group:"realestate",kind:"industry",words:["real estate","realtor(s)","realty","real estate agent(s)","property management","property manager(s)","commercial real estate","cre","residential real estate","real estate investor(s)","real estate investing","real estate investment(s)","reit(s)","leasing agent(s)","leasing consultant(s)","leasing specialist(s)","apartment leasing","listing agent(s)","buyers agent(s)","title company","title insurance","escrow","land acquisition","real estate developer(s)","real estate development","property development","property developer(s)","multifamily","multi family","investment property","rental property","rental properties","home inspector(s)"],names:["properties"],companies:["keller williams","coldwell banker","re max","remax","century 21","compass$","redfin","zillow","opendoor","offerpad","berkshire hathaway homeservices","howard hanna","douglas elliman","corcoran$","corcoran group","cbre","jll$","jones lang lasalle","cushman & wakefield","colliers","newmark","marcus & millichap","eastdil","prologis","simon property group","greystar","equity residential","avalonbay","camden property","invitation homes","american homes 4 rent","costar","loopnet","apartments com","realpage","yardi","appfolio","wework","regus","iwg$","first american","fidelity national financial","fidelity national title","old republic title","stewart title"]},{key:"construction-trades",label:"Construction & Trades",group:"realestate",kind:"industry",words:["construction","general contractor(s)","roofing contractor(s)","building contractor(s)","licensed contractor(s)","electrical contractor(s)","plumbing contractor(s)","hvac contractor(s)","home builder(s)","homebuilder(s)","custom home builder(s)","construction superintendent(s)","site superintendent(s)","project superintendent(s)","general superintendent(s)","foreman","foremen","carpenter(s)","carpentry","electrician(s)","plumber(s)","plumbing","hvac","roofer(s)","roofing","masonry","drywall","concrete","excavation","paving","landscaping","landscaper(s)","landscape architect(s)","painting contractor(s)","handyman","remodeling","renovation(s)","home improvement","cabinetry","flooring","estimator(s)","preconstruction","civil engineer(s)","civil engineering","structural engineer(s)","structural engineering","architecture firm(s)","architectural","licensed architect(s)","registered architect(s)","bim","journeyman","journeymen","ironworker(s)","welder(s)","heavy equipment operator(s)","crane operator(s)","building inspector(s)"],names:["builders","contractors","contracting"],companies:["bechtel","fluor","kiewit","skanska","whiting turner","gilbane","mortenson","mccarthy building","hensel phelps","aecom","jacobs$","jacobs engineering","stantec","wsp$","wsp global","kimley horn","gensler","hok$","perkins&will","perkins and will","skidmore owings","lennar","dr horton","d r horton","pulte","pultegroup","toll brothers","nvr$","kb home","taylor morrison","meritage homes","david weekley homes","m i homes","ashton woods","vulcan materials","martin marietta","cemex","summit materials","quikrete","united rentals","sunbelt rentals","herc rentals","angi$","homeadvisor","thumbtack","emcor","quanta services","mastec","dycom","comfort systems","roto rooter","mr rooter"],not:["concrete results","under construction","brand builder(s)","team builder(s)","community builder(s)","government contractor(s)","defense contractor(s)","independent contractor(s)","government contracting","damage estimator(s)","collision estimator(s)","auto estimator(s)"]},{key:"charities",label:"Nonprofits & Charities",group:"nonprofit",kind:"industry",words:["nonprofit(s)","non profit(s)","not for profit","not for profits","501 c 3","501c3","ngo","ngos","charity","charities","charitable","philanthropy","philanthropies","philanthropic","humanitarian","grant writer(s)","grant writing","grants manager(s)","major gifts","annual giving","planned giving","donor relations","volunteer coordinator(s)","volunteer management","food bank(s)","food pantry","homeless shelter(s)","community organizer(s)","community foundation(s)","social services"],names:["foundation"],companies:["american red cross","red cross","united way","habitat for humanity","salvation army","goodwill$","goodwill industries","ymca","ywca","boys & girls club","big brothers big sisters","make a wish","feeding america","meals on wheels","unicef","save the children","world vision","doctors without borders","medecins sans frontieres","oxfam","world wildlife fund","the nature conservancy","sierra club","american cancer society","american heart association","alzheimers association","march of dimes","susan g komen","teach for america","americorps","peace corps","kiva$","givedirectly","wikimedia","aclu$","american civil liberties union","amnesty international","human rights watch","special olympics","national urban league","naacp","junior achievement","city year"],not:["foundation medicine","foundation capital","foundation building","foundation financial","foundation repair","foundation model(s)"]},{key:"social-work",label:"Social Work & Human Services",group:"nonprofit",kind:"industry",words:["social work","social worker(s)","msw","bsw","lmsw","human services","social services","child welfare","child protective services","foster care","adoption agency","adoption agencies","family services","youth services","community services","case worker(s)","caseworker(s)","family support","homeless services","housing assistance","refugee resettlement","domestic violence","victim advocate(s)","victim services","youth worker(s)","residential counselor(s)","direct support professional(s)","group home(s)","developmental disabilities","intellectual disabilities","reentry services","reentry specialist(s)"],companies:["catholic charities","volunteers of america","boys town","national association of social workers","nasw$","childrens home society"],not:[...o]},{key:"faith",label:"Faith & Ministry",group:"nonprofit",kind:"industry",words:["church","churches","ministry","ministries","pastor(s)","senior pastor(s)","associate pastor(s)","youth pastor(s)","worship leader(s)","worship pastor(s)","chaplain(s)","missionary","missionaries","ordained minister(s)","youth minister(s)","priest(s)","deacon(s)","diocese","archdiocese","parish","parishes","synagogue(s)","rabbi(s)","mosque(s)","imam(s)","seminary","seminarian(s)","theology","faith based","christian ministry"],companies:["the church of jesus christ","hillsong","cru$","campus crusade","young life","fellowship of christian athletes","intervarsity","samaritans purse","compassion international","focus on the family","world relief","catholic relief services","lutheran services"],not:["ministry of","ministries of"]}],c=new Set(["for","helping","helps","serving","serves","supporting","empowering"]),d=new Set(["school","college","university","universidad"]),m=/['‘’ʼ]/g,u=/^[\x00-\x7f]*$/,p=/[a-z0-9]+(?:&[a-z0-9]+)*/g,g=/[\p{L}\p{N}]+(?:&[\p{L}\p{N}]+)*/gu,h=/\p{M}+/gu;function y(e){let a=String(e??"").toLowerCase().replace(m,""),s=p;u.test(a)||(a=a.normalize("NFKD").replace(h,""),s=g);let r=[];for(let e of a.match(s)||[])"and"!==e&&r.push(e);return r}let f=e=>e.endsWith("(s)")?[e.slice(0,-3),`${e.slice(0,-3)}s`]:[e];l.length,l.map(e=>e.key).map((e,a)=>[e,a]),l.map(e=>"education"===e.group),l.map(e=>"function"===e.kind);let b=new Map,k=new Map,v=new Map,w=new Map,$=new Set,x=new Map,j=1;function z(e,a,s){for(let r of a||[])for(let a of f(r)){let r=y(a);if(!r.length)continue;let i=r.join(" "),n=e.get(i)||[];n.includes(s)||n.push(s),e.set(i,n);for(let e=1;e<r.length;e++)$.add(r.slice(0,e).join(" "));j=Math.max(j,r.length)}}l.forEach((e,a)=>{for(let s of(z(b,e.words,a),z(k,e.names,a),z("function"===e.kind?k:b,e.roles,a),"function"===e.kind&&z(w,e.roles,a),z(v,e.not,a),e.companies||[])){let e=s.endsWith("$"),r=y(e?s.slice(0,-1):s);if("the"===r[0]&&(r=r.slice(1)),!r.length)continue;let i=x.get(r[0])||[];i.push({words:r,exact:e,sector:a}),x.set(r[0],i)}}),Object.freeze([]);let S=new Set(["arena","stadium","center","centre","field","park","ballpark","dome","amphitheater","amphitheatre","theater","theatre","pavilion","forum","coliseum","speedway","performing"]),q=Object.freeze(i.INDUSTRIES.flatMap(e=>[e.key,...l.filter(a=>a.group===e.key).map(e=>e.key)])),C=function(e){let a=0x811c9dc5;for(let s=0;s<e.length;s++)a^=e.charCodeAt(s),a=Math.imul(a,0x1000193);return(a>>>0).toString(16).padStart(8,"0")}(JSON.stringify([3,[...c],[...d],[...S],l]));for(let e of l){for(let a of[e.words,e.roles,e.names,e.companies,e.not])a&&Object.freeze(a);Object.freeze(e)}Object.freeze(l),e.s(["DIRECTORY",0,l,"DIRECTORY_VERSION",0,C,"SECTOR_KEYS",0,q],77170);var E=e.i(46949);let R=Object.keys(n.SECTOR_BONUS);function T(e,{version:a=C}={}){let s;try{s=function(e){if(null==e)return{sectors:[],strength:"lean"};if("object"!=typeof e||Array.isArray(e))throw Error("Your sector must be a choice of sectors and a strength.");let a=e.sectors??[];if(!Array.isArray(a))throw Error("Sectors must be a list.");for(let e of a)if(!q.includes(e))throw Error(`There is no sector called '${String(e).slice(0,40)}'.`);let s=q.filter(e=>a.includes(e));if(s.length>3)throw Error("Pick up to 3 sectors.");let r=e.strength??"lean";if(!R.includes(r))throw Error("Strength is lean or strong.");return{sectors:s,strength:r}}(e)}catch{return"none"}return s.sectors.length?`${s.strength}:${s.sectors.join(",")}@${a}`:"none"}Object.freeze({sectors:Object.freeze([]),strength:"lean"}),Object.fromEntries(E.TIER_ORDER.map((e,a)=>[e,E.TIER_ORDER.length-a])),e.s(["MAX_SECTORS",0,3,"focusFingerprint",0,T,"sameFocus",0,(e,a)=>T(e)===T(a)],44944);let I=(e,a,s=`${a}s`)=>`${e.toLocaleString()} ${1===e?a:s}`,M=new Map(i.INDUSTRIES.map(e=>[e.key,l.filter(a=>a.group===e.key)])),O=new Map(l.map(e=>[e.key,e.group])),A=l.map(e=>({sector:e,label:e.label.toLowerCase(),words:[...e.words,...e.roles||[],...e.names||[],...e.companies].map(e=>` ${e.replace(/\(s\)$|\$$/,"").toLowerCase()}`)})),B="Counts firms in this line of work, not every company with someone in the job";function N({color:e,on:s,blocked:i,disabled:n,title:t,onClick:o,children:l}){return(0,a.jsxs)("button",{type:"button","aria-pressed":s,disabled:i||n,onClick:o,title:i?"Up to 3 sectors. Turn one off first.":t,style:{display:"flex",alignItems:"center",gap:7,padding:"6px 12px",borderRadius:999,maxWidth:"100%",fontSize:12.5,fontWeight:600,textAlign:"left",cursor:i?"not-allowed":"pointer",color:s?"var(--sd-fg-1, #fff)":i?"var(--sd-fg-5, #556)":"var(--sd-fg-2, #b8c4c4)",background:s?`${e}33`:"rgba(var(--sd-ink, 255, 255, 255), 0.04)",border:s?`1px solid ${e}`:r.LINE},children:[(0,a.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:e,opacity:i?.4:1,flexShrink:0}}),(0,a.jsx)("span",{children:l})]})}function W({state:e,chip:s}){let i={fontSize:12.5,marginTop:10};return e.loading?(0,a.jsx)(r.Body,{style:i,children:"Looking through your network for suggestions…"}):e.error?(0,a.jsxs)(r.Body,{style:i,children:["Couldn’t load suggestions (",e.error,"). You can still pick below."]}):e.scored?e.list.length?(0,a.jsxs)("div",{style:{marginTop:14},children:[(0,a.jsx)("div",{style:{fontSize:13,color:"var(--sd-fg-3, #8b9a9a)",marginBottom:6},children:"Suggested from your network"}),(0,a.jsx)("div",{role:"group","aria-label":"Suggested from your network",style:{display:"flex",flexWrap:"wrap",gap:8},children:e.list.map(e=>s(e.key,e.label,{note:`: ${I(e.people,"person","people")} at ${I(e.companies,"company","companies")}`,title:`In ${(0,t.sectorByKey)(e.group).label}`}))})]}):(0,a.jsx)(r.Body,{style:i,children:"None of the list’s sectors stands out among the people you’ve scanned yet."}):(0,a.jsx)(r.Body,{style:i,children:"Suggestions appear here once you’ve scanned your network."})}e.s(["default",0,function({sectors:e,onChange:n,disabled:o,suggest:l}){let[c,d]=(0,s.useState)(""),[m,u]=(0,s.useState)(()=>new Set(e.map(e=>O.get(e)||e))),p=(0,s.useMemo)(()=>{let e;return(e=c.trim().toLowerCase().replace(/\s+/g," "))?{industries:i.INDUSTRIES.filter(a=>a.label.toLowerCase().includes(e)),sectors:A.filter(a=>a.label.includes(e)||a.words.some(a=>a.includes(` ${e}`))).map(e=>e.sector)}:null},[c]);function g(a){let s=e.includes(a);if(!s&&e.length>=3)return;let r=s?e.filter(e=>e!==a):q.filter(s=>s===a||e.includes(s));!s&&O.has(a)&&u(e=>new Set(e).add(O.get(a))),n(r)}let h=e.length>=3,y=(s,r,{note:i,title:n}={})=>{let l=e.includes(s);return(0,a.jsxs)(N,{color:(0,t.sectorByKey)(s).color,on:l,blocked:!l&&h,disabled:o,title:n,onClick:()=>g(s),children:[r,i&&(0,a.jsx)("span",{style:{fontWeight:400,color:l?"var(--sd-fg-1, #dfe7e7)":"var(--sd-fg-3, #8b9a9a)"},children:i})]},s)};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:6},children:[(0,a.jsxs)("span",{style:{fontSize:13,color:"var(--sd-fg-3, #8b9a9a)"},children:["Your picks (",e.length," of ",3,"):"]}),!e.length&&(0,a.jsx)("span",{style:{fontSize:13,color:"var(--sd-fg-4, #667)"},children:"none yet"}),e.map(e=>{let s=(0,t.sectorByKey)(e);return(0,a.jsxs)("button",{type:"button",disabled:o,onClick:()=>g(e),"aria-label":`Remove ${s.label}`,style:{display:"flex",alignItems:"center",gap:6,padding:"4px 10px",borderRadius:999,fontSize:12.5,fontWeight:600,color:"var(--sd-fg-1, #fff)",background:`${s.color}33`,border:`1px solid ${s.color}`,cursor:"pointer"},children:[s.label," ",(0,a.jsx)("span",{"aria-hidden":"true",style:{color:"var(--sd-fg-2, #cfd8d8)"},children:"×"})]},e)})]}),l&&(0,a.jsx)(W,{state:l,chip:y}),(0,a.jsx)("label",{htmlFor:"sector-search",style:{display:"block",fontSize:13,color:"var(--sd-fg-3, #8b9a9a)",margin:"16px 0 6px"},children:"Find a sector"}),(0,a.jsxs)("div",{style:{display:"flex",gap:8},children:[(0,a.jsx)("input",{id:"sector-search",type:"search",value:c,onChange:e=>d(e.target.value),placeholder:"Try dentist, bakery or Stripe",autoComplete:"off",spellCheck:!1,style:{flex:1,minWidth:0,padding:"8px 12px",borderRadius:7,fontSize:14,color:"var(--sd-fg-1, #fff)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",border:r.LINE,outline:"none"}}),c&&(0,a.jsx)(r.Btn,{onClick:()=>d(""),children:"Clear"})]}),p?(0,a.jsx)("div",{style:{marginTop:10},"aria-live":"polite",children:p.industries.length+p.sectors.length===0?(0,a.jsxs)(r.Body,{style:{fontSize:12.5},children:["Nothing in the list matches “",c.trim(),"”. Try a job title, a kind of business or a company, or clear the search and pick one of the twelve broad industries."]}):(0,a.jsxs)("div",{role:"group","aria-label":"Sectors that match your search",style:{display:"flex",flexWrap:"wrap",gap:8},children:[p.industries.map(e=>y(e.key,e.label,{note:" · the whole industry"})),p.sectors.map(e=>y(e.key,e.label,{title:"function"===e.kind?B:`In ${(0,t.sectorByKey)(e.group).label}`}))]})}):(0,a.jsx)("div",{style:{marginTop:10},children:i.INDUSTRIES.map(s=>{let i=M.get(s.key),n=m.has(s.key),t=i.filter(a=>e.includes(a.key)).length;return(0,a.jsxs)("div",{style:{borderTop:r.LINE,padding:"8px 0"},children:[(0,a.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:8},children:[y(s.key,s.label,{title:"The whole industry: companies its sectors place, or whose name or the well-known list says so"}),(0,a.jsxs)("button",{type:"button","aria-expanded":n,"aria-controls":`sectors-${s.key}`,onClick:()=>{var e;return e=s.key,void u(a=>{let s=new Set(a);return s.has(e)?s.delete(e):s.add(e),s})},style:{padding:"4px 6px",fontSize:12.5,color:t?"var(--sd-fg-2, #9fd3ff)":"var(--sd-fg-3, #8b9a9a)",background:"none",border:"none",cursor:"pointer"},children:[n?"▾":"▸"," ",I(i.length,"sector"),t?` \xb7 ${t} picked`:""]})]}),n&&(0,a.jsx)("div",{id:`sectors-${s.key}`,role:"group","aria-label":`Sectors in ${s.label}`,style:{display:"flex",flexWrap:"wrap",gap:8,margin:"8px 0 2px 14px"},children:i.map(e=>y(e.key,e.label,"function"===e.kind?{title:B}:void 0))})]},s.key)})})]})}],98197)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94657,e=>{"use strict";var t=e.i(43476),n=e.i(71645),r=e.i(7837);let o=e=>`${e.name} ${e.was} → ${e.estimated?"estimated":e.now}`,l=e=>({padding:"6px 12px",borderRadius:7,cursor:"pointer",fontSize:12,fontWeight:700,border:e?"none":"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.15)",background:e?"linear-gradient(135deg, #00ff88, #3498DB)":"transparent",color:e?"#000":"var(--sd-fg-2, #cfd8d8)"});function s({onAnswered:e}){var a;let i,c,[d,u]=(0,n.useState)(null),[f,p]=(0,n.useState)(!1),[m,g]=(0,n.useState)(()=>new Set),[h,y]=(0,n.useState)(!1),[b,x]=(0,n.useState)(null);if((0,n.useEffect)(()=>{let e=!1;return(0,r.csvNetworkSource)().then(t=>t||e?null:fetch("/api/company-scores/legacy").then(e=>e.json())).then(t=>{!e&&t?.offer?.companies?.length&&(u(t.offer),g(new Set(t.offer.companies.map(e=>e.name))))}).catch(()=>{}),()=>{e=!0}},[]),!d)return null;let v=async t=>{y(!0),x(null);try{let n=await fetch("/api/company-scores/legacy",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({keep:t})}),r=await n.json();if(!n.ok&&!r.kept)throw Error(r.error||"Could not save your answer.");u(null),e?.({kept:r.kept||[],scored:r.scored||0,error:n.ok?null:r.error})}catch(e){x(e.message)}finally{y(!1)}};return(0,t.jsxs)("section",{"aria-label":"Built-in scores changed",style:{marginBottom:14,padding:14,borderRadius:10,border:"1px solid rgba(255,215,0,0.35)",background:"rgba(255,215,0,0.06)",fontSize:12.5,color:"var(--sd-fg-2, #cfd8d8)",lineHeight:1.6},children:[(0,t.jsx)("b",{style:{color:"var(--sd-fg-1, #fff)"},children:"Built-in scores changed in this version:"})," ",(i=(a=d.companies).slice(0,3).map(o).join(", "),(c=a.length-3)>0?`${i} and ${c} more`:i),"."," ","Keep any of the old ones as your own?",(0,t.jsx)("div",{style:{marginTop:4,color:"var(--sd-fg-3, #8b9a9a)"},children:"The built-in list now holds only companies most professionals would recognise, scored the same for everyone; anything else is estimated from your network. A score you keep is yours, like one you set below, and Auto hands it back."}),f&&(0,t.jsx)("ul",{style:{listStyle:"none",padding:0,margin:"10px 0 0",display:"grid",gap:4},children:d.companies.map(e=>(0,t.jsx)("li",{children:(0,t.jsxs)("label",{style:{display:"flex",gap:8,alignItems:"baseline",cursor:"pointer"},children:[(0,t.jsx)("input",{type:"checkbox",checked:m.has(e.name),disabled:h,onChange:()=>{let t;return t=e.name,g(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})}}),(0,t.jsxs)("span",{children:[(0,t.jsx)("b",{style:{color:"var(--sd-fg-1, #fff)"},children:e.name})," ",e.was," → ",e.estimated?`estimated (${e.now})`:e.now,(0,t.jsxs)("span",{style:{color:"var(--sd-fg-4, #778)"},children:[` \xb7 ${e.people} ${1===e.people?"person":"people"} there now`,e.names.length>1&&` \xb7 for ${e.names.join(", ")}`]})]})]})},e.name))}),(0,t.jsxs)("div",{style:{display:"flex",gap:8,marginTop:10,flexWrap:"wrap"},children:[f?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{disabled:h||!m.size,onClick:()=>v([...m]),style:{...l(!0),opacity:h||!m.size?.5:1},children:["Keep ",m.size," ",1===m.size?"score":"scores"]}),(0,t.jsx)("button",{disabled:h,onClick:()=>p(!1),style:l(!1),children:"Back"})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{disabled:h,onClick:()=>v(d.companies.map(e=>e.name)),style:l(!0),children:"Keep all"}),(0,t.jsx)("button",{disabled:h,onClick:()=>p(!0),style:l(!1),children:"Choose…"})]}),(0,t.jsx)("button",{disabled:h,onClick:()=>v([]),style:l(!1),children:"No thanks"})]}),b&&(0,t.jsx)("div",{role:"alert",style:{marginTop:8,color:"#e74c3c"},children:b})]})}let a="1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",i={yours:{label:"your score",color:"var(--sd-green, #00ff88)"},known:{label:"known list",color:"var(--sd-blue, #3498DB)"},data:{label:"public data",color:"#1abc9c"},network:{label:"estimated: many of your people",color:"var(--sd-orange, #FF6B35)"},default:{label:"unknown company",color:"var(--sd-fg-4, #778)"}};async function c(){let e=await fetch("/api/company-scores"),t=await e.json();if(!e.ok)throw Error(t.error||"Could not load company scores");return t.companies}function d(){let[e,t]=(0,n.useState)(null),[r,o]=(0,n.useState)(null);return(0,n.useEffect)(()=>{let e=!1;return c().then(n=>{e||t(n)}).catch(t=>{e||o(t.message)}),()=>{e=!0}},[]),{companies:e,error:r,setScore:(0,n.useCallback)(async(e,n)=>{let r=await fetch("/api/company-scores",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,score:n})}),o=await r.json();if(!r.ok)throw Error(o.error||"Could not save");return t(await c()),o},[]),reload:(0,n.useCallback)(async()=>t(await c()),[])}}function u({company:e,onSet:r,compact:o}){let[l,s]=(0,n.useState)(!1),i=async t=>{s(!0);try{await r(e.name,"auto"===t?null:Number(t))}finally{s(!1)}};return(0,t.jsxs)("select",{disabled:l,value:"yours"===e.source?String(e.score):"auto",onChange:e=>i(e.target.value),title:"Set this company's score. Auto uses the known list or an estimate.",style:{padding:o?"2px 4px":"4px 6px",borderRadius:6,border:a,background:"var(--sd-card, #11131c)",color:"var(--sd-fg-1, #dfe6e9)",fontSize:12},children:[(0,t.jsxs)("option",{value:"auto",children:["Auto (","yours"===e.source?e.suggested??"est.":e.score,")"]}),[10,9,8,7,6,5,4,3,2,1].map(e=>(0,t.jsx)("option",{value:e,children:e},e))]})}e.s(["ScorePicker",0,u,"default",0,function({onRescored:e,version:r=0}){let{companies:o,error:l,setScore:c,reload:f}=d();(0,n.useEffect)(()=>{r&&f().catch(()=>{})},[r,f]);let[p,m]=(0,n.useState)(""),[g,h]=(0,n.useState)("all"),[y,b]=(0,n.useState)(150),[x,v]=(0,n.useState)(null),w=e=>{v(e),setTimeout(()=>v(null),3500)},S=async(t,n)=>{let r=await c(t,n);w(`${t}: ${null==n?"back to auto":`set to ${n}`} \xb7 rescored ${r.scored} people`),e?.()},k=async({kept:t,scored:n,error:r})=>{if(!t.length)return w("Keeping the new built-in scores.");w(r||`Kept ${t.length} old ${1===t.length?"score":"scores"} as your own \xb7 rescored ${n} people`),await f().catch(()=>{}),e?.()},j=(0,n.useMemo)(()=>{if(!o)return[];let e=p.trim().toLowerCase();return o.filter(t=>(!e||t.name.toLowerCase().includes(e))&&("all"===g||t.source===g))},[o,p,g]);if(l)return(0,t.jsx)("div",{style:{padding:24,color:"#e74c3c"},children:l});if(!o)return(0,t.jsx)("div",{style:{padding:24,color:"var(--sd-fg-4, #778)"},children:"Loading companies…"});let C=e=>o.filter(t=>t.source===e).length;return(0,t.jsxs)("div",{style:{flex:1,overflow:"auto",padding:16},children:[(0,t.jsxs)("div",{style:{maxWidth:980,margin:"0 auto"},children:[(0,t.jsx)(s,{onAnswered:k}),(0,t.jsxs)("div",{style:{padding:14,borderRadius:10,border:a,background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",fontSize:12.5,color:"var(--sd-fg-2, #cfd8d8)",lineHeight:1.6},children:[(0,t.jsx)("b",{style:{color:"var(--sd-fg-1, #fff)"},children:"How a power score works."})," power = ",(0,t.jsx)("b",{children:"title"})," × ",(0,t.jsx)("b",{children:"company weight"})," + bonus. The title (student 1 … founder or C-suite 10) comes from someone’s roles, with former roles at 70%; an audience of their own counts like a title (1M+ followers like a director). The company weight runs from 0.725 for a company we don’t know (or none found), the middle of the scale, to 1.0 (a company scored 10), so seniority counts for more at a bigger company. The bonus is at most +1.5, for investor, YC, an audience in the millions or the top award of any field, and counts half at an unknown company. A 1st-degree person whose circle is unusually strong gets up to +2 more: up to +1 for a high share of it at A or S, or +1 for every 25 people there. Tiers are graded on your network’s curve unless you choose the fixed scale (",(0,t.jsx)("a",{href:"#tiers",style:{color:"var(--sd-blue, #3498DB)"},children:"Tiers"}),", above): your top 3% are S, the next 12% A, the next 25% B (it only lifts, and never lifts anyone under 4 into S or A). On the fixed scale, S ≥ 7.5 · A ≥ 5.5 · B ≥ 4 · C ≥ 2.5.",(0,t.jsxs)("div",{style:{marginTop:6,color:"var(--sd-fg-3, #8b9a9a)"},children:["So a VP at a 10 scores 9.0, a founder at an unknown company 7.3, a director at an unknown company 5.4, and an intern at a 10 scores 2.0. Set a company’s score below and everyone there is rescored. Companies in the sectors you pick (",(0,t.jsx)("a",{href:"#sector",style:{color:"var(--sd-blue, #3498DB)"},children:"Your sector"}),", above) get +1 or +2; a score you set is never changed."]})]}),(0,t.jsxs)("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap",margin:"14px 0 10px"},children:[(0,t.jsx)("input",{value:p,onChange:e=>m(e.target.value),placeholder:"Find a company",style:{padding:"6px 10px",borderRadius:7,border:a,background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",color:"var(--sd-fg-1, #fff)",fontSize:13,minWidth:180}}),[["all",`All ${o.length}`],["known",`Known list ${C("known")}`],["data",`Public data ${C("data")}`],["yours",`Yours ${C("yours")}`],["network",`Estimated ${C("network")}`],["default",`Unknown ${C("default")}`]].map(([e,n])=>(0,t.jsx)("button",{onClick:()=>h(e),style:{padding:"5px 10px",borderRadius:7,border:a,cursor:"pointer",fontSize:11.5,fontWeight:600,background:g===e?"rgba(52,152,219,0.25)":"transparent",color:g===e?"var(--sd-fg-1, #cfe6f7)":"var(--sd-fg-3, #8b9a9a)"},children:n},e))]}),(0,t.jsxs)("div",{style:{borderRadius:10,border:a,overflow:"hidden"},children:[(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 70px 70px 70px 60px 180px 110px",gap:8,padding:"8px 12px",fontSize:10.5,letterSpacing:.6,color:"var(--sd-fg-3, #8b9a9a)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.04)"},children:[(0,t.jsx)("span",{children:"COMPANY"}),(0,t.jsx)("span",{style:{textAlign:"right"},children:"PEOPLE"}),(0,t.jsx)("span",{style:{textAlign:"right"},children:"YOU KNOW"}),(0,t.jsx)("span",{style:{textAlign:"right"},children:"DIRECTOR+"}),(0,t.jsx)("span",{style:{textAlign:"right"},children:"SCORE"}),(0,t.jsx)("span",{children:"SOURCE"}),(0,t.jsx)("span",{children:"SET"})]}),j.slice(0,y).map(e=>(0,t.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 70px 70px 70px 60px 180px 110px",gap:8,padding:"7px 12px",alignItems:"center",borderTop:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.05)",fontSize:12.5},children:[(0,t.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[(0,t.jsx)("span",{title:`${e.industry.label} (inferred)`,style:{width:8,height:8,borderRadius:"50%",background:e.industry.color,flexShrink:0}}),(0,t.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name})]}),(0,t.jsx)("span",{style:{textAlign:"right"},children:e.people}),(0,t.jsx)("span",{style:{textAlign:"right",color:e.d1?"var(--sd-green, #00ff88)":"var(--sd-fg-5, #556)"},children:e.d1}),(0,t.jsx)("span",{style:{textAlign:"right",color:e.senior?"var(--sd-gold, #FFD700)":"var(--sd-fg-5, #556)"},children:e.senior}),(0,t.jsx)("b",{style:{textAlign:"right",fontSize:15},children:e.score}),(0,t.jsxs)("span",{style:{fontSize:11,color:i[e.source]?.color},children:[i[e.source]?.label,e.sectorBonus>0&&(0,t.jsxs)("span",{style:{color:"var(--sd-green, #00ff88)"},children:[" + ",e.sectorBonus," your sector"]})]}),(0,t.jsx)(u,{company:e,onSet:S,compact:!0})]},e.name))]}),j.length>y&&(0,t.jsxs)("button",{onClick:()=>b(e=>e+300),style:{marginTop:10,padding:"7px 14px",borderRadius:8,border:a,background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",color:"var(--sd-fg-1, #dfe6e9)",cursor:"pointer",fontSize:12},children:["Show more (",j.length-y," left)"]})]}),x&&(0,t.jsx)("div",{role:"status",style:{position:"fixed",bottom:24,left:"50%",transform:"translateX(-50%)",padding:"10px 18px",borderRadius:24,background:"linear-gradient(135deg, #00ff88, #3498DB)",color:"#000",fontWeight:800,fontSize:13,zIndex:50},children:x})]})},"useCompanyScores",0,d],94657)},39160,84278,e=>{"use strict";var t=e.i(7214),n=e.i(7837);function r(e){let t=String(e||"").trim();if(!t)return null;let n=t.match(/^(\d{4})-(\d{2})-(\d{2})[ T](\d{2}):(\d{2})(?::(\d{2}))?(?:\s*UTC)?$/);if(n)return Date.UTC(+n[1],n[2]-1,+n[3],+n[4],+n[5],+(n[6]||0));if(n=t.match(/^(\d{1,2})\/(\d{1,2})\/(\d{2,4}),?\s+(\d{1,2}):(\d{2})\s*(AM|PM)?$/i)){let e=100>+n[3]?2e3+ +n[3]:+n[3],t=n[4]%12;return"PM"===(n[6]||"").toUpperCase()&&(t+=12),Date.UTC(e,n[1]-1,+n[2],t,+n[5])}if(n=t.match(/^([A-Za-z]{3,9})\s+(\d{4})$/)){let e=Date.parse(`1 ${n[1]} ${n[2]} UTC`);return Number.isNaN(e)?null:e}let r=Date.parse(/\d{4}$/.test(t)?`${t} UTC`:t);return Number.isNaN(r)?null:r}let o=e=>(0,t.keyFor)({profile_url:e});function l(e=[]){let t=new Map;for(let n of e){let e=o(n["sender profile url"]),r=n["conversation id"];r&&e&&(t.has(e)||t.set(e,new Set),t.get(e).add(r))}let n=null;for(let[e,r]of t)(!n||r.size>t.get(n).size)&&(n=e);return n}let s=e=>{let t=f(e);return t?`name:${t}`:null},a=/sponsored/i,i=/in\s?mail/i,c=/linkedin\.com\/(company|showcase|school)\//i,d=e=>/^(yes|true|1)$/i.test(String(e||"").trim());function u(e,t){if(!e||!e.total)return"never";let n=t-e.last;return n<=2592e6||e.recent>=3?"warm":n<=31536e6?"cool":"dormant"}let f=e=>String(e||"").split(",")[0].normalize("NFD").replace(/[̀-ͯ]/g,"").toLowerCase().replace(/[^a-z0-9 ]+/g," ").replace(/\s+/g," ").trim();e.s(["buildConversations",0,function(e=[],{keepText:t=!1}={}){let n=l(e),u=new Map;for(let t of e)n&&o(t["sender profile url"])===n&&t.from&&u.set(t.from,(u.get(t.from)||0)+1);let p=f([...u].sort((e,t)=>t[1]-e[1])[0]?.[0]||""),m=e=>!!e&&(e===n||!!p&&e===`name:${p}`),g={},h=new Map,y=0,b=0;for(let n of e){let e=n["conversation id"],l=r(n.date);if(!e||null==l){b+=1;continue}if(d(n["is message draft"])){y+=1;continue}let u=o(n["sender profile url"])||s(n.from);u&&n.from&&!g[u]&&(g[u]=String(n.from).trim());let f=String(n["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(o),p=String(n.to||"").split(",").map(e=>e.trim()).filter(Boolean),x=f.length?f:p.map(s).filter(Boolean);f.length&&f.length===p.length&&f.forEach((e,t)=>{g[e]||(g[e]=p[t])}),f.length||p.forEach(e=>{let t=s(e);t&&!g[t]&&(g[t]=e)}),h.has(e)||h.set(e,{id:e,title:"",everyone:new Set,messages:[],kind:null,folder:"",newest:-1/0});let v=h.get(e);u&&v.everyone.add(u),x.forEach(e=>v.everyone.add(e)),v.kind=v.kind||function(e){let t=String(e.folder||""),n=String(e["conversation title"]||"");return a.test(t)||a.test(n)||c.test(String(e["sender profile url"]||""))?"sponsored":i.test(t)||i.test(n)?"inmail":null}(n),l>=v.newest&&(v.newest=l,v.folder=String(n.folder||"").trim().toLowerCase().slice(0,30));let w={t:l,fromMe:m(u)};t&&(w.text=[n.subject,n.content].map(e=>String(e||"").trim()).filter(Boolean).join("\n\n"),!v.title&&n["conversation title"]&&(v.title=String(n["conversation title"]).trim())),v.messages.push(w)}let x=[];for(let e of h.values()){let n=[...e.everyone].filter(e=>e&&!m(e)).sort();e.messages.sort((e,t)=>e.t-t.t);let r={id:e.id,people:n,group:n.length>1,kind:e.kind,folder:e.folder,messages:e.messages};t&&(r.title=e.title),x.push(r)}for(let e of Object.keys(g))m(e)&&delete g[e];return{self:n,conversations:x,names:g,drafts:y,skipped:b}},"buildInvitations",0,function(e=[],{keepText:t=!1}={}){let n=[];for(let l of e){let e=String(l.direction||"").toUpperCase();if("INCOMING"!==e&&"OUTGOING"!==e)continue;let a="INCOMING"===e?"in":"out",i=String(("in"===a?l.from:l.to)||"").trim(),c=o("in"===a?l.inviterprofileurl:l.inviteeprofileurl),d=(c&&/\/in\//.test(c)?c:null)||s(i);if(!d)continue;let u=r(l["sent at"]),f={id:`${a}|${d}|${u??""}`,dir:a,key:d,name:i.slice(0,120),t:u};t&&String(l.message||"").trim()&&(f.note=String(l.message).trim().slice(0,2e3)),n.push(f)}return n.sort((e,t)=>(t.t||0)-(e.t||0))},"careerChapters",0,function(e=[],t=[],n=Date.now()){let l=e.map(e=>({company:e["company name"]||"",title:e.title||"",from:r(e["started on"]),to:r(e["finished on"])})).filter(e=>e.company&&null!=e.from).sort((e,t)=>e.from-t.from),s=t.map(e=>({url:o(e.url||e.profile_url),t:r(e["connected on"]||e.connected_on)})).filter(e=>null!=e.t);return l.map(e=>{let t=e.to??n,r=s.filter(n=>n.t>=e.from&&n.t<t);return{...e,to:e.to,made:r.length,people:r.map(e=>e.url)}})},"conversationSummary",0,function(e){let t=e.messages[e.messages.length-1];return{id:e.id,people:e.people,group:e.group,kind:e.kind||null,folder:e.folder||"",last:t?t.t:null,lastFromThem:t?!t.fromMe:null,count:e.messages.length,mine:e.messages.filter(e=>e.fromMe).length}},"invitationSplit",0,function(e=[]){let t=0,n=0;for(let r of e){let e=String(r.direction||"").toUpperCase();"INCOMING"===e?t+=1:"OUTGOING"===e&&(n+=1)}return{incoming:t,outgoing:n,total:t+n}},"messageStats",0,function(e=[]){let t=l(e),n=new Map;for(let t of e){let e=o(t["sender profile url"]),l=t["conversation id"];if(!l||!e)continue;let s=String(t["recipient profile urls"]||"").split(/[,;\s]+/).filter(Boolean).map(o),a=r(t.date);if(null==a)continue;n.has(l)||n.set(l,{people:new Set,msgs:[]});let i=n.get(l);i.people.add(e),s.forEach(e=>i.people.add(e)),i.msgs.push({from:e,t:a})}let s=0,a=new Map;for(let e of n.values()){let n=[...e.people].filter(e=>e!==t);if(1!==n.length||!e.people.has(t))continue;let r=n[0],o=a.get(r)||{last:0,lastFromThem:!1,total:0,times:[]};for(let n of e.msgs)o.total+=1,o.times.push(n.t),n.t>=o.last&&(o.last=n.t,o.lastFromThem=n.from!==t),n.t>s&&(s=n.t);a.set(r,o)}for(let e of a.values())e.recent=e.times.filter(e=>e>s-7776e6).length,delete e.times;return{self:t,asOf:s||null,people:a}},"nameKey",0,f,"postingEffect",0,function(e=[],t=[]){let n=e.map(e=>({t:r(e.date),link:e.sharelink||e["share link"]||""})).filter(e=>null!=e.t).sort((e,t)=>e.t-t.t),o=t.map(e=>r(e["connected on"]||e.connected_on)).filter(e=>null!=e).sort((e,t)=>e-t);if(!o.length)return{posts:[],usualWeek:0,afterPosts:0};let l=Math.max(6048e5,o[o.length-1]-o[0]),s=o.length/l*6048e5,a=n.map(e=>({...e,week:o.filter(t=>t>=e.t&&t<e.t+6048e5).length})),i=a.length?a.reduce((e,t)=>e+t.week,0)/a.length:0;return{posts:a,usualWeek:s,afterPosts:i}},"readTable",0,function(e,t){let r=(0,n.parseCsv)(String(e||"")),o=r.findIndex(e=>e.some(e=>e.trim().toLowerCase()===t.toLowerCase()));if(o<0)return[];let l=r[o].map(e=>e.trim().toLowerCase());return r.slice(o+1).filter(e=>e.some(e=>e.trim())).map(e=>Object.fromEntries(l.map((t,n)=>[t,(e[n]??"").trim()])))},"warmthOf",0,u],84278);let p=["gravity","rings","push","pull","distance","orbit","dotSize","lines","sizeBy","names","branch","colourBy","speed","loop"],m=e=>"boolean"==typeof e||"number"==typeof e&&Number.isFinite(e)&&1e3>=Math.abs(e)||"string"==typeof e&&/^[a-z]{1,20}$/i.test(e);function g(e){if(!Array.isArray(e))return[];let t=new Map;for(let n of e){let e="string"==typeof n?.name?n.name.trim().slice(0,40):"";if(!e||!n.settings||"object"!=typeof n.settings||Array.isArray(n.settings))continue;let r={};for(let e of p)Object.hasOwn(n.settings,e)&&m(n.settings[e])&&(r[e]=n.settings[e]);t.set(e,{name:e,settings:r})}return[...t.values()].slice(0,50)}var h=e.i(56899),y=e.i(40827);let b="six-degrees-galaxy-lab",x="six-degrees-galaxy-layouts",v=Object.freeze({on:!0,gravity:0,rings:1,push:15,pull:1,distance:1,dotSize:1,lines:1,sizeBy:"power",orbit:0,names:"key",branch:!1,colourBy:"tier",speed:15,loop:!1,labels:!0,v:2}),w=["gravity","rings","push","pull","distance"],S=Object.freeze({gravity:.8,rings:0,push:6,pull:6,distance:.15,sizeBy:"links"}),k=Object.freeze({rings:{lines:1},orbit:{lines:1},clusters:{lines:3}}),j=Object.freeze({gravity:0,rings:3,push:6,pull:4,distance:.22,sizeBy:"power"}),C=new Set,O=null;function T(){return O||(O=function(){try{let e=JSON.parse(localStorage.getItem(b)||"null");if(!e||"object"!=typeof e)return v;return{...v,...e,...e.v===v.v?{}:{branch:!1},v:v.v,on:!0}}catch{return v}}()),O}function F(e){O=null===e?{...v,labels:T().labels}:{...T(),...e,on:!0};try{localStorage.setItem(b,JSON.stringify(O))}catch{}C.forEach(e=>e())}let A=null,N=new Set;function M(){if(!A){try{A=JSON.parse(localStorage.getItem(x)||"[]")}catch{A=[]}Array.isArray(A)||(A=[])}return A}function $(e,{save:t=!0}={}){A=e;try{localStorage.setItem(x,JSON.stringify(e))}catch{}N.forEach(e=>e()),t&&(0,h.saveSettings)({galaxyLayouts:e})}let B=new Set,E={at:null,playing:!1,min:null,max:null,of:0,find:"",fly:0,found:0,fit:0,social:void 0},z=null;function L(e){let t={...E,...e};Object.keys(e).every(e=>Object.is(t[e],E[e]))||(E=t,B.forEach(e=>e()))}function D(){cancelAnimationFrame(z),z=null,L({playing:!1})}let I=null;function R(e){let n=new Map;for(let[r,o]of Object.entries(e?.people||{}))n.set((0,t.keyFor)({profile_url:r}),{...o});for(let[r,o]of Object.entries(e?.live||{})){let e=(0,t.keyFor)({profile_url:r}),l=n.get(e)||{total:0,recent:0};o.last&&(!l.last||o.last>l.last)&&(l.last=o.last,"boolean"==typeof o.lastFromThem&&(l.lastFromThem=o.lastFromThem)),l.unread=o.unread,l.total=Math.max(l.total||0,1),n.set(e,l)}let r=Math.max(e?.asOf||0,e?.liveAt&&Date.parse(e.liveAt)||0);for(let e of n.values())(e.last||0)>r&&(r=e.last);return{merged:n,asOf:r,chapters:e?.chapters||[],posts:e?.posts?.posts||[]}}let U={1:"#4FC3F7",2:"#BA68C8",3:"#FFB74D"},P=["#FF6B6B","#4ECDC4","#FFD93D","#A29BFE","#00B894","#FD79A8","#74B9FF","#E17055"],K={warm:"#FF7043",cool:"#4FC3F7",dormant:"#8D6E63",never:"#546E7A"},W="#4a5568",_=["#2b1b6b","#6a1b9a","#c2185b","#f4511e","#ffb300","#fff3b0"];function J(e){let t=Math.max(0,Math.min(1,Number(e)||0))*(_.length-1),n=Math.min(_.length-2,Math.floor(t)),r=t-n,o=_[n],l=_[n+1];return`#${[1,3,5].map(e=>Math.round(parseInt(o.slice(e,e+2),16)*(1-r)+parseInt(l.slice(e,e+2),16)*r).toString(16).padStart(2,"0")).join("")}`}function Y(e=[],t=()=>0){let n=[...new Set(e.map(t))].sort((e,t)=>e-t),r=new Map(n.map((e,t)=>[e,n.length>1?t/(n.length-1):1]));return e=>r.get(t(e))??0}let G=e=>String(e||"").trim().toLowerCase();e.s(["CLUSTERS",0,S,"FORCE_KEYS",0,w,"LAB_DEFAULTS",0,v,"LAYOUT_LOOKS",0,k,"ORBIT",0,j,"adoptSavedLayouts",0,function(e){let t=g(M()),{use:n,save:r,changed:o}=(0,y.reconcileSaved)({saved:null==e?null:g(e),cached:t,isDefault:e=>0===e.length,same:(e,t)=>JSON.stringify(e)===JSON.stringify(t)});r&&(0,h.saveSettings)({galaxyLayouts:t}),o&&$(n,{save:!1})},"applyLayout",0,function(e){let t=M().find(t=>t.name===e);t&&F(Object.fromEntries(p.filter(e=>e in t.settings).map(e=>[e,t.settings[e]])))},"bornTimes",0,function(e,t){let n=new Map(e.map(e=>[e.id,e])),r=new Map,o=(e,l=0)=>{if(r.has(e.id))return r.get(e.id);let s=-1/0,a=t.get(e.id);if(1===e.degree||null==a||l>6){let t=e.connected_date?Date.parse(e.connected_date):NaN;s=Number.isNaN(t)?-1/0:t}return null!=a&&n.has(a)&&l<=6&&(s=Math.max(s,o(n.get(a),l+1))),r.set(e.id,s),s};return e.map(e=>o(e))},"chapterAt",0,function(e,t){let n=null;for(let r of e?.chapters||[])Number.isFinite(r.from)&&r.from<=t&&(!n||r.from>n.from)&&(n=r);return n&&(!Number.isFinite(n.to)||n.to>t)?n:null},"clockNow",0,()=>E,"colourScheme",0,function(e,n,r,o){if("degree"===e)return{of:e=>U[Math.min(e.degree||1,3)],legend:[["1st",U[1]],["2nd",U[2]],["3rd+",U[3]]]};if("company"===e){let e=new Map;for(let t of n){let n=G(t.company);if(!n)continue;let r=e.get(n)||{name:String(t.company).trim(),n:0};r.n+=1,e.set(n,r)}let t=[...e.entries()].filter(([,e])=>e.n>1).sort((e,t)=>t[1].n-e[1].n).slice(0,P.length),r=new Map(t.map(([e],t)=>[e,P[t]]));return{of:e=>r.get(G(e.company))||W,legend:[...t.map(([,e],t)=>[e.name,P[t]]),["Other",W]]}}if("heat"===e){let e=function(e=[]){return Y(e,t.score)}(n);return{of:t=>J(e(t)),heat:e,legend:[["Cold",J(.1)],["Warm",J(.45)],["Hot",J(.75)],["Hottest",J(1)]]}}return"warmth"===e&&o?{of:e=>1===(e.degree||1)?K[u(o.merged.get((0,t.keyFor)(e)),o.asOf)]:"#2d3748",legend:[["Warm",K.warm],["Cool",K.cool],["Dormant",K.dormant],["Never messaged",K.never]]}:{of:e=>r[e.tier]||"#666",legend:Object.entries(r)}},"effectiveLab",0,e=>e.on?e:e.labels===v.labels?v:{...v,labels:e.labels},"findMatches",0,function(e,t){let n=String(t||"").trim().toLowerCase();if(n.length<2)return null;let r=new Set;for(let t of e)[t.name,t.company,t.role,t.headline].some(e=>e&&String(e).toLowerCase().includes(n))&&r.add(t.id);return r},"forgetLayout",0,function(e){$(M().filter(t=>t.name!==e))},"heatBy",0,Y,"heatColour",0,J,"labNow",0,T,"layoutOf",0,function(e){let t=t=>Object.entries(t).every(([t,n])=>e[t]===n);return w.every(t=>e[t]===v[t])?"rings":t(S)?"clusters":t(j)?"orbit":null},"layoutsNow",0,M,"loadSocial",0,function(){return I||(I=fetch("/api/social").then(e=>e.ok?e.json():{}).then(e=>{L({social:e.social?R(e.social):null})}).catch(()=>L({social:null}))),I},"mergeSocial",0,R,"milestones",0,function(e){let t=[];for(let n of e?.chapters||[])Number.isFinite(n.from)&&t.push({t:n.from,kind:"job",label:n.company});for(let n of e?.posts||[])Number.isFinite(n.t)&&t.push({t:n.t,kind:"post",label:"You posted"});return t.sort((e,t)=>e.t-t.t)},"pause",0,D,"play",0,function e(){if(null==E.min||null==E.max||E.max<=E.min)return;let t=E.max-E.min,n=1e3*Math.max(1,Number(T().speed)||15),r=null==E.at||E.at>=E.max?E.min:E.at,o=performance.now()-(r-E.min)/t*n;L({at:r,playing:!0});let l=r=>{let s=Math.min(E.max,E.min+(r-o)/n*t);if(L({at:s}),s>=E.max){z=null,L({playing:!1}),T().loop&&setTimeout(()=>{z||E.at!==E.max||(L({at:E.min}),e())},1200);return}z=requestAnimationFrame(l)};cancelAnimationFrame(z),z=requestAnimationFrame(l)},"reachCounts",0,function(e,t){let n=new Map(e.map(e=>[e.id,0]));for(let r of e){let e=t.get(r.id);for(let r=0;null!=e&&r<7;r++)n.set(e,(n.get(e)||0)+1),e=t.get(e)}return n},"saveLayout",0,function(e){let t=String(e||"").trim().slice(0,40);if(!t)return;let n=T(),r=Object.fromEntries(p.map(e=>[e,n[e]]));$([...M().filter(e=>e.name!==t),{name:t,settings:r}])},"setClock",0,L,"setLab",0,F,"stopReplay",0,function(){D(),L({at:null})},"watchClock",0,function(e){return B.add(e),()=>B.delete(e)},"watchLab",0,function(e){C.add(e);let t=t=>{t.key===b&&(O=null,e())};return window.addEventListener("storage",t),()=>{C.delete(e),window.removeEventListener("storage",t)}},"watchLayouts",0,function(e){return N.add(e),()=>N.delete(e)}],39160)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,60451,e=>{"use strict";var t=e.i(43476),s=e.i(71645),i=e.i(22016),r=e.i(18566);e.s(["default",0,function(){let e=(0,r.useRouter)();return(0,s.useEffect)(()=>{e.replace("/queue?view=messages")},[e]),(0,t.jsxs)("div",{style:{minHeight:"100vh",background:"var(--sd-page)",color:"var(--sd-fg-3, #aab)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:13},children:["Social is part of ",(0,t.jsx)(i.default,{href:"/queue?view=messages",style:{color:"var(--sd-orange, #FF6B35)",marginLeft:4},children:"Outlink"})," now."]})}])}]);
|
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,209 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.8.0] - 2026-10-03
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- **Insights: your network ranked by power.** A new tab between Paths and Outlink. The Power
|
|
13
|
+
Index ranks everyone within two steps of you, each person once, with shared ranks for ties and
|
|
14
|
+
a line saying why a big tie shares its score; filter by degree, tier and rarity, search by name,
|
|
15
|
+
company or who knows them, and from any row open their circle, scan it, or ask (their LinkedIn
|
|
16
|
+
profile opens and the request is marked sent, as on their card). Beside it: Untapped (S and A
|
|
17
|
+
in your 2nd degree with no request out), Kingmakers (the connections with the most S and A
|
|
18
|
+
behind them), Gatekeepers (who your S and A reach hangs on), Hidden giants (S-tier with one way
|
|
19
|
+
in), Company power, How sure (how much of the ranking rests on a guess), and Richest?, which
|
|
20
|
+
says plainly that the app never sees money. Kingmakers, Gatekeepers, Companies, Industries and
|
|
21
|
+
a scrolling Report are views of their own in the notch. Every number says where it came from;
|
|
22
|
+
a CSV import gets the boards that need no circles, and says so for the rest. On your own network every 2nd-degree row offers Auto beside Ask.
|
|
23
|
+
- **Auto: one press sends someone a connection request for you.** Next to every Connect (a person's
|
|
24
|
+
card, and Outlink's lists and next best moves) there's now an Auto button, the bright one. Press it
|
|
25
|
+
and the scanner's Chrome opens their profile, presses Connect and sends the request without a note,
|
|
26
|
+
then shows "Request sent" and marks it pending everywhere in the app. Connect still opens their
|
|
27
|
+
profile for you to do it yourself. One press is one person: never a batch, never on a timer, and it
|
|
28
|
+
waits while a scan runs. It asks once before the first one. When LinkedIn wants their email address
|
|
29
|
+
first, Auto closes that and sends nothing ("Use Connect to add them yourself"); when LinkedIn offers
|
|
30
|
+
a personal note (Premium), it sends without one. It only calls a request sent once their profile
|
|
31
|
+
shows it pending, and says so plainly when it can't tell. It stops at 15 requests in any 24 hours and
|
|
32
|
+
80 in any 7 days (LinkedIn doesn't publish its limit; about 100 a week is commonly reported), opens
|
|
33
|
+
their profile once like a scan does, holds during a pause after LinkedIn pushed back, and shows in
|
|
34
|
+
Settings → LinkedIn usage as Connection requests (Auto).
|
|
35
|
+
|
|
36
|
+
### Changed
|
|
37
|
+
- **A scan that stopped partway says so, on the person's card and on the Scan page.** Open someone
|
|
38
|
+
whose circle scan didn't finish and a line by their name says which page it stopped after, with
|
|
39
|
+
Resume right there; their scan box now reads Scan in progress, with Resume from page N as its main
|
|
40
|
+
button, instead of Cluster active. The card's Insights offer Resume for them too, not a scan that
|
|
41
|
+
reads the list again from page 1, and an empty circle in Bridge Chains whose scan stopped partway
|
|
42
|
+
says so, with Resume from page N, instead of saying their list has been read. On the Scan page, everyone stopped partway is in a new In progress
|
|
43
|
+
card right after step 4, with Resume for each person and Resume all, and each name opens their circle
|
|
44
|
+
on the map. It used to be folded away under Fine-tune the scanner.
|
|
45
|
+
- **The tabs sit on the header's line, and the notch hangs from them.** On a computer the row of
|
|
46
|
+
tabs rests on the line under the header, so a page's own buttons in the notch below join onto
|
|
47
|
+
it. The header is the same height on every tab: the Pending count that added a row on Degrees
|
|
48
|
+
and Separation is gone (sent requests are still under Outlink → Pending).
|
|
49
|
+
- **Separation starts with its slider.** The line counting people two steps away and the tier
|
|
50
|
+
strip under it are gone; the search box stays at the top.
|
|
51
|
+
- **The notch comes with the page.** Switching tabs, it waits for the next page to appear instead
|
|
52
|
+
of hanging over a blank screen while it loads.
|
|
53
|
+
|
|
54
|
+
### Fixed
|
|
55
|
+
- **A company called "Foods" or "Beverages" is in Retail, Consumer & Hospitality.** The word list
|
|
56
|
+
had "food" and "beverage" but not the plurals, so a company like Northwind Foods took its
|
|
57
|
+
industry from its people's headlines instead (tech, on a test network). Scores are worked out
|
|
58
|
+
again once after the update, since a company's industry can change its estimate and your sector.
|
|
59
|
+
- **Scan dots are whole on Paths.** The dots along the header's line while a scan runs were cut in
|
|
60
|
+
half above Paths' left panel; they also stop short of the tabs now that the tabs sit on the line.
|
|
61
|
+
- **The 3rd-degree dot in Degrees and Separation says why it can't be tapped.** It said "No one at
|
|
62
|
+
3rd degree yet" even with people found by company scans; it now says those are drawn on Network
|
|
63
|
+
Circle.
|
|
64
|
+
- **The ring round a scanned connection's dot shows how much of their list was read.** It showed 2
|
|
65
|
+
of 5 bars, "partly read", for everyone scanned, even when their whole list was in, and the card's
|
|
66
|
+
Insights offered to finish lists that were finished. The app now takes in how far each list was
|
|
67
|
+
read, which the scanner had been noting all along.
|
|
68
|
+
|
|
69
|
+
## [0.7.0] - 2026-10-03
|
|
70
|
+
|
|
71
|
+
### Added
|
|
72
|
+
- **Download for Mac shows how to open it the first time.** On sixdegreesapp.com, clicking Download
|
|
73
|
+
for Mac now shows the three steps right under the button: drag it into Applications, close
|
|
74
|
+
macOS's warning, and allow it once in System Settings → Privacy & Security. They used to be only
|
|
75
|
+
on the Download page.
|
|
76
|
+
- **Watch a circle fill in while it's scanned.** While the scanner reads who your connections know,
|
|
77
|
+
step 4 on the Scan page has a Watch it fill in link to that person's circle in Bridge Chains,
|
|
78
|
+
which fills in as the scanner saves every 10 pages, during a whole round too, not only a scan of
|
|
79
|
+
one person.
|
|
80
|
+
- **An "I understand" before the first scan**: the Scan page says once, plainly, that scanning runs
|
|
81
|
+
your own LinkedIn account automatically, that LinkedIn may restrict accounts that do this (the safe
|
|
82
|
+
limits of 50 searches a day and 250 a month stay on), and that nothing leaves your computer. Nothing
|
|
83
|
+
opens LinkedIn until you click I understand, whichever button asks, and the CSV import is one click
|
|
84
|
+
away instead. It's asked once and kept with your settings; anyone who has scanned before isn't asked.
|
|
85
|
+
The welcome screen's Scan card says the risk too, and the README and website say Six Degrees is not
|
|
86
|
+
affiliated with or endorsed by LinkedIn.
|
|
87
|
+
- **Light looks, and every look its own all the way through** (Settings → Appearance). Daylight and
|
|
88
|
+
Paper are light, designed for it: ink words, white cards and panels, deeper dots that read on
|
|
89
|
+
white. Pick any light background in the editor and the words and borders turn dark with it. Each
|
|
90
|
+
look now changes more than its colours: its buttons (soft, flat, square, glass, neon or bold), its
|
|
91
|
+
words (Obsidian's greys, a data terminal's for Analyst, brighter ones on Glass), its cards,
|
|
92
|
+
pickers, tooltips and notch, the sliders, and how the map draws its dots (glass droplets, flat
|
|
93
|
+
like Obsidian, or glowing). Both are yours to pick in the editor too.
|
|
94
|
+
- **Analyst is an analysis tool's look**: a bare white canvas and flat grey panels, plain outlined
|
|
95
|
+
dots in colour-blind-safe colours with black labels, thin grey lines, flat blue for what's picked,
|
|
96
|
+
no gradients, glows or shadows, and every number in even columns. Less on screen, more about the
|
|
97
|
+
numbers.
|
|
98
|
+
- **A look's dots and panels everywhere, not just on the map.** Glass droplets, glowing dots, plain
|
|
99
|
+
outlined dots or flat ones now follow a look into Degrees (bridges, clusters, the hover preview),
|
|
100
|
+
Separation, Paths' bubbles, the Scan cluster, circle previews, the header's scan dots, legends,
|
|
101
|
+
tier dots and avatars. Each look also has its own side panels, tab bar, notch and map tooltips:
|
|
102
|
+
graphite with fine borders (Obsidian), neon edges (Synthwave), a cool rim (Space), hard outlines
|
|
103
|
+
(High contrast), soft shadows (Daylight), ruled and warm (Paper), grey hairlines (Analyst), glass
|
|
104
|
+
(Glass).
|
|
105
|
+
- **Glass is Apple's Liquid Glass.** Panels of dark glass that keep their words readable, with a lit
|
|
106
|
+
rim and a bright top edge, and edges that bend what's behind them the way Apple's glass does. The
|
|
107
|
+
tabs sit in one glass capsule; buttons are glass capsules that spring when pressed. With Reduce
|
|
108
|
+
Transparency on, the panels go solid.
|
|
109
|
+
- **Bridge Chains: hovering a bridge grows its circle.** Their people shoot out of the bridge to
|
|
110
|
+
their places, then anyone among them whose own circle is scanned sprouts it (3rd degree), then
|
|
111
|
+
theirs (4th), in under half a second.
|
|
112
|
+
- **↻ Check for new forms a cluster.** Hover it and a ring of dots builds round it clockwise, the
|
|
113
|
+
way a connection's circle forms on the map; while it checks, the ring keeps building, round and
|
|
114
|
+
round, in the look's colours, and the button stays lit. The same on the Scan page.
|
|
115
|
+
- **Scan: the radar is a cluster that grows with every page.** While a scan runs, the people each
|
|
116
|
+
page finds gather round the Scan button as dots, ring by ring, each page's batch in the next of
|
|
117
|
+
the theme's colours (the same as the header's dots), the newest glowing.
|
|
118
|
+
- **Backups that look after themselves, photos and all.** Six Degrees now backs up your whole
|
|
119
|
+
network once a day while it's open (when it starts, and after a scan, if the last one is a day
|
|
120
|
+
old), before a new version first opens it, and whenever you click **Back up now** in Settings →
|
|
121
|
+
Your data. Each backup holds your connections, their profile photos, your settings and the
|
|
122
|
+
scanner's progress, and is checked as it's made, the same way a restore would check it. Settings
|
|
123
|
+
says "Last backup: <time>, verified", or plainly what's wrong if a backup ever fails its check.
|
|
124
|
+
It keeps the last 7 daily backups, 3 from before new versions and 3 from before an import or a
|
|
125
|
+
restore (each of those for at least 30 days); ones you make yourself stay until you delete them.
|
|
126
|
+
The Social tab's messages and notes are never in a backup, so deleting them there deletes them
|
|
127
|
+
everywhere.
|
|
128
|
+
- **Restore any backup, from Settings.** Each backup has **Restore** and **Show in Finder**.
|
|
129
|
+
Restore checks it, then puts it back when Six Degrees restarts (**Restart now** in the Mac app),
|
|
130
|
+
keeping what was there first so you can go back again. Undoing an import is now one click on
|
|
131
|
+
the backup it kept, instead of moving files by hand.
|
|
132
|
+
- **Your look and your saved Galaxy layouts travel with your network**: they're kept with your
|
|
133
|
+
settings, so a backup, a restore or a move to another computer brings them along.
|
|
134
|
+
- **Settings → LinkedIn usage: how close your account is to the line, at a glance.** A status pill
|
|
135
|
+
(well within, above the default, risky, too close, or paused) and four bars: searches in the last
|
|
136
|
+
24 hours, marked at 50 (the default), 100 (risky) and 373 (where a real account was restricted),
|
|
137
|
+
with when the next one frees and when you're all clear; searches this month, with when LinkedIn's
|
|
138
|
+
month resets (midnight Pacific on the 1st) and the 250 to 350 people report for a free account
|
|
139
|
+
shaded as a guide, not a fact; the last 7 days against Auto scan's 200; and profile views. Below
|
|
140
|
+
them: your speed and searches in the last hour, about how many people you can still map, the last
|
|
141
|
+
time LinkedIn pushed back (its time and reason, even after you lift the pause), Auto scan's own
|
|
142
|
+
rules, and a plain warning with *Back to 50 a day, 250 a month* when it matters. Every number is
|
|
143
|
+
counted from what Six Degrees wrote down on this computer, and says so. The notch's budget and the
|
|
144
|
+
Scan page's budget box link to it.
|
|
145
|
+
|
|
146
|
+
### Changed
|
|
147
|
+
- **A LinkedIn CSV import is kept until you remove it.** Close the window or restart the app and
|
|
148
|
+
your imported network is still there; it used to be gone with the window. It's kept on this
|
|
149
|
+
computer, in your data folder (`csv-network.json`), apart from any network you scan, and only
|
|
150
|
+
what the map needs (names, positions, companies, profile links, when you connected; never email
|
|
151
|
+
addresses). Click × beside *Your CSV* to remove it; it asks first, and your `Connections.csv`
|
|
152
|
+
isn't touched. *Save a copy of my network* carries it to another computer and an import brings
|
|
153
|
+
it back. If the kept file can't be read, the welcome screen says so instead of acting as if
|
|
154
|
+
there were none. The welcome screen's CSV card says where it's kept. Once you've scanned your own
|
|
155
|
+
connections, every page shows your scan instead; the CSV stays kept, and the import page says so
|
|
156
|
+
with a button to remove it.
|
|
157
|
+
- **Google Chrome is part of getting ready.** Step 1 on the Scan page isn't done until Chrome is on
|
|
158
|
+
your computer, and offers Install Google Chrome, then come back; it ticks by itself once Chrome is
|
|
159
|
+
there. Open LinkedIn waits for it, nothing that opens LinkedIn starts without it (every button
|
|
160
|
+
gets the same one-sentence reason), and the welcome screen's Scan card says it needs Chrome.
|
|
161
|
+
- **Honest about how long scanning takes.** The Scan page says your galaxy takes three steps and who
|
|
162
|
+
they know fills in over days. Step 4 says the first circle shows up in about 5 minutes (longer at
|
|
163
|
+
Medium or Slow) and why the rest takes days: every page is a LinkedIn search, and your budget caps
|
|
164
|
+
a day's.
|
|
165
|
+
- **Your field is asked after your connections are in**, under "Your galaxy is ready", instead of
|
|
166
|
+
before the first scan, and picking one rescores everyone straight away. Anyone with only their own
|
|
167
|
+
connections mapped who never answered is asked once; skipping counts as an answer.
|
|
168
|
+
- **Sign in to LinkedIn with Google or Apple?** Step 2 now says what to do: set a LinkedIn password
|
|
169
|
+
first (Forgot password on LinkedIn's sign-in page emails you a link to make one), since Google and
|
|
170
|
+
Apple sign-in can't work in the scanner's window.
|
|
171
|
+
- **A saved Galaxy picture or video credits sixdegreesapp.com** in its corner, instead of the app's
|
|
172
|
+
name, so anyone it's shared with knows where to get it.
|
|
173
|
+
- **Bridge Chains: the inner ring holds the circles with the most going on**: notifications about
|
|
174
|
+
them (new ones count double), people in them ready to scan, and clusters formed from them since.
|
|
175
|
+
A circle's tooltip says how many notifications are about it.
|
|
176
|
+
- **Separation fits the whole map in the window, and keeps fitting**: whatever the map shows, as the
|
|
177
|
+
slider moves or you aim at someone else, it fits again and glides there, list and all. − Fit +
|
|
178
|
+
at the right of its caption zooms in or out (as far as 15%) until the view changes.
|
|
179
|
+
- **Bridge Chains' legends are just dots**, no box: they fit whatever font a look uses.
|
|
180
|
+
- **Bridge Chains: the badge at a bridge's top right counts their circle's news**: new notifications
|
|
181
|
+
about it (gold) and people in it ready to scan (green), as asked for on 10/2; it counted only the
|
|
182
|
+
people ready before.
|
|
183
|
+
- **Settings → Your data says Export backup file… and Restore from a file…** instead of "Save a
|
|
184
|
+
copy of my network" and "Choose a file… / Import". They do the same: one file to carry your
|
|
185
|
+
network to another computer, and putting one back.
|
|
186
|
+
|
|
187
|
+
### Fixed
|
|
188
|
+
- **Auto scan rests two days after any check from LinkedIn, as the Scan page says.** A pushback
|
|
189
|
+
partway through reading someone's list used to rest it one day, like a scan you start yourself;
|
|
190
|
+
only a check at the start of a run got the two days.
|
|
191
|
+
- **"Signed in" means signed in.** Step 2 used to tick as soon as the scanner's Chrome window had
|
|
192
|
+
opened once, even if you closed it without signing in. Now it ticks once the scanner has seen you
|
|
193
|
+
signed in. Anyone already signed in before this stays signed in.
|
|
194
|
+
- **Degrees says the right thing before who they know is mapped.** With no 2nd degree yet, it told
|
|
195
|
+
everyone LinkedIn's CSV can't have circles, scanner users included. Now someone who scanned is
|
|
196
|
+
pointed to step 4 on the Scan page; a CSV import gets the CSV reason, as before.
|
|
197
|
+
- **Words on screen read plainly**: no em dashes anywhere the app shows text (pages, notices,
|
|
198
|
+
notifications, error messages), and a test keeps it that way. The Scan page's old "Checking for
|
|
199
|
+
updates has moved" note is gone. Two messages written for developers now say what anyone can do: a
|
|
200
|
+
copy missing its scanner says to download it again, and a page that can't reach the app says to
|
|
201
|
+
quit and reopen it. The download size reads "about 210 MB" everywhere (the Mac downloads are 204
|
|
202
|
+
and 212 MB).
|
|
203
|
+
- **The Social tab says truly where its messages and notes go**: never into Six Degrees' own
|
|
204
|
+
backups, and into an exported backup file only with its Social tab box ticked. It used to say
|
|
205
|
+
they were never in a copy, which wasn't so when that box was ticked.
|
|
206
|
+
- **Copies kept before an import no longer pile up forever**: the newest 3 stay, and none goes
|
|
207
|
+
before it's 30 days old.
|
|
208
|
+
- **The budget says "the last 24 hours", because that's what it counts.** The notch said "searches
|
|
209
|
+
today" and the Scan page "searches left today" (and "profile views today"), but the budget has
|
|
210
|
+
always counted a rolling 24 hours, not since midnight. They now say so.
|
|
211
|
+
|
|
9
212
|
## [0.6.0] - 2026-10-03
|
|
10
213
|
|
|
11
214
|
### Added
|