@visualizevalue/mint-app-base 0.1.49 → 0.1.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,8 @@
1
1
  <template>
2
- <div class="embed">
2
+ <div
3
+ class="embed"
4
+ @touchmove.stop.prevent="() => null"
5
+ >
3
6
  <iframe
4
7
  ref="frame"
5
8
  frameborder="0"
@@ -10,9 +13,22 @@
10
13
  </template>
11
14
 
12
15
  <script setup>
13
- defineProps({
16
+ import { useWindowSize } from '@vueuse/core'
17
+
18
+ const props = defineProps({
14
19
  src: String,
15
20
  })
21
+
22
+ const src = ref(props.src)
23
+
24
+ const { width } = useWindowSize()
25
+ watch(width, () => {
26
+ src.value = ''
27
+
28
+ nextTick(() => {
29
+ src.value = props.src
30
+ })
31
+ })
16
32
  </script>
17
33
 
18
34
  <style scoped>
@@ -21,12 +37,14 @@ defineProps({
21
37
  height: 0;
22
38
  padding-bottom: 100%;
23
39
  position: relative;
40
+ touch-action: none;
41
+ overflow: hidden;
24
42
 
25
43
  iframe {
26
44
  width: 100%;
27
45
  height: 100%;
28
46
  position: absolute;
29
- border: var(--border);
47
+ pointer-events: all;
30
48
  }
31
49
  }
32
50
  </style>
@@ -26,6 +26,7 @@ const ICONS = {
26
26
  'image': '🏞️',
27
27
  'link': '🔗',
28
28
  'loader': '⏳',
29
+ 'maximize': '⛶',
29
30
  'times': '✖️',
30
31
  'trash': '🗑️',
31
32
  'twitter': '🐦',
@@ -23,9 +23,10 @@ const select = k => active.value = k
23
23
  display: flex;
24
24
  gap: var(--size-1);
25
25
 
26
- > Button {
27
- /* border-bottom-color: transparent; */
26
+ > .button {
28
27
  margin-bottom: calc(-1 * var(--border-width));
28
+ border-bottom-left-radius: 0;
29
+ border-bottom-right-radius: 0;
29
30
 
30
31
  &.active {
31
32
  border-color: var(--border-color);
@@ -6,6 +6,12 @@
6
6
  <Image v-else-if="token.image" :src="token.image" :alt="token.name" />
7
7
  <ImageVoid v-else />
8
8
  </div>
9
+
10
+ <Actions>
11
+ <Button :to="{ name: 'id-collection-tokenId-full' }" title="Open">
12
+ <Icon type="maximize" />
13
+ </Button>
14
+ </Actions>
9
15
  </div>
10
16
 
11
17
  <MintToken
@@ -126,6 +132,7 @@ const ownedBalance = computed(() => collection.value && store.tokenBalance(colle
126
132
  height: var(--height);
127
133
  width: var(--width);
128
134
  padding: var(--padding-top) var(--padding-x) var(--padding-bottom);
135
+ position: relative;
129
136
 
130
137
  @media (--md) {
131
138
  border-right: var(--border);
@@ -144,6 +151,14 @@ const ownedBalance = computed(() => collection.value && store.tokenBalance(colle
144
151
  border-bottom: none !important;
145
152
  }
146
153
  }
154
+
155
+ > menu {
156
+ position: absolute;
157
+ bottom: var(--spacer);
158
+ right: var(--spacer);
159
+ width: fit-content;
160
+ padding: 0;
161
+ }
147
162
  }
148
163
 
149
164
  .details {
@@ -0,0 +1,53 @@
1
+ <template>
2
+ <article class="token-full">
3
+ <div class="frame">
4
+ <Embed v-if="token.animationUrl" :src="token.animationUrl" />
5
+ <Image v-else="token.image" :src="token.image" />
6
+ </div>
7
+
8
+ <Button :to="{ name: 'id-collection-tokenId' }">
9
+ <Icon type="close" title="Close" />
10
+ </Button>
11
+ </article>
12
+ </template>
13
+
14
+ <script setup>
15
+ import { useScrollLock } from '@vueuse/core'
16
+
17
+ defineProps(['token'])
18
+
19
+ const isLocked = useScrollLock()
20
+
21
+ onMounted(() => {
22
+ isLocked.value = true
23
+ })
24
+ </script>
25
+
26
+ <style scoped>
27
+ article {
28
+ position: fixed;
29
+ top: 0;
30
+ left: 0;
31
+ right: 0;
32
+ bottom: 0;
33
+ width: 100%;
34
+ height: 100%;
35
+
36
+ display: flex;
37
+ justify-content: center;
38
+ align-items: center;
39
+ z-index: 190;
40
+ background: var(--background);
41
+
42
+ > .frame {
43
+ width: calc(min(100vw, 100dvh) - var(--spacer)*2);
44
+ }
45
+
46
+ > .button {
47
+ position: absolute;
48
+ top: var(--spacer);
49
+ right: var(--spacer);
50
+ z-index: 191;
51
+ }
52
+ }
53
+ </style>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visualizevalue/mint-app-base",
3
- "version": "0.1.49",
3
+ "version": "0.1.51",
4
4
  "type": "module",
5
5
  "main": "./nuxt.config.ts",
6
6
  "dependencies": {
@@ -0,0 +1,7 @@
1
+ <template>
2
+ <TokenFull :token="token" />
3
+ </template>
4
+
5
+ <script setup>
6
+ defineProps(['token'])
7
+ </script>