@monkeyplus/payscope 1.0.0

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 (82) hide show
  1. package/dist/THIRD-PARTY-LICENSES.md +41 -0
  2. package/dist/_chunks/auth.d.mts +707 -0
  3. package/dist/_chunks/database.mjs +831 -0
  4. package/dist/_chunks/db.d.mts +7100 -0
  5. package/dist/_chunks/index.d.mts +178 -0
  6. package/dist/_chunks/lib.mjs +3073 -0
  7. package/dist/_chunks/libs/better-call.d.mts +478 -0
  8. package/dist/_chunks/libs/postgres.d.mts +1 -0
  9. package/dist/_chunks/rolldown-runtime.mjs +11 -0
  10. package/dist/server/db.d.mts +2 -0
  11. package/dist/server/db.mjs +108 -0
  12. package/dist/server/env.d.mts +21 -0
  13. package/dist/server/env.mjs +22 -0
  14. package/dist/server/lib.d.mts +362 -0
  15. package/dist/server/lib.mjs +2 -0
  16. package/dist/server/router.d.mts +1218 -0
  17. package/dist/server/router.mjs +1157 -0
  18. package/dist/server/schemas/auth.d.mts +2 -0
  19. package/dist/server/schemas/auth.mjs +62 -0
  20. package/package.json +58 -0
  21. package/storefront/Readme.md +0 -0
  22. package/storefront/auth.ts +29 -0
  23. package/storefront/cart/ResumeCart.vue +217 -0
  24. package/storefront/cart/ResumeCartSelect.vue +32 -0
  25. package/storefront/cart/ShoppinCart.vue +100 -0
  26. package/storefront/cart/ShoppinCartItem.vue +99 -0
  27. package/storefront/checkout/App.vue +36 -0
  28. package/storefront/checkout/AppCart.vue +72 -0
  29. package/storefront/checkout/AppCartDiscount.vue +74 -0
  30. package/storefront/checkout/AppCartTotals.vue +72 -0
  31. package/storefront/checkout/AppLoading.vue +55 -0
  32. package/storefront/checkout/composables.ts +28 -0
  33. package/storefront/checkout/constants.ts +0 -0
  34. package/storefront/checkout/main.ts +11 -0
  35. package/storefront/checkout/pages/Address/Address.vue +95 -0
  36. package/storefront/checkout/pages/Info/Info.vue +94 -0
  37. package/storefront/checkout/pages/Info/InfoUser.vue +38 -0
  38. package/storefront/checkout/pages/Pay/Pay.vue +115 -0
  39. package/storefront/checkout/pages/Pay/Providers/BancoEconomico/BancoEconomico.vue +9 -0
  40. package/storefront/checkout/pages/Pay/Providers/Cybersource/Cybersource.vue +9 -0
  41. package/storefront/checkout/pages/Pay/Providers/Datafast/Datafast.vue +9 -0
  42. package/storefront/checkout/pages/Pay/Providers/Multipago/Multipago.vue +9 -0
  43. package/storefront/checkout/pages/Pay/Providers/Pagomedios/Pagomedios.vue +93 -0
  44. package/storefront/checkout/pages/Pay/Providers/Pagomedios/composable.ts +23 -0
  45. package/storefront/checkout/pages/Pay/Providers/Paypal/Paypal.vue +168 -0
  46. package/storefront/checkout/pages/Pay/Providers/Paypal/composable.ts +33 -0
  47. package/storefront/checkout/pages/Pay/Providers/Placetopay/Placetopay.vue +9 -0
  48. package/storefront/checkout/pages/Pay/Providers/Wabi/Wabi.vue +9 -0
  49. package/storefront/checkout/pages/Pay/Providers/composable.ts +30 -0
  50. package/storefront/checkout/pages/Payment/Payment.vue +19 -0
  51. package/storefront/checkout/pages/Payment/PaymentStatus.vue +187 -0
  52. package/storefront/checkout/pages/Payment/PaymentStatusDetail.vue +77 -0
  53. package/storefront/checkout/pages/Payment/composable.ts +81 -0
  54. package/storefront/checkout/pages/Shipping/Shipping.vue +67 -0
  55. package/storefront/checkout/pages/StepInfo.vue +37 -0
  56. package/storefront/checkout/router.ts +59 -0
  57. package/storefront/index.ts +3 -0
  58. package/storefront/login/App.vue +9 -0
  59. package/storefront/login/main.ts +10 -0
  60. package/storefront/login/pages/SignIn/Login.vue +82 -0
  61. package/storefront/login/pages/SignUp/SignUp.vue +99 -0
  62. package/storefront/login/router.ts +15 -0
  63. package/storefront/product/AddProduct.vue +303 -0
  64. package/storefront/product/AddProductNumber.vue +62 -0
  65. package/storefront/product/AddProductVariant.vue +66 -0
  66. package/storefront/profile/App.vue +88 -0
  67. package/storefront/profile/main.ts +10 -0
  68. package/storefront/profile/pages/Addresses/Addresses.vue +79 -0
  69. package/storefront/profile/pages/Addresses/AddressesForm.vue +95 -0
  70. package/storefront/profile/pages/Addresses/AddressesModal.vue +24 -0
  71. package/storefront/profile/pages/Buys/Buys.vue +8 -0
  72. package/storefront/profile/pages/Me/Me.vue +15 -0
  73. package/storefront/profile/pages/Me/MeBilling.vue +79 -0
  74. package/storefront/profile/pages/Me/MeBillingForm.vue +66 -0
  75. package/storefront/profile/pages/Me/MeBillingModal.vue +24 -0
  76. package/storefront/profile/pages/Me/MeInfo.vue +75 -0
  77. package/storefront/profile/pages/Me/MePassword.vue +53 -0
  78. package/storefront/profile/pages/Me/MeSubscriptions.vue +15 -0
  79. package/storefront/profile/pages/Returns/Returns.vue +8 -0
  80. package/storefront/profile/pages/Whislist/Whislist.vue +8 -0
  81. package/storefront/profile/router.ts +32 -0
  82. package/storefront/stores.ts +320 -0
@@ -0,0 +1,95 @@
1
+ <script setup lang="ts">
2
+ import type { FormSubmitEvent } from '@nuxt/ui';
3
+ import * as v from 'valibot';
4
+ import { reactive } from 'vue';
5
+ import { useAccountStore } from '../../../stores';
6
+
7
+ const { data } = defineProps<{ data?: any }>();
8
+ const schema = v.object({
9
+ address1: v.pipe(v.string(), v.minLength(10, 'Debe contener al menos 10 caracteres')),
10
+ address2: v.pipe(v.string(), v.minLength(3, 'Debe contener al menos 3 caracteres')),
11
+ city: v.pipe(v.string(), v.minLength(3, 'Debe contener al menos 3 caracteres')),
12
+ country: v.pipe(v.string(), v.minLength(2, 'Debe contener al menos 2 caracteres')),
13
+ firstName: v.pipe(v.string(), v.minLength(3, 'Debe contener al menos 3 caracteres')),
14
+ lastName: v.pipe(v.string(), v.minLength(3, 'Debe contener al menos 3 caracteres')),
15
+ // identification: v.pipe(v.string(), v.minLength(10, 'Debe contener al menos 10 caracteres')),
16
+ phone: v.pipe(v.string(), v.minLength(10, 'Debe contener al menos 10 caracteres')),
17
+ state: v.pipe(v.string(), v.minLength(3, 'Debe contener al menos 3 caracteres')),
18
+ zip: v.pipe(v.string(), v.minLength(5, 'Debe contener al menos 5 caracteres')),
19
+
20
+ });
21
+ const account = useAccountStore();
22
+ type Schema = v.InferOutput<typeof schema>;
23
+
24
+ const state = reactive({
25
+ address1: 'Carcelen BAjo',
26
+ address2: 'N90',
27
+ city: '4 ESQUINAS',
28
+ country: 'EC',
29
+ firstName: 'Andrés',
30
+ lastName: 'Barbery',
31
+ phone: '0999208762',
32
+ state: 'bolivar',
33
+ zip: '170302',
34
+ ...data,
35
+ });
36
+
37
+ // const toast = useToast();
38
+ async function onSubmit(event: FormSubmitEvent<Schema>) {
39
+ // // console.log('errer');
40
+ console.log(event.data);
41
+ if (data) {
42
+ await account.mutate('update', 'addresses', state);
43
+ }
44
+ else {
45
+ await account.mutate('create', 'addresses', state);
46
+ }
47
+ // toast.add({ title: 'Success', description: 'The form has been submitted.', color: 'success' });
48
+ // // console.log(event.data);
49
+ }
50
+ </script>
51
+
52
+ <template>
53
+ <div class="max-w-xl mx-auto">
54
+ <UForm
55
+ :schema="schema" :state="state" class="space-y-2 grid grid-cols-2 gap-3"
56
+ @submit="onSubmit"
57
+ >
58
+ <UFormField label="Nombre" name="firstName">
59
+ <UInput v-model="state.firstName" class="w-full" size="lg" />
60
+ </UFormField>
61
+ <UFormField label="Apellido" name="lastName">
62
+ <UInput v-model="state.lastName" class="w-full" size="lg" />
63
+ </UFormField>
64
+ <UFormField label="Pais" name="country">
65
+ <UInput v-model="state.country" class="w-full" size="lg" />
66
+ </UFormField>
67
+ <UFormField label="Provincia" name="state">
68
+ <UInput v-model="state.state" class="w-full" size="lg" />
69
+ </UFormField>
70
+ <UFormField label="Ciudad" name="city">
71
+ <UInput v-model="state.city" class="w-full" size="lg" />
72
+ </UFormField>
73
+ <UFormField label="Codigo postal" name="zip">
74
+ <UInput v-model="state.zip" class="w-full" size="lg" />
75
+ </UFormField>
76
+ <UFormField label="Dirección" name="address1" class="col-span-2">
77
+ <UInput v-model="state.address1" class="w-full" size="lg" />
78
+ </UFormField>
79
+ <UFormField label="Apartamento, local, etc." name="address2" class="col-span-2">
80
+ <UInput v-model="state.address2" class="w-full" size="lg" />
81
+ </UFormField>
82
+ <UFormField label="Teléfono" name="phone" class="col-span-2">
83
+ <UInput v-model="state.phone" class="w-full" size="lg" />
84
+ </UFormField>
85
+ <div class="col-span-2">
86
+ <UButton
87
+ type="submit" class="mt-3" size="xl" block
88
+ :loading="account.loadingMutation"
89
+ >
90
+ Guardar
91
+ </UButton>
92
+ </div>
93
+ </UForm>
94
+ </div>
95
+ </template>
@@ -0,0 +1,24 @@
1
+ <script setup lang="ts">
2
+ import { useAccountStore } from '../../../stores';
3
+ import AddressesForm from './AddressesForm.vue';
4
+
5
+ defineProps<{
6
+ title: string
7
+ data?: any
8
+ }>();
9
+
10
+ const emit = defineEmits<{ close: [boolean] }>();
11
+ const account = useAccountStore();
12
+ </script>
13
+
14
+ <template>
15
+ <UModal
16
+ :dismissible="!account.loadingMutation"
17
+ :close="{ onClick: () => emit('close', false) }"
18
+ :title="title"
19
+ >
20
+ <template #body>
21
+ <AddressesForm :data="data" />
22
+ </template>
23
+ </UModal>
24
+ </template>
@@ -0,0 +1,8 @@
1
+ <script setup lang="ts">
2
+ </script>
3
+
4
+ <template>
5
+ <div>
6
+ Compras
7
+ </div>
8
+ </template>
@@ -0,0 +1,15 @@
1
+ <script setup lang="ts">
2
+ import MeBilling from './MeBilling.vue';
3
+ import MeInfo from './MeInfo.vue';
4
+ import MePassword from './MePassword.vue';
5
+ import MeSubscriptions from './MeSubscriptions.vue';
6
+ </script>
7
+
8
+ <template>
9
+ <div class="pb-12">
10
+ <MeInfo />
11
+ <MeBilling />
12
+ <MePassword />
13
+ <MeSubscriptions />
14
+ </div>
15
+ </template>
@@ -0,0 +1,79 @@
1
+ <script setup lang="ts">
2
+ import { useAsyncState } from '@vueuse/core';
3
+ import { ref } from 'vue';
4
+ import { useAccountStore } from '../../../stores';
5
+ import MeBillingModal from './MeBillingModal.vue';
6
+
7
+ const billings = ref([] as any[]);
8
+
9
+ const account = useAccountStore();
10
+ const {
11
+ executeImmediate: saveBilling,
12
+ isLoading: loadingBilling,
13
+ } = useAsyncState(async (action: string, data: any) => {
14
+
15
+ }, null, { immediate: false });
16
+ const overlay = useOverlay();
17
+
18
+ const modal = overlay.create(MeBillingModal);
19
+ async function newBilling() {
20
+ const instance = modal.open({
21
+ title: 'Agregar datos de facturación',
22
+ });
23
+ const shouldIncrement = await instance.result;
24
+ console.log('shoultIncrement', shouldIncrement);
25
+ }
26
+ async function editBilling(item: any) {
27
+ const instance = modal.open({
28
+ title: 'Editar datos de facturación',
29
+ data: item,
30
+ });
31
+ const shouldIncrement = await instance.result;
32
+ console.log('shoultIncrement', shouldIncrement);
33
+ }
34
+ </script>
35
+
36
+ <template>
37
+ <div class="max-w-lg mx-auto py-6">
38
+ <div class="text-center text-xl font-light pb-2 dark:text-white dark:font-medium">
39
+ Datos de facturación
40
+ </div>
41
+ <div>
42
+ <div class="pb-2 space-y-1">
43
+ <!-- -->
44
+ <div v-for="item in account.billings" :key="item.id" class="border px-2 rounded py-3 bg-white flex items-center border-gray-300">
45
+ <div class="flex-1 text-sm text-gray-700">
46
+ {{ item.formatted }}
47
+ </div>
48
+ <div class="space-x-3">
49
+ <button class="hover:underline" @click="editBilling(item)">
50
+ Editar
51
+ </button>
52
+ <div class="inline-block">
53
+ |
54
+ </div>
55
+ <button class="hover:underline" @click="saveBilling('delete', item)">
56
+ Quitar
57
+ </button>
58
+ </div>
59
+ </div>
60
+ </div>
61
+ <!-- -->
62
+ <div class="text-center">
63
+ <UButton
64
+ :loading="loadingBilling"
65
+ block
66
+ size="xl"
67
+ variant="outline"
68
+ class="border-dashed border"
69
+
70
+ color="neutral"
71
+ @click="newBilling()"
72
+ >
73
+ Nuevos datos de facturación
74
+ </UButton>
75
+ </div>
76
+ </div>
77
+ <!-- <FormPassword :initial-values="selected" @submit="onSave" /> -->
78
+ </div>
79
+ </template>
@@ -0,0 +1,66 @@
1
+ <script setup lang="ts">
2
+ import type { FormSubmitEvent } from '@nuxt/ui';
3
+ import * as v from 'valibot';
4
+ import { reactive } from 'vue';
5
+ import { useAccountStore } from '../../../stores';
6
+
7
+ const { data } = defineProps<{ data?: any }>();
8
+ const schema = v.object({
9
+ email: v.pipe(v.string(), v.email('Debe ser un correo electronico valido')),
10
+ identification: v.pipe(v.string(), v.minLength(10, 'Debe contener al menos 10 caracteres')),
11
+ });
12
+ const account = useAccountStore();
13
+ type Schema = v.InferOutput<typeof schema>;
14
+
15
+ const state = reactive({
16
+ fullname: '',
17
+ identification: '',
18
+ email: '',
19
+ phone: '',
20
+ address: '',
21
+ ...data,
22
+ });
23
+
24
+ // const toast = useToast();
25
+ async function onSubmit(event: FormSubmitEvent<Schema>) {
26
+ // // console.log('errer');
27
+ console.log(event.data);
28
+ if (data) {
29
+ await account.mutate('update', 'billings', state);
30
+ }
31
+ else {
32
+ await account.mutate('create', 'billings', state);
33
+ }
34
+ // toast.add({ title: 'Success', description: 'The form has been submitted.', color: 'success' });
35
+ // // console.log(event.data);
36
+ }
37
+ </script>
38
+
39
+ <template>
40
+ <div class="max-w-xl mx-auto">
41
+ <UForm :schema="schema" :state="state" class="space-y-2" @submit="onSubmit">
42
+ <UFormField label="Nombre completo" name="name">
43
+ <UInput v-model="state.fullname" class="w-full" size="lg" />
44
+ </UFormField>
45
+
46
+ <UFormField label="Cedula o Ruc" name="identification">
47
+ <UInput v-model="state.identification" class="w-full" size="lg" />
48
+ </UFormField>
49
+ <UFormField label="Correo electronico" name="email">
50
+ <UInput v-model="state.email" class="w-full" size="lg" />
51
+ </UFormField>
52
+ <UFormField label="Numero de telefono" name="birthday">
53
+ <UInput v-model="state.phone" class="w-full" size="lg" />
54
+ </UFormField>
55
+ <UFormField label="Dirección" name="address">
56
+ <UInput v-model="state.address" class="w-full" size="lg" />
57
+ </UFormField>
58
+ <UButton
59
+ type="submit" class="mt-3" size="xl" block
60
+ :loading="account.loadingMutation"
61
+ >
62
+ Guardar
63
+ </UButton>
64
+ </UForm>
65
+ </div>
66
+ </template>
@@ -0,0 +1,24 @@
1
+ <script setup lang="ts">
2
+ import { useAccountStore } from '../../../stores';
3
+ import MeBillingForm from './MeBillingForm.vue';
4
+
5
+ defineProps<{
6
+ title: string
7
+ data?: any
8
+ }>();
9
+
10
+ const emit = defineEmits<{ close: [boolean] }>();
11
+ const account = useAccountStore();
12
+ </script>
13
+
14
+ <template>
15
+ <UModal
16
+ :dismissible="!account.loadingMutation"
17
+ :close="{ onClick: () => emit('close', false) }"
18
+ :title="title"
19
+ >
20
+ <template #body>
21
+ <MeBillingForm :data="data" />
22
+ </template>
23
+ </UModal>
24
+ </template>
@@ -0,0 +1,75 @@
1
+ <script setup lang="ts">
2
+ import type { FormSubmitEvent } from '@nuxt/ui';
3
+ import { CalendarDate } from '@internationalized/date';
4
+ // import { watch } from 'node:fs';
5
+ import * as v from 'valibot';
6
+ import { ref, watch } from 'vue';
7
+ import { authClient, useSession } from '../../../auth';
8
+
9
+ const schema = v.object({
10
+ // email: v.pipe(v.string(), v.email('Invalid email')),
11
+ // password: v.pipe(v.string(), v.minLength(8, 'Must be at least 8 characters')),
12
+ name: v.string(),
13
+ phone: v.string(),
14
+ birthday: v.instance(CalendarDate),
15
+
16
+ });
17
+
18
+ type Schema = v.InferOutput<typeof schema>;
19
+ const { user } = useSession();
20
+ // console.log(user.value);
21
+ const state = ref({
22
+ name: '',
23
+ phone: '',
24
+ email: '',
25
+ birthday: new CalendarDate(2022, 2, 3),
26
+ // ...user.value,
27
+ });
28
+ watch(user, (nv?: any) => {
29
+ state.value = { ...nv, birthday: new CalendarDate(new Date(nv.birthday || '').getFullYear(), new Date(nv.birthday || '').getMonth() + 1, new Date(nv.birthday || '').getDate() + 1),
30
+ } as any;
31
+ });
32
+
33
+ const toast = useToast();
34
+ async function onSubmit(event: FormSubmitEvent<Schema>) {
35
+ // console.log('errer', event.data);
36
+
37
+ const birthday = event.data.birthday.toString();
38
+ await authClient.updateUser({
39
+ // name: state.value.name,
40
+ ...event.data,
41
+ birthday,
42
+ } as any);
43
+ toast.add({
44
+ title: 'Success',
45
+ description: 'The form has been submitted.',
46
+ color: 'success',
47
+ });
48
+ // console.log(event.data);
49
+ }
50
+ </script>
51
+
52
+ <template>
53
+ <div class="max-w-lg mx-auto">
54
+ <UForm :schema="schema" :state="state" class="space-y-2" @submit="onSubmit">
55
+ <UFormField label="Nombre" name="name">
56
+ <UInput v-model="state.name" class="w-full" size="lg" />
57
+ </UFormField>
58
+ <UFormField label="Celular" name="phone">
59
+ <UInput v-model="state.phone" class="w-full" size="lg" />
60
+ </UFormField>
61
+ <UFormField label="Correo electronico" name="email">
62
+ <UInput v-model="state.email" class="w-full" size="lg" disabled />
63
+ </UFormField>
64
+ <UFormField label="Fecha de nacimiento" name="birthday">
65
+ <UInputDate v-model="state.birthday" class="w-full" size="lg" />
66
+ </UFormField>
67
+ <UButton
68
+ type="submit" class="mt-3 bg-e-primary hover:bg-e-primary/90 text-e-primary-contrast" size="xl"
69
+ block
70
+ >
71
+ Guardar cambios
72
+ </UButton>
73
+ </UForm>
74
+ </div>
75
+ </template>
@@ -0,0 +1,53 @@
1
+ <script setup lang="ts">
2
+ import type { FormSubmitEvent } from '@nuxt/ui';
3
+ import * as v from 'valibot';
4
+ import { reactive } from 'vue';
5
+
6
+ const schema = v.pipe(v.object({
7
+ oldPassword: v.pipe(v.string(), v.minLength(8, 'Must be at least 8 characters')),
8
+ password: v.pipe(v.string(), v.minLength(8, 'Must be at least 8 characters')),
9
+ confirmPassword: v.string(),
10
+
11
+ }), v.forward(
12
+ v.partialCheck([['password'], ['confirmPassword']], input => input.password === input.confirmPassword, 'Passwords do not match'),
13
+ ['confirmPassword'],
14
+ ));
15
+ const state = reactive({
16
+ password: '',
17
+ confirmPassword: '',
18
+ oldPassword: '',
19
+ });
20
+ const toast = useToast();
21
+ type Schema = v.InferOutput<typeof schema>;
22
+
23
+ async function onSubmit(event: FormSubmitEvent<Schema>) {
24
+ // toast.add({ title: 'Success', description: 'The form has been submitted.', color: 'success' });
25
+ // console.log(event.data);
26
+ }
27
+ </script>
28
+
29
+ <template>
30
+ <div class="max-w-lg mx-auto">
31
+ <div class="text-center text-xl font-light pb-2 dark:text-white dark:font-medium">
32
+ Modificar contraseña
33
+ </div>
34
+
35
+ <UForm :schema="schema" :state="state" @submit="onSubmit">
36
+ <UFormField label="Contraseña actual" name="oldPassword">
37
+ <UInput v-model="state.oldPassword" size="lg" class="w-full" />
38
+ </UFormField>
39
+
40
+ <UFormField label="Nueva contraseña" name="password">
41
+ <UInput v-model="state.password" type="password" size="lg" class="w-full" />
42
+ </UFormField>
43
+
44
+ <UFormField label="Repetir contraseña" name="confirmPassword">
45
+ <UInput v-model="state.password" type="password" size="lg" class="w-full" />
46
+ </UFormField>
47
+
48
+ <UButton type="submit">
49
+ Submit
50
+ </UButton>
51
+ </UForm>
52
+ </div>
53
+ </template>
@@ -0,0 +1,15 @@
1
+ <script setup lang="ts">
2
+
3
+ </script>
4
+
5
+ <template>
6
+ <div class="max-w-lg mx-auto">
7
+ <div class="text-center text-xl font-light pb-2 dark:text-white dark:font-medium">
8
+ Mis subscripciones
9
+ </div>
10
+
11
+ <UCheckbox label="Check me" description="This is a checkbox." />
12
+ <UCheckbox label="Check me" description="This is a checkbox." />
13
+ <UCheckbox label="Check me" description="This is a checkbox." />
14
+ </div>
15
+ </template>
@@ -0,0 +1,8 @@
1
+ <script setup lang="ts">
2
+ </script>
3
+
4
+ <template>
5
+ <div>
6
+ Retornos
7
+ </div>
8
+ </template>
@@ -0,0 +1,8 @@
1
+ <script setup lang="ts">
2
+ </script>
3
+
4
+ <template>
5
+ <div>
6
+ Lista deseos
7
+ </div>
8
+ </template>
@@ -0,0 +1,32 @@
1
+ import { createRouter, createWebHashHistory } from 'vue-router';
2
+
3
+ export const router = createRouter({
4
+ history: createWebHashHistory(),
5
+ routes: [
6
+ {
7
+ path: '/',
8
+ name: 'me',
9
+ component: () => import('./pages/Me/Me.vue'),
10
+ },
11
+ {
12
+ path: '/buys',
13
+ name: 'orders',
14
+ component: () => import('./pages/Buys/Buys.vue'),
15
+ },
16
+ {
17
+ path: '/address',
18
+ name: 'address',
19
+ component: () => import('./pages/Addresses/Addresses.vue'),
20
+ },
21
+ {
22
+ path: '/returns',
23
+ name: 'returns',
24
+ component: () => import('./pages/Returns/Returns.vue'),
25
+ },
26
+ {
27
+ path: '/wishes',
28
+ name: 'wishes',
29
+ component: () => import('./pages/Whislist/Whislist.vue'),
30
+ },
31
+ ],
32
+ });