Skip to content
This repository has been archived by the owner on Dec 2, 2024. It is now read-only.

feat: the grid #396

Merged
merged 136 commits into from
Nov 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
136 commits
Select commit Hold shift + click to select a range
6ac17ea
feat: grid tab and routing (#395)
dzbo Aug 21, 2024
9c2149b
feat: the grid port wip (#403)
nastita Aug 30, 2024
94bb1f0
Rollback routing
dzbo Aug 30, 2024
18f8e56
Merge branch 'main' of github.com:lukso-network/universalprofile.clou…
dzbo Aug 30, 2024
975cbfe
Initial port of the grid
nastita Aug 21, 2024
3b1e06f
Apply PR feedback
nastita Aug 23, 2024
8604ed4
change interfaces to types
nastita Aug 23, 2024
cad5385
rework grid layout update
nastita Aug 26, 2024
b84177f
Adhere to current lsp27 definition
nastita Aug 31, 2024
4b1d6e7
fix lint issues
nastita Sep 2, 2024
c336db0
Apply PR feedback
nastita Sep 2, 2024
f8176f6
feat: rework grid layout update (#414)
nastita Sep 2, 2024
f23071c
Fix config read from server
nastita Sep 2, 2024
9621bfc
Show config as lsp27 in settings
nastita Sep 3, 2024
d644fc7
Clear selection when dragging
nastita Sep 3, 2024
1e8d323
Fix grid config retrieval whe address is checksumed
nastita Sep 4, 2024
b2a6107
Improve grid parsing algorithm
nastita Sep 4, 2024
e1d9b11
lint fixes
nastita Sep 4, 2024
60bf58a
Remove debug console log
nastita Sep 4, 2024
7c25fc3
Make test structure clearer
nastita Sep 4, 2024
3b6330f
remove browser alerts
nastita Sep 4, 2024
90ca44f
feat: the grid improvements (#432)
nastita Sep 5, 2024
41eaa67
use dynamic components instead of v-ifs
nastita Sep 5, 2024
1d1e47d
Add iframe warning
nastita Sep 6, 2024
b6c8dd3
feat: the grid more improvements (#440)
nastita Sep 9, 2024
51203b5
feat: the grid fix responsiveness (#443)
nastita Sep 9, 2024
3552e4d
Merge remote-tracking branch 'origin/main' into feat/the-grid
richtera Sep 10, 2024
9e0e650
feat the grid improvements 3 (#454)
nastita Sep 12, 2024
10f803a
Merge branch 'main' of github.com:lukso-network/universalprofile.clou…
dzbo Sep 13, 2024
e6cd198
Refactor profile view
dzbo Sep 13, 2024
c588db5
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Sep 13, 2024
48cb01a
feat: persist grid config (#457)
dzbo Sep 15, 2024
4e30274
feat: three dot menu (#460)
dzbo Sep 17, 2024
a28b5f8
feat: widget wizard (#455)
nastita Sep 17, 2024
b547957
refactor: reorganize grid code (#461)
dzbo Sep 18, 2024
2975a93
refactor: type changes (#463)
dzbo Sep 20, 2024
fab9472
feat: Add widget input parser functions for x and youtube (#462)
nastita Sep 20, 2024
868d2b1
feat: "add content" widget (#465)
dzbo Sep 22, 2024
0257f71
feat: grid resize handle (#467)
dzbo Sep 23, 2024
9f35d14
feat: the grid input parser platforms SoundCloud + Spotify (#466)
nastita Sep 23, 2024
9070a0d
feat: Add Instagram to input parser (#468)
nastita Sep 26, 2024
3f7923f
feat: add content (#469)
dzbo Sep 27, 2024
b5ea45d
feat: design updates (#470)
dzbo Sep 30, 2024
ed4ba96
fix: grid save issue (#473)
dzbo Oct 1, 2024
ae33983
fix: instagram regex (#472)
nastita Oct 1, 2024
217d8bb
refactor: Grid layout handling (#471)
nastita Oct 1, 2024
67be786
Merge branch 'main' of github.com:lukso-network/universalprofile.clou…
dzbo Oct 2, 2024
128f99e
feat: new resize handle (#479)
dzbo Oct 3, 2024
a76e31f
feat: save grid config in profile (#478)
dzbo Oct 4, 2024
93426db
feat: image widget (#480)
dzbo Oct 4, 2024
2631e19
feat: better dirty state check (#482)
dzbo Oct 8, 2024
e23a86c
feat: multi grid system (#483)
dzbo Oct 9, 2024
ad7f364
feat: Grid SoundCloud share url parsing (#481)
nastita Oct 9, 2024
dfe1f53
feat: text widget (#484)
dzbo Oct 10, 2024
db9df9d
feat: allow to test different grid column size (#488)
dzbo Oct 11, 2024
17b98d2
fix: empty dropdown issue (#489)
dzbo Oct 11, 2024
a276022
feat: add Warpcast widget (#486)
dzbo Oct 11, 2024
1e9ce35
feat: Youtube integration (#487)
dzbo Oct 11, 2024
ded2dfe
feat: Instagram integration (#490)
dzbo Oct 11, 2024
c0d2cca
Use modal params in widget edit mode
dzbo Oct 11, 2024
65fdc54
Fix temp layout initialization and switch in edit mode
dzbo Oct 11, 2024
9a822ef
Rename store
dzbo Oct 11, 2024
df950d2
Grid types update
dzbo Oct 11, 2024
0dc19a4
Rename store file
dzbo Oct 11, 2024
d058094
Move store variables
dzbo Oct 11, 2024
aa5c450
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Oct 11, 2024
51c0669
refactor: temp grid improvements (#491)
dzbo Oct 11, 2024
3400af9
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Oct 11, 2024
4047e76
feat: calculate row height (#492)
dzbo Oct 11, 2024
2e264b7
Keep w/h when cloning/copying
dzbo Oct 11, 2024
6725b00
feat: add widgets with query params (#493)
dzbo Oct 14, 2024
dd7641a
feat: widget move animation (#494)
dzbo Oct 14, 2024
3f5652f
feat: better spotify parameters parsing (#485)
nastita Oct 14, 2024
61e1795
feat: safe data insert (#495)
dzbo Oct 14, 2024
8da33bc
feat: multi grid management (#496)
dzbo Oct 17, 2024
56c5c91
feat: allow widget selection when not in edit mode (#497)
dzbo Oct 17, 2024
2909b97
feat: optional description in Text widget (#499)
dzbo Oct 17, 2024
f00360f
feat: reduce grid tab spaces (#498)
dzbo Oct 17, 2024
90eabcc
feat: change field order in Text widget (#500)
dzbo Oct 17, 2024
78dbbdf
Hide count for single grid
dzbo Oct 18, 2024
86196e4
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Oct 18, 2024
219f9c1
Change inner widget rounding
dzbo Oct 18, 2024
63dad2c
feat: grid columns config (#501)
dzbo Oct 19, 2024
ca261fe
feat: remove default grid (#507)
dzbo Oct 21, 2024
9ba3f16
feat: grid tabs improvements (#504)
dzbo Oct 22, 2024
305de62
feat: navbar changes (#506)
dzbo Oct 22, 2024
eb6cda5
feat: improve grid validation (#508)
dzbo Oct 24, 2024
73241d4
Lazy load widgets (#509)
dzbo Oct 24, 2024
4b8e130
Extend session time
dzbo Oct 25, 2024
06c2841
Upgrade web components
dzbo Oct 25, 2024
a63dfda
feat: grid design adjustments (#510)
dzbo Oct 26, 2024
fb1291c
fix: handle multiple user sessions for grid (#511)
dzbo Oct 26, 2024
785ff77
Upgrade web components
dzbo Oct 26, 2024
ab76915
feat: settings link for non logged users (#512)
dzbo Oct 28, 2024
5d7941f
feat: mobile nav bar updates (#514)
dzbo Oct 28, 2024
2003517
feat: how use grid instructions (#513)
dzbo Oct 28, 2024
7bff7be
feat: enable wallet connect (#439)
dzbo Oct 29, 2024
22653c7
feat: new edit mode and mobile adjustments (#515)
dzbo Oct 30, 2024
79aa61a
Fix tab change logic
dzbo Oct 30, 2024
da7e3a8
Update auto assign
dzbo Oct 30, 2024
5629cf3
fix: widget clone issue (#516)
dzbo Oct 30, 2024
3a6aec9
fix: long grid issue (#518)
dzbo Oct 30, 2024
b4954b0
fix: repair check for adding missing assets already owned (#519)
CJ42 Oct 31, 2024
46c10f7
feat: widget instructions update (#522)
dzbo Oct 31, 2024
3aeebfd
feat: connect modal updates (#521)
dzbo Oct 31, 2024
231e3e9
feat: floating menu adjustments (#523)
dzbo Oct 31, 2024
2fbb2cc
chore: test code quality improvements (#520)
dzbo Oct 31, 2024
56ac288
feat: update add grid icon (#524)
dzbo Oct 31, 2024
e22b43f
Add grid tab indent
dzbo Oct 31, 2024
6b21521
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Oct 31, 2024
7132a77
chore: unify line width (#525)
dzbo Oct 31, 2024
d84974e
feat: allow multiline in text widget (#527)
dzbo Oct 31, 2024
dd2019a
feat: update shadows (#526)
dzbo Nov 1, 2024
2435aad
feat: Add Elfsight platform flow (#528)
nastita Nov 4, 2024
eeb67b5
feat: empty grid (#529)
dzbo Nov 5, 2024
d25a3dd
Merge branch 'main' of github.com:lukso-network/universalprofile.clou…
dzbo Nov 6, 2024
9db9246
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Nov 6, 2024
2d61726
feat: parser refactor and updates (#505)
nastita Nov 6, 2024
e3fded8
fix: Repair yarn dev by disabling vue override in non-production
richtera Nov 6, 2024
b042470
feat: link field in text widget (#534)
dzbo Nov 7, 2024
42e7e5d
feat: grid mobile warning (#533)
dzbo Nov 7, 2024
4cc6e9c
fix: iframe refresh on resize (#531)
dzbo Nov 7, 2024
21c03ba
feat: swap buttons in floating menu (#532)
dzbo Nov 7, 2024
f4c3b1e
Update image
dzbo Nov 7, 2024
66772af
Merge branch 'feat/the-grid' of github.com:lukso-network/universalpro…
dzbo Nov 7, 2024
dc75120
Add unsaved grid logging
dzbo Nov 7, 2024
628aca7
Regenerate translations
dzbo Nov 7, 2024
7aece5b
Snapshot update
dzbo Nov 7, 2024
f7dad9f
feat: Elfsight improvements (#535)
dzbo Nov 8, 2024
0da7708
fix: reset button clear whole grid instead of bringing user to initia…
dzbo Nov 8, 2024
c060d8e
fix: add widget position (#538)
dzbo Nov 8, 2024
499e415
fix: Wallet Connect improvements (#536)
dzbo Nov 8, 2024
561897f
fix: grid save on mobile (#539)
dzbo Nov 8, 2024
bd4a3f4
Translations
dzbo Nov 8, 2024
7bc6786
feat: menu in middle of the screen (#541)
dzbo Nov 8, 2024
c5dc190
feat: add widget from external source (#542)
dzbo Nov 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ root = true
end_of_line = lf
insert_final_newline = true

[*.{js,json,yml}]
[*.{js,ts,json,yml}]
charset = utf-8
indent_style = space
indent_size = 2
print_width = 80
6 changes: 6 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
ALGOLIA_APPLICATION_ID=YOUR_ALGOLIA_APPLICATION_ID
ALGOLIA_API_KEY=YOUR_ALGOLIA_API_KEY

# dev envs not needed in production
YATA_API_TOKEN=YOUR_YATA_API_TOKEN # yata api token for fetching translations

Expand All @@ -12,3 +15,6 @@ NUXT_PUBLIC_TRANSAK_API_KEY=YOUR_NUXT_PUBLIC_TRANSAK_API_KEY

# Ramp
NUXT_PUBLIC_RAMP_API_KEY=YOUR_NUXT_PUBLIC_RAMP_API_KEY

# API secret
NUXT_PUBLIC_API_SHARED_SECRET=YOUR_NUXT_PUBLIC_API_SHARED_SECRET
12 changes: 9 additions & 3 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,15 @@ module.exports = {
'tailwindcss/no-custom-classname': [
'error',
{
whitelist: ['paragraph-.*', 'heading-.*', 'nav-.*', 'shadow-.*'],
whitelist: [
'paragraph-.*',
'heading-.*',
'nav-.*',
'shadow-.*',
'instagram-.*',
'twitter-.*',
'grid-.*',
],
},
],
},
Expand All @@ -70,8 +78,6 @@ module.exports = {
files: ['**/*.spec.ts'],
extends: ['plugin:playwright/playwright-test'],
rules: {
'import/order': 'off',
'@typescript-eslint/no-unused-vars': 'off',
'playwright/no-standalone-expect': 'off',
'playwright/no-networkidle': 'off',
'playwright/no-skipped-test': 'off',
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ env:
NUXT_PUBLIC_SENTRY_ENVIRONMENT: '${{ secrets.SENTRY_ENVIRONMENT }}'
NUXT_PUBLIC_TRANSAK_API_KEY: '${{ secrets.TRANSAK_API_KEY }}'
NUXT_PUBLIC_RAMP_API_KEY: '${{ secrets.RAMP_API_KEY }}'
NUXT_PUBLIC_API_SHARED_SECRET: '${{ secrets.API_SHARED_SECRET }}'

jobs:
test:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/review.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ jobs:
add-reviews:
runs-on: ubuntu-latest
steps:
- uses: kentaro-m/auto-assign-action@v1.2.4
- uses: kentaro-m/auto-assign-action@v2.0.0
with:
configuration-path: '.github/auto_assign.yaml'
55 changes: 32 additions & 23 deletions app.vue
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,12 @@ const { addProviderEvents, removeProviderEvents } =
const { disconnect } = useBaseProvider()
const { cacheValue } = useCache()
const { currencyList } = storeToRefs(useCurrencyStore())
const { initProvider, reconnect } = useWalletConnectProvider()
const {
initProvider: initWalletConnectProvider,
connect: connectWalletConnect,
} = useWalletConnectProvider()
const { formatMessage } = useIntl()
const { gridChainId, tempGrids } = storeToRefs(useGridStore())
const swHasUpgrade = ref<boolean>(false)
// Make the service worker update available to the rest of the app
Expand All @@ -39,13 +43,7 @@ const setupTranslations = () => {
* RPC - from RPC endpoint
*/
const setupWeb3Instances = async () => {
// reconnect wallet connect
if (isWalletConnect.value) {
await initProvider()
await reconnect()
}
// set injected provider
// set web3 for injected provider
if (INJECTED_PROVIDER) {
// for chain interactions through dapp
addWeb3(PROVIDERS.INJECTED, INJECTED_PROVIDER)
Expand All @@ -62,6 +60,12 @@ const setupWeb3Instances = async () => {
// expose web3 instance to global scope for console access
window.web3 = getWeb3(PROVIDERS.RPC)
}
// reconnect wallet connect
if (isWalletConnect.value) {
await initWalletConnectProvider()
await connectWalletConnect()
}
}
/**
Expand Down Expand Up @@ -112,18 +116,19 @@ const setupNetwork = async () => {
const network = useRouter().currentRoute.value.query?.network
if (!network) {
await checkNetwork()
return
}
if (SUPPORTED_NETWORK_IDS.includes(network)) {
selectedChainId.value = getNetworkById(network).chainId
await checkNetwork()
// reset temp grid layout if network is changed
if (gridChainId.value !== selectedChainId.value) {
tempGrids.value = {}
}
} else {
console.warn(
`Invalid network: ${network}, valid networks are ${SUPPORTED_NETWORK_IDS.join(
', '
)}`
`Invalid network: ${network}, valid networks are ${SUPPORTED_NETWORK_IDS.join(', ')}`
)
}
}
Expand Down Expand Up @@ -190,16 +195,20 @@ const resetDataProvider = () => {
}
onMounted(async () => {
setupTranslations()
setupNetwork()
await setupWeb3Instances()
checkConnectionExpiry()
await setupConnectedProfile()
resetDataProvider()
isLoadedApp.value = true
await setupCurrencies()
window.scrollTo(0, 0)
checkBuyLyx()
try {
setupTranslations()
setupNetwork()
await setupWeb3Instances()
checkConnectionExpiry()
await setupConnectedProfile()
resetDataProvider()
isLoadedApp.value = true
await setupCurrencies()
window.scrollTo(0, 0)
checkBuyLyx()
} catch (error) {
console.error(error)
}
})
onUnmounted(() => {
Expand Down
7 changes: 4 additions & 3 deletions biome.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "https://biomejs.dev/schemas/1.6.4/schema.json",
"$schema": "https://biomejs.dev/schemas/1.9.4/schema.json",
"linter": {
"enabled": true,
"rules": {
Expand All @@ -15,14 +15,15 @@
"formatter": {
"enabled": false,
"indentWidth": 2,
"indentStyle": "space"
"indentStyle": "space",
"lineWidth": 80
},
"javascript": {
"formatter": {
"enabled": false,
"semicolons": "asNeeded",
"quoteStyle": "single",
"trailingComma": "all"
"trailingCommas": "all"
}
},
"files": {
Expand Down
42 changes: 36 additions & 6 deletions components/AppModal.vue
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
<script setup lang="ts">
import { useElementSize, useWindowSize } from '@vueuse/core'
import type { ModalSizes } from '@lukso/web-components'
const { setModal } = useAppStore()
const { isModalOpen, modal } = storeToRefs(useAppStore())
const modalTemplateComponent = shallowRef()
const route = useRoute()
const { closeModal } = useModal()
const modalContainer = ref<HTMLElement | null>(null)
const { height: modalHeight } = useElementSize(modalContainer)
const { height: screenHeight } = useWindowSize()
/**
* Load modal template component
Expand All @@ -32,7 +37,7 @@ watch(
setModal({
template: modalTemplate,
data: modalData ? JSON.parse(modalData) : undefined,
size: modalSize,
size: modalSize || 'small',
})
} else {
loadModalTemplate(MODAL_DEFAULT_TEMPLATE)
Expand All @@ -45,6 +50,23 @@ watch(
},
{ deep: true, immediate: true }
)
const handleKeyDown = (event: KeyboardEvent) => {
const activeElement = document.activeElement?.tagName
const key = event.key
if (key === 'Escape' && activeElement === 'BODY') {
closeModal()
}
}
onMounted(() => {
document.addEventListener('keydown', handleKeyDown)
})
onUnmounted(() => {
document.removeEventListener('keydown', handleKeyDown)
})
</script>

<template>
Expand All @@ -54,10 +76,18 @@ watch(
:data-template="modal?.template"
@on-backdrop-click="closeModal"
>
<component
v-if="modalTemplateComponent"
:is="modalTemplateComponent"
class="animate-fade-in"
></component>
<div
ref="modalContainer"
class="max-h-[calc(100vh-100px)]"
:class="{
'overflow-y-auto': modalHeight > screenHeight - 150,
}"
>
<component
v-if="modalTemplateComponent"
:is="modalTemplateComponent"
class="animate-fade-in"
></component>
</div>
</lukso-modal>
</template>
Loading
Loading