@visualizevalue/mint-app-base 0.0.7 → 0.1.1

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.
Files changed (72) hide show
  1. package/.env.example +1 -1
  2. package/app/assets/styles/animation.css +1 -9
  3. package/app/assets/styles/base.css +13 -18
  4. package/app/assets/styles/forms.css +19 -55
  5. package/app/assets/styles/index.css +24 -6
  6. package/app/assets/styles/normalize.css +8 -3
  7. package/app/assets/styles/prose.css +3 -129
  8. package/app/assets/styles/variables/animations.css +8 -0
  9. package/app/assets/styles/variables/borders.css +14 -0
  10. package/app/assets/styles/variables/colors.css +20 -0
  11. package/app/assets/styles/{theme.css → variables/components.css} +8 -2
  12. package/app/assets/styles/variables/effects.css +6 -0
  13. package/app/assets/styles/variables/fonts.css +26 -0
  14. package/app/assets/styles/variables/layout.css +9 -0
  15. package/app/assets/styles/variables/sizes.css +23 -0
  16. package/app/assets/styles/variables/ui.css +17 -0
  17. package/app/assets/styles/variables.css +16 -192
  18. package/app/assets/styles/web3-modals.css +3 -8
  19. package/app/components/Account.client.vue +1 -1
  20. package/app/components/Actions.vue +2 -3
  21. package/app/components/AppHeader.vue +2 -25
  22. package/app/components/Breadcrumbs.vue +1 -1
  23. package/app/components/Button/AddCollection.vue +10 -0
  24. package/app/components/Button/EditProfile.vue +10 -0
  25. package/app/components/Button/Profile/Discord.vue +10 -0
  26. package/app/components/Button/Profile/Email.vue +10 -0
  27. package/app/components/Button/Profile/Github.vue +11 -0
  28. package/app/components/Button/Profile/Twitter.vue +10 -0
  29. package/app/components/Button/Profile/Website.vue +10 -0
  30. package/app/components/Button.vue +17 -36
  31. package/app/components/CheckSpinner.vue +0 -18
  32. package/app/components/Collection/Intro.vue +9 -6
  33. package/app/components/Collection/OverviewCard.vue +13 -7
  34. package/app/components/Collection/Withdraw.client.vue +2 -1
  35. package/app/components/DialogFrame.vue +4 -7
  36. package/app/components/Form/Group.vue +19 -4
  37. package/app/components/Form/SelectFile.vue +1 -1
  38. package/app/components/Icon.vue +21 -17
  39. package/app/components/Image.client.vue +3 -7
  40. package/app/components/ImagePreview.vue +8 -0
  41. package/app/components/Loading.vue +2 -38
  42. package/app/components/MintGasPricePopover.client.vue +2 -2
  43. package/app/components/MintToken.vue +1 -1
  44. package/app/components/MintTokenBar.vue +1 -0
  45. package/app/components/Modal.vue +3 -2
  46. package/app/components/Popover.client.vue +3 -23
  47. package/app/components/Profile/Header.client.vue +6 -35
  48. package/app/components/Token/Detail.client.vue +19 -10
  49. package/app/components/Token/MintTimeline.client.vue +14 -43
  50. package/app/components/Token/MintTimelineItem.vue +50 -13
  51. package/app/components/Token/OverviewCard.vue +10 -17
  52. package/app/components/TransactionFlow.vue +6 -11
  53. package/app/layouts/default.vue +2 -14
  54. package/app/pages/[id]/[collection]/[tokenId]/index.vue +1 -1
  55. package/app/pages/[id]/[collection]/index.vue +1 -1
  56. package/app/pages/[id]/[collection]/mint.vue +4 -4
  57. package/app/pages/[id]/create.vue +49 -49
  58. package/app/pages/[id]/index.vue +1 -6
  59. package/app/pages/profile/[address]/index.vue +1 -4
  60. package/app/plugins/2.wagmi.ts +2 -2
  61. package/package.json +2 -1
  62. package/app/assets/styles/scroll.css +0 -13
  63. package/app/assets/styles/text.css +0 -14
  64. package/app/assets/styles/utils.css +0 -24
  65. package/app/components/Avatar.vue +0 -61
  66. package/app/components/CountDown.vue +0 -153
  67. package/app/components/IconLink.vue +0 -29
  68. package/app/components/Navbar.client.vue +0 -86
  69. package/app/components/Page/FrameSM.vue +0 -33
  70. package/app/components/QueryDialog.vue +0 -38
  71. package/app/components/ToggleDarkMode.client.vue +0 -58
  72. package/app/components/Visual/ImagePreview.vue +0 -8
@@ -1,86 +0,0 @@
1
- <template>
2
- <nav v-if="isConnected">
3
- <NuxtLink :to="{ name: 'id', params: { id: account } }">
4
- <Icon type="home" />
5
- <span>Home</span>
6
- </NuxtLink>
7
- <NuxtLink :to="{ name: 'profile-address', params: { address: account } }">
8
- <Icon type="user" />
9
- <span>Profile</span>
10
- </NuxtLink>
11
- </nav>
12
- </template>
13
-
14
- <script setup>
15
- import { useAccount } from '@wagmi/vue'
16
-
17
- const { address, isConnected } = useAccount()
18
-
19
- const account = computed(() => address.value.toLowerCase())
20
- </script>
21
-
22
- <style scoped>
23
- nav {
24
- display: flex;
25
- align-items: center;
26
- justify-content: center;
27
- gap: var(--spacer-lg);
28
-
29
- > * {
30
- padding: var(--size-4);
31
- display: flex;
32
- align-items: center;
33
- justify-content: center;
34
- gap: var(--spacer-sm);
35
- height: var(--size-6);
36
- color: var(--gray-z-5);
37
-
38
- :deep(> .icon) {
39
- width: var(--size-6);
40
- height: var(--size-6);
41
- }
42
-
43
- > span {
44
- display: none;
45
- }
46
-
47
- &.router-link-active {
48
- color: var(--color);
49
- }
50
- }
51
- }
52
-
53
- /* POSITIONAL */
54
- nav {
55
- position: fixed;
56
- bottom: 0;
57
- right: 0;
58
- left: 0;
59
- height: var(--navbar-height);
60
- z-index: 100;
61
-
62
- @media (--md) {
63
- top: 0;
64
- right: auto;
65
- flex-direction: column;
66
- height: 100dvh;
67
- width: var(--navbar-width);
68
-
69
- /* FOR NOW */
70
- display: none;
71
- }
72
- }
73
-
74
- /* COLORS */
75
- nav {
76
- background: var(--background-semi);
77
- backdrop-filter: blur(var(--size-1));
78
- border-top: var(--border);
79
-
80
- @media (--md) {
81
- background: none;
82
- backdrop-filter: none;
83
- border-top: none;
84
- }
85
- }
86
- </style>
@@ -1,33 +0,0 @@
1
- <template>
2
- <section class="frame-sm">
3
- <slot />
4
- </section>
5
- </template>
6
-
7
- <style scoped>
8
- .frame-sm {
9
- width: 100%;
10
- max-width: var(--dialog-width);
11
- min-height: 100dvh;
12
- padding: var(--spacer);
13
- margin: 0 auto;
14
- display: flex;
15
- height: fit-content;
16
- align-self: center;
17
- flex-direction: column;
18
- gap: var(--spacer-lg);
19
- justify-content: center;
20
- align-items: center;
21
- background: var(--gray-z-1);
22
-
23
- :deep(> div) {
24
- width: 100%;
25
- }
26
-
27
- @media (--sm) {
28
- min-height: 0;
29
- margin: 0 auto 10vh;
30
- border: var(--border);
31
- }
32
- }
33
- </style>
@@ -1,38 +0,0 @@
1
- <template>
2
- <DialogFrame ref="dialog">
3
- <div v-if="dialogId === 'email_verified'" class="inner">
4
- <button class="close" @click="close"><Icon type="x" /></button>
5
- <h1>Email verified!</h1>
6
- <p>Thank you for verifying your email. We'll be in touch as soon as we're ready to launch.</p>
7
- <div class="actions">
8
- <button @click="close" class="button">Ok</button>
9
- </div>
10
- </div>
11
- </DialogFrame>
12
- </template>
13
-
14
- <script setup>
15
- const route = useRoute()
16
- const router = useRouter()
17
-
18
- const KNOWN = [
19
- 'email_verified'
20
- ]
21
-
22
- const dialog = ref()
23
- const dialogId = computed(() => route.query?.dialog)
24
-
25
- const close = () => {
26
- dialog.value.close()
27
- router.replace({ query: { ...route.query, dialog: undefined }})
28
- }
29
-
30
- onMounted(() => {
31
- if (KNOWN.includes(dialogId.value)) {
32
- dialog.value.open()
33
- }
34
- })
35
- </script>
36
-
37
- <style>
38
- </style>
@@ -1,58 +0,0 @@
1
- <template>
2
- <button @click="() => toggleDark()" title="Switch Light/Dark mode">
3
- <Icon v-if="isDark" type="sun" :size="20" />
4
- <Icon v-else type="moon" :size="20" />
5
- </button>
6
- </template>
7
-
8
- <script setup>
9
- import { useToggle } from '@vueuse/core'
10
-
11
- const toggleDark = useToggle(isDark)
12
-
13
- watch(isDark, () => {
14
- if (isDark.value) {
15
- document.documentElement.classList.remove('lightmode')
16
- localStorage.setItem('color-scheme', 'dark')
17
- } else {
18
- document.documentElement.classList.add('lightmode')
19
- localStorage.setItem('color-scheme', 'light')
20
- }
21
- })
22
-
23
- onMounted(() => {
24
- if (! isDark.value) {
25
- document.documentElement.classList.add('lightmode')
26
- }
27
- })
28
- </script>
29
-
30
- <style scoped>
31
- button {
32
- display: none;
33
- position: fixed;
34
- bottom: calc(var(--navbar-height) + var(--spacer));
35
- right: var(--spacer);
36
- height: var(--size-5);
37
- width: var(--size-5);
38
- outline: none;
39
- z-index: 200;
40
-
41
- .vue-feather {
42
- height: var(--size-5);
43
- width: var(--size-5);
44
- transition: all var(--speed);
45
- }
46
-
47
- &:--highlight {
48
- .vue-feather {
49
- color: var(--gray-z-7);
50
- }
51
- }
52
-
53
- @media (--md) {
54
- display: block;
55
- bottom: var(--spacer);
56
- }
57
- }
58
- </style>
@@ -1,8 +0,0 @@
1
- <template>
2
- <svg viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
3
- <rect width="64" height="64" fill="var(--gray-z-0)"/>
4
- <path d="M39 23H25C23.8954 23 23 23.8954 23 25V39C23 40.1046 23.8954 41 25 41H39C40.1046 41 41 40.1046 41 39V25C41 23.8954 40.1046 23 39 23Z" stroke="var(--gray-z-2)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
5
- <path d="M28.5 30C29.3284 30 30 29.3284 30 28.5C30 27.6716 29.3284 27 28.5 27C27.6716 27 27 27.6716 27 28.5C27 29.3284 27.6716 30 28.5 30Z" stroke="var(--gray-z-2)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
6
- <path d="M41 35L36 30L25 41" stroke="var(--gray-z-2)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
7
- </svg>
8
- </template>