diff --git a/src/graphql/mutation/updateDonateRepayments.graphql b/src/graphql/mutation/updateDonateRepayments.graphql new file mode 100644 index 00000000000..285c205dc96 --- /dev/null +++ b/src/graphql/mutation/updateDonateRepayments.graphql @@ -0,0 +1,9 @@ +mutation updateDonateRepayments($donateRepayments: Boolean) { + my { + updateDonateRepayments(donateRepayments: $donateRepayments) { + success + error + value + } + } +} diff --git a/src/graphql/mutation/updateInactiveCreditRecipientSettings.graphql b/src/graphql/mutation/updateInactiveCreditRecipientSettings.graphql new file mode 100644 index 00000000000..b9a10e93f7d --- /dev/null +++ b/src/graphql/mutation/updateInactiveCreditRecipientSettings.graphql @@ -0,0 +1,15 @@ +mutation updateInactiveCreditRecipientSettings( + $recipient: InactiveCreditRecipientEnum!, + $emailAddress: String +) { + my { + updateInactiveCreditRecipientSettings( + recipient: $recipient, + emailAddress: $emailAddress + ) { + success + error + value + } + } +} diff --git a/src/graphql/query/creditSettings/creditSettingsQuery.graphql b/src/graphql/query/creditSettings/creditSettingsQuery.graphql new file mode 100644 index 00000000000..f2b51ffa4c7 --- /dev/null +++ b/src/graphql/query/creditSettings/creditSettingsQuery.graphql @@ -0,0 +1,13 @@ +query creditSettingsQuery { + my { + id + userAccount { + id + balance + promoBalance + donateRepayments + inactiveAccountSetting + inactiveAccountEmailAddress + } + } +} diff --git a/src/pages/Settings/CreditSettings/CreditSettingsPage.vue b/src/pages/Settings/CreditSettings/CreditSettingsPage.vue new file mode 100644 index 00000000000..75f3a5279b6 --- /dev/null +++ b/src/pages/Settings/CreditSettings/CreditSettingsPage.vue @@ -0,0 +1,214 @@ + + + diff --git a/src/pages/Settings/CreditSettings/components/CreditSettingsInactivity.vue b/src/pages/Settings/CreditSettings/components/CreditSettingsInactivity.vue new file mode 100644 index 00000000000..489c38740e6 --- /dev/null +++ b/src/pages/Settings/CreditSettings/components/CreditSettingsInactivity.vue @@ -0,0 +1,102 @@ + + + diff --git a/src/pages/Settings/CreditSettings/components/CreditSettingsLinkedSection.vue b/src/pages/Settings/CreditSettings/components/CreditSettingsLinkedSection.vue new file mode 100644 index 00000000000..1d0aaf836ca --- /dev/null +++ b/src/pages/Settings/CreditSettings/components/CreditSettingsLinkedSection.vue @@ -0,0 +1,35 @@ + + + diff --git a/src/pages/Settings/CreditSettings/components/CreditSettingsRepayment.vue b/src/pages/Settings/CreditSettings/components/CreditSettingsRepayment.vue new file mode 100644 index 00000000000..9852423fe42 --- /dev/null +++ b/src/pages/Settings/CreditSettings/components/CreditSettingsRepayment.vue @@ -0,0 +1,65 @@ + + + diff --git a/src/pages/Settings/CreditSettings/components/CreditSettingsSidebar.vue b/src/pages/Settings/CreditSettings/components/CreditSettingsSidebar.vue new file mode 100644 index 00000000000..09c39a1ec14 --- /dev/null +++ b/src/pages/Settings/CreditSettings/components/CreditSettingsSidebar.vue @@ -0,0 +1,257 @@ + + + diff --git a/src/router/routes.js b/src/router/routes.js index 00a608544b4..2d9770f307d 100644 --- a/src/router/routes.js +++ b/src/router/routes.js @@ -596,6 +596,14 @@ export default [ authenticationRequired: true, } }, + { + path: '/settings/credit-beta', + component: () => import('#src/pages/Settings/CreditSettings/CreditSettingsPage'), + meta: { + activeLoginRequired: true, + excludeFromStaticSitemap: true, + }, + }, { path: '/settings/autolending', component: () => import('#src/pages/Autolending/AutolendingPage'),