| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  | <template> | 
					
						
							| 
									
										
										
										
											2021-09-04 20:24:32 -08:00
										 |  |  |   <v-container class="narrow-container"> | 
					
						
							|  |  |  |     <BasePageTitle divider> | 
					
						
							|  |  |  |       <template #header> | 
					
						
							|  |  |  |         <v-img max-height="125" max-width="125" :src="require('~/static/svgs/manage-webhooks.svg')"></v-img> | 
					
						
							|  |  |  |       </template> | 
					
						
							| 
									
										
										
										
											2023-03-21 20:45:27 +01:00
										 |  |  |       <template #title> {{ $t('settings.webhooks.webhooks') }} </template> | 
					
						
							| 
									
										
										
										
											2022-06-17 13:25:47 -08:00
										 |  |  |       <v-card-text class="pb-0"> | 
					
						
							| 
									
										
										
										
											2023-03-21 20:45:27 +01:00
										 |  |  |         {{ $t('settings.webhooks.description') }} | 
					
						
							| 
									
										
										
										
											2022-06-17 13:25:47 -08:00
										 |  |  |       </v-card-text> | 
					
						
							| 
									
										
										
										
											2021-09-04 20:24:32 -08:00
										 |  |  |     </BasePageTitle> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |     <BaseButton create @click="actions.createOne()" /> | 
					
						
							|  |  |  |     <v-expansion-panels class="mt-2"> | 
					
						
							| 
									
										
										
										
											2022-01-09 21:04:24 -09:00
										 |  |  |       <v-expansion-panel v-for="(webhook, index) in webhooks" :key="index" class="my-2 left-border rounded"> | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |         <v-expansion-panel-header disable-icon-rotate class="headline"> | 
					
						
							|  |  |  |           <div class="d-flex align-center"> | 
					
						
							|  |  |  |             <v-icon large left :color="webhook.enabled ? 'info' : null"> | 
					
						
							|  |  |  |               {{ $globals.icons.webhook }} | 
					
						
							|  |  |  |             </v-icon> | 
					
						
							| 
									
										
										
										
											2023-03-21 20:45:27 +01:00
										 |  |  |             {{ webhook.name }} - {{ $d(timeUTC(webhook.scheduledTime), "time") }} | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |           </div> | 
					
						
							|  |  |  |           <template #actions> | 
					
						
							| 
									
										
										
										
											2022-01-09 21:04:24 -09:00
										 |  |  |             <v-btn small icon class="ml-2"> | 
					
						
							|  |  |  |               <v-icon> | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |                 {{ $globals.icons.edit }} | 
					
						
							|  |  |  |               </v-icon> | 
					
						
							|  |  |  |             </v-btn> | 
					
						
							|  |  |  |           </template> | 
					
						
							|  |  |  |         </v-expansion-panel-header> | 
					
						
							|  |  |  |         <v-expansion-panel-content> | 
					
						
							| 
									
										
										
										
											2022-06-17 13:25:47 -08:00
										 |  |  |           <GroupWebhookEditor | 
					
						
							|  |  |  |             :key="webhook.id" | 
					
						
							|  |  |  |             :webhook="webhook" | 
					
						
							|  |  |  |             @save="actions.updateOne($event)" | 
					
						
							|  |  |  |             @delete="actions.deleteOne($event)" | 
					
						
							| 
									
										
										
										
											2024-07-06 14:10:01 -05:00
										 |  |  |             @test="actions.testOne($event).then(() => alert.success($tc('events.test-message-sent')))" | 
					
						
							| 
									
										
										
										
											2022-06-17 13:25:47 -08:00
										 |  |  |           /> | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |         </v-expansion-panel-content> | 
					
						
							|  |  |  |       </v-expansion-panel> | 
					
						
							|  |  |  |     </v-expansion-panels> | 
					
						
							|  |  |  |   </v-container> | 
					
						
							|  |  |  | </template> | 
					
						
							| 
									
										
										
										
											2022-03-23 04:54:16 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  | <script lang="ts"> | 
					
						
							|  |  |  | import { defineComponent } from "@nuxtjs/composition-api"; | 
					
						
							| 
									
										
										
										
											2023-03-21 20:45:27 +01:00
										 |  |  | import { useGroupWebhooks, timeUTC } from "~/composables/use-group-webhooks"; | 
					
						
							| 
									
										
										
										
											2022-06-17 13:25:47 -08:00
										 |  |  | import GroupWebhookEditor from "~/components/Domain/Group/GroupWebhookEditor.vue"; | 
					
						
							| 
									
										
										
										
											2024-07-06 14:10:01 -05:00
										 |  |  | import { alert } from "~/composables/use-toast"; | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | export default defineComponent({ | 
					
						
							| 
									
										
										
										
											2022-06-17 13:25:47 -08:00
										 |  |  |   components: { GroupWebhookEditor }, | 
					
						
							| 
									
										
										
										
											2024-02-02 15:36:10 +00:00
										 |  |  |   middleware: ["auth", "advanced-only"], | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |   setup() { | 
					
						
							|  |  |  |     const { actions, webhooks } = useGroupWebhooks(); | 
					
						
							| 
									
										
										
										
											2021-09-04 20:24:32 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |     return { | 
					
						
							| 
									
										
										
										
											2024-07-06 14:10:01 -05:00
										 |  |  |       alert, | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |       webhooks, | 
					
						
							| 
									
										
										
										
											2021-09-04 20:24:32 -08:00
										 |  |  |       actions, | 
					
						
							| 
									
										
										
										
											2023-03-21 20:45:27 +01:00
										 |  |  |       timeUTC | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  |     }; | 
					
						
							|  |  |  |   }, | 
					
						
							| 
									
										
										
										
											2021-10-07 09:39:47 -08:00
										 |  |  |   head() { | 
					
						
							|  |  |  |     return { | 
					
						
							|  |  |  |       title: this.$t("settings.webhooks.webhooks") as string, | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  |   }, | 
					
						
							| 
									
										
										
										
											2021-09-01 21:39:40 -08:00
										 |  |  | }); | 
					
						
							| 
									
										
										
										
											2022-03-23 04:54:16 +01:00
										 |  |  | </script> |