diff --git a/hooks/pre-commit b/hooks/pre-commit new file mode 100755 index 0000000..83e87ff --- /dev/null +++ b/hooks/pre-commit @@ -0,0 +1,3 @@ +#!/bin/bash + +yarn lint && yarn build \ No newline at end of file diff --git a/package.json b/package.json index 6bf8a22..13a8d95 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "build": "next build", "start": "next start", "lint": "next lint --max-warnings 0", - "postinstall": "npm run codegen", + "postinstall": "cp -r hooks .git/ && npm run codegen", "codegen": "npm run graphql-gen", "graphql-gen": "graphql-codegen", "graphql-watch": "graphql-codegen -w" diff --git a/src/app/account/all-songs/page.tsx b/src/app/account/all-songs/page.tsx index 2460321..6d4394c 100644 --- a/src/app/account/all-songs/page.tsx +++ b/src/app/account/all-songs/page.tsx @@ -17,6 +17,7 @@ import React, { useEffect } from "react"; import { usePublicClient, useWalletClient } from "wagmi"; import AccountListBtn from "../AccountListBtn"; import { unmonetize } from "@/services/smart-contract/unmonetize"; +import Link from "next/link"; const Account = () => { const { data: walletClient } = useWalletClient(); @@ -97,6 +98,9 @@ const Account = () => {

Music NFTs

+ +

See less

+
diff --git a/src/app/account/page.tsx b/src/app/account/page.tsx index a9e9ba6..2f3e326 100644 --- a/src/app/account/page.tsx +++ b/src/app/account/page.tsx @@ -4,6 +4,7 @@ import SongListItemMusicNFT from "@/components/SongList/SongListItemMusicNFT"; import SongListItemSpinamp from "@/components/SongList/SongListItemSpinamp"; import { AppWalletContext } from "@/context/AppWallet"; import { MusicNFTAddr } from "@/env"; + import { GET_MY_LISTED_MUSIC } from "@/graph-ql/queries/octav3/GET_MY_LISTED_MUSIC/getMyListedMusic"; import { GET_MY_MUSIC } from "@/graph-ql/queries/octav3/GET_MY_MUSIC/getMyMusic"; import { GetMyMusicQuery } from "@/graph-ql/queries/octav3/__generated__/graphql"; diff --git a/src/components/MintSongButton/MintSongButton.tsx b/src/components/MintSongButton/MintSongButton.tsx index fa3ad98..9fade8e 100644 --- a/src/components/MintSongButton/MintSongButton.tsx +++ b/src/components/MintSongButton/MintSongButton.tsx @@ -72,7 +72,7 @@ const MintSongButton: React.FC = () => { onClick={() => isConnected ? setShowModal(true) : openConnectModal?.() } - className="flex justify-center items-center m-2 w-60 md:w-48 lg:w-60 h-80 border-[1px] border-solid border-[#00000026] text-[#00000026] text-[10rem] font-light rounded-md" + className="flex justify-center items-center m-2 w-60 md:w-48 lg:w-60 h-[18.5rem] border-[1px] border-solid border-[#00000026] text-[#00000026] text-[10rem] font-light rounded-md" > diff --git a/src/components/SongList/SongListItemUI.tsx b/src/components/SongList/SongListItemUI.tsx index 4bce9b8..a23b8bf 100644 --- a/src/components/SongList/SongListItemUI.tsx +++ b/src/components/SongList/SongListItemUI.tsx @@ -11,7 +11,6 @@ type Props = { platform?: { url: string; name: Platform }; isCurrentPlaying: boolean; customBtn?: React.ReactNode; - viewOn?: { url: string; name: string }; }; const SongListItemUIStyled = styled.div` @@ -46,7 +45,6 @@ const SongListItemUI = ({ platform, isCurrentPlaying, customBtn, - viewOn, }: Props) => { const [imageLoaded, setImageLoaded] = useState(false); return ( @@ -92,13 +90,7 @@ const SongListItemUI = ({ {title}

{artist}

- {viewOn && ( - -

- View on {viewOn.name} -

-
- )} + {platform && (

@@ -106,6 +98,13 @@ const SongListItemUI = ({

)} + {!platform && ( + +

+ View on Octav3 +

+
+ )} diff --git a/src/graph-ql/queries/spinamp/__generated__/graphql.ts b/src/graph-ql/queries/spinamp/__generated__/graphql.ts index 02a120f..71fadb1 100644 --- a/src/graph-ql/queries/spinamp/__generated__/graphql.ts +++ b/src/graph-ql/queries/spinamp/__generated__/graphql.ts @@ -1718,6 +1718,7 @@ export type IpfsFile = Node & { isAudio?: Maybe; isImage?: Maybe; isVideo?: Maybe; + lastCacheWarmup?: Maybe; lastRetry?: Maybe; mimeType?: Maybe; /** A globally unique identifier. Can be used in various places throughout the system to identify this single value. */ @@ -1740,6 +1741,8 @@ export type IpfsFileCondition = { isImage?: InputMaybe; /** Checks for equality with the object’s `isVideo` field. */ isVideo?: InputMaybe; + /** Checks for equality with the object’s `lastCacheWarmup` field. */ + lastCacheWarmup?: InputMaybe; /** Checks for equality with the object’s `lastRetry` field. */ lastRetry?: InputMaybe; /** Checks for equality with the object’s `mimeType` field. */ @@ -1762,6 +1765,8 @@ export type IpfsFileFilter = { isImage?: InputMaybe; /** Filter by the object’s `isVideo` field. */ isVideo?: InputMaybe; + /** Filter by the object’s `lastCacheWarmup` field. */ + lastCacheWarmup?: InputMaybe; /** Filter by the object’s `lastRetry` field. */ lastRetry?: InputMaybe; /** Filter by the object’s `mimeType` field. */ @@ -1808,6 +1813,8 @@ export enum IpfsFilesOrderBy { IsImageDesc = 'IS_IMAGE_DESC', IsVideoAsc = 'IS_VIDEO_ASC', IsVideoDesc = 'IS_VIDEO_DESC', + LastCacheWarmupAsc = 'LAST_CACHE_WARMUP_ASC', + LastCacheWarmupDesc = 'LAST_CACHE_WARMUP_DESC', LastRetryAsc = 'LAST_RETRY_ASC', LastRetryDesc = 'LAST_RETRY_DESC', MimeTypeAsc = 'MIME_TYPE_ASC',