<script lang="ts">
  export let contents: (
    | {
        Add: string;
      }
    | {
        Del: string;
      }
  )[];

  function trim(t: string): string {
    if (t[t.length - 1] == '\n') {
      return t.slice(0, t.length - 1);
    }
    return t;
  }
</script>

<div>
  {#each contents as c}
    {#if 'Add' in c}
      {#each trim(c.Add).split('\n') as l}
        <div class="change_addition">
          {#if l}
            <code class="hljs text">{l}</code>
          {/if}
        </div>
      {/each}
    {:else}
      {#each trim(c.Del).split('\n') as l}
        <div class="change_deletion">
          {#if l}
            <code class="hljs text">{l}</code>
          {/if}
        </div>
      {/each}
    {/if}
  {/each}
</div>