diff --git a/CHANGELOG.md b/CHANGELOG.md index 5955b48b6d..1efd8a1f43 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,32 @@ > All notable changes to this project will be documented in this file +## [1.70.0-beta.1](https://github.com/open-sauced/insights/compare/v1.69.1-beta.2...v1.70.0-beta.1) (2023-10-11) + + +### πŸ• Features + +* add new "Get Card" CTA button to profile ([#1839](https://github.com/open-sauced/insights/issues/1839)) ([9f16f3b](https://github.com/open-sauced/insights/commit/9f16f3b63a1411635927d3a0b138a1500d0b5298)) + + +### πŸ› Bug Fixes + +* filter out orgs from GitHub list import ([#1866](https://github.com/open-sauced/insights/issues/1866)) ([90bf15a](https://github.com/open-sauced/insights/commit/90bf15a73f4385647eb233f80634f3ba92fdc77d)) + +### [1.69.1-beta.2](https://github.com/open-sauced/insights/compare/v1.69.1-beta.1...v1.69.1-beta.2) (2023-10-11) + + +### βœ… Tests + +* increase timeout for e2e tests ([#1867](https://github.com/open-sauced/insights/issues/1867)) ([2e0a175](https://github.com/open-sauced/insights/commit/2e0a175eff06688801ff958d68b4db1ffc8d22c0)) + +### [1.69.1-beta.1](https://github.com/open-sauced/insights/compare/v1.69.0...v1.69.1-beta.1) (2023-10-11) + + +### πŸ› Bug Fixes + +* mobile responsiveness for add to list dropdown ([fda8d3a](https://github.com/open-sauced/insights/commit/fda8d3a1427a92fde4ad3644373a4dc99d2091e1)) + ## [1.69.0](https://github.com/open-sauced/insights/compare/v1.68.0...v1.69.0) (2023-10-11) diff --git a/components/molecules/ContributorProfileHeader/contributor-profile-header.tsx b/components/molecules/ContributorProfileHeader/contributor-profile-header.tsx index 761650b4de..1fc1465c0c 100644 --- a/components/molecules/ContributorProfileHeader/contributor-profile-header.tsx +++ b/components/molecules/ContributorProfileHeader/contributor-profile-header.tsx @@ -2,22 +2,25 @@ import React, { useState, useEffect } from "react"; import Link from "next/link"; import { useRouter } from "next/router"; import Image from "next/image"; +import { clsx } from "clsx"; +import { usePostHog } from "posthog-js/react"; import { TfiMoreAlt } from "react-icons/tfi"; import { HiUserAdd } from "react-icons/hi"; +import { SlUserFollowing } from "react-icons/sl"; import { SignInWithOAuthCredentials, User } from "@supabase/supabase-js"; -import { usePostHog } from "posthog-js/react"; -import { clsx } from "clsx"; import dynamic from "next/dynamic"; +import PizzaGradient from "img/icons/pizza-gradient.svg"; + import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "components/atoms/Dropdown/dropdown"; - import Avatar from "components/atoms/Avatar/avatar"; +import Tooltip from "components/atoms/Tooltip/tooltip"; import RainbowBg from "img/rainbow-cover.png"; import Button from "components/atoms/Button/button"; import Text from "components/atoms/Typography/text"; @@ -27,6 +30,7 @@ import { useToast } from "lib/hooks/useToast"; import { OptionKeys } from "components/atoms/Select/multi-select"; import { addListContributor, useFetchAllLists } from "lib/hooks/useList"; import { useFetchUser } from "lib/hooks/useFetchUser"; +import { cardPageUrl } from "lib/utils/urls"; import { Dialog, DialogContent, DialogHeader, DialogTitle } from "../Dialog/dialog"; const MultiSelect = dynamic(() => import("components/atoms/Select/multi-select"), { ssr: false }); @@ -137,7 +141,7 @@ const ContributorProfileHeader = ({ )}
-
+
+ + + +
+ user profile cover image +
+ +
-
+
+ +
+ user profile cover image +
+
{isConnected && (
@@ -166,18 +189,38 @@ const ContributorProfileHeader = ({ !isOwner && ( <> {isFollowing ? ( - + <> + + + ) : ( - + <> + + + )} ) @@ -269,8 +312,6 @@ const ContributorProfileHeader = ({
- - {/* Mobile dropdown menu */}
)}
@@ -393,7 +434,7 @@ const AddToListDropdown = ({ username }: { username: string }) => {
} - className="w-10 px-4" + className="w-10 md:px-4 max-sm:text-sm" placeholder="Add to list" options={listOptions} selected={selectedList} diff --git a/e2e-tests/UnsignedUsersRedirects.spec.ts b/e2e-tests/UnsignedUsersRedirects.spec.ts index 82b1cd468c..c95f0412c5 100644 --- a/e2e-tests/UnsignedUsersRedirects.spec.ts +++ b/e2e-tests/UnsignedUsersRedirects.spec.ts @@ -2,10 +2,10 @@ import { test, expect } from "@playwright/test"; test("Homepage redirects to /feed for unsigned users", async ({ page }) => { await page.goto("/"); - await expect(page).toHaveURL(/\/feed/, { timeout: 10000 }); + await expect(page).toHaveURL(/\/feed/, { timeout: 20000 }); }); test("Insights Hub redirects to /feed for unsigned users", async ({ page }) => { await page.goto("/hub/insights"); - await expect(page).toHaveURL(/\/feed/, { timeout: 10000 }); + await expect(page).toHaveURL(/\/feed/, { timeout: 20000 }); }); diff --git a/img/icons/pizza-gradient.svg b/img/icons/pizza-gradient.svg new file mode 100644 index 0000000000..2d6cf95e69 --- /dev/null +++ b/img/icons/pizza-gradient.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 8f2e503441..4c55cba922 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,12 +1,12 @@ { "name": "@open-sauced/insights", - "version": "1.69.0", + "version": "1.70.0-beta.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@open-sauced/insights", - "version": "1.69.0", + "version": "1.70.0-beta.1", "hasInstallScript": true, "license": "Apache 2.0", "dependencies": { diff --git a/package.json b/package.json index 33aff8acc3..9aa19aabeb 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@open-sauced/insights", "description": "πŸ•The dashboard for open source discovery.", "keywords": [], - "version": "1.69.0", + "version": "1.70.0-beta.1", "author": "Brian Douglas ", "private": true, "license": "Apache 2.0", diff --git a/pages/hub/lists/new.tsx b/pages/hub/lists/new.tsx index a747a0baf7..1c9c452f67 100644 --- a/pages/hub/lists/new.tsx +++ b/pages/hub/lists/new.tsx @@ -19,12 +19,13 @@ import { useToast } from "lib/hooks/useToast"; interface CreateListPayload { name: string; is_public: boolean; - contributors: GhFollowing[]; + contributors: { id: number; login: string }[]; } interface GhFollowing { id: number; login: string; + type: string; } const CreateListPage = () => { @@ -110,7 +111,9 @@ const CreateListPage = () => { return; } - const following = getFollowingRandom(followingList, 10); + // Filter out orgs + const contributorFollowingList = followingList.filter((contributor) => contributor.type === "User"); + const following = getFollowingRandom(contributorFollowingList, 10); const response = await createList({ name, diff --git a/styles/globals.css b/styles/globals.css index d6f4b01881..68480a9ddf 100644 --- a/styles/globals.css +++ b/styles/globals.css @@ -24,6 +24,17 @@ body { width: 100%; } +.border-conic-gradient { + background-image: conic-gradient( + from 180deg at 50% 50%, + #ff6a06 0deg, + #ff6492 120.00000357627869deg, + #ffe22c 223.12500715255737deg, + #fc620d 360deg, + #ff7e33 360deg + ); +} + .sbui-btn > span { display: flex; align-items: center;