diff --git a/ACTIVITY.md b/ACTIVITY.md
index 264d8568c2..eba3684f78 100644
--- a/ACTIVITY.md
+++ b/ACTIVITY.md
@@ -40,14 +40,17 @@ flowchart TD
## Pace of development
-## [![Repography logo](https://images.repography.com/logo.svg)](https://repography.com) / Recent activity [![Time period](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/pGfAgBUKqY3G-v6I743PiFRW_UY1tmd-HKHy6d1ear4/IHNavWbCVC3MxqvOc_yKjOWxIPiZr3TlKUnZDbWuTG0_badge.svg)](https://repography.com)
-[![Issue status graph](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/pGfAgBUKqY3G-v6I743PiFRW_UY1tmd-HKHy6d1ear4/IHNavWbCVC3MxqvOc_yKjOWxIPiZr3TlKUnZDbWuTG0_issues.svg)](https://github.com/kodadot/nft-gallery/issues)
-[![Pull request status graph](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/pGfAgBUKqY3G-v6I743PiFRW_UY1tmd-HKHy6d1ear4/IHNavWbCVC3MxqvOc_yKjOWxIPiZr3TlKUnZDbWuTG0_prs.svg)](https://github.com/kodadot/nft-gallery/pulls)
-[![Timeline graph](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/pGfAgBUKqY3G-v6I743PiFRW_UY1tmd-HKHy6d1ear4/IHNavWbCVC3MxqvOc_yKjOWxIPiZr3TlKUnZDbWuTG0_timeline.svg)](https://github.com/kodadot/nft-gallery/commits)
-[![Top contributors](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/pGfAgBUKqY3G-v6I743PiFRW_UY1tmd-HKHy6d1ear4/IHNavWbCVC3MxqvOc_yKjOWxIPiZr3TlKUnZDbWuTG0_users.svg)](https://github.com/kodadot/nft-gallery/graphs/contributors)
+
+## [![Repography logo](https://images.repography.com/logo.svg)](https://repography.com) / Recent activity [![Time period](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/1nMiB_aZjymZHZUDQ6R3hWGHqWUWahnU6VdRYYv2InU/ygTelP2NVzMzr-XPmCeXq2GzAIHSFlcUsZDXKY3Qrl4_badge.svg)](https://repography.com)
+[![Timeline graph](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/1nMiB_aZjymZHZUDQ6R3hWGHqWUWahnU6VdRYYv2InU/ygTelP2NVzMzr-XPmCeXq2GzAIHSFlcUsZDXKY3Qrl4_timeline.svg)](https://github.com/kodadot/nft-gallery/commits)
+[![Issue status graph](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/1nMiB_aZjymZHZUDQ6R3hWGHqWUWahnU6VdRYYv2InU/ygTelP2NVzMzr-XPmCeXq2GzAIHSFlcUsZDXKY3Qrl4_issues.svg)](https://github.com/kodadot/nft-gallery/issues)
+[![Pull request status graph](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/1nMiB_aZjymZHZUDQ6R3hWGHqWUWahnU6VdRYYv2InU/ygTelP2NVzMzr-XPmCeXq2GzAIHSFlcUsZDXKY3Qrl4_prs.svg)](https://github.com/kodadot/nft-gallery/pulls)
+[![Top contributors](https://images.repography.com/23713223/kodadot/nft-gallery/recent-activity/1nMiB_aZjymZHZUDQ6R3hWGHqWUWahnU6VdRYYv2InU/ygTelP2NVzMzr-XPmCeXq2GzAIHSFlcUsZDXKY3Qrl4_users.svg)](https://github.com/kodadot/nft-gallery/graphs/contributors)
+
## [![Repography logo](https://images.repography.com/logo.svg)](https://repography.com) / Top contributors
-[![Top contributors](https://images.repography.com/23713223/kodadot/nft-gallery/top-contributors/pGfAgBUKqY3G-v6I743PiFRW_UY1tmd-HKHy6d1ear4/IHNavWbCVC3MxqvOc_yKjOWxIPiZr3TlKUnZDbWuTG0_table.svg)](https://github.com/kodadot/nft-gallery/graphs/contributors)
+[![Top contributors](https://images.repography.com/23713223/kodadot/nft-gallery/top-contributors/1nMiB_aZjymZHZUDQ6R3hWGHqWUWahnU6VdRYYv2InU/ygTelP2NVzMzr-XPmCeXq2GzAIHSFlcUsZDXKY3Qrl4_table.svg)](https://github.com/kodadot/nft-gallery/graphs/contributors)
+
### RepoTracker
diff --git a/components/Navbar.vue b/components/Navbar.vue
index 3801272b04..d6a28df712 100644
--- a/components/Navbar.vue
+++ b/components/Navbar.vue
@@ -205,7 +205,7 @@ import { useEventListener } from '@vueuse/core'
import { useIdentityStore } from '@/stores/identity'
import { getChainNameByPrefix } from '@/utils/chain'
-import { createVisible } from '@/utils/config/permision.config'
+import { createVisible } from '@/utils/config/permission.config'
import ShoppingCartButton from './navbar/ShoppingCartButton.vue'
const { $nextTick, $neoModal } = useNuxtApp()
diff --git a/components/TheFooter.vue b/components/TheFooter.vue
index c627c3b6fb..423fbe67dc 100644
--- a/components/TheFooter.vue
+++ b/components/TheFooter.vue
@@ -2,10 +2,10 @@
@@ -272,7 +275,4 @@ const socials = [
icon: 'reddit-alien',
},
]
-const goToSocials = (url): void => {
- window.open(url, '_blank')
-}
diff --git a/components/blog/BlogPost.vue b/components/blog/BlogPost.vue
index 751af935b3..cd98a58959 100644
--- a/components/blog/BlogPost.vue
+++ b/components/blog/BlogPost.vue
@@ -21,6 +21,8 @@
diff --git a/components/items/ItemsGrid/useItemsGrid.ts b/components/items/ItemsGrid/useItemsGrid.ts
index 6cfb38f6cc..962f122d96 100644
--- a/components/items/ItemsGrid/useItemsGrid.ts
+++ b/components/items/ItemsGrid/useItemsGrid.ts
@@ -26,10 +26,17 @@ export function useFetchSearch({
const { searchParams } = useSearchParams()
- async function fetchSearch(
- page: number,
- loadDirection: 'up' | 'down' = 'down'
- ) {
+ interface FetchSearchParams {
+ page?: number
+ loadDirection?: 'up' | 'down'
+ search?: { [key: string]: string | number }[]
+ }
+
+ async function fetchSearch({
+ page = 1,
+ loadDirection = 'down',
+ search,
+ }: FetchSearchParams) {
if (isFetchingData.value) {
return false
}
@@ -46,22 +53,33 @@ export function useFetchSearch({
}
}
+ const variables = search
+ ? {
+ search,
+ first: first.value,
+ offset: (page - 1) * first.value,
+ orderBy: route.query.sort?.length
+ ? route.query.sort
+ : ['blockNumber_DESC'],
+ }
+ : {
+ denyList: getDenyList(urlPrefix.value),
+ orderBy: route.query.sort?.length
+ ? route.query.sort
+ : ['blockNumber_DESC'],
+ search: searchParams.value,
+ priceMin: Number(route.query.min),
+ priceMax: Number(route.query.max),
+ first: first.value,
+ offset: (page - 1) * first.value,
+ }
+
const queryPath = getQueryPath(client.value)
const query = await resolveQueryPath(queryPath, 'nftListWithSearch')
const result = await $apollo.query({
query: query.default,
client: client.value,
- variables: {
- denyList: getDenyList(urlPrefix.value),
- orderBy: route.query.sort?.length
- ? route.query.sort
- : ['blockNumber_DESC'],
- search: searchParams.value,
- priceMin: Number(route.query.min),
- priceMax: Number(route.query.max),
- first: first.value,
- offset: (page - 1) * first.value,
- },
+ variables: variables,
})
// handle results
@@ -80,6 +98,11 @@ export function useFetchSearch({
return true
}
+ const refetch = (search?: { [key: string]: string | number }[]) => {
+ nfts.value = []
+ fetchSearch({ search })
+ }
+
watch(
[
() => route.query.sort,
@@ -98,5 +121,6 @@ export function useFetchSearch({
return {
nfts,
fetchSearch,
+ refetch,
}
}
diff --git a/components/landing/SearchLanding.vue b/components/landing/SearchLanding.vue
index fdc3e4751c..615c6e2aff 100644
--- a/components/landing/SearchLanding.vue
+++ b/components/landing/SearchLanding.vue
@@ -29,8 +29,9 @@
+ @click.prevent="switchChain(chain.value)">
{{ chainText(chain.text) }}
{{ $t('beta') }} {
}
})
-const switchChain = (value) => {
+const switchChain = (value, event) => {
+ event.preventDefault()
if (value !== urlPrefix.value) {
setUrlPrefix(value)
}
diff --git a/components/navbar/ProfileDropdown.vue b/components/navbar/ProfileDropdown.vue
index 6f7406b6a6..3a7db3e471 100644
--- a/components/navbar/ProfileDropdown.vue
+++ b/components/navbar/ProfileDropdown.vue
@@ -4,6 +4,7 @@
v-if="account"
class="navbar-item"
role="button"
+ aria-label="open profile menu"
@click="toggleWalletConnectModal">
{{ listedCount }} ⊆ {{ totalSoldItems }}
-+
{{ $t('profileStats.listed') }} / {{ $t('profileStats.totalSoldItems') }}
@@ -25,11 +25,9 @@
+
{{ $t('profileStats.highestBuy') }} / {{ $t('profileStats.totalAmountSpend') }}
@@ -41,7 +39,7 @@
+
{{ $t('profileStats.totalHoldingsBoughtValues') }}
+
{{ $t('profileStats.maxSoldPrice') }} / {{ $t('profileStats.totalSellValues') }}
@@ -66,10 +64,10 @@ + + diff --git a/components/profile/ProfileGrid.vue b/components/profile/ProfileGrid.vue new file mode 100644 index 0000000000..68843d3d2c --- /dev/null +++ b/components/profile/ProfileGrid.vue @@ -0,0 +1,31 @@ + +