> ## Documentation Index
> Fetch the complete documentation index at: https://velt-v6-0-0-beta-5.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Comment Pin Wireframes

> Wireframe components for building custom Comment Pin interfaces with maximum flexibility.

<Note>
  We recommend that you familiarize yourselves with [UI Customization Concepts](/ui-customization/overview) before attempting to modify any components.
</Note>

## VeltCommentPinWireframe

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/IH_voFSclA4mqwh6/images/customization/comments/comment-pin/comment-pin-overview.png?fit=max&auto=format&n=IH_voFSclA4mqwh6&q=85&s=c46de1b8be1479c6e9adec7e5ea693e3" alt="" width="1281" height="427" data-path="images/customization/comments/comment-pin/comment-pin-overview.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe>
            <VeltCommentPinWireframe.GhostCommentIndicator />
            <VeltCommentPinWireframe.Index />
            <VeltCommentPinWireframe.Number />
            <VeltCommentPinWireframe.PrivateCommentIndicator />
            <VeltCommentPinWireframe.Triangle />
            <VeltCommentPinWireframe.UnreadCommentIndicator />
        </VeltCommentPinWireframe>
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-wireframe>
            <velt-comment-pin-ghost-comment-indicator-wireframe></velt-comment-pin-ghost-comment-indicator-wireframe>
            <velt-comment-pin-index-wireframe></velt-comment-pin-index-wireframe>
            <velt-comment-pin-number-wireframe></velt-comment-pin-number-wireframe>
            <velt-comment-pin-private-comment-indicator-wireframe></velt-comment-pin-private-comment-indicator-wireframe>
            <velt-comment-pin-triangle-wireframe></velt-comment-pin-triangle-wireframe>
            <velt-comment-pin-unread-comment-indicator-wireframe></velt-comment-pin-unread-comment-indicator-wireframe>
        </velt-comment-pin-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## GhostCommentIndicator

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/IH_voFSclA4mqwh6/images/customization/comments/comment-pin/comment-pin-ghost.png?fit=max&auto=format&n=IH_voFSclA4mqwh6&q=85&s=4afba62ca7f7468e5e9d718b535ca790" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-ghost.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.GhostCommentIndicator />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-ghost-comment-indicator-wireframe></velt-comment-pin-ghost-comment-indicator-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Index

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/IH_voFSclA4mqwh6/images/customization/comments/comment-pin/comment-pin-index.png?fit=max&auto=format&n=IH_voFSclA4mqwh6&q=85&s=7fb7f194af4d95455a3d05da5a6d282c" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-index.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.Index />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-index-wireframe></velt-comment-pin-index-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Number

The annotation number displays on comment pins, providing a persistent identifier for each comment that remains constant across sessions. This number makes it easy to reference specific comments in team discussions or documentation.

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.Number />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-number-wireframe></velt-comment-pin-number-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## PrivateCommentIndicator

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/IH_voFSclA4mqwh6/images/customization/comments/comment-pin/comment-pin-private.png?fit=max&auto=format&n=IH_voFSclA4mqwh6&q=85&s=41d9502cb408ec28d942f1b7f80a48f8" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-private.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.PrivateCommentIndicator />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-private-comment-indicator-wireframe></velt-comment-pin-private-comment-indicator-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Triangle

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/IH_voFSclA4mqwh6/images/customization/comments/comment-pin/comment-pin-triangle.png?fit=max&auto=format&n=IH_voFSclA4mqwh6&q=85&s=fba18636c230e265aa8a546e2e5255a3" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-triangle.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.Triangle />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-triangle-wireframe></velt-comment-pin-triangle-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## UnreadCommentIndicator

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/IH_voFSclA4mqwh6/images/customization/comments/comment-pin/comment-pin-unread.png?fit=max&auto=format&n=IH_voFSclA4mqwh6&q=85&s=66162fa5f8b14d4924c28ccd2fbf77a8" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-unread.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.UnreadCommentIndicator />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-unread-comment-indicator-wireframe></velt-comment-pin-unread-comment-indicator-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Styling

### Disable ShadowDOM

* By default, ShadowDOM is used to ensure that your app's CSS does not interfere with the styling of the SDK components.
* Disable the shadow dom to apply your custom CSS to the component.

Default: `true`

<Tabs>
  <Tab title="React / Next.js">
    **Using Props:**

    ```jsx theme={null}
    <VeltComments pinShadowDOM={false} />
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = client.getCommentElement();
    commentElement.enablePinShadowDOM();
    commentElement.disablePinShadowDOM();
    ```
  </Tab>

  <Tab title="Other Frameworks">
    **Using Props:**

    ```jsx theme={null}
    <velt-comments pin-shadow-dom="false"></velt-comments>
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = Velt.getCommentElement();
    commentElement.enablePinShadowDOM();
    commentElement.disablePinShadowDOM();
    ```
  </Tab>
</Tabs>

### Dark Mode

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/L5P3xMWzjcAS3jCJ/images/customization/velt-comment-pin-1.png?fit=max&auto=format&n=L5P3xMWzjcAS3jCJ&q=85&s=a8d5235ac9f28918da3c870f85d93459" alt="" width="1024" height="576" data-path="images/customization/velt-comment-pin-1.png" />

<img src="https://mintcdn.com/velt-v6-0-0-beta-5/L5P3xMWzjcAS3jCJ/images/customization/velt-comment-pin-2.png?fit=max&auto=format&n=L5P3xMWzjcAS3jCJ&q=85&s=387f47dfd80ef5a3a52f9763d5172a4d" alt="" width="2019" height="673" data-path="images/customization/velt-comment-pin-2.png" />

By default, all components are in Light Mode, but there are several properties and methods to enable Dark Mode.

`Default: false`

<Tabs>
  <Tab title="React / Next.js">
    **Using Props:**

    ```js theme={null}
    <VeltComments pinDarkMode={true}/>
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = client.getCommentElement();
    commentElement.enableDarkMode();
    commentElement.disableDarkMode();
    ```
  </Tab>

  <Tab title="Other Frameworks">
    **Using Props:**

    ```html theme={null}
    <velt-comments pin-dark-mode="true"></velt-comments>
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = Velt.getCommentElement();
    commentElement.enableDarkMode();
    commentElement.disableDarkMode();
    ```
  </Tab>
</Tabs>

### Variants

* Define variants for the `Velt Comment Pin` component. This is useful for customizing how the pin looks on different elements like charts, tables, etc.
* Learn more about how to define and use variants [here](/ui-customization/layout#variants).

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltCommentPin variant="CUSTOM_VARIANT" />
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-comment-pin variant="CUSTOM_VARIANT"></velt-comment-pin>
    ```
  </Tab>
</Tabs>
