Compare and edit two versions of a document.
by Ryan Allison
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>ACORD25 Diff Tool</title>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/cdn.min.js" defer></script>
<script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-gray-50 p-6">
<div x-data="diffTool()" class="max-w-5xl mx-auto bg-white shadow rounded p-4 space-y-4">
<h2 class="text-2xl font-bold mb-4">ACORD25 Diff Comparison</h2>
<button @click="showUnchanged = !showUnchanged"
class="mb-4 bg-blue-500 text-white px-4 py-2 rounded">
<span x-text="showUnchanged ? 'Hide' : 'Show'"></span> Unchanged Rows
</button>
<template x-for="(field, index) in fields" :key="index">
<div x-show="showUnchanged || field.prev !== field.curr"
class="grid grid-cols-3 gap-4 p-2 border rounded"
:class="field.prev !== field.curr ? 'bg-yellow-100 border-yellow-400' : 'bg-white border-gray-300'">
<!-- Previous Value -->
<div class="flex flex-col">
<label class="text-sm font-medium text-gray-700">Previous</label>
<div class="flex items-center justify-between">
<span x-text="field.prev" class="text-gray-800"></span>
<button @click="field.curr = field.prev"
class="text-sm text-blue-500 hover:underline ml-2">
Restore
</button>
</div>
</div>
<!-- Editable Current Value -->
<div class="flex flex-col">
<label class="text-sm font-medium text-gray-700">Current</label>
<input type="text" x-model="field.curr"
class="border rounded px-2 py-1" />
</div>
<!-- OCR’d New Value -->
<div class="flex flex-col">
<label class="text-sm font-medium text-gray-700">OCR’d</label>
<span...