FollowUps.svelte 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <script lang="ts">
  2. import Tooltip from '$lib/components/common/Tooltip.svelte';
  3. import ArrowTurnDownRight from '$lib/components/icons/ArrowTurnDownRight.svelte';
  4. import { onMount, tick, getContext } from 'svelte';
  5. const i18n = getContext('i18n');
  6. export let followUps: string[] = [];
  7. export let onClick: (followUp: string) => void = () => {};
  8. </script>
  9. <div class="mt-4">
  10. <div class="text-sm font-medium">
  11. {$i18n.t('Follow up')}
  12. </div>
  13. <div class="flex flex-col text-left gap-1 mt-1.5">
  14. {#each followUps as followUp, idx (idx)}
  15. <!-- svelte-ignore a11y-no-static-element-interactions -->
  16. <!-- svelte-ignore a11y-click-events-have-key-events -->
  17. <Tooltip content={followUp} placement="top-start" className="line-clamp-1">
  18. <div
  19. class=" mr-2 py-1.5 bg-transparent text-left text-sm flex items-center gap-2 px-1.5 text-gray-500 dark:text-gray-400 hover:text-black dark:hover:text-white transition cursor-pointer"
  20. on:click={() => onClick(followUp)}
  21. title={followUp}
  22. aria-label={followUp}
  23. >
  24. <ArrowTurnDownRight className="size-3.5" />
  25. <div class="line-clamp-1">
  26. {followUp}
  27. </div>
  28. </div>
  29. </Tooltip>
  30. {#if idx < followUps.length - 1}
  31. <hr class="border-gray-100 dark:border-gray-850" />
  32. {/if}
  33. {/each}
  34. </div>
  35. </div>