feat: Upgrade to Astro with full PDPA compliance

PDPA Features:
 Cookie consent banner
 Consent logging API
 Admin dashboard
 Privacy Policy
 Terms & Conditions

Technical:
 Astro 5.x + Tailwind v4
 Docker on port 80
 SQLite database
 15 pages built

Ready for Easypanel deployment.
This commit is contained in:
Kunthawat
2026-03-12 10:01:04 +07:00
parent 668f69048f
commit 77ac4d2d05
13719 changed files with 307487 additions and 25765 deletions

37
node_modules/unstorage/drivers/redis.d.ts generated vendored Normal file
View File

@@ -0,0 +1,37 @@
import Redis, { Cluster, type ClusterNode, type ClusterOptions, type RedisOptions as _RedisOptions } from "ioredis";
export interface RedisOptions extends _RedisOptions {
/**
* Optional prefix to use for all keys. Can be used for namespacing.
*/
base?: string;
/**
* Url to use for connecting to redis. Takes precedence over `host` option. Has the format `redis://<REDIS_USER>:<REDIS_PASSWORD>@<REDIS_HOST>:<REDIS_PORT>`
*/
url?: string;
/**
* List of redis nodes to use for cluster mode. Takes precedence over `url` and `host` options.
*/
cluster?: ClusterNode[];
/**
* Options to use for cluster mode.
*/
clusterOptions?: ClusterOptions;
/**
* Default TTL for all items in seconds.
*/
ttl?: number;
/**
* How many keys to scan at once.
*
* [redis documentation](https://redis.io/docs/latest/commands/scan/#the-count-option)
*/
scanCount?: number;
/**
* Whether to initialize the redis instance immediately.
* Otherwise, it will be initialized on the first read/write call.
* @default false
*/
preConnect?: boolean;
}
declare const _default: (opts: RedisOptions) => import("..").Driver<RedisOptions, Redis | Cluster>;
export default _default;