Complete Astro migration - PDPA compliant website

- Migrated all pages from Next.js to Astro
- Added PDPA-compliant Privacy Policy (Thai)
- Added PDPA-compliant Terms & Conditions (Thai)
- Added Cookie Policy with disclosure (Thai)
- Implemented cookie consent banner (client-side)
- Integrated Umami Analytics placeholder
- Blog system with 3 posts
- Optimized Docker configuration for production
- Static site build (184KB, 11 pages)
- Ready for Easypanel deployment

Backup: /Users/kunthawatgreethong/Gitea/dealplustech-backup-nextjs-20260309.tar.gz
This commit is contained in:
Kunthawat Greethong
2026-03-09 18:28:01 +07:00
parent 668f69048f
commit 6402d885f9
6183 changed files with 463899 additions and 1913 deletions

View File

@@ -0,0 +1,53 @@
/*jshint indent:2, laxcomma:true, laxbreak:true*/
var util = require('util')
, assert = require('assert')
, diff = require('..')
, data = require('./practice-data')
;
var i = Math.floor(Math.random() * data.length) + 1;
var j = Math.floor(Math.random() * data.length) + 1;
while (j === i) {
j = Math.floor(Math.random() * data.length) + 1;
}
var source = data[i];
var comparand = data[j];
// source and comparand are different objects
assert.notEqual(source, comparand);
// source and comparand have differences in their structure
assert.notDeepEqual(source, comparand);
// record the differences between source and comparand
var changes = diff(source, comparand);
// apply the changes to the source
changes.forEach(function (change) {
diff.applyChange(source, true, change);
});
// source and copmarand are now deep equal
assert.deepEqual(source, comparand);
// Simulate serializing to a remote copy of the object (we've already go a copy, copy the changes)...
var remote = JSON.parse(JSON.stringify(source));
var remoteChanges = JSON.parse(JSON.stringify(changes));
// source and remote are different objects
assert.notEqual(source, remote);
// changes and remote changes are different objects
assert.notEqual(changes, remoteChanges);
// remote and comparand are different objects
assert.notEqual(remote, comparand);
remoteChanges.forEach(function (change) {
diff.applyChange(remote, true, change);
});
assert.deepEqual(remote, comparand);