diff --git a/next/package.json b/next/package.json index 5c7dc6592..976ab1835 100644 --- a/next/package.json +++ b/next/package.json @@ -13,7 +13,8 @@ "format": "prettier --write .", "postbuild": "next-sitemap --config next-sitemap.config.mjs", "prepare": "cd .. && husky install next/.husky", - "complete-biccn-publications": "esrun ./scripts/complete-biccn-publications.ts" + "complete-biccn-publications": "esrun ./scripts/complete-biccn-publications.ts", + "get-cellxgene-projects": "esrun ./scripts/get-cellxgene-projects.ts" }, "dependencies": { "@clevercanary/data-explorer-ui": "64.0.0", diff --git a/next/scripts/get-cellxgene-projects.ts b/next/scripts/get-cellxgene-projects.ts new file mode 100644 index 000000000..263da5eaa --- /dev/null +++ b/next/scripts/get-cellxgene-projects.ts @@ -0,0 +1,42 @@ +import fsp from "fs/promises"; +import got from "got"; + +interface CellxGeneCollection { + collection_id: string; + links: { link_url: string }[]; +} + +interface CellxGeneProjectMapping { + cellxgeneId: string; + hcaProjectId: string; +} + +const cellxgeneProjectsFilePath = "./scripts/out/cellxgene-projects.json"; + +getCellxGeneProjects(); + +async function getCellxGeneProjects(): Promise { + const collections = JSON.parse( + (await got("https://api.cellxgene.cziscience.com/curation/v1/collections")) + .body + ) as CellxGeneCollection[]; + const cellxgeneProjects: CellxGeneProjectMapping[] = []; + for (const collection of collections) { + for (const { link_url } of collection.links) { + const match = + /^https:\/\/(?:explore\.)?data\.humancellatlas\.org(?:\/explore)?\/projects\/([^/?#]+)/.exec( + link_url + ); + if (match) + cellxgeneProjects.push({ + cellxgeneId: collection.collection_id, + hcaProjectId: match[1], + }); + } + } + await fsp.writeFile( + cellxgeneProjectsFilePath, + JSON.stringify(cellxgeneProjects, undefined, 2) + ); + console.log(`Saved to ${cellxgeneProjectsFilePath}`); +} diff --git a/next/scripts/out/cellxgene-projects.json b/next/scripts/out/cellxgene-projects.json new file mode 100644 index 000000000..aa261f3df --- /dev/null +++ b/next/scripts/out/cellxgene-projects.json @@ -0,0 +1,350 @@ +[ + { + "cellxgeneId": "af893e86-8e9f-41f1-a474-ef05359b1fb7", + "hcaProjectId": "9c20a245-f2c0-43ae-82c9-2232ec6b594f" + }, + { + "cellxgeneId": "1d1c7275-476a-49e2-9022-ad1b1c793594", + "hcaProjectId": "30dc3964-1135-4b56-b393-ce2dcbc6e379" + }, + { + "cellxgeneId": "1b014f39-f202-45ae-bb7d-9286bddd8d8b", + "hcaProjectId": "85a9263b-0887-48ed-ab1a-ddfa773727b6" + }, + { + "cellxgeneId": "f7cecffa-00b4-4560-a29a-8ad626b8ee08", + "hcaProjectId": "8f1f653d-3ea1-4d8e-b4a7-b97dc852c2b1" + }, + { + "cellxgeneId": "f17b9205-f61f-4a0f-a65a-73ba91c50ade", + "hcaProjectId": "34cba5e9-ecb1-4d81-bf08-48987cd63073" + }, + { + "cellxgeneId": "64b24fda-6591-4ce1-89e7-33eb6c43ad7b", + "hcaProjectId": "73769e0a-5fcd-41f4-9083-41ae08bfa4c1" + }, + { + "cellxgeneId": "1df8c90d-d299-4b2e-a54d-a5a80f36e780", + "hcaProjectId": "7c599029-7a3c-4b5c-8e79-e72c9a9a65fe" + }, + { + "cellxgeneId": "b3e2c6e3-9b05-4da9-8f42-da38a664b45b", + "hcaProjectId": "3d49e5e5-976f-44cb-b6b9-079016c31c56" + }, + { + "cellxgeneId": "60358420-6055-411d-ba4f-e8ac80682a2e", + "hcaProjectId": "fa3f460f-4fb9-4ced-b548-8ba6a8ecae3f" + }, + { + "cellxgeneId": "bd5230f4-cd76-4d35-9ee5-89b3e7475659", + "hcaProjectId": "4d6f6c96-2a83-43d8-8fe1-0f53bffd4674" + }, + { + "cellxgeneId": "3472f32d-4a33-48e2-aad5-666d4631bf4c", + "hcaProjectId": "8185730f-4113-40d3-9cc3-929271784c2b" + }, + { + "cellxgeneId": "e5f58829-1a66-40b5-a624-9046778e74f5", + "hcaProjectId": "10201832-7c73-4033-9b65-3ef13d81656a" + }, + { + "cellxgeneId": "348da6dc-5bf6-435d-adc5-37747b9ae38a", + "hcaProjectId": "4f4f0193-ede8-4a82-8cb0-7a0a22f06e63" + }, + { + "cellxgeneId": "63d03351-06be-478e-a0db-f7a653b6b19b", + "hcaProjectId": "16e99159-78bc-44aa-b479-55a5e903bf50" + }, + { + "cellxgeneId": "1a486c4c-c115-4721-8c9f-f9f096e10857", + "hcaProjectId": "07d5987e-7f9e-4f34-b0fb-a185a35504f5" + }, + { + "cellxgeneId": "e2a4a67f-6a18-431a-ab9c-6e77dd31cc80", + "hcaProjectId": "53c53cd4-8127-4e12-bc7f-8fe1610a715c" + }, + { + "cellxgeneId": "c9706a92-0e5f-46c1-96d8-20e42467f287", + "hcaProjectId": "a004b150-1c36-4af6-9bbd-070c06dbc17d" + }, + { + "cellxgeneId": "b52eb423-5d0d-4645-b217-e1c6d38b2e72", + "hcaProjectId": "ad98d3cd-26fb-4ee3-99c9-8a2ab085e737" + }, + { + "cellxgeneId": "ed9185e3-5b82-40c7-9824-b2141590c7f0", + "hcaProjectId": "ae62bb31-55ca-4127-b0fb-b1771a604645" + }, + { + "cellxgeneId": "3f50314f-bdc9-40c6-8e4a-b0901ebfbe4c", + "hcaProjectId": "12f32054-8f18-4dae-8959-bfce7e3108e7" + }, + { + "cellxgeneId": "2f4c738f-e2f3-4553-9db2-0582a38ea4dc", + "hcaProjectId": "1dddae6e-3753-48af-b20e-fa22abad125d" + }, + { + "cellxgeneId": "a98b828a-622a-483a-80e0-15703678befd", + "hcaProjectId": "29ed827b-c539-4f4c-bb6b-ce8f9173dfb7" + }, + { + "cellxgeneId": "83ed3be8-4cb9-43e6-9aaa-3fbbf5d1bd3a", + "hcaProjectId": "dbd836cf-bfc2-41f0-9834-41cc6c0b235a" + }, + { + "cellxgeneId": "e1fa9900-3fc9-4b57-9dce-c95724c88716", + "hcaProjectId": "421bc6cd-bbb4-4398-ac60-a32ea94f02ae" + }, + { + "cellxgeneId": "b0cf0afa-ec40-4d65-b570-ed4ceacc6813", + "hcaProjectId": "3ce9ae94-c469-419a-9637-5d138a4e642f" + }, + { + "cellxgeneId": "4d74781b-8186-4c9a-b659-ff4dc4601d91", + "hcaProjectId": "c4077b3c-5c98-4d26-a614-246d12c2e5d7" + }, + { + "cellxgeneId": "44531dd9-1388-4416-a117-af0a99de2294", + "hcaProjectId": "8a666b76-daaf-4b1f-9414-e4807a1d1e8b" + }, + { + "cellxgeneId": "b0f0b447-ac37-45b0-b1bf-5c0b7d871120", + "hcaProjectId": "c412be53-cf95-47c7-980c-c0a0caa2d3a0" + }, + { + "cellxgeneId": "e33ffcd3-7cbf-4b8c-b0f4-85587ad5019a", + "hcaProjectId": "fde199d2-a841-4ed1-aa65-b9e0af8969b1" + }, + { + "cellxgeneId": "180bff9c-c8a5-4539-b13b-ddbc00d643e6", + "hcaProjectId": "7dcffc32-7c82-4396-9a4f-88b5579bfe8a" + }, + { + "cellxgeneId": "db468083-041c-41ca-8f6f-bf991a070adf", + "hcaProjectId": "87d52a86-bdc7-440c-b84d-170f7dc346d9" + }, + { + "cellxgeneId": "7681c7d7-0168-4892-a547-6f02a6430ace", + "hcaProjectId": "83f5188e-3bf7-4956-9544-cea4f8997756" + }, + { + "cellxgeneId": "24d42e5e-ce6d-45ff-a66b-a3b3b715deaf", + "hcaProjectId": "4a95101c-9ffc-4f30-a809-f04518a23803" + }, + { + "cellxgeneId": "8f126edf-5405-4731-8374-b5ce11f53e82", + "hcaProjectId": "cdabcf0b-7602-4abf-9afb-3b410e545703" + }, + { + "cellxgeneId": "38833785-fac5-48fd-944a-0f62a4c23ed1", + "hcaProjectId": "1fac187b-1c3f-41c4-b6b6-6a9a8c0489d1" + }, + { + "cellxgeneId": "793fdaec-5067-428a-a9db-ecefe135c945", + "hcaProjectId": "04ad400c-58cb-40a5-bc2b-2279e13a910b" + }, + { + "cellxgeneId": "eb735cc9-d0a7-48fa-b255-db726bf365af", + "hcaProjectId": "2d4d89f2-ebeb-467c-ae60-a3efc5e8d4ba" + }, + { + "cellxgeneId": "939769a8-d8d2-4d01-abfc-55699893fd49", + "hcaProjectId": "e090445c-6971-4212-bc5f-ae4ec3914102" + }, + { + "cellxgeneId": "558385a4-b7b7-4eca-af0c-9e54d010e8dc", + "hcaProjectId": "2d846095-8a33-4f3c-97d4-585bafac13b4" + }, + { + "cellxgeneId": "dde06e0f-ab3b-46be-96a2-a8082383c4a1", + "hcaProjectId": "f2078d5f-2e7d-4844-8552-f7c41a231e52" + }, + { + "cellxgeneId": "9b02383a-9358-4f0f-9795-a891ec523bcc", + "hcaProjectId": "2af52a13-65cb-4973-b513-39be38f2df3f" + }, + { + "cellxgeneId": "10bf5c50-8d85-4c5f-94b4-22c1363d9f31", + "hcaProjectId": "575c0ad9-c78e-469b-9fdf-9a68dd881137" + }, + { + "cellxgeneId": "6e8c5415-302c-492a-a5f9-f29c57ff18fb", + "hcaProjectId": "894ae6ac-5b48-41a8-a72f-315a9b60a62e" + }, + { + "cellxgeneId": "a48f5033-3438-4550-8574-cdff3263fdfd", + "hcaProjectId": "50154d1e-2308-44bf-9608-10c7afaa560b" + }, + { + "cellxgeneId": "a238e9fa-2bdf-41df-8522-69046f99baff", + "hcaProjectId": "cddab57b-6868-4be4-806f-395ed9dd635a" + }, + { + "cellxgeneId": "120e86b4-1195-48c5-845b-b98054105eec", + "hcaProjectId": "abe1a013-af7a-45ed-8c26-f3793c24a1f4" + }, + { + "cellxgeneId": "a261413d-835b-4f1e-ab0c-dada55ea6afd", + "hcaProjectId": "2084526b-a66f-4c40-bb89-6fd162f2eb38" + }, + { + "cellxgeneId": "9d63fcf1-5ca0-4006-8d8f-872f3327dbe9", + "hcaProjectId": "73011a86-4755-48ac-9f70-a28903b4ad77" + }, + { + "cellxgeneId": "74e10dc4-cbb2-4605-a189-8a1cd8e44d8c", + "hcaProjectId": "425c2759-db66-4c93-a358-a562c069b1f1" + }, + { + "cellxgeneId": "f8057c47-fcd8-4fcf-88b0-e2f930080f6e", + "hcaProjectId": "7880637a-35a1-4047-b422-b5eac2a2a358" + }, + { + "cellxgeneId": "436154da-bcf1-4130-9c8b-120ff9a888f2", + "hcaProjectId": "9fc0064b-84ce-40a5-a768-e6eb3d364ee0" + }, + { + "cellxgeneId": "e4c9ed14-e560-4900-a3bf-b0f8d2ce6a10", + "hcaProjectId": "d7845650-f6b1-4b1c-b2fe-c0795416ba7b" + }, + { + "cellxgeneId": "03cdc7f4-bd08-49d0-a395-4487c0e5a168", + "hcaProjectId": "f7b46477-0f2a-4bff-a9b7-719e000499a3" + }, + { + "cellxgeneId": "99f1515b-46a2-4bc4-94c3-f62659dc1eb4", + "hcaProjectId": "9b876d31-0739-4e96-9846-f76e6a427279" + }, + { + "cellxgeneId": "8191c283-0816-424b-9b61-c3e1d6258a77", + "hcaProjectId": "e9f36305-d857-44a3-93f0-df4e6007dc97" + }, + { + "cellxgeneId": "b1a879f6-5638-48d3-8f64-f6592c1b1561", + "hcaProjectId": "fcaa53cd-ba57-4bfe-af9c-eaa958f95c1a" + }, + { + "cellxgeneId": "03f821b4-87be-4ff4-b65a-b5fc00061da7", + "hcaProjectId": "1538d572-bcb7-426b-8d2c-84f3a7f87bb0" + }, + { + "cellxgeneId": "35d0b748-3eed-43a5-a1c4-1dade5ec5ca0", + "hcaProjectId": "111d272b-c25a-49ac-9b25-e062b70d66e0" + }, + { + "cellxgeneId": "4195ab4c-20bd-4cd3-8b3d-65601277e731", + "hcaProjectId": "1ffa2223-28a6-4133-a5a4-badd00faf4bc" + }, + { + "cellxgeneId": "a9254216-6cd8-4186-b32c-349363777584", + "hcaProjectId": "f83165c5-e2ea-4d15-a5cf-33f3550bffde" + }, + { + "cellxgeneId": "c353707f-09a4-4f12-92a0-cb741e57e5f0", + "hcaProjectId": "51f02950-ee25-4f4b-8d07-59aa99bb3498" + }, + { + "cellxgeneId": "de13e3e2-23b6-40ed-a413-e9e12d7d3910", + "hcaProjectId": "c1810dbc-16d2-45c3-b45e-3e675f88d87b" + }, + { + "cellxgeneId": "0a839c4b-10d0-4d64-9272-684c49a2c8ba", + "hcaProjectId": "5f607e50-ba22-4598-b1e9-f3d9d7a35dcc" + }, + { + "cellxgeneId": "2902f08c-f83c-470e-a541-e463e25e5058", + "hcaProjectId": "faeedcb0-e046-4be7-b1ad-80a3eeabb066" + }, + { + "cellxgeneId": "ced320a1-29f3-47c1-a735-513c7084d508", + "hcaProjectId": "f0f89c14-7460-4bab-9d42-22228a91f185" + }, + { + "cellxgeneId": "a3ffde6c-7ad2-498a-903c-d58e732f7470", + "hcaProjectId": "31887183-a72c-4308-9eac-c6140313f39c" + }, + { + "cellxgeneId": "2b02dff7-e427-4cdc-96fb-c0f354c099aa", + "hcaProjectId": "504e0cee-1688-40fa-b936-361c4a831f87" + }, + { + "cellxgeneId": "125eef58-0f61-4963-9b08-53e851ab65fb", + "hcaProjectId": "d8ae869c-39c2-4cdd-b3fc-2d0d8f60e7b8" + }, + { + "cellxgeneId": "5c868b6f-62c5-4532-9d7f-a346ad4b50a7", + "hcaProjectId": "cae461de-ecbd-482f-a5d4-11d607fc12ba" + }, + { + "cellxgeneId": "2a0b02c0-fea6-47bd-92b9-9b03f5d2580c", + "hcaProjectId": "a29952d9-925e-40f4-8a1c-274f118f1f51" + }, + { + "cellxgeneId": "62ef75e4-cbea-454e-a0ce-998ec40223d3", + "hcaProjectId": "04e4292c-f62f-4098-ae9b-fd69ae002a90" + }, + { + "cellxgeneId": "5d445965-6f1a-4b68-ba3a-b8f765155d3a", + "hcaProjectId": "6936da41-3692-46bb-bca1-cd0f507991e9" + }, + { + "cellxgeneId": "6ff3401b-d72c-4940-a00c-3f0792397082", + "hcaProjectId": "58028aa8-0ed2-49ca-b60f-15e2ed5989d5" + }, + { + "cellxgeneId": "33d19f34-87f5-455b-8ca5-9023a2e5453d", + "hcaProjectId": "cd61771b-661a-4e19-b269-6e5d95350de6" + }, + { + "cellxgeneId": "73f82ac8-15cc-4fcd-87f8-5683723fce7f", + "hcaProjectId": "c5f46615-68de-4cf4-bbc2-a0ae10f08243" + }, + { + "cellxgeneId": "ddfad306-714d-4cc0-9985-d9072820c530", + "hcaProjectId": "b963bd4b-4bc1-4404-8425-69d74bc636b8" + }, + { + "cellxgeneId": "c114c20f-1ef4-49a5-9c2e-d965787fb90c", + "hcaProjectId": "a9301beb-e9fa-42fe-b75c-84e8a460c733" + }, + { + "cellxgeneId": "32f2fd23-ec74-486f-9544-e5b2f41725f5", + "hcaProjectId": "2b38025d-a5ea-4c0f-b22e-367824bcaf4c" + }, + { + "cellxgeneId": "cdfb9ead-cb58-4a53-879d-5e4ed5329e73", + "hcaProjectId": "2a64db43-1b55-4639-aabb-8dba0145689d" + }, + { + "cellxgeneId": "dfc09a93-bce0-4c77-893d-e153d1b7f9fa", + "hcaProjectId": "8ab8726d-81b9-4bd2-acc2-4d50bee786b4" + }, + { + "cellxgeneId": "4f889ffc-d4bc-4748-905b-8eb9db47a2ed", + "hcaProjectId": "95f07e6e-6a73-4e1b-a880-c83996b3aa5c" + }, + { + "cellxgeneId": "16c1e722-96ae-4bf6-b408-cd7f8918484f", + "hcaProjectId": "38449aea-70b5-40db-84b3-1e08f32efe34" + }, + { + "cellxgeneId": "fc77d2ae-247d-44d7-aa24-3f4859254c2c", + "hcaProjectId": "21ea8ddb-525f-4f1f-a820-31f0360399a2" + }, + { + "cellxgeneId": "6d203948-a779-4b69-9b3f-1ee1dadc3980", + "hcaProjectId": "da74b507-60ee-4dd1-bd02-807bb051a337" + }, + { + "cellxgeneId": "3a2af25b-2338-4266-aad3-aa8d07473f50", + "hcaProjectId": "24d0dbbc-54eb-4904-8141-934d26f1c936" + }, + { + "cellxgeneId": "5900dda8-2dc3-4770-b604-084eac1c2c82", + "hcaProjectId": "581de139-461f-4875-b408-56453a9082c7" + }, + { + "cellxgeneId": "3116d060-0a8e-4767-99bb-e866badea1ed", + "hcaProjectId": "925f9a4c-cac0-444a-ad2c-612656ab3a85" + } +] \ No newline at end of file