* feat(ui): initialize scroll masks onmount * feat(relay): add transaction mode to requests * test: set sqlite as default connection * test(relay): add missing test * chore: clearer access to implementation * style: apply rector * style: apply php style fixes * test: ts type fixes
38 lines
1019 B
Vue
38 lines
1019 B
Vue
<script setup lang="ts">
|
|
/**
|
|
* @component RequestBuilderEndpoint
|
|
* @description The endpoint input and method selector for the request builder.
|
|
*/
|
|
import { cn } from '@/utils/ui';
|
|
import { type HTMLAttributes } from 'vue';
|
|
import RequestBuilderEndpointInput from './RequestBuilderEndpointInput.vue';
|
|
import RequestBuilderMethodSelector from './RequestBuilderMethodSelector.vue';
|
|
import RequestBuilderOptionsMenu from './RequestBuilderOptionsMenu.vue';
|
|
|
|
/*
|
|
* Types & Interfaces.
|
|
*/
|
|
|
|
export interface AppRequestBuilderEndpointProps {
|
|
class?: HTMLAttributes['class'];
|
|
}
|
|
|
|
/*
|
|
* Component Setup.
|
|
*/
|
|
|
|
const props = defineProps<AppRequestBuilderEndpointProps>();
|
|
</script>
|
|
|
|
<template>
|
|
<div :class="cn('flex', props.class)" data-testid="request-builder-endpoint">
|
|
<RequestBuilderMethodSelector />
|
|
|
|
<RequestBuilderEndpointInput>
|
|
<template #options-menu>
|
|
<RequestBuilderOptionsMenu />
|
|
</template>
|
|
</RequestBuilderEndpointInput>
|
|
</div>
|
|
</template>
|