{#if messages.length > 0}
{/if}
{#each turns as turn, turnIndex (turn.id)}
{@const isLatestTurn = turnIndex === turns.length - 1}
{#each turn.messages as message (message.id)}
{@const content = message.getDisplayContent()}
{#if message.shouldDisplayContent && content.trim() !== ""}
{#if message.role === Role.User}
{#if message.references.length > 0}
{#each message.references as reference}
{reference.fileName}
{reference.size}MB
{/each}
{/if}
{:else}
{#if message.artifacts.length > 0}
{@const artifactTally = tallyArtifactsByAction(message.artifacts)}
{message.artifacts.length} FILES CHANGED
{#each Object.values(ArtifactAction) as action}
{#if artifactTally[action]}
{artifactTally[action]}
{/if}
{/each}
{#each message.artifacts as artifact}
{basename(artifact.filePath)}
{artifactActionToCopy(artifact.action)}
{/each}
{/if}
{/if}
{/if}
{/each}
{#if isLatestTurn}
{#if isSubmitting}
{/if}
{/if}
{/each}
{#if messages.length === 0}
{/if}
{#if messages.length > 0}
{/if}
{#if !scrolledToBottom}
{/if}