Skip to content

Enhance UI customization options for components #274

@coderabbitai

Description

@coderabbitai

Background

This issue follows up on the discussion in PR #272 about improving customization options for UI components, specifically regarding the OAResponse component and OAMarkdown styling.

Current Situation

Currently, UI components have limited customization options. The discussion started around removing text-lg class from OAResponse descriptions to maintain consistency with other OAMarkdown usages.

Proposed Solutions

1. CSS Class-based Targeting

Add specific CSS classes to components for easier targeting:

.OAResponses oa-doc {
  @apply text-xl
}

2. Vue Slot-based Customization

Implement nested slots for granular control over UI components:

<OAOperation :operationId="operationId">
  <template #oa-response-description="slotProps">
    <OAMarkdown
      :content="slotProps.response.description"
      class="text-lg"
    />
  </template>
</OAOperation>

Goals

  • Provide consistent customization approach across all components
  • Allow users to customize any part of the UI without recreating large chunks
  • Maintain backward compatibility during implementation
  • Consider both CSS and prop-based customization methods

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions