Skip to content

Commit 2e6141c

Browse files
author
Adelino Ngomacha
committed
feat: add queue form page
1 parent 9224115 commit 2e6141c

File tree

5 files changed

+225
-72
lines changed

5 files changed

+225
-72
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,219 @@
1+
<script setup lang="ts">
2+
3+
</script>
4+
5+
<template>
6+
<form>
7+
<main class="border-b border-gray-900/10">
8+
<!-- Settings forms -->
9+
<div class="divide-y divide-gray-900/10">
10+
<div class="grid max-w-7xl grid-cols-1 gap-x-8 gap-y-10 py-16 md:grid-cols-3">
11+
<div>
12+
<h2 class="text-base font-semibold leading-7 text-gray-900 dark:text-gray-100">
13+
Default Queue Settings
14+
</h2>
15+
<p class="mt-1 text-sm leading-6 text-gray-600">
16+
Update your default Queue settings
17+
</p>
18+
</div>
19+
20+
<div class="md:col-span-2">
21+
<div class="w-full grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
22+
<div class="sm:col-span-3">
23+
<label for="type" class="block text-sm font-medium leading-6 text-gray-900">Default</label>
24+
<div class="mt-2">
25+
<select id="type" name="type" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:max-w-xs sm:text-sm sm:leading-6">
26+
<option selected>
27+
sync
28+
</option>
29+
<option>database</option>
30+
<option>redis</option>
31+
<option>sqs</option>
32+
</select>
33+
</div>
34+
</div>
35+
</div>
36+
</div>
37+
</div>
38+
39+
<div class="grid max-w-7xl grid-cols-1 gap-x-8 gap-y-10 py-16 md:grid-cols-3">
40+
<div>
41+
<h2 class="text-base font-semibold leading-7 text-gray-900 dark:text-gray-100">
42+
Sync Queue
43+
</h2>
44+
<p class="mt-1 text-sm leading-6 text-gray-600">
45+
Update your Sync Queue configurations
46+
</p>
47+
</div>
48+
49+
<div class="md:col-span-2">
50+
<div class="w-full grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
51+
<div class="sm:col-span-3">
52+
<label for="local-driver" class="block text-sm font-medium leading-6 text-gray-900">Driver</label>
53+
<div class="mt-2">
54+
<input id="driver" type="text" name="driver" value="sync" disabled class="cursor-not-allowed bg-blue-gray-50 block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
55+
</div>
56+
</div>
57+
</div>
58+
</div>
59+
</div>
60+
61+
<div class="grid max-w-7xl grid-cols-1 gap-x-8 gap-y-10 py-16 md:grid-cols-3">
62+
<div>
63+
<h2 class="text-base font-semibold leading-7 text-gray-900 dark:text-gray-100">
64+
Database Queue
65+
</h2>
66+
<p class="mt-1 text-sm leading-6 text-gray-600">
67+
Update your database queue configurations
68+
</p>
69+
</div>
70+
71+
<div class="md:col-span-2">
72+
<div class="w-full grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
73+
<div class="sm:col-span-3">
74+
<label for="local-driver" class="block text-sm font-medium leading-6 text-gray-900">Driver</label>
75+
<div class="mt-2">
76+
<input id="driver" type="text" name="driver" value="database" disabled class="cursor-not-allowed bg-blue-gray-50 block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
77+
</div>
78+
</div>
79+
80+
<div class="sm:col-span-3">
81+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Table</label>
82+
<div class="mt-2">
83+
<input id="local-root" type="text" name="local-root" value="jobs" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
84+
</div>
85+
</div>
86+
87+
<div class="sm:col-span-3">
88+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Queue</label>
89+
<div class="mt-2">
90+
<input id="local-root" type="text" name="local-root" value="default" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
91+
</div>
92+
</div>
93+
</div>
94+
</div>
95+
</div>
96+
97+
98+
99+
<div class="grid max-w-7xl grid-cols-1 gap-x-8 gap-y-10 py-16 md:grid-cols-3">
100+
<div>
101+
<h2 class="text-base font-semibold leading-7 text-gray-900 dark:text-gray-100">
102+
Redis Queue
103+
</h2>
104+
<p class="mt-1 text-sm leading-6 text-gray-600">
105+
Update your redis queue configurations
106+
</p>
107+
</div>
108+
109+
<div class="md:col-span-2">
110+
<div class="w-full grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
111+
<div class="sm:col-span-3">
112+
<label for="local-driver" class="block text-sm font-medium leading-6 text-gray-900">Driver</label>
113+
<div class="mt-2">
114+
<input id="driver" type="text" name="driver" value="redis" disabled class="cursor-not-allowed bg-blue-gray-50 block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
115+
</div>
116+
</div>
117+
118+
<div class="sm:col-span-3">
119+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Connection</label>
120+
<div class="mt-2">
121+
<input id="local-root" type="text" name="local-root" value="default" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
122+
</div>
123+
</div>
124+
125+
<div class="sm:col-span-3">
126+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Queue</label>
127+
<div class="mt-2">
128+
<input id="local-root" type="text" name="local-root" value="default" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
129+
</div>
130+
</div>
131+
</div>
132+
</div>
133+
</div>
134+
135+
136+
<div class="grid max-w-7xl grid-cols-1 gap-x-8 gap-y-10 py-16 md:grid-cols-3">
137+
<div>
138+
<h2 class="text-base font-semibold leading-7 text-gray-900 dark:text-gray-100">
139+
SQS Queue
140+
</h2>
141+
<p class="mt-1 text-sm leading-6 text-gray-600">
142+
Update your sqs queue configurations
143+
</p>
144+
</div>
145+
146+
<div class="md:col-span-2">
147+
<div class="w-full grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
148+
<div class="sm:col-span-3">
149+
<label for="local-driver" class="block text-sm font-medium leading-6 text-gray-900">Driver</label>
150+
<div class="mt-2">
151+
<input id="driver" type="text" name="driver" value="sqs" disabled class="cursor-not-allowed bg-blue-gray-50 block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
152+
</div>
153+
</div>
154+
155+
<div class="sm:col-span-3">
156+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Key</label>
157+
<div class="mt-2">
158+
<input id="local-root" type="text" name="local-root" value="" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
159+
</div>
160+
</div>
161+
162+
<div class="sm:col-span-3">
163+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Secret</label>
164+
<div class="mt-2">
165+
<input id="local-root" type="text" name="local-root" value="" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
166+
</div>
167+
</div>
168+
169+
<div class="sm:col-span-3">
170+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Prefix</label>
171+
<div class="mt-2">
172+
<input id="local-root" type="text" name="local-root" value="" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
173+
</div>
174+
</div>
175+
176+
<div class="sm:col-span-3">
177+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Suffix</label>
178+
<div class="mt-2">
179+
<input id="local-root" type="text" name="local-root" value="" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
180+
</div>
181+
</div>
182+
183+
<div class="sm:col-span-3">
184+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Queue</label>
185+
<div class="mt-2">
186+
<input id="local-root" type="text" name="local-root" value="default" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
187+
</div>
188+
</div>
189+
190+
<div class="sm:col-span-3">
191+
<label for="local-root" class="block text-sm font-medium leading-6 text-gray-900">Region</label>
192+
<div class="mt-2">
193+
<input id="local-root" type="text" name="local-root" value="us-east-1" class="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6">
194+
</div>
195+
</div>
196+
</div>
197+
</div>
198+
</div>
199+
200+
201+
</div>
202+
</main>
203+
<div class="mt-6 flex items-center justify-end gap-x-6">
204+
<button type="button" class="text-sm font-semibold leading-6 text-gray-900">
205+
Cancel
206+
</button>
207+
<Button
208+
type="submit"
209+
class="rounded-md bg-indigo-600 px-3 py-2 text-sm font-semibold text-white shadow-sm hover:bg-indigo-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600"
210+
>
211+
Save
212+
</Button>
213+
</div>
214+
</form>
215+
</template>
216+
217+
<style scoped>
218+
219+
</style>

libs/components/Dashboard/Settings/SettingsFormManager.vue

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import EmailForm from './Forms/EmailForm.vue'
1111
import FileSystemForm from './Forms/FileSystemForm.vue'
1212
import HashingForm from './Forms/HashingForm.vue'
1313
import LibraryForm from './Forms/LibraryForm.vue'
14+
import QueueForm from './Forms/QueueForm.vue'
1415
1516
const props = defineProps({
1617
name: String,
@@ -132,6 +133,7 @@ const pageTitle = computed < String > (() => options.find(option => option.key =
132133
<template v-else-if="name === 'file-system'"><FileSystemForm /></template>
133134
<template v-else-if="name === 'hashing'"><HashingForm /></template>
134135
<template v-else-if="name === 'library'"><LibraryForm /></template>
136+
<template v-else-if="name === 'queue'"><QueueForm /></template>
135137
<template v-else>
136138
<div class="text-center">
137139
<div class="i-heroicons-cog-8-tooth text-gray-400 w-12 h-12 dark:text-gray-200 transition-all duration-150 ease-in-out" />

resources/views/dashboard/settings/queue.vue

-71
This file was deleted.

storage/framework/types/components.d.ts

+4
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,15 @@ declare module 'vue' {
3333
Faqs: typeof import('./../../../libs/components/Marketing/Faqs.vue')['default']
3434
Feature: typeof import('./../../../libs/components/Marketing/Feature.vue')['default']
3535
Fields: typeof import('./../../../libs/components/Marketing/Fields.vue')['default']
36+
FileSystemForm: typeof import('./../../../libs/components/Dashboard/Settings/Forms/FileSystemForm.vue')['default']
3637
Footer: typeof import('./../../../libs/components/Marketing/Footer.vue')['default']
38+
HashingForm: typeof import('./../../../libs/components/Dashboard/Settings/Forms/HashingForm.vue')['default']
3739
Header: typeof import('./../../../libs/components/Marketing/Header.vue')['default']
3840
HelloWorld: typeof import('./../../../libs/components/HelloWorld.vue')['default']
3941
Hero: typeof import('./../../../libs/components/Marketing/Hero.vue')['default']
4042
Hero2: typeof import('./../../../resources/components/Marketing/Hero2.vue')['default']
4143
Layout: typeof import('./../../../libs/components/Marketing/Layout.vue')['default']
44+
LibraryForm: typeof import('./../../../libs/components/Dashboard/Settings/Forms/LibraryForm.vue')['default']
4245
LiveTerminalOutput: typeof import('./../../../libs/components/Dashboard/Deployments/LiveTerminalOutput.vue')['default']
4346
Logo: typeof import('./../../../libs/components/Logo.vue')['default']
4447
MobileSidebar: typeof import('./../../../libs/components/Dashboard/MobileSidebar.vue')['default']
@@ -50,6 +53,7 @@ declare module 'vue' {
5053
Pricing: typeof import('./../../../libs/components/Marketing/Pricing.vue')['default']
5154
PrimaryFeatures: typeof import('./../../../libs/components/Marketing/PrimaryFeatures.vue')['default']
5255
PrimaryFeatures2: typeof import('./../../../libs/components/Marketing/PrimaryFeatures2.vue')['default']
56+
QueueForm: typeof import('./../../../libs/components/Dashboard/Settings/Forms/QueueForm.vue')['default']
5357
README: typeof import('./../../../libs/components/README.md')['default']
5458
RouterLink: typeof import('vue-router')['RouterLink']
5559
RouterView: typeof import('vue-router')['RouterView']

storage/framework/types/dashboard-router.d.ts

-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ declare module 'vue-router/auto-routes' {
4343
'/settings/[name]': RouteRecordInfo<'/settings/[name]', '/settings/:name', { name: ParamValue<true> }, { name: ParamValue<false> }>,
4444
'/settings/billing': RouteRecordInfo<'/settings/billing', '/settings/billing', Record<never, never>, Record<never, never>>,
4545
'/settings/mail': RouteRecordInfo<'/settings/mail', '/settings/mail', Record<never, never>, Record<never, never>>,
46-
'/settings/queue': RouteRecordInfo<'/settings/queue', '/settings/queue', Record<never, never>, Record<never, never>>,
4746
'/settings/services': RouteRecordInfo<'/settings/services', '/settings/services', Record<never, never>, Record<never, never>>,
4847
'/settings/storage': RouteRecordInfo<'/settings/storage', '/settings/storage', Record<never, never>, Record<never, never>>,
4948
'/teams/[id]': RouteRecordInfo<'/teams/[id]', '/teams/:id', { id: ParamValue<true> }, { id: ParamValue<false> }>,

0 commit comments

Comments
 (0)